/* The storefront's own design system, carried over from better-shopify/assets/better-storefront.css
   (tokens, base, the black announcement bar, the split homepage opening with the ritual film,
   the contact form field and the Porsche footer), trimmed to what this page uses. */
:root{
  --font:-apple-system,BlinkMacSystemFont,"Segoe UI",Helvetica,Arial,sans-serif;
  --ink:#1f1d1a;--muted:#6b665f;--line:#e3e0da;--surface:#f7f5f1;--white:#fff;--black:#111;
  --crema:#e6dac5;--crema-soft:#f2ece2;--porsche:#af8e70;--porsche-deep:#8a6f56;
  --t-display:clamp(48px,5.6vw,76px);--t-title:clamp(36px,4vw,56px);--t-lead:17px;--t-body:16px;--t-small:14px;--t-micro:12px;
  --lh-tight:1.08;--lh-body:1.55;
  --s-1:8px;--s-2:16px;--s-3:24px;--s-4:32px;--s-5:48px;--s-6:64px;--s-7:96px;
  --gutter:clamp(24px,5vw,72px);--max:1440px;--col-gap:clamp(32px,6vw,96px);
  --r:8px;--dur-1:160ms;--dur-2:480ms;--ease:cubic-bezier(.2,.65,.3,1);
}
*{box-sizing:border-box}
html{overscroll-behavior-y:none}
body{margin:0;background:var(--porsche);color:var(--ink);font-family:var(--font);font-size:var(--t-body);line-height:var(--lh-body);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
img,video{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
a:hover{text-decoration:underline;text-underline-offset:4px}
button,input{font:inherit;color:inherit}
button{cursor:pointer}
button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid var(--ink);outline-offset:4px}
p,h1{margin:0}
h1{font-weight:600;line-height:var(--lh-tight);letter-spacing:-.02em}
.eyebrow{display:block;font-size:var(--t-micro);font-weight:500;line-height:1.5;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}

/* Primary action: black on warm surfaces */
.solid-link{display:inline-flex;align-items:center;justify-content:space-between;gap:var(--s-4);min-height:56px;padding:16px var(--s-3);border:0;border-radius:var(--r);background:var(--black);color:var(--white);font-size:var(--t-body);font-weight:500;line-height:1.4;text-decoration:none;transition:background var(--dur-1) var(--ease)}
.solid-link:hover{background:var(--ink);text-decoration:none}
.solid-link[disabled]{opacity:.75;cursor:progress}

/* Phone header (the hero carries the logo on larger screens, as on the storefront) */
.site-header{display:none;justify-content:center;align-items:center;min-height:72px;padding:0 var(--gutter);background:var(--porsche)}
.site-header img{width:120px;height:auto}

/* Opening: copy left, the ritual film right with an ambient glow sampled from the film */
.home-opening{position:relative;display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:var(--col-gap);align-items:center;min-height:100svh;margin:0;padding:var(--s-6) max(var(--gutter),env(safe-area-inset-right)) var(--s-6) max(var(--gutter),env(safe-area-inset-left));background:var(--porsche);color:var(--ink);overflow-x:clip}
.home-opening-copy{position:relative;display:flex;flex-direction:column;align-items:flex-start;width:100%;max-width:var(--max)}
.home-opening-copy>*{max-width:640px}
.hero-logo-link{display:inline-block;margin:0 0 var(--s-4)}
.hero-logo{display:block;width:180px;height:auto;margin:0}
.home-opening .eyebrow,.home-promise{color:var(--ink);opacity:.72}
.home-opening h1{font-size:var(--t-display);margin:var(--s-3) 0 var(--s-3);color:var(--ink)}
.home-opening-copy>p:not(.eyebrow){font-size:var(--t-lead);line-height:var(--lh-body);color:var(--ink);max-width:44ch}
.home-promise{display:block;margin-top:var(--s-2);font-size:var(--t-body)}
.home-opening-media{position:relative;min-width:0;width:100%}
.hero-glow{position:absolute;left:-11%;top:-20%;width:122%;height:140%;z-index:0;filter:blur(48px) saturate(1.3);opacity:.95;transform:translateZ(0);pointer-events:none;-webkit-mask-image:radial-gradient(ellipse 50% 50% at 50% 50%,#000 46%,transparent 100%);mask-image:radial-gradient(ellipse 50% 50% at 50% 50%,#000 46%,transparent 100%)}
.home-opening-film{position:relative;z-index:1}
.ritual-film{position:relative;width:100%;aspect-ratio:16/9;border-radius:var(--r);overflow:hidden;background:transparent;isolation:isolate}
.ritual-film video{position:absolute;inset:-1px;width:calc(100% + 2px);height:calc(100% + 2px);object-fit:cover;object-position:center}
.film-control{position:absolute;bottom:var(--s-2);left:var(--s-2);display:grid;place-items:center;width:40px;height:40px;padding:0;border:0;border-radius:50%;background:#1f1d1a80;color:#fff;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);opacity:0;transition:opacity var(--dur-1) var(--ease),background var(--dur-1)}
.film-control svg{width:14px;height:14px;fill:currentColor}
.film-control .icon-play,.ritual-film.is-paused .film-control .icon-pause{display:none}
.ritual-film.is-paused .film-control .icon-play{display:block}
.film-control:hover{background:#1f1d1ab3}
.home-opening:hover .film-control,.ritual-film.is-paused .film-control,.film-control:focus-visible{opacity:1}
@media(hover:none){.film-control{opacity:1}}

/* Signup: the contact form's field and the hero's black button, side by side */
.notify{width:100%;max-width:560px;margin-top:var(--s-4);container-type:inline-size}
.notify-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--s-1)}
/* Field and button side by side only when the column has room; stacked on phones, tablets and narrow windows */
@container (max-width:460px){.notify-row{grid-template-columns:1fr}.notify .solid-link{width:100%;min-width:0}}
.notify input{width:100%;min-height:56px;padding:14px 16px;border:1px solid #1f1d1a26;border-radius:var(--r);background:var(--white);color:var(--ink);font-size:var(--t-body);line-height:1.4}
.notify input::placeholder{color:#8f897f}
.notify input:focus-visible{outline:2px solid var(--ink);outline-offset:1px;border-color:var(--ink)}
.notify .solid-link{min-width:200px}
.form-note{margin:var(--s-2) 0 0;font-size:var(--t-small);color:var(--ink)}
.form-note:empty{display:none}
.form-note.is-error{color:#7a2a1b}
.form-note.is-success{margin-top:0;padding:var(--s-2) var(--s-3);border-radius:var(--r);background:var(--crema);color:var(--ink);max-width:560px}
.is-done .notify-row,.is-done .home-promise{display:none}

/* Footer: black, with the wordmark and links in white and the labels in Porsche */
.site-footer{margin:0;padding:var(--s-7) max(var(--gutter),calc((100vw - var(--max))/2 + var(--gutter)),env(safe-area-inset-right)) calc(var(--s-5) + env(safe-area-inset-bottom)) max(var(--gutter),calc((100vw - var(--max))/2 + var(--gutter)),env(safe-area-inset-left));background:var(--black);color:var(--white)}
.site-footer :focus-visible{outline-color:var(--white)}
.footer-top{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:var(--s-5) var(--col-gap);align-items:start}
.footer-brand img{width:132px;height:auto;filter:invert(1)}
.footer-brand p{margin:var(--s-3) 0 0;font-size:var(--t-lead);line-height:var(--lh-body);color:var(--white)}
.footer-cols{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--s-4)}
.footer-cols>div{display:grid;gap:4px;align-content:start;justify-items:start}
.footer-heading{margin:0 0 6px;font-size:var(--t-micro);font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--porsche)}
.footer-cols a{display:inline-block;padding:6px 0;font-size:var(--t-body);line-height:1.4;color:var(--white);text-decoration:none;transition:color var(--dur-1) var(--ease)}
.footer-cols a:hover{color:var(--crema);text-decoration:underline;text-underline-offset:4px}
.footer-meta{display:flex;justify-content:space-between;flex-wrap:wrap;gap:var(--s-3);margin-top:var(--s-6);padding-top:var(--s-3);border-top:1px solid #ffffff26}
.footer-meta p{font-size:var(--t-micro);line-height:1.6;margin:0;color:#ffffffa6}

/* Tablet */
@media(max-width:1100px){
  :root{--col-gap:var(--s-5)}
  .home-opening h1{font-size:clamp(44px,6vw,60px)}
}
/* Phone */
@media(max-width:700px){
  :root{--gutter:24px;--col-gap:var(--s-4);--t-display:44px}
  .site-header{display:flex;padding-top:env(safe-area-inset-top)}
  .hero-logo-link{display:none}
  .home-opening{grid-template-columns:1fr;gap:var(--s-5);min-height:0;padding:var(--s-3) var(--gutter) var(--s-6)}
  .home-opening h1{margin-top:var(--s-2)}
  .home-opening-copy>p:not(.eyebrow){font-size:var(--t-body)}
  .film-control{width:44px;height:44px;bottom:12px;left:12px}
  .site-footer{padding:var(--s-6) var(--gutter) calc(var(--s-5) + env(safe-area-inset-bottom))}
  .footer-top{grid-template-columns:1fr;gap:var(--s-5)}
  .footer-cols{grid-template-columns:repeat(2,minmax(0,1fr))}
  .footer-meta{margin-top:var(--s-5)}
}
@media(max-width:400px){
  .footer-cols{grid-template-columns:1fr;gap:var(--s-3)}
}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}

/* Quiet link (the 404's way home), as on the storefront */
.quiet-link{display:inline-block;margin-top:var(--s-3);padding:6px 0;font-size:var(--t-small);font-weight:500;color:var(--ink);text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1px}
.quiet-link:hover{text-decoration-thickness:2px}
.is-done~.quiet-link{margin-top:var(--s-2)}
