/* Worthy — site styles v2. Plain CSS, mobile-first, logical properties (RTL-ready).
   Palette: Warm Ivory + Deep Forest Green with Worthy Investments gold. Type: Playfair Display + Outfit. */
:root{
  --ivory:#F6F1E6; --paper:#FBF8F1; --sand:#EFE7D6; --cream:#FFFDF8; --line:#E3D9C4; --line-2:#D6C9AE;
  --forest:#1B3427; --forest-2:#27473A; --forest-3:#12241B; --night:#0F1E17; --moss:#2F4D3C;
  --ink:#17201B; --muted:#4C5750; --muted-2:#5E6A62;
  --gold:#B8902A; --gold-lt:#D4B26A; --gold-pale:#F3E9CF; --gold-text:#7A5B17;
  --on-dark:#E9EDE6; --on-dark-2:#BFC9C0;
  --ok-bg:#DFEADF; --ok-fg:#1F4D2E; --ok-dot:#3F7A4F;
  --prog-bg:#F4E7C6; --prog-fg:#69480C; --prog-dot:#C08A2A;
  --prop-bg:#E8E5DE; --prop-fg:#4A4A45; --prop-dot:#8E8A80;
  --serif:"Playfair Display", "Iowan Old Style", "Palatino Linotype", Georgia, serif;
  --sans:"Outfit", system-ui, -apple-system, "Segoe UI", Roboto, "Noto Sans", Arial, sans-serif;
  --wrap:1240px; --wrap-narrow:780px;
  --radius:6px; --radius-sm:4px;
  --shadow:0 1px 1px rgba(23,32,27,.03), 0 10px 30px -12px rgba(23,32,27,.14);
  --shadow-lg:0 2px 4px rgba(23,32,27,.04), 0 28px 60px -24px rgba(23,32,27,.28);
  --ease:cubic-bezier(.22,.61,.36,1);
  --band-pad:clamp(80px, 11vw, 148px);
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-block-start:88px}
body{margin:0;background:var(--ivory);color:var(--ink);font-family:var(--sans);font-weight:400;font-size:1.0625rem;line-height:1.7;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
img,svg{max-width:100%;display:block}
a{color:var(--forest);text-underline-offset:4px;text-decoration-thickness:1px;transition:color .2s var(--ease)}
a:hover{color:var(--gold-text)}
:focus-visible{outline:2px solid var(--gold);outline-offset:3px;border-radius:2px}
::selection{background:var(--gold-pale);color:var(--ink)}
h1,h2,h3,h4{font-family:var(--serif);font-weight:400;color:var(--forest);line-height:1.12;letter-spacing:-.01em;margin:0 0 .5em}
h1{font-size:clamp(2.6rem, 6.4vw, 5.4rem);line-height:1.04;letter-spacing:-.02em}
h2{font-size:clamp(2.1rem, 4.4vw, 3.5rem);letter-spacing:-.015em}
h3{font-size:clamp(1.3rem, 2vw, 1.6rem);font-weight:500}
h4{font-size:1.15rem}
h1 em,h2 em{font-style:italic;color:var(--gold-text)}
p{margin:0 0 1em}
.lead{font-size:clamp(1.12rem, 1.5vw, 1.28rem);font-weight:300;line-height:1.65;color:var(--muted);max-width:42em}
.small{font-size:.875rem}
.muted{color:var(--muted)}
.wrap{width:100%;max-width:var(--wrap);margin-inline:auto;padding-inline:clamp(20px, 5vw, 56px)}
.wrap--narrow{max-width:calc(var(--wrap-narrow) + 112px)}
.skip{position:absolute;inset-inline-start:-9999px;top:8px;background:var(--forest);color:var(--ivory);padding:10px 16px;border-radius:4px;z-index:100}
.skip:focus{inset-inline-start:8px}
.visually-hidden{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* ---------- Eyebrow ---------- */
.eyebrow{display:flex;align-items:center;gap:14px;font-family:var(--sans);font-size:.74rem;font-weight:500;letter-spacing:.22em;text-transform:uppercase;color:var(--gold-text);margin:0 0 22px}
.eyebrow::before{content:"";inline-size:36px;block-size:1px;background:var(--gold);flex:none}
.band--forest .eyebrow,.band--night .eyebrow,.hero .eyebrow{color:var(--gold-lt)}
.band--forest .eyebrow::before,.band--night .eyebrow::before,.hero .eyebrow::before{background:var(--gold-lt)}

/* ---------- Buttons ---------- */
.btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:14px 26px;border-radius:2px;font-family:var(--sans);font-weight:500;font-size:.8rem;letter-spacing:.14em;text-transform:uppercase;text-decoration:none;border:1px solid transparent;cursor:pointer;transition:background .25s var(--ease),color .25s var(--ease),border-color .25s var(--ease),transform .25s var(--ease),box-shadow .25s var(--ease);line-height:1.25;text-align:center}
.btn:hover{transform:translateY(-1px)}
.btn--primary{background:var(--forest);color:var(--ivory)}
.btn--primary:hover{background:var(--forest-3);color:var(--gold-lt);box-shadow:0 10px 24px -12px rgba(18,36,27,.6)}
.btn--outline{border-color:rgba(27,52,39,.45);color:var(--forest);background:transparent}
.btn--outline:hover{border-color:var(--forest);background:var(--forest);color:var(--ivory)}
.btn--gold{background:var(--gold);color:#16130A;border-color:var(--gold)}
.btn--gold:hover{background:var(--gold-lt);border-color:var(--gold-lt);color:#16130A;box-shadow:0 10px 24px -12px rgba(184,144,42,.7)}
.btn--light{background:var(--ivory);color:var(--forest)}
.btn--light:hover{background:var(--gold-lt);color:#16130A}
.btn--ghost-light{border-color:rgba(246,241,230,.45);color:var(--ivory);background:transparent}
.btn--ghost-light:hover{border-color:var(--gold-lt);color:var(--gold-lt);background:rgba(212,178,106,.06)}
.btn--sm{min-height:42px;padding:9px 18px;font-size:.72rem}
.btn-row{display:flex;flex-wrap:wrap;gap:12px;margin-block-start:32px}
.link-arrow{display:inline-flex;align-items:center;gap:8px;font-weight:500;font-size:.95rem;text-decoration:none;color:var(--forest);border-block-end:1px solid var(--gold);padding-block-end:3px;transition:gap .25s var(--ease),color .2s}
.link-arrow:hover{gap:12px;color:var(--gold-text)}
.ext::after{content:" ↗";font-size:.9em}

/* ---------- Review notes (only visible in review builds) ---------- */
.confirm{display:none}
html[data-review] .confirm{display:inline-block;font-family:var(--sans);font-size:.72rem;font-weight:600;letter-spacing:.02em;line-height:1.35;color:#5A3B00;background:#FFE7A3;border:1px dashed #C99A1E;border-radius:4px;padding:1px 6px;margin-inline:4px;vertical-align:middle;text-transform:none;font-style:normal}
.review-banner{display:none}
html[data-review] .review-banner{display:block;background:#FFE7A3;color:#5A3B00;font-size:.8rem;text-align:center;padding:6px 16px;border-block-end:1px dashed #C99A1E;position:relative;z-index:51}

/* ---------- Header (dark, Worthy Investments style) ---------- */
.site-header{position:sticky;top:0;z-index:50;background:rgba(15,30,23,.9);backdrop-filter:saturate(1.3) blur(14px);-webkit-backdrop-filter:saturate(1.3) blur(14px);border-block-end:1px solid rgba(212,178,106,.14);transition:background .3s var(--ease),box-shadow .3s var(--ease)}
.site-header.is-scrolled{background:rgba(15,30,23,.97);box-shadow:0 10px 30px -18px rgba(0,0,0,.6)}
.header-inner{display:flex;align-items:center;gap:14px;min-height:76px}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:#fff;margin-inline-end:auto}
.brand:hover{color:#fff}
.mark{inline-size:38px;block-size:38px;flex:none}
.mark text{fill:rgba(255,255,255,.92)}
.brand-word{font-family:var(--serif);font-size:.98rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase;white-space:nowrap}
.brand-word span{color:var(--gold-lt)}
.nav-toggle{display:inline-flex;align-items:center;justify-content:center;inline-size:44px;block-size:44px;border:1px solid rgba(212,178,106,.3);border-radius:4px;background:transparent;color:#fff;cursor:pointer;transition:border-color .2s}
.nav-toggle:hover{border-color:var(--gold-lt)}
.nav-toggle svg{inline-size:22px;block-size:22px}
.site-nav{display:none;position:absolute;inset-inline:0;top:100%;background:var(--night);border-block-end:1px solid rgba(212,178,106,.2);padding:8px clamp(20px,5vw,56px) 24px;box-shadow:0 24px 40px rgba(0,0,0,.35)}
.site-nav.is-open{display:block;animation:navIn .25s var(--ease)}
@keyframes navIn{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}
.site-nav ul{list-style:none;margin:0;padding:0}
.site-nav li a{display:block;padding:14px 2px;text-decoration:none;color:rgba(255,255,255,.82);font-weight:400;font-size:1rem;border-block-end:1px solid rgba(255,255,255,.08)}
.site-nav li a:hover{color:var(--gold-lt)}
.site-nav li a[aria-current="page"]{color:var(--gold-lt)}
.site-nav .btn{margin-block-start:18px;inline-size:100%}
.lang{position:relative}
.lang-btn{display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:6px 10px;border:1px solid rgba(212,178,106,.3);border-radius:4px;background:transparent;color:rgba(255,255,255,.85);font:500 .76rem var(--sans);letter-spacing:.1em;cursor:pointer;transition:border-color .2s,color .2s}
.lang-btn:hover{border-color:var(--gold-lt);color:#fff}
.lang{flex:none}
.lang-btn{flex:none}
.lang-btn svg{inline-size:16px;block-size:16px;flex:none}
.lang-menu{display:none;position:absolute;inset-inline-end:0;top:calc(100% + 8px);min-inline-size:210px;list-style:none;margin:0;padding:6px;background:var(--cream);border:1px solid var(--line);border-radius:6px;box-shadow:var(--shadow-lg);z-index:60}
.lang-menu.is-open{display:block}
.lang-menu[hidden]{display:none}
.lang-menu li{margin:0;padding:0}
.lang-menu .lang-item{display:flex;justify-content:space-between;align-items:center;gap:12px;min-height:40px;padding:9px 10px;border-radius:4px;font-size:.9rem;color:var(--ink,#15241B);text-decoration:none}
.lang-menu a.lang-item:hover,.lang-menu a.lang-item:focus-visible{background:rgba(184,144,42,.14);outline:none;box-shadow:inset 0 0 0 1.5px var(--gold,#B8902A)}
.lang-menu .lang-item.is-current{background:var(--ok-bg);color:var(--ok-fg);font-weight:600}
@media (min-width:1280px){
  .site-header .wrap{max-width:1440px}
  .nav-toggle{display:none}
  .site-nav{display:flex!important;position:static;align-items:center;gap:4px;padding:0;background:none;border:0;box-shadow:none;order:1}
  .site-nav.is-open{animation:none}
  .site-nav ul{display:flex;gap:0}
  .site-nav li a{position:relative;border:0;padding:10px 9px;font-size:.84rem;letter-spacing:.02em;color:rgba(255,255,255,.7);white-space:nowrap}
  .site-nav li a::after{content:"";position:absolute;inset-inline:9px;bottom:4px;block-size:1px;background:var(--gold-lt);transform:scaleX(0);transform-origin:left;transition:transform .3s var(--ease)}
  .site-nav li a:hover{color:#fff}
  .site-nav li a:hover::after,.site-nav li a[aria-current="page"]::after{transform:scaleX(1)}
  .site-nav li a[aria-current="page"]{color:#fff}
  .site-nav .btn{margin:0;margin-inline-start:14px;inline-size:auto;white-space:nowrap}
  .header-inner{gap:10px}
  .lang{order:2}
}
/* Longer languages (es, and later hi/ar/zh): keep the compact header (menu button) until 1440px so nothing overflows */
@media (min-width:1280px) and (max-width:1439.98px){
  html:not([lang="en"]) .nav-toggle{display:inline-flex}
  html:not([lang="en"]) .site-nav{display:none!important;position:absolute;inset-inline:0;top:100%;background:var(--night);border-block-end:1px solid rgba(212,178,106,.2);padding:8px clamp(20px,5vw,56px) 24px;box-shadow:0 24px 40px rgba(0,0,0,.35);order:0}
  html:not([lang="en"]) .site-nav.is-open{display:block!important}
  html:not([lang="en"]) .site-nav ul{display:block}
  html:not([lang="en"]) .site-nav li a{display:block;padding:14px 2px;font-size:1rem;letter-spacing:0;color:rgba(255,255,255,.82);border-block-end:1px solid rgba(255,255,255,.08)}
  html:not([lang="en"]) .site-nav li a::after{display:none}
  html:not([lang="en"]) .site-nav li a[aria-current="page"]{color:var(--gold-lt)}
  html:not([lang="en"]) .site-nav .btn{margin:18px 0 0;inline-size:100%}
  html:not([lang="en"]) .lang{order:0}
}
@media (max-width:420px){.brand-word{font-size:.84rem;letter-spacing:.09em}.mark{inline-size:34px;block-size:34px}.brand{gap:10px}}

/* ---------- Bands (slides) ---------- */
.band{padding-block:var(--band-pad);position:relative}
.band--paper{background:var(--paper)}
.band--sand{background:var(--sand)}
.band--forest{background:var(--forest);color:var(--on-dark)}
.band--night{background:var(--night);color:var(--on-dark)}
.band--forest,.band--night{isolation:isolate}
.band--forest::before,.band--night::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(60% 50% at 85% 0%,rgba(212,178,106,.08),transparent 70%),radial-gradient(50% 60% at 0% 100%,rgba(47,77,60,.55),transparent 70%)}
:is(.band--forest,.band--night) :is(h1,h2,h3,h4){color:var(--ivory)}
:is(.band--forest,.band--night) :is(.lead,.muted){color:var(--on-dark-2)}
:is(.band--forest,.band--night) a:not(.btn){color:var(--gold-lt)}
:is(.band--forest,.band--night) h2 em{color:var(--gold-lt)}
.band + .band{border-block-start:1px solid rgba(184,144,42,.14)}
.section-head{max-width:48em;margin-block-end:clamp(40px,5.5vw,72px)}
.section-head h2{max-width:15em}
.section-head--center{margin-inline:auto;text-align:center}
.section-head--center .eyebrow{justify-content:center}
.section-head--center h2,.section-head--center .lead{margin-inline:auto}
.statement{font-family:var(--serif);font-size:clamp(1.4rem,2.5vw,2rem);font-weight:400;line-height:1.32;color:var(--forest);max-width:30em;margin-block-start:36px}
:is(.band--forest,.band--night) .statement{color:var(--ivory)}

/* ---------- Grids ---------- */
.grid{display:grid;gap:clamp(16px,2.2vw,28px)}
@media (min-width:720px){.grid--2{grid-template-columns:repeat(2,1fr)}.grid--3{grid-template-columns:repeat(2,1fr)}.grid--4{grid-template-columns:repeat(2,1fr)}}
@media (min-width:1024px){.grid--3{grid-template-columns:repeat(3,1fr)}.grid--4{grid-template-columns:repeat(4,1fr)}}
.split{display:grid;gap:clamp(36px,5vw,80px);align-items:center}
@media (min-width:960px){.split{grid-template-columns:1.05fr 1fr}.split--rev > :first-child{order:2}}

/* ---------- Cards ---------- */
.card{position:relative;background:var(--cream);border:1px solid var(--line);border-radius:var(--radius);padding:clamp(24px,2.6vw,36px);box-shadow:var(--shadow);transition:transform .35s var(--ease),box-shadow .35s var(--ease),border-color .35s var(--ease)}
.card h3{margin-block-end:.4em}
.card p:last-child{margin-block-end:0}
.card--lift:hover,.partner:hover,.engage .card:hover{transform:translateY(-3px);box-shadow:var(--shadow-lg);border-color:var(--line-2)}
:is(.band--forest,.band--night) .card{background:rgba(255,255,255,.035);border-color:rgba(212,178,106,.18);box-shadow:none}
.card--quiet{background:transparent;box-shadow:none}
.kicker{font-size:.72rem;font-weight:500;letter-spacing:.2em;text-transform:uppercase;color:var(--gold-text);margin-block-end:12px}
:is(.band--forest,.band--night) .kicker{color:var(--gold-lt)}

/* ---------- Hero ---------- */
.hero{position:relative;color:var(--ivory);overflow:hidden;isolation:isolate;display:flex;align-items:flex-end;min-height:min(94vh,900px);background:var(--night)}
/* Short home hero: content-sized (no max-height clip). min-height only.
   Top padding clears the sticky header (76px) + ~48px breathing room. */
.hero--short{min-height:min(52vh,480px);align-items:flex-end}
.hero--short .hero-content{padding-block:calc(76px + 48px) clamp(32px,4vw,52px)}
.hero--short h1{font-size:clamp(2.35rem,4.6vw,4.35rem);line-height:1.06;max-width:12em}
.hero--short .eyebrow{margin-block-end:14px}
.hero--short .hero-rule{margin-block:14px}
.hero--short .lead{font-size:clamp(1.02rem,1.25vw,1.18rem);line-height:1.55;max-width:38em;margin-block-end:0}
.hero--short .btn-row{margin-block-start:22px;gap:10px}
/* Wheel follows hero: slightly less top pad so the section heading peeks at 1440×900 */
.band--wheel{padding-block-start:clamp(48px,6vw,72px)}
/* Slim proof strip after the wheel */
.band--proof{padding-block:clamp(28px,3.5vw,40px);border-block-start:1px solid rgba(212,178,106,.16)}
.band--proof .support{margin-block-start:0;max-width:64em}
.support--strip{display:grid;gap:6px 28px;align-items:baseline}
@media (min-width:900px){
  .support--strip{grid-template-columns:minmax(14em,auto) minmax(0,1fr);gap:12px 36px}
  .support--strip strong{margin-block-end:0}
}
@media (max-width:700px){
  .hero--short .hero-content{padding-block:calc(64px + 36px) 36px}
  .hero--short .btn-row .btn{inline-size:100%}
}
.hero .ph{position:absolute;inset:0;border-radius:0;z-index:-3}
.hero::before{content:"";position:absolute;inset:0;z-index:-2;pointer-events:none;background-image:linear-gradient(rgba(212,178,106,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(212,178,106,.05) 1px,transparent 1px);background-size:88px 88px;mask-image:radial-gradient(80% 70% at 70% 30%,#000 30%,transparent 80%);-webkit-mask-image:radial-gradient(80% 70% at 70% 30%,#000 30%,transparent 80%)}
.hero::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(10,22,16,.35) 0%,rgba(10,22,16,.25) 35%,rgba(10,22,16,.88) 100%),radial-gradient(60% 50% at 80% 20%,rgba(212,178,106,.14),transparent 70%)}
.hero-content{padding-block:clamp(120px,15vw,180px) clamp(56px,7vw,96px)}
.hero h1{color:var(--ivory);max-width:11.5em}
.hero h1 em{color:var(--gold-lt);font-style:italic}
.hero .lead{color:#DCE2DA;max-width:40em}
.hero .ph-caption{inset-block-start:16px;inset-block-end:auto}
.hero-rule{display:block;inline-size:64px;block-size:1px;background:var(--gold-lt);margin-block:28px}
.support{margin-block-start:44px;padding:22px 26px;border:1px solid rgba(212,178,106,.28);border-inline-start:2px solid var(--gold-lt);background:rgba(10,22,16,.5);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);border-radius:0 var(--radius) var(--radius) 0;max-width:48em}
[dir="rtl"] .support{border-radius:var(--radius) 0 0 var(--radius)}
.support strong{font-family:var(--serif);font-weight:400;font-size:1.35rem;display:block;margin-block-end:6px;color:#fff}
.support p{margin:0;color:#DCE2DA}
.support a{color:var(--gold-lt);font-weight:500}

/* ---------- Image placeholders ---------- */
.ph{position:relative;border-radius:var(--radius);overflow:hidden;min-height:260px;background:linear-gradient(155deg,#2E4B37 0%,#4A6A4C 38%,#8C9A70 70%,#C9BC94 100%)}
.ph::before{content:"";position:absolute;inset:0;background:
  radial-gradient(120% 60% at 20% 110%,rgba(18,36,27,.75),transparent 60%),
  radial-gradient(80% 50% at 85% 0%,rgba(246,241,230,.22),transparent 60%),
  repeating-linear-gradient(115deg,rgba(255,255,255,.03) 0 2px,transparent 2px 14px)}
.ph--forest{background:linear-gradient(170deg,#12241B 0%,#22402F 45%,#46664A 80%,#6E865E 100%)}
.ph--water{background:linear-gradient(165deg,#1F3B33 0%,#36605C 45%,#7FA3A0 80%,#CFDCD4 100%)}
.ph--warm{background:linear-gradient(160deg,#4E3C29 0%,#8A6A42 40%,#D2AE76 75%,#F1DDB4 100%)}
.ph--field{background:linear-gradient(175deg,#BFC7B6 0%,#93A57E 35%,#5E7A4A 70%,#3A5531 100%)}
.ph--portrait{min-height:0;aspect-ratio:4/5;background:linear-gradient(170deg,#E7E0CF,#CFC4AC)}
.ph--portrait::before{background:radial-gradient(36% 30% at 50% 38%,rgba(27,52,39,.16),transparent 70%),radial-gradient(60% 40% at 50% 100%,rgba(27,52,39,.2),transparent 70%)}
.ph--logo{min-height:0;aspect-ratio:3/1;background:var(--paper);border:1px dashed var(--line-2)}
.ph--logo::before{display:none}
.ph-initials{position:absolute;inset:0;display:grid;place-items:center;font-family:var(--serif);font-size:2.4rem;color:rgba(27,52,39,.5)}
.ph-logo-text{position:absolute;inset:0;display:grid;place-items:center;font-family:var(--serif);font-size:1.1rem;color:var(--forest);letter-spacing:.04em;text-align:center;padding:8px}
.ph-caption{position:absolute;inset-inline-start:12px;inset-block-end:12px;max-width:calc(100% - 24px);font:500 .72rem/1.35 var(--sans);letter-spacing:.02em;color:#fff;background:rgba(10,22,16,.62);padding:5px 9px;border-radius:3px}
.ph--portrait .ph-caption,.ph--logo .ph-caption{background:rgba(27,52,39,.78)}
.tag-concept{position:absolute;inset-inline-end:12px;inset-block-start:12px;font:600 .66rem var(--sans);letter-spacing:.16em;text-transform:uppercase;background:rgba(246,241,230,.92);color:var(--forest);padding:4px 8px;border-radius:2px}
.ph--tall{min-height:280px}
@media (min-width:960px){.ph--tall{min-height:440px}}
/* ---------- Real images (v3) ---------- */
.media{position:relative;border-radius:var(--radius);overflow:hidden;min-height:260px;background:var(--forest)}
.media img{position:absolute;inset:0;inline-size:100%;block-size:100%;object-fit:cover;display:block}
.media--tall{min-height:280px}
.media--left img{object-position:12% 50%}
@media (min-width:960px){.media--tall{min-height:440px}}
.hero .media{position:absolute;inset:0;border-radius:0;z-index:-3;min-height:0}
.hero .media img{object-position:50% 78%}
.media picture{display:contents}
.hero .media--hero-home img{object-position:12% 100%}
.hero:has(.media)::before{display:none}
.hero:has(.media)::after{background:linear-gradient(180deg,rgba(10,22,16,.45) 0%,rgba(10,22,16,.12) 30%,rgba(10,22,16,.35) 65%,rgba(10,22,16,.82) 100%),linear-gradient(90deg,rgba(10,22,16,.55) 0%,rgba(10,22,16,.15) 55%,transparent 80%)}
.photo-credit{position:absolute;inset-inline-end:16px;inset-block-end:14px;font:500 .68rem/1.3 var(--sans);letter-spacing:.08em;text-transform:uppercase;color:rgba(246,241,230,.85);background:rgba(10,22,16,.45);padding:4px 8px;border-radius:2px;z-index:2}
.hero .photo-credit{inset-block-end:auto;inset-block-start:16px}
.logo-tile{display:grid;place-items:center;aspect-ratio:3/1;max-inline-size:240px;background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:14px 22px}
.logo-tile img{max-inline-size:100%;max-block-size:100%;inline-size:auto;block-size:auto;object-fit:contain}
.logo-tile img.logo-sm{max-block-size:58px}
.logo-tile--text span{font-family:var(--serif);font-size:1.3rem;color:var(--forest);letter-spacing:.03em}
.frame{position:relative}
.frame::after{content:"";position:absolute;inset:14px -14px -14px 14px;border:1px solid rgba(184,144,42,.45);border-radius:var(--radius);z-index:-1;pointer-events:none}
[dir="rtl"] .frame::after{inset:14px 14px -14px -14px}

/* ---------- Status pills ---------- */
.pills{display:flex;flex-wrap:wrap;gap:6px;margin-block:12px 14px}
.pill{display:inline-flex;align-items:center;gap:7px;font:600 .66rem/1.2 var(--sans);letter-spacing:.1em;text-transform:uppercase;padding:6px 10px;border-radius:999px;white-space:normal;vertical-align:middle}
.pill::before{content:"";inline-size:6px;block-size:6px;border-radius:50%;flex:none;background:currentColor}
.pill--ok{background:var(--ok-bg);color:var(--ok-fg)}
.pill--ok::before{background:var(--ok-dot)}
.pill--prog{background:var(--prog-bg);color:var(--prog-fg)}
.pill--prog::before{background:var(--prog-dot)}
.pill--prop{background:var(--prop-bg);color:var(--prop-fg)}
.pill--prop::before{background:var(--prop-dot)}
.pill--vision{background:rgba(212,178,106,.14);color:var(--gold-lt);border:1px solid rgba(212,178,106,.4)}
.pill--vision::before{background:var(--gold-lt)}

/* ---------- Asset stack ---------- */
ol.stack{list-style:none;margin:0;padding:0}
.stack{display:grid;gap:20px;counter-reset:asset}
@media (min-width:720px){.stack{grid-template-columns:repeat(2,1fr)}}
@media (min-width:1080px){.stack{grid-template-columns:repeat(3,1fr)}}
.asset{position:relative;overflow:hidden;background:var(--cream);border:1px solid var(--line);border-radius:var(--radius);padding:32px 28px 28px;box-shadow:var(--shadow);display:flex;flex-direction:column;transition:transform .35s var(--ease),box-shadow .35s var(--ease)}
.asset:hover{transform:translateY(-3px);box-shadow:var(--shadow-lg)}
.asset::before{content:"";position:absolute;inset-inline:0;inset-block-start:0;block-size:3px;background:var(--prop-dot)}
.asset[data-status="ok"]::before{background:var(--ok-dot)}
.asset[data-status="prog"]::before{background:var(--prog-dot)}
.asset[data-status="mixed"]::before{background:linear-gradient(to right,var(--ok-dot) 0 50%,var(--prog-dot) 50% 100%)}
[dir="rtl"] .asset[data-status="mixed"]::before{background:linear-gradient(to left,var(--ok-dot) 0 50%,var(--prog-dot) 50% 100%)}
.asset-top{display:flex;align-items:center;justify-content:space-between;gap:12px}
.asset-icon{inline-size:48px;block-size:48px;border-radius:50%;background:var(--forest);display:grid;place-items:center;color:var(--gold-lt)}
.asset-icon svg{inline-size:22px;block-size:22px}
.asset-no{font:400 1.6rem var(--serif);color:rgba(184,144,42,.55)}
.asset h3{margin:20px 0 0;font-size:1.4rem}
.asset p{font-size:.97rem;color:var(--muted);margin:0}
.asset .local{margin-block-start:14px;padding-block-start:14px;border-block-start:1px solid var(--line);color:var(--ink);font-size:.95rem}
.asset .local b{color:var(--forest)}
.next-line{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-block-start:24px;padding:18px 24px;background:transparent;border:1px dashed var(--line-2);border-radius:var(--radius)}
.next-line p{margin:0;flex:1 1 320px}
.legend{display:flex;flex-wrap:wrap;gap:10px 18px;align-items:center;margin-block-start:18px;font-size:.85rem;color:var(--muted)}
.legend span{display:inline-flex;align-items:center;gap:7px}
.legend i{inline-size:10px;block-size:10px;border-radius:50%;display:inline-block}
.under-stack{max-width:44em;margin-block-start:36px;font-family:var(--serif);font-size:1.3rem;line-height:1.45;color:var(--forest)}

/* ---------- Stats ---------- */
.stats{display:grid;gap:20px;margin-block:44px 32px}
@media (min-width:720px){.stats{grid-template-columns:repeat(3,1fr);gap:32px}}
.stat{border-block-start:1px solid var(--gold);padding-block-start:20px}
.stat b{display:block;font-family:var(--serif);font-weight:400;font-size:clamp(2.6rem,5vw,3.8rem);line-height:1;color:var(--forest);letter-spacing:-.02em}
.stat span{display:block;margin-block-start:10px;color:var(--muted);font-size:.95rem}
.source{font-size:.8rem;line-height:1.55;color:var(--muted-2);max-width:62em;margin-block-start:32px;padding-block-start:16px;border-block-start:1px solid var(--line)}

/* ---------- Pillars ---------- */
.pillars{display:grid;gap:16px;margin-block-start:40px}
@media (min-width:720px){.pillars{grid-template-columns:repeat(3,1fr);gap:32px}}
.pillar{padding:24px 0;border-block-start:1px solid rgba(212,178,106,.35)}
.pillar h3{font-size:1.7rem;font-weight:400;margin-block-end:.3em}
.pillar p{margin:0;color:var(--on-dark-2)}
.band:not(.band--forest):not(.band--night) .pillar{border-block-start-color:var(--line-2)}
.band:not(.band--forest):not(.band--night) .pillar p{color:var(--muted)}

/* ---------- Eight Essentials wheel ---------- */
.band--wheel{background:radial-gradient(70% 60% at 30% 45%,#1B3427 0%,var(--night) 70%)}
.band--wheel .section-head{margin-block-end:clamp(32px,4vw,56px)}
.wheel-explorer{display:grid;gap:clamp(28px,4vw,56px);align-items:center}
@media (min-width:1024px){.wheel-explorer{grid-template-columns:minmax(0,1.12fr) minmax(360px,.88fr)}}
.wheel-figure{margin:0;max-inline-size:640px;inline-size:100%;margin-inline:auto}
.wheel-svg{inline-size:100%;block-size:auto;overflow:visible;-webkit-tap-highlight-color:transparent}
.wheel-halo{fill:none;stroke:#78816A;stroke-opacity:.25}
.wheel-ring{fill:none;stroke:#C9A961;stroke-opacity:.18}
.wheel-ticks{stroke:#C9A961;stroke-opacity:.35;stroke-width:1}
.wheel-node{cursor:pointer;outline:none}
.wheel-sector{fill:url(#sector-fill);stroke:#7D896E;stroke-opacity:.6;stroke-width:1.2;filter:url(#wheel-depth);transition:fill .3s var(--ease),stroke .3s var(--ease),stroke-width .3s,opacity .3s}
.wheel-node.is-linked .wheel-sector{stroke:#D1B574;stroke-opacity:1;stroke-width:2}
.wheel-node.is-selected .wheel-sector{fill:url(#sector-selected);stroke:#F7E4B6;stroke-opacity:1;stroke-width:2.5}
.wheel-node:hover .wheel-sector{stroke:#F3E3BA;stroke-opacity:1;stroke-width:2.5}
.wheel-node:focus-visible .wheel-sector{stroke:#fff;stroke-opacity:1;stroke-width:4}
.wheel-icon{color:#EEE1B9;pointer-events:none;transition:color .3s}
.wheel-label{text-anchor:middle;font:500 22px var(--serif);fill:#FBF8F2;pointer-events:none;transition:fill .3s}
.wheel-node.is-selected .wheel-icon{color:#22382B}
.wheel-node.is-selected .wheel-label{fill:#15241B}
.wheel-orbit{fill:none;stroke:#C9A961;stroke-opacity:.22;stroke-dasharray:2 6}
.wheel-spoke{stroke:#52654E;stroke-width:1;opacity:.5;transition:stroke .3s,opacity .3s}
.wheel-spoke.is-active{stroke:#D4B26A;stroke-width:2;opacity:1}
.wheel-link{fill:none;stroke:#D4B26A;stroke-width:2.5;stroke-linecap:round;stroke-dasharray:420;stroke-dashoffset:420;animation:wheelDraw .7s var(--ease) forwards}
.wheel-dot{fill:#D4B26A;stroke:#12241B;stroke-width:2}
.wheel-dot.is-origin{fill:#F1DCA7}
@keyframes wheelDraw{to{stroke-dashoffset:0}}
.wheel-monogram{font:400 76px var(--serif);text-anchor:middle;fill:#D4B26A}
.wheel-brand{font:400 26px var(--serif);letter-spacing:6px;text-anchor:middle;fill:#FBF8F2}
.wheel-center-small{text-anchor:middle;font:400 12.5px var(--sans);letter-spacing:2.4px;fill:#D4B26A}
.wheel-caption{margin-block-start:18px;text-align:center;font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:var(--on-dark-2)}
.explorer{background:var(--paper);color:var(--ink);border-radius:var(--radius);border-block-start:3px solid var(--gold);padding:clamp(24px,3vw,40px);box-shadow:0 40px 80px -40px rgba(0,0,0,.6)}
.explorer-kicker{font-size:.7rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--gold-text);margin:0 0 18px}
.ess-tabs{display:flex;flex-wrap:wrap;gap:8px;padding-block-end:22px;border-block-end:1px solid var(--line)}
.ess-tab{font:400 .86rem var(--sans);color:#344535;background:transparent;border:1px solid #B7BDA9;border-radius:999px;padding:8px 14px;min-height:38px;cursor:pointer;transition:background .2s var(--ease),color .2s,border-color .2s}
.ess-tab:hover{border-color:var(--forest);color:var(--forest)}
.ess-tab[aria-selected="true"]{background:var(--forest);color:#fff;border-color:var(--forest)}
.ess-panels{padding-block-start:24px}
.js .ess-panels{display:grid}
.js .ess-panel{grid-area:1 / 1}
.js .ess-panel:not(.is-active){visibility:hidden;opacity:0;pointer-events:none}
.js .ess-panel.is-active{animation:panelIn .45s var(--ease)}
@keyframes panelIn{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
html:not(.js) .ess-panel + .ess-panel{margin-block-start:32px;padding-block-start:32px;border-block-start:1px solid var(--line)}
.ess-count{font-size:.72rem;letter-spacing:.2em;color:var(--gold-text);margin:0 0 10px}
.ess-panel h3{font-size:clamp(1.9rem,3vw,2.4rem);font-weight:400;color:var(--ink);margin:0 0 12px}
.ess-desc{color:var(--muted);font-size:1.02rem}
.ess-quote{margin:0 0 20px;padding:2px 0 2px 18px;border-inline-start:2px solid var(--gold);font-family:var(--serif);font-style:italic;font-size:1.1rem;line-height:1.5;color:var(--forest)}
.ess-quote p{margin:0}
.ess-meta{margin:0;display:grid;gap:14px;padding-block-start:18px;border-block-start:1px solid var(--line)}
.ess-meta dt{font-size:.66rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--gold-text);margin-block-end:3px}
.ess-meta dd{margin:0;font-size:.95rem;line-height:1.55;color:var(--ink)}
.ess-er .pill{margin-inline-end:4px;margin-block-end:4px}
.explorer .ess-panel a.link-arrow{margin-block-start:20px;color:var(--forest)}
.explorer .ess-panel a.link-arrow:hover{color:var(--gold-text)}
.explorer-note{margin:22px 0 0;font-size:.76rem;color:var(--muted-2)}
.guardrail{margin-block-start:40px;padding:24px 28px;border-radius:var(--radius);border:1px solid rgba(212,178,106,.28);background:rgba(255,255,255,.03);color:var(--on-dark)}
.guardrail strong{font-family:var(--serif);font-weight:400;font-size:1.3rem;color:var(--gold-lt)}
.guardrail p{margin:0}
.band--wheel .statement a{color:var(--gold-lt);text-decoration:none}

/* legacy list styles (still used on some pages) */
.essentials{list-style:none;margin:0;padding:0;display:grid;gap:0;counter-reset:ess}
.essentials li{counter-increment:ess;display:grid;grid-template-columns:auto 1fr;gap:4px 14px;padding:16px 0;border-block-end:1px solid var(--line)}
.essentials li::before{content:counter(ess,decimal-leading-zero);font:500 .8rem var(--sans);letter-spacing:.1em;color:var(--gold-text);padding-block-start:4px}
.essentials b{font-family:var(--serif);font-weight:500;font-size:1.15rem;color:var(--forest);display:block}
.essentials p{margin:2px 0 0;font-size:.95rem;color:var(--muted)}

/* ---------- Timeline chips (home) ---------- */
.chips{list-style:none;margin:36px 0 0;padding:0;display:flex;flex-direction:column;gap:10px}
.chips li{display:flex;align-items:baseline;gap:10px;padding:14px 16px;border:1px solid rgba(212,178,106,.22);border-radius:var(--radius);background:rgba(255,255,255,.03)}
.chips li b{font-family:var(--serif);font-weight:400;font-size:1.1rem;color:var(--gold-lt);white-space:nowrap}
.chips li.target{border-style:dashed}
@media (min-width:960px){
  .chips{flex-direction:row;flex-wrap:wrap;gap:10px}
  .chips li{flex:1 1 calc(33.33% - 10px);flex-direction:column;gap:2px}
}
@media (min-width:1200px){.chips li{flex:1 1 0}}

/* ---------- Vertical timeline (Elk Ridge) ---------- */
.timeline{list-style:none;margin:0;padding:0;position:relative}
.timeline::before{content:"";position:absolute;inset-block:8px;inset-inline-start:7px;inline-size:1px;background:linear-gradient(var(--gold),var(--line))}
.timeline li{position:relative;padding-inline-start:40px;padding-block-end:30px;display:grid;gap:4px}
.timeline li::before{content:"";position:absolute;inset-inline-start:0;top:6px;inline-size:15px;block-size:15px;border-radius:50%;background:var(--ivory);border:2px solid var(--forest)}
.timeline li.is-target::before,.timeline li.is-pursuing::before{border-style:dashed;border-color:var(--gold-text)}
.timeline li.is-now::before{background:var(--gold);border-color:var(--forest)}
.timeline .when{font:600 .74rem var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--gold-text)}
.timeline .what{font-size:1rem}
.timeline .what strong{font-family:var(--serif);font-weight:500;font-size:1.2rem;color:var(--forest);display:block}
@media (min-width:860px){
  .timeline::before{inset-inline-start:207px}
  .timeline li{grid-template-columns:170px 1fr;column-gap:72px;padding-inline-start:0}
  .timeline li::before{inset-inline-start:200px}
  .timeline .when{text-align:end;padding-block-start:4px}
}

/* ---------- Fact bar ---------- */
.facts{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:rgba(212,178,106,.2);border:1px solid rgba(212,178,106,.2);border-radius:var(--radius);overflow:hidden}
.fact{background:var(--forest);padding:24px 22px}
.fact b{display:block;font-family:var(--serif);font-weight:400;font-size:clamp(1.2rem,1.8vw,1.5rem);line-height:1.15;color:var(--ivory)}
.fact span{display:block;margin-block-start:8px;font-size:.85rem;color:var(--on-dark-2)}
.fact:last-child{grid-column:1 / -1}
@media (min-width:960px){.facts{grid-template-columns:repeat(5,1fr)}.fact:last-child{grid-column:auto}}

/* ---------- Partners / team ---------- */
.partner{display:flex;flex-direction:column;gap:14px}
.partner .supports{font-size:.85rem;color:var(--muted);border-block-start:1px solid var(--line);padding-block-start:12px;margin-block-start:auto}
.partner .supports b{color:var(--forest);font-weight:500}
.nation-feature{display:grid;gap:clamp(24px,4vw,48px);align-items:center;padding:clamp(28px,4vw,48px);margin-block-end:clamp(20px,2.4vw,28px);background:var(--forest);color:var(--on-dark);border:1px solid rgba(212,178,106,.3);border-radius:var(--radius);box-shadow:var(--shadow-lg);position:relative;overflow:hidden;isolation:isolate}
.nation-feature::before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(60% 80% at 100% 0%,rgba(212,178,106,.12),transparent 70%)}
@media (min-width:860px){.nation-feature:not(.nation-feature--text){grid-template-columns:auto 1fr}}
.nation-feature--text{grid-template-columns:1fr}
.nation-feature--text .highlight{max-width:36em}
.nation-logo{inline-size:clamp(150px,18vw,200px);aspect-ratio:1;border-radius:50%;background:#fff;display:grid;place-items:center;padding:10px;box-shadow:0 0 0 1px rgba(212,178,106,.5),0 0 0 8px rgba(212,178,106,.08)}
.nation-logo img{inline-size:100%;block-size:auto;border-radius:50%}
.nation-feature h3{font-size:clamp(1.6rem,3vw,2.3rem);font-weight:400;color:var(--ivory);margin-block-end:.35em}
.nation-feature .kicker{color:var(--gold-lt)}
.nation-feature p{color:var(--on-dark-2);max-width:42em}
.nation-feature .highlight{font-family:var(--serif);font-size:clamp(1.15rem,1.8vw,1.35rem);line-height:1.45;color:var(--ivory);border-inline-start:2px solid var(--gold-lt);padding-inline-start:16px;margin-block:14px 16px}
.person h3{margin:16px 0 2px}
.person .role{font-size:.76rem;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--gold-text);margin-block-end:10px}
.person p{color:var(--muted);font-size:.97rem}
.person{display:grid;grid-template-columns:104px 1fr;column-gap:18px;align-items:start}
.person > .ph,.person > .media{grid-row:1 / span 4}
.person > .media{min-height:0;aspect-ratio:4/5;background:var(--sand)}
.person h3{margin-block-start:0}
.person .ph-caption{display:none}
@media (min-width:720px){
  .person{display:block}
  .person > .ph,.person > .media{aspect-ratio:1/1}
  .person h3{margin-block-start:18px}
  .person .ph-caption{display:block}
}

/* ---------- Worthy Investments & funding vision ---------- */
.band--wi{background:linear-gradient(180deg,var(--night) 0%,#0E1B15 100%)}
.wi-lockup{display:inline-flex;align-items:center;gap:14px;margin-block-end:28px;color:#fff;text-decoration:none}
.wi-lockup .mark{inline-size:52px;block-size:52px}
.wi-lockup .brand-word{font-size:1.15rem}
.wi-grid{display:grid;gap:clamp(16px,2vw,24px);margin-block-start:clamp(32px,4vw,48px)}
@media (min-width:860px){.wi-grid{grid-template-columns:repeat(3,1fr)}}
.wi-card{padding:clamp(24px,2.6vw,32px);border:1px solid rgba(212,178,106,.2);border-radius:var(--radius);background:rgba(255,255,255,.03);transition:border-color .3s var(--ease),background .3s var(--ease),transform .3s var(--ease)}
.wi-card:hover{border-color:rgba(212,178,106,.5);background:rgba(255,255,255,.05);transform:translateY(-3px)}
.wi-card .num{font:400 1.1rem var(--serif);color:var(--gold-lt);display:block;margin-block-end:14px}
.wi-card h3{font-size:1.35rem;margin-block-end:.4em}
.wi-card p{color:var(--on-dark-2);font-size:.96rem;margin:0}
.vision{margin-block-start:clamp(56px,7vw,96px);display:grid;gap:clamp(32px,4vw,64px);padding-block-start:clamp(48px,6vw,80px);border-block-start:1px solid rgba(212,178,106,.2)}
@media (min-width:960px){.vision{grid-template-columns:1fr 1fr}}
.vision h3{font-size:clamp(1.9rem,3.4vw,2.8rem);font-weight:400;line-height:1.12}
.principles{list-style:none;margin:0;padding:0;display:grid;gap:0}
.principle{display:grid;grid-template-columns:44px 1fr;gap:4px 16px;padding:20px 0;border-block-end:1px solid rgba(212,178,106,.16)}
.principle:first-child{padding-block-start:0}
.principle .ico{grid-row:span 2;inline-size:44px;block-size:44px;border-radius:50%;border:1px solid rgba(212,178,106,.45);display:grid;place-items:center;color:var(--gold-lt)}
.principle .ico svg{inline-size:20px;block-size:20px}
.principle b{font-family:var(--serif);font-weight:400;font-size:1.25rem;color:var(--ivory)}
.principle p{margin:0;color:var(--on-dark-2);font-size:.95rem}
.access{display:flex;flex-wrap:wrap;gap:8px 0;align-items:center;list-style:none;margin:24px 0 0;padding:0;font-size:.8rem;letter-spacing:.12em;text-transform:uppercase;color:var(--on-dark)}
.access li{display:flex;align-items:center}
.access li + li::before{content:"";inline-size:28px;block-size:1px;background:var(--gold-lt);opacity:.6;margin-inline:12px}
.access b{font-weight:500;color:var(--gold-lt);margin-inline-end:6px}
.compliance-note{margin-block-start:28px;padding:16px 18px;border:1px solid rgba(212,178,106,.22);border-radius:var(--radius);font-size:.84rem;line-height:1.6;color:var(--on-dark-2);background:rgba(0,0,0,.15)}
.compliance-note strong{color:var(--ivory);font-weight:500}
.band:not(.band--wi):not(.band--night):not(.band--forest) .compliance-note{border-color:var(--line);color:var(--muted);background:var(--paper)}
.band:not(.band--wi):not(.band--night):not(.band--forest) .compliance-note strong{color:var(--ink)}

/* ---------- Steps ---------- */
.steps{list-style:none;margin:0;padding:0;display:grid;gap:16px;counter-reset:step}
@media (min-width:720px){.steps{grid-template-columns:repeat(2,1fr)}}
@media (min-width:1080px){.steps{grid-template-columns:repeat(4,1fr)}}
.steps li{counter-increment:step;position:relative;background:var(--cream);border:1px solid var(--line);border-radius:var(--radius);padding:28px 24px 24px}
.steps li::before{content:counter(step,decimal-leading-zero);display:block;font-family:var(--serif);font-size:1.8rem;line-height:1;color:var(--gold);margin-block-end:16px}
.steps h3{font-size:1.3rem;margin-block-end:.3em}
.steps p{margin:0;color:var(--muted);font-size:.96rem}
:is(.band--forest,.band--night,.band--wi) .steps li{background:rgba(255,255,255,.035);border-color:rgba(212,178,106,.18)}
:is(.band--forest,.band--night,.band--wi) .steps li::before{color:var(--gold-lt)}
:is(.band--forest,.band--night,.band--wi) .steps p{color:var(--on-dark-2)}

/* ---------- Engage ---------- */
.engage .card{display:flex;flex-direction:column}
.engage .card .who{font-size:.72rem;font-weight:500;letter-spacing:.18em;text-transform:uppercase;color:var(--gold-text);margin-block-end:10px}
.engage .card .btn{margin-block-start:auto;align-self:flex-start}
.engage .card p{margin-block-end:24px}

/* ---------- Forms ---------- */
.form{display:grid;gap:18px;background:var(--cream);border:1px solid var(--line);border-radius:var(--radius);padding:clamp(24px,3.4vw,44px);box-shadow:var(--shadow)}
@media (min-width:720px){.form .row-2{display:grid;grid-template-columns:1fr 1fr;gap:18px}}
.form .row-2 .field{align-content:end}
.field{display:grid;gap:6px}
.field label,.field legend{font-weight:500;font-size:.9rem;color:var(--ink)}
.field .opt{font-weight:400;color:var(--muted-2)}
.field input,.field select,.field textarea{font:inherit;font-size:1rem;color:var(--ink);background:var(--paper);border:1px solid #CFC5B1;border-radius:4px;padding:12px 14px;min-height:50px;inline-size:100%;transition:border-color .2s,box-shadow .2s}
.field textarea{min-height:130px;resize:vertical}
.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--forest);box-shadow:0 0 0 3px rgba(184,144,42,.25)}
.check{display:grid;grid-template-columns:auto 1fr;gap:12px;align-items:start;font-size:.93rem;color:var(--ink);background:var(--paper);border:1px solid var(--line);border-radius:4px;padding:14px}
.check input{inline-size:20px;block-size:20px;margin-block-start:2px;accent-color:var(--forest)}
.hp{position:absolute!important;inset-inline-start:-10000px;inline-size:1px;block-size:1px;overflow:hidden}
.form-note{font-size:.82rem;color:var(--muted-2);margin:0}

/* ---------- Footer ---------- */
.site-footer{background:var(--night);color:var(--on-dark-2);padding-block:80px 36px;font-size:.93rem;border-block-start:1px solid rgba(212,178,106,.18)}
.site-footer a{color:#E9E2D2;text-decoration:none}
.site-footer a:hover{color:var(--gold-lt)}
.footer-top{display:grid;gap:40px}
@media (min-width:860px){.footer-top{grid-template-columns:1.5fr 1fr 1fr}}
.site-footer .brand{color:#fff}
.site-footer .tagline{font-family:var(--serif);font-style:italic;font-size:1.5rem;color:var(--ivory);margin:22px 0 8px}
.site-footer h2{font:500 .72rem var(--sans);letter-spacing:.2em;text-transform:uppercase;color:var(--gold-lt);margin:0 0 16px}
.site-footer ul{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.no-offer{margin-block-start:48px;padding-block-start:24px;border-block-start:1px solid rgba(212,178,106,.18);font-size:.84rem;color:var(--ivory);margin-block-end:10px}
.disclosure{margin:0;font-size:.76rem;line-height:1.65;color:#9FAEA3}
.footer-base{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;margin-block-start:24px;font-size:.78rem;color:#9FAEA3;letter-spacing:.04em}

/* ---------- Misc ---------- */
.center{text-align:center}
.mt-0{margin-block-start:0}
.cta-band{text-align:center}
.cta-band h2{margin-inline:auto;max-width:14em}
.cta-band .btn-row{justify-content:center}
.notfound{min-height:60vh;display:grid;place-items:center;text-align:center}
.list-plain{list-style:none;padding:0;margin:0;display:grid;gap:10px}
.list-plain li{padding-inline-start:22px;position:relative}
.list-plain li::before{content:"";position:absolute;inset-inline-start:0;top:.8em;inline-size:10px;block-size:1px;background:var(--gold)}
:is(.band--forest,.band--night,.band--wi) .list-plain li::before{background:var(--gold-lt)}
.area-list{list-style:none;margin:0;padding:0;display:grid;gap:0}
@media (min-width:860px){.area-list{grid-template-columns:repeat(2,1fr);column-gap:48px}}
.area-list li{padding:20px 0;border-block-end:1px solid var(--line)}
.area-list b{font-family:var(--serif);font-weight:500;font-size:1.2rem;color:var(--forest);display:block;margin-block-end:2px}
.area-list p{margin:0;color:var(--muted);font-size:.96rem}
.area-list .n{font:500 .74rem var(--sans);letter-spacing:.14em;color:var(--gold-text)}
.measure{max-width:780px}
.band--intro{padding-block-end:clamp(24px,4vw,48px)}
.band--intro + .band{border-block-start:0}

/* ---------- Scroll reveal (JS adds .reveal only when motion is OK) ---------- */
.reveal{opacity:0;transform:translateY(18px);transition:opacity .8s var(--ease),transform .8s var(--ease)}
.reveal.is-in{opacity:1;transform:none}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{transition:none!important;animation:none!important}
  .wheel-link{stroke-dashoffset:0}
  .btn:hover,.card:hover,.asset:hover,.wi-card:hover{transform:none}
}

/* Wheel legibility on small screens */
@media (max-width:640px){
  .wheel-label{font-size:28px}
  .wheel-label.l1{transform:translateY(-2px)}
  .wheel-label.l2{transform:translateY(5px)}
  .wheel-icon{opacity:.95}
  .wheel-center-small{font-size:16px;letter-spacing:1.4px}
  .wheel-brand{font-size:30px}
  .wheel-caption{font-size:.66rem;letter-spacing:.14em}
  .explorer{padding:22px 18px}
  .ess-tab{padding:7px 12px;font-size:.82rem}
}
.partner .ph--logo{max-inline-size:240px;inline-size:100%}
@media (max-width:600px){
  .access{display:grid;grid-template-columns:1fr 1fr;gap:10px}
  .access li + li::before{display:none}
  .access li{padding:10px 12px;border:1px solid rgba(212,178,106,.22);border-radius:4px}
}

/* ---------- RavenStone feature (sits with First Nations partnership panel) ---------- */
.nation-story{margin-block-end:clamp(20px,2.4vw,28px)}
.nation-story .nation-feature{margin-block-end:0;border-end-start-radius:0;border-end-end-radius:0}
.rs-feature{display:grid;gap:clamp(24px,4vw,56px);padding:clamp(28px,4vw,48px);background:var(--cream);border:1px solid var(--line);border-block-start:0;border-radius:0 0 var(--radius) var(--radius);box-shadow:var(--shadow)}
@media (min-width:960px){.rs-feature{grid-template-columns:1.1fr 1fr}}
.rs-logo{display:inline-block;background:#fff;border:1px solid var(--line);border-radius:4px;padding:12px 16px;margin-block-end:22px}
.rs-logo img{inline-size:220px;block-size:auto}
.rs-feature h3{font-size:clamp(1.5rem,2.6vw,2rem);font-weight:400;margin-block-end:.3em}
.rs-tag{font-family:var(--serif);font-style:italic;font-size:1.2rem;color:var(--forest);border-inline-start:2px solid var(--gold);padding-inline-start:14px}
.rs-feature p{color:var(--muted)}
.rs-feature .supports{font-size:.86rem;border-block-start:1px solid var(--line);padding-block-start:12px}
.rs-feature .supports b{color:var(--forest);font-weight:500}
.rs-work{align-self:start;padding:clamp(20px,2.4vw,28px);background:var(--paper);border:1px solid var(--line);border-radius:var(--radius)}
.rs-list{list-style:none;margin:0;padding:0}
.rs-list li{display:grid;gap:2px;padding:14px 0;border-block-end:1px solid var(--line)}
.rs-list li:first-child{padding-block-start:4px}
.rs-list b{font-family:var(--serif);font-weight:500;font-size:1.1rem;color:var(--forest)}
.rs-list span{font-size:.92rem;color:var(--muted)}
.rs-note{margin:14px 0 0;font-size:.78rem;color:var(--muted-2)}

/* v4: regional (off-site) photo with caption + credit */
.region-figure{margin:0}
.region-figure figcaption{margin-block-start:12px;font-size:.8rem;line-height:1.55;color:var(--muted-2)}
.region-figure figcaption a{color:inherit;text-decoration:underline;text-underline-offset:2px}
@media (min-width:960px){.split--region{grid-template-columns:5fr 6fr}}
html:not(.js) .lang:focus-within .lang-menu[hidden]{display:block}

/* ---------- Hindi (Devanagari) ----------
   Latin brand names keep Playfair Display / Outfit; Devanagari glyphs fall back to Noto Serif / Noto Sans Devanagari.
   Devanagari needs taller line boxes (headline + matras above, conjuncts below), no letter-spacing (it breaks shaping),
   no synthetic italics, and slightly larger small labels (no uppercase to carry them). */
html[lang="hi"]{
  --serif:"Playfair Display", "Noto Serif Devanagari", "Iowan Old Style", "Palatino Linotype", Georgia, serif;
  --sans:"Outfit", "Noto Sans Devanagari", system-ui, -apple-system, "Segoe UI", Roboto, "Noto Sans", Arial, sans-serif;
}
html[lang="hi"] body{line-height:1.85}
html[lang="hi"] *{letter-spacing:0!important}
html[lang="hi"] .brand-word,html[lang="hi"] .brand-word *{letter-spacing:.12em!important}
html[lang="hi"] .wheel-brand{letter-spacing:6px!important}
@media (max-width:420px){html[lang="hi"] .brand-word,html[lang="hi"] .brand-word *{letter-spacing:.09em!important}}
html[lang="hi"] h1,html[lang="hi"] h2,html[lang="hi"] h3,html[lang="hi"] h4{line-height:1.36}
html[lang="hi"] h1{font-size:clamp(2.4rem,5.8vw,4.8rem);line-height:1.3}
html[lang="hi"] .hero--short h1{font-size:clamp(2.15rem,4.2vw,3.9rem);line-height:1.3}
html[lang="hi"] .vision h3{line-height:1.36}
html[lang="hi"] h1 em,html[lang="hi"] h2 em,html[lang="hi"] .hero h1 em,html[lang="hi"] .ess-quote,html[lang="hi"] .site-footer .tagline,html[lang="hi"] .rs-tag{font-style:normal}
html[lang="hi"] .lead,html[lang="hi"] .hero--short .lead{line-height:1.8}
html[lang="hi"] .statement,html[lang="hi"] .under-stack,html[lang="hi"] .nation-feature .highlight{line-height:1.6}
html[lang="hi"] .stat b,html[lang="hi"] .fact b{line-height:1.3}
html[lang="hi"] .eyebrow{font-size:.86rem}
html[lang="hi"] .kicker,html[lang="hi"] .explorer-kicker,html[lang="hi"] .engage .card .who,html[lang="hi"] .timeline .when,html[lang="hi"] .site-footer h2{font-size:.84rem}
html[lang="hi"] .person .role{font-size:.86rem}
html[lang="hi"] .ess-meta dt{font-size:.78rem}
html[lang="hi"] .btn{font-size:.95rem;line-height:1.5;padding-block:12px}
html[lang="hi"] .pill{font-size:.76rem;line-height:1.5;padding-block:4px}
html[lang="hi"] .tag-concept{font-size:.74rem;line-height:1.5}
html[lang="hi"] .photo-credit,html[lang="hi"] .ph-caption{font-size:.76rem;line-height:1.5}
html[lang="hi"] .wheel-caption{font-size:.84rem}
html[lang="hi"] .access{font-size:.9rem}
html[lang="hi"] .disclosure{line-height:1.8}
html[lang="hi"] .compliance-note,html[lang="hi"] .ess-meta dd{line-height:1.75}
html[lang="hi"] .wheel-center-small{font-size:14px}
html[lang="hi"] .site-nav li a{font-size:.9rem}

/* ---------- v8: "Live with us" links + Worthy Capital block ---------- */
.link-arrow--light{color:var(--ivory);border-block-end-color:var(--gold-lt)}
.link-arrow--light:hover{color:var(--gold-lt)}
.hero-live{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;margin:18px 0 0;font-size:.92rem;color:var(--on-dark-2)}
.hero-live .link-arrow{font-size:.98rem}
.footer-live{color:var(--gold-lt)}
.wc-block{display:grid;gap:clamp(20px,3vw,48px);align-items:start;margin-block-start:clamp(48px,6vw,72px);padding:clamp(24px,3.4vw,40px);border:1px solid rgba(212,178,106,.28);border-radius:var(--radius);background:rgba(255,255,255,.03)}
@media (min-width:900px){.wc-block{grid-template-columns:minmax(0,5fr) minmax(0,7fr)}}
.wc-block h3{font-size:clamp(1.7rem,2.8vw,2.3rem);color:var(--ivory);margin:14px 0 0}
.wc-block .eyebrow{margin-block-end:14px}
.wc-block .lead{color:var(--on-dark);margin:0}
.wc-block .compliance-note{margin-block-start:18px}
.area-list b .pill{margin-inline-start:8px;vertical-align:middle}
.btn-row > .confirm{align-self:center}

/* ---------- Arabic (RTL) ----------
   Every rule below is scoped to html[dir="rtl"] or html[lang="ar"], so nothing can reach LTR pages.
   Layout already uses logical properties (inline-start/end, margin-inline...), so most of it mirrors on its own;
   these rules fix the few physical leftovers and set Arabic typography. */
html[dir="rtl"] .site-nav li a::after{transform-origin:right}
html[dir="rtl"] .hero:has(.media)::after{background:linear-gradient(180deg,rgba(10,22,16,.45) 0%,rgba(10,22,16,.12) 30%,rgba(10,22,16,.35) 65%,rgba(10,22,16,.82) 100%),linear-gradient(270deg,rgba(10,22,16,.55) 0%,rgba(10,22,16,.15) 55%,transparent 80%)}
html[dir="rtl"] .ess-quote{padding:2px 18px 2px 0}
html[dir="rtl"] .ext::after{content:" ↖"}
/* Latin islands stay LTR: CONFIRM notes, the brand lockup, e-mail fields */
html[dir="rtl"] .confirm,html[dir="rtl"] .brand-word{direction:ltr;unicode-bidi:isolate}
html[dir="rtl"] .field input[type="email"]{direction:ltr;text-align:right}
html[dir="rtl"] .field input[type="email"]::placeholder{text-align:right}

html[lang="ar"]{
  --serif:"Playfair Display", "Amiri", "Noto Naskh Arabic", Georgia, serif;
  --sans:"Outfit", "IBM Plex Sans Arabic", "Noto Sans Arabic", system-ui, -apple-system, "Segoe UI", Tahoma, Arial, sans-serif;
}
html[lang="ar"] body{line-height:1.9;font-size:1.1rem}
html[lang="ar"] *{letter-spacing:0!important;text-transform:none!important}
html[lang="ar"] .brand-word,html[lang="ar"] .brand-word *{letter-spacing:.12em!important;text-transform:uppercase!important}
html[lang="ar"] .wheel-brand{letter-spacing:6px!important}
@media (max-width:420px){html[lang="ar"] .brand-word,html[lang="ar"] .brand-word *{letter-spacing:.09em!important}}
html[lang="ar"] h1,html[lang="ar"] h2,html[lang="ar"] h3,html[lang="ar"] h4{line-height:1.5}
html[lang="ar"] h1{font-size:clamp(2.5rem,6vw,5rem);line-height:1.4}
html[lang="ar"] .hero--short h1{font-size:clamp(2.25rem,4.4vw,4.1rem);line-height:1.4}
html[lang="ar"] .vision h3{line-height:1.5}
html[lang="ar"] h1 em,html[lang="ar"] h2 em,html[lang="ar"] .hero h1 em,html[lang="ar"] .ess-quote,html[lang="ar"] .site-footer .tagline,html[lang="ar"] .rs-tag{font-style:normal}
html[lang="ar"] .lead,html[lang="ar"] .hero--short .lead{line-height:1.85}
html[lang="ar"] .statement,html[lang="ar"] .under-stack,html[lang="ar"] .nation-feature .highlight{line-height:1.7}
html[lang="ar"] .stat b,html[lang="ar"] .fact b{line-height:1.4}
html[lang="ar"] .eyebrow{font-size:.9rem}
html[lang="ar"] .kicker,html[lang="ar"] .explorer-kicker,html[lang="ar"] .engage .card .who,html[lang="ar"] .timeline .when,html[lang="ar"] .site-footer h2{font-size:.88rem}
html[lang="ar"] .person .role{font-size:.9rem}
html[lang="ar"] .ess-meta dt{font-size:.82rem}
html[lang="ar"] .btn{font-size:1rem;line-height:1.5;padding-block:12px}
html[lang="ar"] .pill{font-size:.8rem;line-height:1.5;padding-block:4px}
html[lang="ar"] .tag-concept{font-size:.78rem;line-height:1.5}
html[lang="ar"] .photo-credit,html[lang="ar"] .ph-caption{font-size:.8rem;line-height:1.5}
html[lang="ar"] .wheel-caption{font-size:.88rem}
html[lang="ar"] .access{font-size:.95rem}
html[lang="ar"] .disclosure{line-height:1.9}
html[lang="ar"] .compliance-note,html[lang="ar"] .ess-meta dd{line-height:1.8}
html[lang="ar"] .wheel-label{font-size:24px}
html[lang="ar"] .wheel-center-small{font-size:15px}
html[lang="ar"] .site-nav li a{font-size:.95rem}
html[lang="ar"] .ess-tab{font-size:.92rem}

/* v10: closing line of the "How to engage" band = family link to the Elk Ridge founding members page */
.engage-live .link-arrow{font:inherit;color:var(--forest);border-block-end-width:1px;padding-block-end:2px}
.engage-live .link-arrow:hover{color:var(--gold-text)}

/* ---------- Simplified Chinese (zh-Hans) ----------
   Every rule is scoped to html[lang|="zh"], so nothing reaches other pages.
   Latin brand names keep Playfair Display / Outfit; Han characters fall back to Noto Serif SC / Noto Sans SC.
   CJK takes no letter-spacing, no uppercase and no (synthetic) italics; line boxes are a little taller,
   and long Latin + Han mixes may break anywhere a word would overflow. */
html[lang|="zh"]{
  --serif:"Playfair Display", "Noto Serif SC", "Source Han Serif SC", "Songti SC", "SimSun", Georgia, serif;
  --sans:"Outfit", "Noto Sans SC", "PingFang SC", "Microsoft YaHei", "Source Han Sans SC", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
}
html[lang|="zh"] body{line-height:1.85;overflow-wrap:break-word;line-break:strict}
html[lang|="zh"] *{letter-spacing:0!important;text-transform:none!important}
html[lang|="zh"] .brand-word,html[lang|="zh"] .brand-word *{letter-spacing:.12em!important;text-transform:uppercase!important}
html[lang|="zh"] .wheel-brand{letter-spacing:6px!important}
@media (max-width:420px){html[lang|="zh"] .brand-word,html[lang|="zh"] .brand-word *{letter-spacing:.09em!important}}
html[lang|="zh"] h1,html[lang|="zh"] h2,html[lang|="zh"] h3,html[lang|="zh"] h4{line-height:1.4;font-weight:600}
html[lang|="zh"] h1{font-size:clamp(2.3rem,5.4vw,4.4rem);line-height:1.3}
html[lang|="zh"] .hero--short h1{font-size:clamp(2.1rem,4vw,3.7rem);line-height:1.3}
html[lang|="zh"] h1 em,html[lang|="zh"] h2 em,html[lang|="zh"] .hero h1 em,html[lang|="zh"] em,html[lang|="zh"] .ess-quote,html[lang|="zh"] .site-footer .tagline,html[lang|="zh"] .rs-tag,html[lang|="zh"] cite{font-style:normal}
html[lang|="zh"] .lead,html[lang|="zh"] .hero--short .lead{line-height:1.85}
html[lang|="zh"] .statement,html[lang|="zh"] .under-stack,html[lang|="zh"] .nation-feature .highlight{line-height:1.6}
html[lang|="zh"] .stat b,html[lang|="zh"] .fact b{line-height:1.3}
html[lang|="zh"] .eyebrow{font-size:.86rem}
html[lang|="zh"] .kicker,html[lang|="zh"] .explorer-kicker,html[lang|="zh"] .engage .card .who,html[lang|="zh"] .timeline .when,html[lang|="zh"] .site-footer h2{font-size:.84rem}
html[lang|="zh"] .person .role{font-size:.86rem}
html[lang|="zh"] .ess-meta dt{font-size:.8rem}
html[lang|="zh"] .btn{font-size:.95rem;line-height:1.5}
html[lang|="zh"] .pill{font-size:.76rem;line-height:1.5}
html[lang|="zh"] .tag-concept,html[lang|="zh"] .photo-credit,html[lang|="zh"] .ph-caption{font-size:.76rem;line-height:1.5}
html[lang|="zh"] .wheel-caption{font-size:.86rem}
html[lang|="zh"] .disclosure,html[lang|="zh"] .compliance-note,html[lang|="zh"] .ess-meta dd{line-height:1.8}
html[lang|="zh"] .wheel-label{font-size:23px}
html[lang|="zh"] .wheel-center-small{font-size:15px}
html[lang|="zh"] .site-nav li a{font-size:.95rem}
/* keep the gold second clause of a heading together (no single-character orphans) and avoid short last lines */
html[lang|="zh"] :is(h1,h2,h3) em{white-space:nowrap}
html[lang|="zh"] :is(h1,h2,h3,.lead,.statement){text-wrap:pretty}
/* v10: simplified "Why now" block, two cited figures */
@media (min-width:720px){.stats--2{grid-template-columns:repeat(2,1fr);max-width:760px}}

/* ---------- Home hero: autumn aerial (chosen by David in v13; meadow hero retired) ----------
   Crop keeps the mountains and treeline; object-position pushes the cleared patch toward the bottom edge,
   where the bottom fade covers it. A soft dark gradient sits only on the text side (left in LTR, right in RTL),
   so the H1 reads over the bright sky while the right-hand side stays vivid.
   v13: text-side gradient strengthened ~+15-20% (was .80/.62/.28/0 at 0/30/52/72%), with an extra feather stop
   so it still reaches 0 by 74% and the mountains/forest on the far side keep full colour. */
.hero .media--aerial img{object-position:50% 0%}
.hero:has(.media--aerial)::after{background:
  linear-gradient(180deg,rgba(10,22,16,.42) 0%,rgba(10,22,16,.08) 26%,rgba(10,22,16,.10) 60%,rgba(10,22,16,.78) 100%),
  linear-gradient(90deg,rgba(10,22,16,.92) 0%,rgba(10,22,16,.78) 30%,rgba(10,22,16,.44) 52%,rgba(10,22,16,.14) 64%,rgba(10,22,16,0) 74%)}
html[dir="rtl"] .hero:has(.media--aerial)::after{background:
  linear-gradient(180deg,rgba(10,22,16,.42) 0%,rgba(10,22,16,.08) 26%,rgba(10,22,16,.10) 60%,rgba(10,22,16,.78) 100%),
  linear-gradient(270deg,rgba(10,22,16,.92) 0%,rgba(10,22,16,.78) 30%,rgba(10,22,16,.44) 52%,rgba(10,22,16,.14) 64%,rgba(10,22,16,0) 74%)}
@media (max-width:700px){
  /* text runs full width on phones: shade from the top of the text block down instead of from the side.
     v13: overall overlay ~+.10-.12 (was .55/.50/.62/.74/.88) */
  .hero .media--aerial img{object-position:50% 0%}
  .hero:has(.media--aerial)::after,html[dir="rtl"] .hero:has(.media--aerial)::after{background:linear-gradient(180deg,rgba(10,22,16,.62) 0%,rgba(10,22,16,.60) 30%,rgba(10,22,16,.74) 50%,rgba(10,22,16,.85) 75%,rgba(10,22,16,.93) 100%)}
}

/* v11: executive team page (/team/) */
.people{list-style:none;margin:0;padding:0;display:grid;gap:44px 24px;grid-template-columns:repeat(2,1fr)}
@media (min-width:720px){.people{grid-template-columns:repeat(3,1fr)}}
@media (min-width:1024px){.people{grid-template-columns:repeat(5,1fr)}.people--2{grid-template-columns:repeat(2,minmax(0,260px));justify-content:center}}
@media (min-width:720px) and (max-width:1023px){.people--2{grid-template-columns:repeat(2,minmax(0,260px));justify-content:center}}
.member{text-align:center}
.member img{display:block;margin-inline:auto;inline-size:min(100%,168px);block-size:auto;aspect-ratio:1/1;object-fit:cover;border-radius:50%;border:3px solid var(--gold);padding:4px;background:var(--cream)}
.member h3{font-size:1.12rem;margin:18px 0 6px}
.member .role{font-size:.74rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--gold-text);line-height:1.5;margin:0}
.member .confirm{margin-block-start:8px}
html[lang="hi"] .member .role,html[lang|="zh"] .member .role{font-size:.86rem;letter-spacing:.04em}
html[lang="ar"] .member .role{font-size:.9rem;letter-spacing:0}
@media (max-width:719px){.member img{inline-size:132px}}
/* v11: partner links (Stackabl, A3) */
.partner-link{color:inherit;text-decoration:underline;text-decoration-color:var(--gold-lt);text-decoration-thickness:1px;text-underline-offset:3px}
.partner-link:hover{color:var(--gold-text)}
.band--forest .partner-link:hover,.band--night .partner-link:hover{color:var(--gold-lt)}
.logo-link{display:contents}
@media (max-width:719px){.people .member:last-child:nth-child(odd){grid-column:1 / -1}}

/* v12: Circle Engineered essentials (eight matching sections) */
.ess-grid{display:grid;gap:clamp(28px,4vw,64px);align-items:start}
@media (min-width:960px){.ess-grid{grid-template-columns:1fr 1.1fr}}
.ess-head h2{margin-block-end:0}
.ess-head .media{margin-block-start:clamp(24px,3vw,36px)}
.ess-body > * + *{margin-block-start:18px}
.stat-line{border-inline-start:3px solid var(--gold);padding:4px 0 4px 18px;font-family:var(--serif,inherit);font-size:1.12rem;line-height:1.55;color:var(--forest)}
html[dir="rtl"] .stat-line{padding:4px 18px 4px 0}
.source-link{font-family:var(--sans,inherit);font-size:.8rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--gold-text);text-decoration:underline;text-decoration-color:var(--gold-lt);text-underline-offset:3px;white-space:nowrap}
.source-link::after{content:" \2197";font-size:.85em}
.source-link:hover{color:var(--forest)}
.ess-body .pills{margin-block-start:22px}
.ess-extra{margin-block-start:22px}

/* v13: Elk Ridge future wellness resort (text-only card, no image until one is licensed) */
.resort-card{display:grid;gap:0;border:1px solid rgba(212,178,106,.35);border-radius:14px;background:rgba(255,255,255,.04);padding:clamp(22px,3vw,36px)}
.resort-phase + .resort-phase{border-block-start:1px solid rgba(212,178,106,.22);margin-block-start:20px;padding-block-start:20px}
.resort-phase h3{font-family:var(--sans);font-size:.78rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--gold-lt);margin:0 0 12px}
.resort-phase .list-plain{color:var(--ivory);font-size:1.05rem}
.resort-phase--next .list-plain{font-family:var(--serif);font-size:1.3rem;gap:6px}
.er-resort-line{margin-block-start:18px;color:var(--on-dark-2,#DCE2DA)}
.ess-note{font-size:.95rem;color:var(--muted)}

/* v14: home page wellness resort feature (Elk Ridge band) + wheel panel links */
.resort-feature{display:grid;gap:18px 40px;margin-block:clamp(32px,4vw,48px) 8px;padding:clamp(22px,3vw,34px);border:1px solid rgba(212,178,106,.45);border-radius:14px;background:linear-gradient(135deg,rgba(212,178,106,.12),rgba(255,255,255,.03) 60%)}
@media (min-width:860px){.resort-feature{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:center}}
.resort-feature__head{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:10px 14px}
.resort-feature__icon{inline-size:44px;block-size:44px;border-radius:50%;display:grid;place-items:center;border:1px solid rgba(212,178,106,.5);color:var(--gold-lt)}
.resort-feature__icon svg{inline-size:22px;block-size:22px}
.resort-feature h3{margin:0;color:var(--ivory);font-size:clamp(1.5rem,2.4vw,2rem)}
.resort-feature .pills{grid-column:1 / -1;margin:0}
.resort-feature__body p{margin:0 0 12px;color:var(--on-dark-2,#DCE2DA)}
.ess-links{display:flex;flex-wrap:wrap;gap:4px 22px;margin:20px 0 0}
.explorer .ess-panel .ess-links a.link-arrow{margin-block-start:0}

/* v14 trial: Elk Ridge page hero = masterplan concept rendering. Same text-side treatment as the home aerial hero
   (90deg LTR / 270deg RTL, .92 -> 0 by 74%; phones: overall top-to-bottom overlay). */
.hero .media--render img{object-position:50% 45%}
.hero:has(.media--render)::after{background:
  linear-gradient(180deg,rgba(10,22,16,.42) 0%,rgba(10,22,16,.08) 26%,rgba(10,22,16,.10) 60%,rgba(10,22,16,.78) 100%),
  linear-gradient(90deg,rgba(10,22,16,.92) 0%,rgba(10,22,16,.78) 30%,rgba(10,22,16,.44) 52%,rgba(10,22,16,.14) 64%,rgba(10,22,16,0) 74%)}
html[dir="rtl"] .hero:has(.media--render)::after{background:
  linear-gradient(180deg,rgba(10,22,16,.42) 0%,rgba(10,22,16,.08) 26%,rgba(10,22,16,.10) 60%,rgba(10,22,16,.78) 100%),
  linear-gradient(270deg,rgba(10,22,16,.92) 0%,rgba(10,22,16,.78) 30%,rgba(10,22,16,.44) 52%,rgba(10,22,16,.14) 64%,rgba(10,22,16,0) 74%)}
@media (max-width:700px){
  .hero .media--render img{object-position:50% 30%}
  .hero:has(.media--render)::after,html[dir="rtl"] .hero:has(.media--render)::after{background:linear-gradient(180deg,rgba(10,22,16,.62) 0%,rgba(10,22,16,.60) 30%,rgba(10,22,16,.74) 50%,rgba(10,22,16,.85) 75%,rgba(10,22,16,.93) 100%)}
}
/* concept tag sits outside .media so the dark overlay doesn't dim the "Concept rendering" disclosure */
.hero > .photo-credit--concept{position:absolute;inset-inline-end:16px;inset-block-start:16px;inset-block-end:auto;z-index:2;background:rgba(10,22,16,.72);color:#F6F1E6}

/* v15: WI consulting microcopy near hero buttons */
.wi-microcopy{margin-block:18px 0;max-inline-size:62ch;line-height:1.55}

/* v16: small visible disclaimers (Worthy Capital, water) */
.wc-disclaimer{display:block;margin-block-start:10px;font-size:.78rem;line-height:1.5;letter-spacing:.02em;color:var(--muted-2)}
:is(.band--forest,.band--night,.band--wi) .wc-disclaimer{color:var(--on-dark-2)}
.water-note{display:block;margin-block-start:6px;font-size:.78rem;line-height:1.5;color:var(--muted-2)}
:is(.band--forest,.band--night) .water-note{color:var(--on-dark-2)}
/* v16: team bios */
.member .bio{margin:12px 0 0;font-size:.88rem;line-height:1.6;color:var(--muted);text-align:start}
@media (min-width:1024px){.people--bios:not(.people--2){display:flex;flex-wrap:wrap;justify-content:center;gap:48px 32px}.people--bios:not(.people--2)>.member{flex:0 1 calc((100% - 64px)/3)}}
@media (min-width:720px){.people--2.people--bios{grid-template-columns:repeat(2,minmax(0,360px))}}
/* v16: home WI section, investor-information steps only */
.wi-access .eyebrow{margin-block-end:12px}

/* Products hub + Elk Ridge configurator demo (v17) */
.prod-h1,.build-h1{font-size:clamp(2.1rem,4.4vw,3.4rem)}
.prod-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px;margin-top:36px}
.prod-card{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden;text-decoration:none;color:inherit;box-shadow:var(--shadow);transition:transform .25s var(--ease),box-shadow .25s var(--ease)}
a.prod-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-lg);color:inherit}
.prod-card__media img{width:100%;height:220px;object-fit:cover;object-position:center 40%}
.prod-card__body{padding:22px 24px 26px;display:flex;flex-direction:column;gap:8px;flex:1}
.prod-card__title{font-family:var(--serif);font-size:1.6rem;color:var(--forest);line-height:1.15}
.prod-card__text{color:var(--muted);font-size:.98rem}
.prod-card__cta{margin-top:auto;padding-top:10px;color:var(--forest);font-weight:500}
.prod-tag{align-self:flex-start;font-size:.72rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;background:var(--gold-pale);color:#69480C;border-radius:999px;padding:4px 12px}
.prod-tag--muted{background:var(--sand);color:var(--muted)}
.prod-card--soon{background:var(--sand)}
.build-band .wrap{max-width:1440px}
.build-h1{margin-bottom:.25em}
.build-app{display:block;margin-top:28px}
.build-foot{margin-top:16px}

/* v18 · Worthy Homes + preparedness (home) and products cards */
.wh-std{margin-block-start:8px}
.wh-feats{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:10px}
.wh-feats li{display:inline-flex;align-items:center;gap:8px;background:#fff;border:1px solid var(--line);border-radius:999px;padding:8px 16px 8px 10px;font-size:.95rem;color:var(--forest)}
.wh-ic,.prep-ic,.prod-ic{display:inline-grid;place-items:center;color:var(--gold-text)}
.wh-ic svg{width:20px;height:20px}
.wh-opts{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:24px;margin-block-start:32px}
.wh-opt{display:flex;flex-direction:column;align-items:flex-start}
.wh-opt .btn{margin-block-start:auto}
.wh-opt p{margin-block-end:14px}
.wh-opt--presale{border-color:var(--gold-lt)}
.wh-price{font-size:.95rem;color:var(--forest);background:var(--gold-pale);border-radius:8px;padding:8px 12px}
.prep-list{list-style:none;margin:8px 0 28px;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:14px 28px}
.prep-list li{display:grid;grid-template-columns:44px 1fr;gap:12px;align-items:start;font-size:.98rem;color:var(--muted)}
.prep-list li b{display:block;color:var(--forest);font-weight:600}
.prep-ic{width:44px;height:44px;border-radius:50%;background:var(--gold-pale)}
.prep-ic svg{width:22px;height:22px}
.prod-sub{font-size:.72rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--gold-text);margin-top:8px}
.prod-list{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px}
.prod-list li{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line);border-radius:999px;padding:4px 12px;font-size:.86rem;color:var(--forest);background:var(--paper)}
.prod-list--std li{background:#F1F6EF;border-color:#D5E3D2;padding-inline-start:8px}
.prod-list svg{width:16px;height:16px;color:var(--gold-text)}
.prod-note{font-size:.8rem;color:var(--muted)}
.prod-card__title .prod-ic svg{width:26px;height:26px;margin-inline-end:8px;vertical-align:-4px}
.prod-card--wh{grid-column:1/-1}

/* v20 · Worthy Homes feature inside the Circle Engineered wheel (Homes wedge) */
.ess-wh{margin:6px 0 20px;padding:16px 18px;border-radius:12px;background:var(--cream,#F6F1E6);border:1px solid var(--line);border-inline-start:3px solid var(--gold)}
.ess-wh-eyebrow{margin:0 0 6px;font-size:.66rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--gold-text)}
.ess-wh-p{margin:0 0 12px;font-size:.95rem;line-height:1.55;color:var(--ink)}
.ess-wh-btns{display:flex;flex-wrap:wrap;gap:10px}
.ess-wh-btns .btn{padding-inline:18px}
