/* =========================================================
   أكاديمية قيمي هويتي — Light theme + theme switch
   Dark theme = style.css defaults. Everything here is scoped
   to :root[data-theme="light"] except shared switch UI.
   ========================================================= */

/* ---------- Shared: theme toggle, dual logos, view transition ---------- */
:root { --particle: 214, 178, 106; }
.logo-l { display: none !important; }
:root[data-theme="light"] .logo-d { display: none !important; }
:root[data-theme="light"] .logo-l { display: block !important; }

.theme-toggle {
  position: relative; width: 46px; height: 46px; border-radius: 50%; flex: none;
  display: grid; place-items: center; color: var(--gold-2);
  border: 1px solid var(--glass-line); background: var(--glass);
  transition: background .3s, border-color .3s, transform .5s var(--ease);
}
.theme-toggle:hover { border-color: var(--gold); transform: rotate(-12deg); }
.theme-toggle svg { position: absolute; width: 20px; height: 20px; transition: transform .6s var(--ease), opacity .4s; }
.tt__moon { opacity: 0; transform: rotate(-90deg) scale(.5); }
:root[data-theme="light"] .tt__sun { opacity: 0; transform: rotate(90deg) scale(.5); }
:root[data-theme="light"] .tt__moon { opacity: 1; transform: none; }

::view-transition-old(root), ::view-transition-new(root) { animation: none; mix-blend-mode: normal; }
.vt-theme::view-transition-old(root) { z-index: 1; }
.vt-theme::view-transition-new(root) { z-index: 2; }

/* ---------- Light tokens ---------- */
:root[data-theme="light"] {
  --bg: #f5efe2;
  --surface: #fffcf5;
  --ink: #10243a;
  --ink-2: rgba(16, 36, 58, .74);
  --ink-3: rgba(16, 36, 58, .56);
  --gold: #b8892f;
  --gold-2: #8d6522;
  --gold-soft: #e9cf8e;
  --mint: #1e8a53;
  --line: rgba(154, 114, 40, .22);
  --glass: rgba(16, 36, 58, .035);
  --glass-2: rgba(16, 36, 58, .06);
  --glass-line: rgba(16, 36, 58, .1);
  --deep: #e7dcc4;
  --particle: 154, 114, 40;
  color-scheme: light;
}

:root[data-theme="light"] body { background: var(--bg); color: var(--ink); }
:root[data-theme="light"] ::selection { background: var(--gold-soft); color: var(--ink); }

/* ---------- Atmosphere ---------- */
:root[data-theme="light"] .bg-aurora {
  background:
    radial-gradient(40% 35% at 80% 8%, rgba(34, 102, 154, .12), transparent 70%),
    radial-gradient(35% 30% at 8% 60%, rgba(214, 178, 106, .16), transparent 70%),
    radial-gradient(50% 40% at 50% 110%, rgba(35, 164, 95, .1), transparent 70%);
}
:root[data-theme="light"] body::before {
  opacity: .09;
  background-image: radial-gradient(ellipse at center, transparent 0, var(--bg) 78%), url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120' viewBox='0 0 120 120'%3E%3Cg fill='none' stroke='%239a7228' stroke-width='1'%3E%3Cpath d='M60 10 L74 46 L110 60 L74 74 L60 110 L46 74 L10 60 L46 46Z'/%3E%3Crect x='32' y='32' width='56' height='56' transform='rotate(45 60 60)'/%3E%3Crect x='32' y='32' width='56' height='56'/%3E%3C/g%3E%3C/svg%3E");
}
:root[data-theme="light"] #bg-canvas { opacity: .55; }
:root[data-theme="light"] .grain { opacity: .025; }
:root[data-theme="light"] .cursor-glow { background: radial-gradient(circle, rgba(34, 102, 154, .07), transparent 65%); }
:root[data-theme="light"] .theme-veil { background: #fbf7ee; }

/* ---------- Glass surfaces ---------- */
:root[data-theme="light"] .glass {
  background: linear-gradient(145deg, rgba(255, 255, 255, .88), rgba(255, 253, 247, .66));
  border-color: rgba(16, 36, 58, .08);
  box-shadow: 0 24px 60px -32px rgba(16, 36, 58, .28), inset 0 1px 0 #fff;
}
:root[data-theme="light"] .glass::after { background: linear-gradient(135deg, rgba(184, 137, 47, .5), transparent 35%, transparent 65%, rgba(34, 102, 154, .28)); }
:root[data-theme="light"] .glass::before { background: radial-gradient(420px circle at var(--mx, 50%) var(--my, 0%), rgba(184, 137, 47, .1), transparent 45%); }

/* ---------- Type & buttons ---------- */
:root[data-theme="light"] .eyebrow { color: var(--gold-2); background: rgba(184, 137, 47, .08); border-color: rgba(154, 114, 40, .26); }
:root[data-theme="light"] .eyebrow::before { background: var(--gold); box-shadow: 0 0 10px rgba(184, 137, 47, .6); }
:root[data-theme="light"] .gold-text { background-image: linear-gradient(100deg, #c79a3e, #7a5a1c 45%, #a8802f 60%, #c79a3e); }
:root[data-theme="light"] .btn--gold { background: linear-gradient(135deg, #efd89e, #cfa653); color: var(--ink); box-shadow: 0 12px 34px -12px rgba(184, 137, 47, .6); }
:root[data-theme="light"] .btn--ghost { color: var(--ink); background: rgba(255, 255, 255, .65); border-color: rgba(16, 36, 58, .14); }
:root[data-theme="light"] .btn--ghost:hover { color: var(--gold-2); border-color: var(--gold); }

/* ---------- Nav ---------- */
:root[data-theme="light"] .nav--solid .nav__bar,
:root[data-theme="light"] .nav.open .nav__bar { background: rgba(250, 246, 237, .86); border-color: rgba(16, 36, 58, .08); box-shadow: 0 14px 40px -24px rgba(16, 36, 58, .35); }
:root[data-theme="light"] .nav__links a { color: var(--ink-2); }
:root[data-theme="light"] .nav__links a:hover { color: var(--ink); background: rgba(16, 36, 58, .05); }
:root[data-theme="light"] .nav__logo img.logo-l,
:root[data-theme="light"] .footer__brand img.logo-l { filter: none !important; }
:root[data-theme="light"] .nav__burger { filter: none !important; border-color: rgba(16, 36, 58, .15); }
:root[data-theme="light"] .nav__burger i, :root[data-theme="light"] .nav__burger i::before, :root[data-theme="light"] .nav__burger i::after { background: var(--ink); }
:root[data-theme="light"] .nav.open .nav__burger i { background: transparent; }
@media (max-width: 1100px) { :root[data-theme="light"] .nav.open .nav__links { background: rgba(250, 246, 237, .97); border-color: rgba(16, 36, 58, .1); } }

/* ---------- Hero ---------- */
:root[data-theme="light"] .hero__ayah { color: var(--gold-2); }
:root[data-theme="light"] .hero__halo { background: radial-gradient(circle at 50% 40%, rgba(34, 102, 154, .2), rgba(35, 164, 95, .08) 45%, transparent 70%); }
:root[data-theme="light"] .hero__emblem { opacity: .3; filter: none; }
:root[data-theme="light"] .hero__rosette circle { stroke: rgba(154, 114, 40, .35); }
:root[data-theme="light"] .hero__founder { filter: drop-shadow(0 30px 50px rgba(16, 36, 58, .28)); }
:root[data-theme="light"] .hero__chip { background: linear-gradient(145deg, #fff, #f8f1e2); border-color: rgba(154, 114, 40, .2); }
:root[data-theme="light"] .hero__chip b { color: var(--ink); }
:root[data-theme="light"] .hero__chip .ico, :root[data-theme="light"] .mini .ico, :root[data-theme="light"] .contact__row .ico { background: rgba(184, 137, 47, .13); color: var(--gold-2); }
:root[data-theme="light"] .hero__stats { background: rgba(255, 255, 255, .78); border-color: rgba(154, 114, 40, .2); box-shadow: 0 20px 50px -30px rgba(16, 36, 58, .3); }
:root[data-theme="light"] .hstat b { color: var(--ink); }

/* ---------- Government logos ---------- */
:root[data-theme="light"] .gov__label { color: var(--gold-2); }
:root[data-theme="light"] .gov__item img { opacity: .8; }
:root[data-theme="light"] .gov__item + .gov__item::before { background: linear-gradient(transparent, rgba(154, 114, 40, .3), transparent); }

/* ---------- About / manifesto ---------- */
:root[data-theme="light"] .about__media::after { background: linear-gradient(to top, rgba(16, 36, 58, .4), transparent 55%); }
:root[data-theme="light"] .about__badge { background: rgba(255, 255, 255, .92); }
:root[data-theme="light"] .about__badge span { color: var(--ink-3); }

/* ---------- Programme cards ---------- */
:root[data-theme="light"] .pcard__img::after { background: linear-gradient(to top, rgba(255, 252, 245, .35), transparent 45%); }
:root[data-theme="light"] .pcard__tag { background: rgba(255, 255, 255, .9); color: var(--gold-2); border-color: rgba(154, 114, 40, .2); }
:root[data-theme="light"] .pcard__n { color: var(--gold-2); border-color: rgba(154, 114, 40, .45); background: rgba(184, 137, 47, .08); }
:root[data-theme="light"] .pcard { border-color: rgba(154, 114, 40, .18); }
:root[data-theme="light"] .hscroll__counter { color: var(--ink-3); }
:root[data-theme="light"] .hscroll__counter .hscroll__num { color: var(--gold-2); }
:root[data-theme="light"] .hscroll__bar { background: rgba(16, 36, 58, .08); }

/* ---------- Values wheel ---------- */
:root[data-theme="light"] .wheel__svg > circle { fill: #fffcf5; stroke: rgba(154, 114, 40, .35); }
:root[data-theme="light"] .wseg path { fill: rgba(16, 36, 58, .035); stroke: rgba(154, 114, 40, .38); }
:root[data-theme="light"] .wseg__n { fill: var(--gold-2) !important; }
:root[data-theme="light"] .wseg.on .wseg__n { fill: var(--ink) !important; }
:root[data-theme="light"] .wseg.on path { filter: drop-shadow(0 10px 20px rgba(184, 137, 47, .35)); }
:root[data-theme="light"] .wheel__ring line { stroke: rgba(154, 114, 40, .5); }
:root[data-theme="light"] .wheel__ring circle { stroke: rgba(154, 114, 40, .3); }
:root[data-theme="light"] .wheel__emblem { opacity: .2; filter: none; }
:root[data-theme="light"] .wheel__center small { color: var(--gold-2); }
:root[data-theme="light"] .wheel__center b { color: var(--ink); }
:root[data-theme="light"] .wheel__dot { background: rgba(16, 36, 58, .12); }
:root[data-theme="light"] .wheel__dot.on { background: var(--gold); }

/* ---------- Curriculum stack ---------- */
:root[data-theme="light"] .stack__card.glass,
:root[data-theme="light"] .stack__card { background: linear-gradient(145deg, #fffdf8, #f3ead6); border-color: rgba(154, 114, 40, .18); }
:root[data-theme="light"] .stack__card::after { background: var(--bg); }

/* ---------- Book ring ---------- */
:root[data-theme="light"] .ring3d__card { border-color: rgba(154, 114, 40, .35); box-shadow: 0 30px 50px -24px rgba(16, 36, 58, .35); }
:root[data-theme="light"] .ring3d__card::after { background: var(--bg); }
:root[data-theme="light"] .ring3d__floor { background: radial-gradient(ellipse, rgba(184, 137, 47, .2), transparent 70%); }
:root[data-theme="light"] .ring3d__label { background: rgba(255, 255, 255, .92); border-color: rgba(154, 114, 40, .2); }
:root[data-theme="light"] .ring3d__idx { color: var(--gold-2); }

/* ---------- Platform mock-up (the dashboard itself turns light too) ---------- */
:root[data-theme="light"] .platform__chrome i { background: rgba(16, 36, 58, .16); }
:root[data-theme="light"] .app__side { background: rgba(16, 36, 58, .035); }
:root[data-theme="light"] .app__side a { color: var(--ink-2); }
:root[data-theme="light"] .app__side a.on { background: rgba(184, 137, 47, .15); color: var(--gold-2); }
:root[data-theme="light"] .app__side .brand img { box-shadow: 0 0 0 1px rgba(16, 36, 58, .08); }
:root[data-theme="light"] .app__card,
:root[data-theme="light"] .vprog, :root[data-theme="light"] .vsess, :root[data-theme="light"] .vkpis div,
:root[data-theme="light"] .vchart { background: rgba(255, 255, 255, .7); border-color: rgba(16, 36, 58, .07); }
:root[data-theme="light"] .lesson { border-color: rgba(16, 36, 58, .08); }
:root[data-theme="light"] .lesson.now { color: var(--gold-2); }
:root[data-theme="light"] .ring svg circle:first-child { stroke: rgba(16, 36, 58, .1); }
:root[data-theme="light"] .vbar { background: rgba(16, 36, 58, .08); }
:root[data-theme="light"] .vprog em, :root[data-theme="light"] .vkpis b, :root[data-theme="light"] .vsess__d b { color: var(--gold-2); }
:root[data-theme="light"] .vsess__d { background: rgba(184, 137, 47, .12); }
:root[data-theme="light"] .vsess__btn { border-color: rgba(16, 36, 58, .14); }
:root[data-theme="light"] .vsess__btn.live { background: linear-gradient(135deg, #efd89e, #cfa653); color: var(--ink); }
:root[data-theme="light"] .vchart__c i { background: linear-gradient(180deg, #d9b567, rgba(184, 137, 47, .18)); }
:root[data-theme="light"] .vbook img { box-shadow: 0 14px 28px -14px rgba(16, 36, 58, .45); }
:root[data-theme="light"] .platform__float { background: linear-gradient(145deg, #fff, #f8f1e2); border-color: rgba(154, 114, 40, .18); }
:root[data-theme="light"] .platform__float .ico, :root[data-theme="light"] .bento .ico { background: rgba(30, 138, 83, .1); color: var(--mint); }
:root[data-theme="light"] .cert { box-shadow: 0 26px 50px -26px rgba(16, 36, 58, .4), 0 0 0 1px rgba(154, 114, 40, .15); }

/* ---------- Bento / courses ---------- */
:root[data-theme="light"] .tabs__btn { color: var(--ink); border-color: rgba(16, 36, 58, .15); }
:root[data-theme="light"] .tabs__btn.on { background: var(--gold); color: #fff; border-color: var(--gold); }
:root[data-theme="light"] .tabs__btn:hover:not(.on) { background: rgba(184, 137, 47, .1); border-color: var(--gold); }
:root[data-theme="light"] .ccard__foot { border-color: rgba(16, 36, 58, .09); color: var(--ink-3); }
:root[data-theme="light"] .ccard__foot a { color: #22669a; }

/* ---------- Scholars / partners / social ---------- */
:root[data-theme="light"] .scholars__wall::before { background: linear-gradient(var(--bg), transparent); }
:root[data-theme="light"] .scholars__wall::after { background: linear-gradient(transparent, var(--bg)); }
:root[data-theme="light"] .scholars__col figure::after { border-color: rgba(154, 114, 40, .45); box-shadow: 0 0 0 6px rgba(184, 137, 47, .07); }
:root[data-theme="light"] .scholars__col figcaption { color: var(--ink-2); }
:root[data-theme="light"] .partner img, :root[data-theme="light"] .client img { box-shadow: 0 0 0 1px rgba(16, 36, 58, .08); }
:root[data-theme="light"] .client h5 { color: var(--gold-2); }
:root[data-theme="light"] .sstat svg { color: var(--gold); }
:root[data-theme="light"] .post { border-color: rgba(16, 36, 58, .08); box-shadow: 0 20px 40px -26px rgba(16, 36, 58, .35); }
:root[data-theme="light"] .post__src { background: rgba(255, 255, 255, .88); color: var(--ink); border-color: rgba(16, 36, 58, .08); }

/* ---------- FAQ / CTA / contact ---------- */
:root[data-theme="light"] .faq__item { border-color: rgba(16, 36, 58, .12); }
:root[data-theme="light"] img.cta__star { opacity: .1; }
:root[data-theme="light"] .field input, :root[data-theme="light"] .field textarea, :root[data-theme="light"] .field select { background: #fffdf8; border-color: rgba(16, 36, 58, .14); color: var(--ink); }
:root[data-theme="light"] .field select option { background: #fff; }
:root[data-theme="light"] .field input:focus, :root[data-theme="light"] .field textarea:focus, :root[data-theme="light"] .field select:focus { border-color: var(--gold); box-shadow: 0 0 0 4px rgba(184, 137, 47, .14); }
:root[data-theme="light"] .socials a { border-color: rgba(16, 36, 58, .14); }
:root[data-theme="light"] .socials a:hover { background: var(--gold); color: #fff; }

/* ---------- Footer ---------- */
:root[data-theme="light"] .footer { border-color: rgba(154, 114, 40, .2); }
:root[data-theme="light"] .footer h6 { color: var(--gold-2); }
:root[data-theme="light"] .footer ul a:hover { color: var(--gold-2); }
:root[data-theme="light"] .footer__big { background: linear-gradient(180deg, rgba(154, 114, 40, .5) 0%, rgba(154, 114, 40, .16) 55%, rgba(154, 114, 40, 0) 92%); -webkit-background-clip: text; background-clip: text; }
:root[data-theme="light"] .footer__bottom { border-color: rgba(154, 114, 40, .2); }

/* ---------- Jump button ---------- */
:root[data-theme="light"] .jump { background: rgba(255, 255, 255, .94); color: var(--gold-2); box-shadow: 0 14px 30px -14px rgba(16, 36, 58, .45); }
:root[data-theme="light"] .jump__ring circle { stroke: rgba(154, 114, 40, .2); }
:root[data-theme="light"] .jump__ring .jump__p { stroke: var(--gold); }
:root[data-theme="light"] .jump:hover { background: var(--gold); color: #fff; }

/* text that sits on photos / dark overlays stays light in both themes */
.vthumb__time, .vthumb figcaption, .app__player .cap, .app__player .cap b { color: #fff; }
.pcard__img .pcard__tag { color: var(--gold-2); }

@media (max-width: 600px) {
  .nav__cta { gap: 6px; }
  .nav__cta .btn { white-space: nowrap; padding: 11px 16px; font-size: 13px; }
  .theme-toggle { width: 40px; height: 40px; }
  .theme-toggle svg { width: 18px; height: 18px; }
  .nav__burger { width: 40px; height: 40px; }
}
@media (max-width: 899px) { :root[data-theme="light"] .wheel__emblem { opacity: .45; } }

/* =========================================================
   Light theme — critic round 1
   ========================================================= */
:root:not([data-theme="light"]) { color-scheme: dark; }

/* 1–3. Contrast: every small text passes WCAG AA on cream */
:root[data-theme="light"] { --ink-3: rgba(16, 36, 58, .68); --gold-2: #7f5a1c; }
:root[data-theme="light"] .wheel__item .k,
:root[data-theme="light"] .wheel__center small { color: var(--gold-2); }
:root[data-theme="light"] .tabs__btn.on { background: linear-gradient(135deg, #efd89e, #cfa653); color: var(--ink); border-color: #cfa653; }

/* 5. Rhythm: deep-navy bands at the manifesto, the call-to-action and the footer */
:root[data-theme="light"] .manifesto,
:root[data-theme="light"] .cta.glass,
:root[data-theme="light"] .footer {
  --ink: #f5eedd; --ink-2: rgba(245, 238, 221, .78); --ink-3: rgba(245, 238, 221, .6);
  --gold-2: #f1d99b; --gold: #d6b26a; --line: rgba(241, 217, 155, .16); --glass-line: rgba(255, 255, 255, .12);
  color: var(--ink);
}
:root[data-theme="light"] .manifesto {
  position: relative; overflow: hidden;
  background: radial-gradient(60% 80% at 85% 0%, rgba(34, 102, 154, .35), transparent 70%), radial-gradient(50% 70% at 10% 100%, rgba(214, 178, 106, .16), transparent 70%), #0f2436;
}
:root[data-theme="light"] .manifesto::before {
  content: ""; position: absolute; inset: 0; opacity: .06; pointer-events: none;
  background: url("../assets/img/web/emblem-gold.webp") center / 520px no-repeat;
}
:root[data-theme="light"] .cta.glass {
  background: radial-gradient(70% 90% at 50% 0%, rgba(214, 178, 106, .2), transparent 70%), linear-gradient(145deg, #12304a, #0b1c2b);
  border-color: rgba(214, 178, 106, .3); box-shadow: 0 40px 80px -40px rgba(16, 36, 58, .6);
}
:root[data-theme="light"] .cta .eyebrow { color: #f1d99b; background: rgba(214, 178, 106, .1); border-color: rgba(241, 217, 155, .25); }
:root[data-theme="light"] .cta .eyebrow::before { background: #d6b26a; }
:root[data-theme="light"] .cta .gold-text,
:root[data-theme="light"] .footer .gold-text { background-image: linear-gradient(100deg, #f1d99b, #d6b26a 40%, #b88a3e 60%, #f1d99b); }
:root[data-theme="light"] .cta .btn--ghost { color: #f5eedd; background: rgba(255, 255, 255, .06); border-color: rgba(255, 255, 255, .2); }
:root[data-theme="light"] .cta .btn--ghost:hover { color: #f1d99b; border-color: #d6b26a; }
:root[data-theme="light"] img.cta__star { opacity: .1; }
:root[data-theme="light"] .footer { background: linear-gradient(180deg, #0f2436, #0a1824); border-top: 0; }
:root[data-theme="light"] .footer .logo-d { display: block !important; }
:root[data-theme="light"] .footer .logo-l { display: none !important; }
:root[data-theme="light"] .footer__big { background: linear-gradient(180deg, rgba(241, 217, 155, .55) 0%, rgba(214, 178, 106, .2) 60%, rgba(214, 178, 106, .08) 100%); -webkit-background-clip: text; background-clip: text; }
:root[data-theme="light"] .footer__bottom { border-color: rgba(241, 217, 155, .14); }

/* Toggle: easier to spot */
:root[data-theme="light"] .theme-toggle { background: #fff; border-color: rgba(154, 114, 40, .35); color: var(--gold-2); box-shadow: 0 6px 16px -10px rgba(16, 36, 58, .4); }

/* Photos a touch richer on cream */
:root[data-theme="light"] .about__media img { filter: contrast(1.08) saturate(1.12); }
:root[data-theme="light"] .partner img { filter: saturate(.85) brightness(1.08); }

/* Footer credit never under the jump button; fuller wordmark in both themes */
.footer__bottom { padding-inline-start: 84px; }
.footer__big { background: linear-gradient(180deg, rgba(241, 217, 155, .55) 0%, rgba(214, 178, 106, .18) 60%, rgba(214, 178, 106, .08) 100%); -webkit-background-clip: text; background-clip: text; }
#social.pad { padding-top: clamp(30px, 4vw, 60px); }
.footer__bottom { padding-inline-start: 0; padding-left: 84px; }

/* =========================================================
   Light theme — critic round 2
   ========================================================= */
/* light-gold fills always carry navy text, even inside navy bands */
:root[data-theme="light"] .btn--gold,
:root[data-theme="light"] .vsess__btn.live,
:root[data-theme="light"] .tabs__btn.on { color: #10243a; }
/* brighter gold wordmark on the navy footer */
:root[data-theme="light"] .footer__big { background: linear-gradient(180deg, rgba(241, 217, 155, .42) 0%, rgba(214, 178, 106, .2) 55%, rgba(214, 178, 106, 0) 100%); -webkit-background-clip: text; background-clip: text; }
/* manifesto band: gold hairlines instead of hard cuts */
:root[data-theme="light"] .manifesto { box-shadow: inset 0 1px 0 rgba(241, 217, 155, .35), inset 0 -1px 0 rgba(241, 217, 155, .35); }
:root[data-theme="light"] .manifesto::after { content: ""; position: absolute; inset-inline: 0; top: 0; height: 80px; background: linear-gradient(rgba(15, 36, 54, 0), rgba(15, 36, 54, 0)); pointer-events: none; }
.cert__id { color: rgba(19, 40, 58, .65); }
:root[data-theme="light"] .footer__big { background: linear-gradient(180deg, rgba(241, 217, 155, .55) 0%, rgba(214, 178, 106, .24) 55%, rgba(214, 178, 106, 0) 100%); -webkit-background-clip: text; background-clip: text; }
:root[data-theme="light"] .manifesto { box-shadow: inset 0 2px 0 rgba(214, 178, 106, .55), inset 0 -2px 0 rgba(214, 178, 106, .55); }
:root[data-theme="light"] .app__side a.on { color: #6b4b16; }
.cert__meta span { color: rgba(19, 40, 58, .74); }

/* ?lite diagnostic mode: static backdrop, pinned scenes fall back to the mobile layout */
.lite .bg-aurora, .lite .grain, .lite #bg-canvas, .lite .cursor-glow { display: none; }
.lite .hscroll, .lite .wheel, .lite .platform, .lite .ring3d { height: auto; min-height: 0; padding-block: 100px; }
.lite .hscroll__viewport { overflow-x: auto; scroll-snap-type: x mandatory; }
.lite .pcard { scroll-snap-align: center; }
.lite .wheel__item { position: static; opacity: 1 !important; }
.lite .wheel__texts { display: grid; gap: 30px; min-height: 0; }
.lite .view { position: static; }
.lite .view:not(:first-child) { display: none; }
.lite .ring3d__spin { display: flex; gap: 14px; overflow-x: auto; width: 100%; height: auto; padding-inline: 16px; }
.lite .ring3d__card { position: relative; flex: none; width: 240px; height: 300px; }
.lite .ring3d__stage { perspective: none; min-height: 0; }

/* Loader: transform-only animation (no clip-path repaints) */
.loader { clip-path: none !important; will-change: transform; }
.loader__logo { overflow: hidden; }
.loader__clip { position: absolute; inset: 0; overflow: hidden; will-change: transform; }
.loader__fill { position: absolute; inset: 0; width: 100%; clip-path: none !important; will-change: transform; }
.loader__bar i { will-change: transform; }

/* Values wheel: the active segment fills with gold in light mode too */
:root[data-theme="light"] .wseg.on path { fill: url(#wg); stroke: #c9a150; filter: drop-shadow(0 10px 22px rgba(184, 137, 47, .45)); }
:root[data-theme="light"] .wseg.on .wseg__n { fill: #10243a !important; }

/* Values wheel in light mode: the active segment is navy with a gold numeral */
:root[data-theme="light"] .wseg.on path { fill: url(#wgn); stroke: #0f2436; filter: drop-shadow(0 12px 24px rgba(15, 36, 54, .35)); }
:root[data-theme="light"] .wseg.on .wseg__n { fill: #f1d99b !important; }
:root[data-theme="light"] .wheel__dot.on { background: #0f2436; }
:root[data-theme="light"] .wheel__pointer { border-top-color: #0f2436; filter: drop-shadow(0 0 8px rgba(15, 36, 54, .35)); }

/* =========================================================
   Mobile polish
   ========================================================= */
.nav__links-cta { display: none; }
@media (max-width: 1100px) {
  .nav.open .nav__links {
    inset-inline: 16px; top: calc(100% + 8px); padding: 10px; gap: 0; border-radius: 22px;
    background: #081a27; backdrop-filter: none; -webkit-backdrop-filter: none;
    box-shadow: 0 30px 60px -20px rgba(0, 0, 0, .7);
  }
  .nav.open .nav__links li + li { border-top: 1px solid rgba(241, 217, 155, .1); }
  .nav.open .nav__links a { display: block; padding: 14px 16px; font-size: 16px; color: var(--ink); border-radius: 12px; }
  .nav.open .nav__links-cta { display: block; padding-top: 10px; }
  .nav.open .nav__links-cta a.btn { display: flex; justify-content: center; }
  :root[data-theme="light"] .nav.open .nav__links { background: #fffcf5; box-shadow: 0 30px 60px -24px rgba(16, 36, 58, .35); }
  :root[data-theme="light"] .nav.open .nav__links li + li { border-top-color: rgba(16, 36, 58, .08); }
}
@media (min-width: 601px) { .nav.open .nav__links-cta { display: none; } }

/* comfortable tap targets (44px) */
.ccard__foot a { min-height: 44px; padding-inline: 4px; }
.contact__row a { display: inline-flex; align-items: center; min-height: 40px; }
.socials a { width: 46px; height: 46px; }

/* minimum text size on phones */
@media (max-width: 600px) {
  .hero__chip { font-size: 12px; }
  .vthumb__time { font-size: 12px; }
  .pill { font-size: 12.5px; }
}
@media (max-width: 1100px) { .nav__bar { position: relative; } .nav.open .nav__links { inset-inline: 0 !important; } }
.vthumb__time { font-size: 12px; }

/* =========================================================
   Round 7 — hero shadow + compositor-only loader
   ========================================================= */
/* 2. No filter on the portrait (drop-shadow on a masked image can paint a box on GPUs);
      a soft floor shadow grounds the figure instead */
.hero__founder { filter: none !important; }
.hero__visual::before {
  content: ""; position: absolute; left: 50%; bottom: 1%; width: 62%; height: 9%; translate: -50% 0; border-radius: 50%;
  background: radial-gradient(closest-side, rgba(0, 0, 0, .45), transparent); pointer-events: none; z-index: 0;
}
:root[data-theme="light"] .hero__visual::before { background: radial-gradient(closest-side, rgba(16, 36, 58, .22), transparent); }
.hero__founder { z-index: 1; }

/* 3. Loader: CSS keyframes on transform only (compositor thread), started at first paint */
.loader__count { display: none; }
.loader__clip { animation: qh-clip 1.1s cubic-bezier(.65, 0, .35, 1) .1s both; }
.loader__fill { animation: qh-fill 1.1s cubic-bezier(.65, 0, .35, 1) .1s both; }
.loader__bar i { animation: qh-bar 1.1s cubic-bezier(.65, 0, .35, 1) .1s both; transform-origin: right; }
.loader__ghost { animation: qh-fade .5s ease-out both; }
@keyframes qh-clip { from { transform: translateX(100%); } to { transform: none; } }
@keyframes qh-fill { from { transform: translateX(-100%); } to { transform: none; } }
@keyframes qh-bar { from { transform: scaleX(0); } to { transform: scaleX(1); } }
@keyframes qh-fade { from { opacity: 0; } }
.loader { transition: transform 1s cubic-bezier(.76, 0, .24, 1); }
.loader__inner { transition: transform .45s cubic-bezier(.5, 0, .75, 0), opacity .45s ease-in; }
.loader--out { transform: translateY(-100%); }
.loader--out .loader__inner { transform: translateY(-24px); opacity: 0; }
@media (prefers-reduced-motion: reduce) { .loader__clip, .loader__fill, .loader__bar i { animation: none; } }
