/* ADAM redesign — shared foundation. Loaded after style.css + experience.css. */
:root{
  --font-display:"Geologica","Onest",system-ui,sans-serif;
  --font-body:"Onest",system-ui,-apple-system,"Segoe UI",sans-serif;
  --font:var(--font-body);
  /* type scale (1.25 minor third-ish, 16px base) */
  --fs-xs:.8125rem; --fs-sm:.9375rem; --fs-md:1rem; --fs-lg:1.25rem; --fs-xl:1.625rem;
  --fs-2xl:2.25rem; --fs-3xl:clamp(2.5rem,5.5vw,4.5rem);
  /* spacing */
  --sp-1:4px; --sp-2:8px; --sp-3:12px; --sp-4:16px; --sp-5:24px; --sp-6:32px; --sp-7:48px; --sp-8:72px;
  /* radii: hierarchy, not one radius everywhere */
  --r-sm:8px; --r-md:14px; --r-lg:24px; --r-pill:999px;
  --ease-out:cubic-bezier(.2,.8,.2,1);
  --apricot:#f0a04b; --glacier:#c3daec;
  --bg-canvas-opacity:1;
}
/* default garden theme (light) */
:root:where(:not([data-theme]),[data-theme=garden]){
  --paper:#eef3ee; --surface:#ffffff; --surface-alt:#f6f9f5;
  --ink:#0e2a22; --muted:#5d7068; --line:#d6e1d8;
  --brand:#1e7b5e; --accent:#1e7b5e; --soft:#dcefe4;
  --hero-a:#d9ecdf; --hero-b:#dfe9f3;
}
/* default garden theme (dark) */
:root[data-mode=dark]:where(:not([data-theme]),[data-theme=garden]){
  --paper:#0f1d19; --surface:#16261f; --surface-alt:#1b2e26;
  --ink:#e6efe9; --muted:#9db3a8; --line:#2a4036;
  --brand:#6fcf9f; --accent:#6fcf9f; --soft:#1f3a2f;
  --hero-a:#183329; --hero-b:#1a2a38;
}
html{-webkit-text-size-adjust:100%}
body{font-family:var(--font-body);font-size:var(--fs-md);line-height:1.6;color:var(--ink);background:var(--paper);
  font-feature-settings:"ss01","cv11";text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}
h1,h2,h3,h4,.brand{font-family:var(--font-display);letter-spacing:-.02em;line-height:1.1}
:focus-visible{outline:2px solid var(--brand);outline-offset:3px;border-radius:var(--r-sm)}
::selection{background:var(--apricot);color:#1b1206}
/* animated background canvas (redesign/bg.js) */
#adam-bg{position:fixed;inset:0;width:100%;height:100%;z-index:0;pointer-events:none;opacity:var(--bg-canvas-opacity)}
body>*:not(#adam-bg){position:relative;z-index:1}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
