/* Austropical, YFS build. Tokens: their palette and faces, our scale.
   Rhythm (lifted from the Starbucks DESIGN.md discipline, not its colours):
   dark cinematic hero, white and lilac content bands, a brand-purple feature
   band, cream utility, purple footer. Pills everywhere, whisper shadows. */
@font-face{font-family:Apfel;src:url('/assets/fonts/apfel-regular.woff2') format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:Apfel;src:url('/assets/fonts/apfel-bold.woff2') format('woff2');font-weight:700;font-display:swap}
@font-face{font-family:Funtastic;src:url('/assets/fonts/funtastic-brand.woff2') format('woff2');font-weight:400;font-display:swap}
/* metric matched fallback so the swap to Funtastic does not rewrap headlines (measured 30 Oct 2026: Funtastic is 97.6% of Arial Bold) */
@font-face{font-family:'Funtastic Fallback';src:local('Arial Bold'),local('Arial');font-weight:700;size-adjust:97.6%;ascent-override:92%;descent-override:22%}

:root{
  color-scheme:only light;
  --acai:#350457; --violet:#4a1a7a; --sun:#ffcd00; --dragon:#ff1e7d; --coconut:#8cb900;
  --forest:#005c34; --sky:#19b4ff; --ocean:#004696;
  --cream:#fff9e6; --lilac:#efe3fb; --lilac-deep:#dcc6f3; --paper:#ffffff; --night:#160722;
  --grape:#8a2be2; --grape-deep:#6a0dad; --berry:#c2185b; --mint:#dff5e9; --peach:#ffe3c2;
  --ink:#1d1030; --muted:#5b4f6b; --line:#e3dceb;

  --tint:var(--acai); --tint-ink:var(--cream);

  --font-body:Apfel,Arial,Helvetica,sans-serif;
  --font-display:Funtastic,'Funtastic Fallback',Arial,sans-serif;

  --text-body:17px; --text-small:14px; --lh-body:1.6; --measure:62ch;
  --display-hero:clamp(64px,9.5vw,152px);
  --display-page:clamp(40px,5.6vw,76px);
  --display-section:clamp(32px,4.2vw,58px);
  --display-card:clamp(20px,1.9vw,26px);

  --space-1:8px; --space-2:16px; --space-3:24px; --space-4:40px; --space-5:64px; --space-6:104px;
  --gutter:clamp(20px,4vw,64px);
  --wrap:1280px;
  --radius-pill:999px; --radius-card:20px; --radius-tile:14px;
  --shadow-card:0 1px 2px rgba(29,16,48,.06),0 10px 30px -18px rgba(29,16,48,.25);
  --shadow-lift:0 2px 4px rgba(29,16,48,.06),0 24px 40px -22px rgba(29,16,48,.35);

  --ease-out:cubic-bezier(.23,1,.32,1);
  --ease-in-out:cubic-bezier(.77,0,.175,1);
  --ease-spring:cubic-bezier(.34,1.56,.64,1);
  --dur-tint:600ms;
}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--ink);font:var(--text-body)/var(--lh-body) var(--font-body);overflow-x:clip}
img,video,canvas{max-width:100%;height:auto;display:block}
h1,h2,h3{font-family:var(--font-display);font-weight:400;line-height:.98;margin:0;text-wrap:balance;letter-spacing:.01em}
p{margin:0}
a{color:inherit}
button{font:inherit;color:inherit}
:focus-visible{outline:3px solid var(--sun);outline-offset:2px;box-shadow:0 0 0 6px var(--acai)}
.wrap{max-width:var(--wrap);margin-inline:auto;padding-inline:var(--gutter)}
.eyebrow{font-size:13px;letter-spacing:.14em;text-transform:uppercase;font-weight:700;color:var(--muted)}
.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

