/* =====================================================================
   Ulric design system: CSS custom properties
   Every value was read from live CSS on 2026-10-18. Sources:
   [U]  https://ulric.studio/themes/ulric/assets/style.css
   [H]  https://www.mindmorphcolorado.com/themes/mindmorph/assets/tokens.css
        (STRUCTURE block, shared "as is" with mycomusecolorado.com tokens.css)
   [ML] https://mandalamed.com/themes/lotus/assets/lotus.css
   [MS] https://mandalamed.com/themes/mandalamedicinepdx/assets/style.css
   [OA] https://orcounselors.com/themes/alder/css/alder.css
   [MY] https://mycomusecolorado.com/themes/mycomuse/assets/tokens.css
   [MM] https://www.mindmorphcolorado.com/themes/mindmorph/assets/tokens.css
   [C]  /core/assets/motion.css (UlricCMS core, the same file on every fork)
   Full provenance per value: tokens.json
   ===================================================================== */

/* ---------- 1. Ulric (the studio brand) [U] ---------- */
:root{
  --u-ink:#191917; --u-ink-soft:#33322e;
  --u-paper:#faf9f5; --u-paper-2:#f0eee6;          /* paper-2 = --cream = --bg-2 */
  --u-stone:#69675f; --u-stone-dark:#a3a094;
  --u-accent:#d97757;        /* 2.96:1 on paper: display italics, bars, fills. Never small text. */
  --u-accent-deep:#b25838;   /* = --accent-strong; 4.59:1 on paper */
  --u-accent-hover:#a14f31;
  --u-on-accent:#191917;     /* ink on orange: 5.64:1 */
  --u-manilla:#ebdbbc; --u-kraft:#d4a27f;
  --u-line:rgba(25,25,23,.12); --u-line-dark:rgba(240,238,230,.15);

  --u-display:'Newsreader','Newsreader Fallback',Georgia,serif;  /* 400-500, italic 400 */
  --u-body:'Inter','Inter Fallback',-apple-system,BlinkMacSystemFont,sans-serif; /* 400-600 */
  --u-mono:ui-monospace,'SF Mono',SFMono-Regular,Menlo,monospace;

  --u-fs-display:clamp(44px,6.2vw,88px);
  --u-fs-h1:clamp(40px,5vw,72px);
  --u-fs-h2:clamp(32px,3.6vw,52px);
  --u-fs-h3:clamp(22px,2vw,28px);
  --u-fs-lede:clamp(18px,1.5vw,21px);
  --u-fs-body:16px; --u-fs-small:14px; --u-fs-caption:13px; --u-fs-eyebrow:12px;
  --u-heading-lh:1.04; --u-heading-track:-.022em;

  --u-s-1:4px; --u-s-2:8px; --u-s-3:12px; --u-s-4:16px; --u-s-5:24px; --u-s-6:32px;
  --u-s-7:48px; --u-s-8:64px; --u-s-9:80px; --u-s-10:96px; --u-s-11:128px;
  --u-max:1120px; --u-pad:clamp(20px,5vw,48px); --u-hdr:73px;

  --u-radius-sm:6px;   /* small things inside a card */
  --u-radius:10px;     /* THE corner: cards, frames, media, inputs */
  --u-radius-lg:14px;  /* dialogs and sheets only */
  --u-radius-pill:999px; /* buttons */

  --u-sh-1:0 1px 2px rgba(25,25,23,.06),0 1px 1px rgba(25,25,23,.04);
  --u-sh-2:0 8px 24px rgba(25,25,23,.08),0 2px 6px rgba(25,25,23,.06);
  --u-sh-3:0 24px 64px rgba(25,25,23,.14),0 8px 20px rgba(25,25,23,.08);
  --u-sh-dark:0 24px 64px rgba(0,0,0,.45),0 1px 0 rgba(255,255,255,.04) inset;

  --u-ease-out:cubic-bezier(.2,.7,.2,1); --u-ease-in-out:cubic-bezier(.65,0,.35,1);
  --u-dur-1:120ms; --u-dur-2:180ms; --u-dur-3:260ms; --u-dur-4:420ms; --u-dur-5:700ms;

  /* dark mode values [U] */
  --u-d-bg:#141413; --u-d-bg-2:#191917; --u-d-surface:#211f1c; --u-d-surface-2:#2a2824;
  --u-d-fg:#faf9f5; --u-d-fg-2:#c9c4b8; --u-d-muted:#a3a094; --u-d-line:rgba(240,238,230,.12);
  --u-d-accent:#e08a6d;  /* 7.04:1 on #141413 */
}

/* ---------- 2. House structure (client themes) [H] ---------- */
:root{
  --fs-label:.75rem; --fs-small:.875rem; --fs-body:1rem; --fs-lede:1.0625rem;
  --fs-h3:1.25rem; --fs-h2:clamp(1.65rem,1.2rem + 1.9vw,2.4rem); --fs-h1:clamp(2.1rem,1.4rem + 3vw,3.4rem);
  --fs-hero-lg:clamp(4.1rem,4.6vw + .6rem,5.4rem);
  --radius-sm:6px; --radius:10px; --radius-lg:14px; --radius-pill:999px; --radius-img:var(--radius-sm);
  --space-1:8px; --space-2:12px; --space-3:16px; --space-4:24px; --space-5:32px; --space-6:48px; --space-section:64px;
  --ctl-h:48px; --ctl-h-lg:56px;
  --btn-h:var(--ctl-h); --btn-px:24px; --btn-radius:var(--radius-pill); --btn-track:.01em;
  --card-radius:var(--radius); --card-pad:20px;
  --thumb-ratio:4/3; --photo-ratio:3/2; --gallery-gap:8px; --row-gap:16px; --row-gap-lg:20px;
  --max:1180px; --pad:20px; --head:68px;
  --ease:cubic-bezier(.2,.8,.25,1);
  --rise-dur:800ms; --rise-step:110ms; --rise-y:20px; --rise-ease:cubic-bezier(.16,1,.3,1);
  --kw-dur:700ms; --kw-w:2.5px;
  /* [C] scroll reveal: opacity 0 + translateY(22px) -> none over .7s cubic-bezier(.2,.6,.2,1); stagger 90ms */
  --reveal-y:22px; --reveal-dur:.7s; --reveal-ease:cubic-bezier(.2,.6,.2,1); --stagger:90ms;
}
@media (min-width:600px){:root{--pad:32px}}
@media (min-width:921px){:root{--head:80px;--space-section:96px;--ctl-h-lg:60px}}

/* ---------- 3. Client palettes and faces (apply on a wrapper) ---------- */
.theme-mandala{ /* [ML] Lotus theme, [MS] base */
  --olive:#383D31; --olive-2:#2A2E25; --cream:#F9F6EE; --paper:#F1ECE0; --grey:#DDD9D2; --stone:#C9C8BF;
  --sage:#5F8B73; --gold:#C58C51; --peri:#6D90CA; --blue:#5F6C80; --ink-2:#434839;
  --btn-ink:#1E2119; --btn-bg-hi:#363A2F; --lt-yellow:245,218,160; /* [MS] veil only: rgba(var(--lt-yellow),a) */
  --display:"DM Sans",system-ui,-apple-system,"Segoe UI",sans-serif;
  --body:"Alegreya Sans","Gill Sans","Trebuchet MS",sans-serif;
  --lede:"Alegreya",Georgia,"Times New Roman",serif;
  --caps:"Tenor Sans","Gill Sans",sans-serif;
  --ui:"Inter",system-ui,-apple-system,"Segoe UI",sans-serif;
  --r-photo:16px; --r-sm:10px; --max:1280px; --head:72px; --sec:72px; --gap-x:24px;
  --btn-sh:0 6px 16px -4px rgba(47,51,41,.36),0 2px 4px -1px rgba(47,51,41,.16);
  --btn-sh-hi:0 12px 26px -6px rgba(47,51,41,.42),0 4px 8px -2px rgba(47,51,41,.16);
  --btn-sh-lo:0 2px 5px -2px rgba(47,51,41,.4);
}
@media (min-width:921px){.theme-mandala{--pad:40px;--head:96px;--sec:120px;--gap-x:64px}}

.theme-orcounselors{ /* [OA] Alder theme */
  --al-page:#FAFAF8; --al-dawn:#F7EFDF; --al-paper:#E6F5EC; --al-sand:#F5EFE6; --al-sand-2:#ECE3D4;
  --al-ink:#0E2A1B; --al-deep:#123C27; --al-pill:#14532D; --al-moss:#1C6B3C; --al-brand:#3D8850;
  --al-sage:#A8DEB5; --al-body:#4A5568; --al-muted:#5B6E66;
  --al-line:rgba(14,42,27,.16); --al-line-dark:rgba(250,250,248,.18);
  --al-spread-from:#EEF6F0; --al-spread-to:#F7EFDF; /* the one allowed gradient */
  --al-display:"Golos Text","Inter",system-ui,sans-serif;
  --al-sans:"Inter",system-ui,-apple-system,"Segoe UI",sans-serif;
  --al-serif:"Lora",Georgia,serif;
  --al-max:1280px; --al-gutter:24px; --al-rhythm:72px; --al-r:16px; --al-hdr-row:64px;
  --al-raise:0 1px 0 rgba(0,0,0,.06),0 8px 16px -10px rgba(14,42,27,.45);
  --al-ease:cubic-bezier(.2,0,0,1);
}
@media (min-width:921px){.theme-orcounselors{--al-gutter:40px;--al-rhythm:120px;--al-hdr-row:72px}}

.theme-mycomuse{ /* [MY] */
  --serif:"Marcellus",Georgia,"Times New Roman",serif;
  --sans:"Karla",system-ui,-apple-system,"Segoe UI",sans-serif;
  --white:#ffffff; --wash:#f5f6f3; --wash-deep:#e9ebe5;
  --ink:#141513; --ink-soft:#393c36; --quiet:#63675f; --night:#111310;
  --rule:rgba(20,21,19,.14); --rule-soft:rgba(20,21,19,.07); --rule-strong:rgba(20,21,19,.28); --rule-night:rgba(255,255,255,.14);
  --leaf:#a4bc50; --leaf-ink:#4f6b1e; --leaf-deep:#3f561a; --violet:#886c94; --violet-ink:#6c5478;
  --accent:var(--leaf-ink); --accent-deep:var(--leaf-deep); --accent-soft:var(--violet);
  --accent-2:var(--violet-ink); --accent-2-night:var(--leaf); --on-accent:var(--white);
  --rise-step:140ms; --max:1180px;
}

.theme-mindmorph{ /* [MM] */
  --serif:"Spectral","Spectral Fallback",Georgia,"Times New Roman",serif;
  --sans:"Montserrat","Montserrat Fallback",system-ui,-apple-system,"Segoe UI",sans-serif;
  --white:#ffffff; --wash:#f7f6f6; --wash-deep:#ecebeb;
  --ink:#161314; --ink-soft:#3d383b; --quiet:#68626a; --night:#121012;
  --rule:rgba(22,19,20,.14); --rule-soft:rgba(22,19,20,.07); --rule-strong:rgba(22,19,20,.28); --rule-night:rgba(255,255,255,.14);
  --plum:#6a3c5f; --plum-deep:#532e4a; --violet:#8b6d97; --sage-leaf:#c3d3a3; --sage-ink:#55653b; --lime:#a4bc50;
  --btn-green:#2f3b24; --btn-green-deep:#232c1b;
  --accent:var(--plum); --accent-deep:var(--plum-deep); --accent-soft:var(--violet);
  --accent-2:var(--sage-ink); --accent-2-night:var(--sage-leaf); --on-accent:var(--white);
}
/* Carousel + image rule (ucar) */
:root{--u-car-radius:16px;--u-car-gap:14px;--u-car-gap-desktop:20px;--u-car-card-phone:85vw;--u-car-card-tablet:46vw;--u-car-card-desktop:340px;--u-car-btn:44px;--u-img-ratio-phone:1/1;--u-img-ratio-desktop:4/5;--u-nav-collapse:1100px}
