      :root { --berry:#74133f; --forest:#074b3b; --coral:#ed5549; --sun:#f7cc4a; --cobalt:#263b98; --lilac:#c7b8e8; --cream:#fff8ef; --ink:#13251f; --line:rgba(19,37,31,.18); --max:1360px; }
      * { box-sizing:border-box; }
      html { scroll-behavior:smooth; }
      body { margin:0; background:var(--cream); color:var(--ink); font-family:"DM Sans",sans-serif; }
      a { color:inherit; text-decoration:none; }
      .skip { position:absolute; left:1rem; top:-4rem; z-index:10; background:#fff; padding:.75rem 1rem; } .skip:focus { top:1rem; }
      .nav-cta { background:var(--sun); color:var(--ink); border-color:var(--sun); }

/* Shared geometry, spacing and interaction tokens. */
:root {
 --radius-xs:8px; --radius-sm:12px; --radius-md:18px; --radius-lg:24px; --radius-xl:32px; --radius-2xl:40px; --radius-pill:999px;
 --radius-card:var(--radius-xl); --radius-feature:var(--radius-2xl); --radius-media:var(--radius-lg); --radius-field:var(--radius-md); --radius-menu:var(--radius-xl); --radius-modal:var(--radius-xl);
 --space-1:8px; --space-2:12px; --space-3:16px; --space-4:24px; --space-5:32px; --space-6:48px;
 --gutter:clamp(24px,4vw,64px); --page-inset:max(var(--gutter),calc((100vw - var(--max))/2));
 --ease-out:cubic-bezier(.23,1,.32,1); --ease-in-out:cubic-bezier(.77,0,.175,1); --ease-drawer:cubic-bezier(.32,.72,0,1);
 --duration-press:140ms; --duration-ui:200ms; --duration-reveal:600ms;
}
html{-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent}
img,video{max-width:100%}
button,input,textarea,select{font:inherit}
button,a,[role="button"]{touch-action:manipulation}
button,.button,.nav-cta,.menu-toggle{-webkit-user-select:none;user-select:none}
input,textarea,select{font-size:16px}
[hidden]{display:none!important}
::selection{background:var(--sun);color:var(--ink)}
