/* ═══════════════════════════════════════════════════════════════════
   room.css — shared design system for the ANC account-prep family
   and Ahmad's client rooms. ONE file. Two modes. Two brands.

   MODE (set on <body>)
     (default)   dense internal instrument — fixed left rail, view
                 panes, no theatre. Account Prep lives here.
     body.cine   cinematic external — one scrolling page of full-bleed
                 colour bands, contents drawer, live-total configurator.
                 Client Space and handover rooms live here.

   BRAND (set on <body>)
     (default)     ANC — blue #0A52EF, ANC wordmark image
     body.basheer  Ahmad — charcoal #141414, violet #5B4BFF, BASHEER
                   type wordmark

   Nothing else differs between properties. Do not fork this file —
   new components go here or they don't exist.
   ═══════════════════════════════════════════════════════════════════ */

:root{
  --bar:#11141A; --bar-2:#1C212B; --bar-line:#333B49;
  --page:#FFFFFF; --wash:#F7F8FA; --line:#E6E9EF; --line-2:#D4D9E2;
  --ink:#12161D; --ink-2:#5A6474; --ink-3:#8992A2;
  --brand:#0A52EF; --brand-2:#2F6BFF; --brand-soft:#EDF2FE;
  --deep:#081A45; --deep-2:#0D2B6B;           /* cinematic dark bands */
  --mint:#E7F6F0; --mint-i:#0E7A52;
  --rose:#FDEDEA; --rose-i:#B03A24;
  --amber:#FDF3E0; --amber-i:#95610A;
  --lilac:#F1EEFC; --lilac-i:#5039B8;
  --sky:#E9F1FE;
  --ui:"Inter",system-ui,-apple-system,sans-serif;
  --disp:"Oswald","Inter",system-ui,sans-serif; /* cinematic display face */
  --rail:236px; --barh:52px;
}
body.basheer{
  --brand:#5B4BFF; --brand-2:#7466FF; --brand-soft:#EFEDFE;
  --deep:#141414; --deep-2:#1C1A2E;
}

*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--page);color:var(--ink);font-family:var(--ui);font-size:15px;
  line-height:1.55;-webkit-font-smoothing:antialiased;font-feature-settings:"cv02","cv03","cv11"}
h1,h2,h3,h4{margin:0;font-weight:600;letter-spacing:-.021em;line-height:1.18}
a{color:var(--brand);text-decoration:none} a:hover{text-decoration:underline}
:focus-visible{outline:2px solid var(--brand);outline-offset:2px;border-radius:4px}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* ── top bar ─────────────────────────────────────────────────────── */
.bar{position:fixed;top:0;left:0;right:0;height:var(--barh);background:var(--bar);
  display:flex;align-items:center;justify-content:space-between;padding:0 16px;z-index:80;gap:14px}
.bar .l{display:flex;align-items:center;gap:11px;min-width:0}
.bar img{height:15px;opacity:.95;flex:none}
.bar .div{width:1px;height:18px;background:var(--bar-line);flex:none}
.bar .t{color:#fff;font-size:13.5px;font-weight:550;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.bar .r{display:flex;align-items:center;gap:11px;flex:none}
.bar .by{color:#98A3B4;font-size:12.5px;white-space:nowrap}
.bar .by b{color:#D6DCE6;font-weight:500}
.av{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;
  font-size:10.5px;font-weight:600;color:#fff;letter-spacing:.02em;flex:none}
.av.c1{background:var(--brand)} .av.c2{background:var(--lilac-i)} .av.c3{background:var(--mint-i)}
.av.cink{background:#141414}
.avs{display:flex}
.avs .av{margin-left:-7px;box-shadow:0 0 0 2px var(--bar)}
.avs .av:first-child{margin-left:0}
.bar .sh{background:var(--brand);color:#fff;font-size:12.5px;font-weight:550;
  padding:6px 13px;border-radius:6px;border:0;cursor:pointer}
.bar .sh:hover{background:var(--brand-2)}
.bar .mb{display:none;background:var(--bar-2);color:#fff;border:0;border-radius:6px;
  padding:6px 11px;font-size:12.5px;cursor:pointer;font-family:var(--ui)}
body.cine .bar .mb{display:block}

/* live number in the bar — the instrument's headline figure */
.bar .stat{display:flex;align-items:baseline;gap:8px;background:var(--bar-2);
  border:1px solid var(--bar-line);padding:5px 11px;border-radius:6px;
  font-variant-numeric:tabular-nums;white-space:nowrap}
.bar .stat b{color:#fff;font-size:12.5px;font-weight:600}
.bar .stat span{color:#8D9BBA;font-size:11.5px}
/* live total mirrored up from the configurator (cine only) */
.totchip{display:none;align-items:center;gap:8px;background:rgba(255,255,255,.09);
  border:1px solid rgba(255,255,255,.16);color:#fff;font-size:12.5px;font-weight:600;
  padding:5px 11px;border-radius:6px;font-variant-numeric:tabular-nums;white-space:nowrap}
.totchip.on{display:flex}
.totchip span{color:#9FACC8;font-weight:500;font-size:11.5px}

/* ── rail (dense mode) ───────────────────────────────────────────── */
.rail{position:fixed;top:var(--barh);bottom:0;left:0;width:var(--rail);background:var(--wash);
  border-right:1px solid var(--line);overflow-y:auto;z-index:60;padding:14px 10px}
.rail .sect{font-size:11px;font-weight:600;color:var(--ink-3);padding:8px 10px 6px;letter-spacing:.03em}
.rail button{display:flex;align-items:center;gap:10px;width:100%;background:none;border:0;
  color:var(--ink-2);font-family:var(--ui);font-size:13.5px;font-weight:450;text-align:left;
  padding:7px 10px;border-radius:7px;cursor:pointer;line-height:1.3}
.rail button:hover{background:#EEF1F6;color:var(--ink)}
.rail button[aria-current="true"]{background:var(--brand-soft);color:var(--ink);font-weight:600;
  box-shadow:inset 2.5px 0 0 var(--brand)}
.ic{width:20px;height:20px;border-radius:5px;display:grid;place-items:center;font-size:11px;flex:none}
.rail button .n{margin-left:auto;font-size:11.5px;color:var(--ink-3);font-weight:500}

.body{margin-left:var(--rail);padding-top:var(--barh)}
.w{max-width:1080px;padding:0 40px}
main{padding:28px 0 90px}
.grp{margin-bottom:34px}
.grp>h2{font-size:17px;font-weight:650;margin-bottom:4px}
.grp>p.sb{color:var(--ink-2);font-size:14px;margin:0 0 15px;max-width:70ch}

/* ── welcome card ────────────────────────────────────────────────── */
.hello{border:1px solid var(--line);border-radius:14px;overflow:hidden;background:#fff;
  box-shadow:0 1px 2px rgba(16,24,40,.04)}
.hello .in{display:grid;grid-template-columns:1fr 360px;gap:36px;padding:28px 30px 30px;align-items:start}
.hello .av{width:44px;height:44px;font-size:15px;margin-bottom:14px}
.hello h2{font-size:21px;margin-bottom:8px}
.hello p{margin:0;color:var(--ink-2);font-size:15px;max-width:58ch}
.hello p+p{margin-top:10px}
.side{background:var(--wash);border:1px solid var(--line);border-radius:12px;padding:12px}
.side .vid{border:1px solid var(--line);border-radius:9px;overflow:hidden;background:#fff}
.side .vid .frame{aspect-ratio:16/10;display:grid;place-items:center;position:relative;
  background:linear-gradient(140deg,#101722,#1E2B41)}
.side .vid video{width:100%;display:block;aspect-ratio:16/10;object-fit:cover;background:#0B1220}
.side .vid .play{width:44px;height:44px;border-radius:50%;background:rgba(255,255,255,.94);
  display:grid;place-items:center;color:var(--ink);font-size:14px;padding-left:3px}
.side .vid .cap{padding:9px 12px;font-size:12.5px;color:var(--ink-2);
  display:flex;justify-content:space-between;gap:8px;background:#fff;border-top:1px solid var(--line)}
.side .vid .cap b{color:var(--ink);font-weight:550}
.side .lk{display:flex;align-items:center;gap:9px;border:1px solid var(--line);border-radius:9px;
  padding:10px 12px;margin-top:9px;background:#fff;font-size:13.5px;color:var(--ink)}
.side .lk:hover{border-color:var(--line-2);text-decoration:none}
.side .lk .go{margin-left:auto;color:var(--ink-3)}

/* ── readout ─────────────────────────────────────────────────────── */
.ro{display:flex;border:1px solid var(--line);border-radius:11px;overflow:hidden;background:#fff;flex-wrap:wrap}
.ro .u{padding:15px 20px;border-right:1px solid var(--line);flex:1;min-width:112px}
.ro .u:last-child{border-right:0}
.ro .u.big{flex:2.2;min-width:224px;background:var(--rose)}
.ro .v{font-size:27px;font-weight:650;letter-spacing:-.035em;line-height:1;
  font-variant-numeric:tabular-nums}
.ro .k{font-size:12px;color:var(--ink-3);margin-top:7px}
.ro .u.w .v{color:var(--mint-i)} .ro .u.l .v{color:var(--rose-i)} .ro .u.h .v{color:var(--amber-i)}
.ro .u.big .v{color:var(--rose-i);font-size:22px} .ro .u.big .k{color:#8A5343}

/* ── flags ───────────────────────────────────────────────────────── */
.flags{border:1px solid var(--line);border-radius:11px;overflow:hidden;margin-top:13px;background:#fff}
.flag{display:flex;gap:14px;padding:15px 18px;border-bottom:1px solid var(--line)}
.flag:last-child{border-bottom:0}
.flag .dot{width:3px;align-self:stretch;border-radius:2px;background:var(--rose-i);flex:none}
.flag.w .dot{background:var(--amber-i)} .flag.g .dot{background:var(--mint-i)}
.flag h3{font-size:14.5px;font-weight:600;margin-bottom:3px}
.flag p{margin:0;color:var(--ink-2);font-size:14px;max-width:76ch}

/* ── checklist ───────────────────────────────────────────────────── */
.plan{border:1px solid var(--line);border-radius:11px;background:#fff;overflow:hidden}
.plan .ph{padding:12px 18px;border-bottom:1px solid var(--line);font-size:13px;font-weight:600;
  color:var(--ink-2);background:var(--wash)}
.plan label{display:flex;align-items:flex-start;gap:12px;padding:12px 18px;
  border-bottom:1px solid var(--line);cursor:pointer}
.plan label:last-child{border-bottom:0}
.plan label:hover{background:var(--wash)}
.plan input{appearance:none;width:17px;height:17px;border:1.5px solid var(--line-2);border-radius:50%;
  flex:none;margin-top:2px;cursor:pointer;position:relative;background:#fff}
.plan input:checked{background:var(--brand);border-color:var(--brand)}
.plan input:checked::after{content:"";position:absolute;left:5px;top:2px;width:4px;height:8px;
  border:solid #fff;border-width:0 1.6px 1.6px 0;transform:rotate(43deg)}
.plan .tx{font-size:14.5px;color:var(--ink)}
.plan .tx small{display:block;color:var(--ink-3);font-size:12.5px;margin-top:2px}
.plan input:checked ~ .tx{color:var(--ink-3);text-decoration:line-through}
.plan input:checked ~ .tx small{text-decoration:none}

/* ── rows / stack ────────────────────────────────────────────────── */
.rows{border-top:1px solid var(--line)}
.row{display:grid;grid-template-columns:148px 1fr;gap:22px;padding:14px 0;border-bottom:1px solid var(--line)}
.row .lb{font-size:13px;color:var(--ink-3);font-weight:500}
.row .vl{font-size:14.5px;color:var(--ink-2);max-width:74ch}
.row .vl strong{color:var(--ink);font-weight:550}
.row .vl h4{font-size:14.5px;color:var(--ink);margin-bottom:3px}
.row .vl p{margin:0} .row .vl p+p{margin-top:7px}

.stack{border-top:1px solid var(--line)}
.itm{padding:13px 0;border-bottom:1px solid var(--line)}
.itm h4{font-size:14.5px;margin-bottom:3px;display:flex;gap:9px;align-items:baseline}
.itm h4 .m{width:6px;height:6px;border-radius:50%;background:var(--brand);flex:none;transform:translateY(-2px)}
.itm h4 .m.no{background:var(--rose-i)}
.itm p{margin:0;color:var(--ink-2);font-size:14px;max-width:78ch}

.line{font-size:19px;font-weight:500;letter-spacing:-.02em;line-height:1.42;max-width:52ch;
  padding-left:16px;border-left:3px solid var(--brand);margin:0 0 24px}

/* ── table ───────────────────────────────────────────────────────── */
.tw{border:1px solid var(--line);border-radius:11px;overflow:hidden;background:#fff}
.ts{overflow-x:auto}
table{border-collapse:collapse;width:100%;min-width:660px;font-size:13.5px}
th{text-align:left;font-weight:600;font-size:11.5px;color:var(--ink-3);padding:11px 16px;
  border-bottom:1px solid var(--line);white-space:nowrap;background:var(--wash)}
td{padding:11px 16px;border-bottom:1px solid var(--line);color:var(--ink-2);vertical-align:top}
tr:last-child td{border-bottom:0}
td.nm{color:var(--ink);font-weight:500}
td.n{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}
tr.f td{background:#FEF7F5} tr.h td{background:#FEFAF2}
.b{font-size:11px;font-weight:600;padding:2px 8px;border-radius:5px;white-space:nowrap}
.b-w{background:var(--mint);color:var(--mint-i)}
.b-l{background:var(--rose);color:var(--rose-i)}
.b-h{background:var(--amber);color:var(--amber-i)}

/* ── people cards ────────────────────────────────────────────────── */
.ppl{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px}
.p{border-radius:11px;padding:18px;border:1px solid transparent}
.p:nth-child(6n+1){background:var(--sky)} .p:nth-child(6n+2){background:var(--lilac)}
.p:nth-child(6n+3){background:var(--mint)} .p:nth-child(6n+4){background:var(--amber)}
.p:nth-child(6n+5){background:var(--rose)} .p:nth-child(6n+6){background:var(--wash)}
.p .av{width:38px;height:38px;font-size:13px;margin-bottom:11px;background:rgba(0,0,0,.45)}
.p h4{font-size:14.5px;margin-bottom:1px}
.p .rl{font-size:12.5px;color:var(--ink-2);margin-bottom:8px}
.p p{margin:0;font-size:13.5px;color:var(--ink-2)}

/* ── sequence ────────────────────────────────────────────────────── */
.seq{list-style:none;counter-reset:q;padding:0;margin:0;border-top:1px solid var(--line)}
.seq>li{counter-increment:q;display:grid;grid-template-columns:40px 1fr;padding:20px 0;
  border-bottom:1px solid var(--line)}
.seq>li::before{content:counter(q);font-size:12.5px;color:var(--ink-3);font-weight:600;padding-top:2px}
.seq h4{font-size:15px;margin-bottom:4px}
.seq p{margin:0;color:var(--ink-2);font-size:14px;max-width:76ch}
.sc{background:var(--brand-soft);border-radius:9px;padding:12px 15px;margin-top:11px;
  font-size:14.5px;color:var(--ink);max-width:76ch}
.sc b{display:block;font-size:10.5px;font-weight:700;color:var(--brand);margin-bottom:5px;letter-spacing:.06em}
figure{margin:12px 0 0;max-width:780px}
figure img{width:100%;display:block;border:1px solid var(--line);border-radius:8px}
figcaption{font-size:12.5px;color:var(--ink-3);margin-top:7px}

/* ── q&a ─────────────────────────────────────────────────────────── */
.qa{border:1px solid var(--line);border-radius:11px;overflow:hidden;background:#fff}
.qa details{border-bottom:1px solid var(--line)}
.qa details:last-child{border-bottom:0}
.qa summary{cursor:pointer;list-style:none;padding:14px 18px;font-size:14.5px;font-weight:550;
  display:grid;grid-template-columns:76px 1fr 16px;gap:12px;align-items:baseline}
.qa summary::-webkit-details-marker{display:none}
.qa summary:hover{background:var(--wash)}
.qa summary .t{font-size:11.5px;color:var(--ink-3);font-weight:500}
.qa summary .x{color:var(--ink-3);text-align:right;font-weight:500}
.qa details[open] summary{background:var(--wash)}
.qa details[open] .x::after{content:"–"} .qa details:not([open]) .x::after{content:"+"}
.qa .a{padding:2px 18px 17px 106px;color:var(--ink-2);font-size:14.5px;max-width:80ch}

/* ── actions / notes ─────────────────────────────────────────────── */
.act{display:inline-flex;align-items:center;gap:7px;background:var(--brand);color:#fff;
  font-size:13.5px;font-weight:550;padding:9px 15px;border-radius:7px}
.act:hover{background:var(--brand-2);text-decoration:none}
.act.g{background:#fff;color:var(--ink);border:1px solid var(--line-2)}
.act.g:hover{background:var(--wash)}
.acts{display:flex;gap:9px;flex-wrap:wrap}
.nb{border:1px solid var(--line);border-radius:10px;padding:14px 17px;color:var(--ink-2);
  font-size:14px;background:var(--wash);max-width:80ch}
.nb strong{color:var(--ink);font-weight:550}

/* ═══ CINEMATIC MODE (body.cine) — the external rooms ══════════════ */

/* contents drawer — the only nav in this mode, at every width */
.scrim{position:fixed;inset:0;background:rgba(9,13,20,.55);opacity:0;pointer-events:none;
  transition:opacity .2s;z-index:90}
.drawer{position:fixed;top:0;bottom:0;left:0;width:300px;background:#12161F;z-index:95;
  transform:translateX(-103%);transition:transform .24s cubic-bezier(.3,.7,.3,1);
  padding:16px 14px 24px;overflow-y:auto}
body.dopen .drawer{transform:none}
body.dopen .scrim{opacity:1;pointer-events:auto}
.drawer .dh{display:flex;align-items:center;gap:10px;padding:6px 10px 14px;color:#fff}
.drawer .dh img{height:14px;opacity:.95}
.drawer .dh .wm{font-weight:700;font-size:13px;letter-spacing:.14em}
.drawer .dh .wm span{color:#8E82FF}
.drawer .dh .x{margin-left:auto;background:none;border:0;color:#8D9BBA;font-size:16px;cursor:pointer;padding:2px 6px}
.drawer .cap{font-size:10.5px;font-weight:600;letter-spacing:.07em;color:#7E8BA8;
  padding:12px 10px 5px;text-transform:uppercase}
.drawer a{display:flex;align-items:baseline;gap:10px;padding:9px 10px;border-radius:8px;
  color:#C6D0E4;font-size:14px;font-weight:450}
.drawer a:hover{background:rgba(255,255,255,.06);color:#fff;text-decoration:none}
.drawer a[aria-current="true"]{background:color-mix(in srgb,var(--brand) 26%,transparent);color:#fff}
.drawer a .n{margin-left:auto;color:#7E8BA8;font-size:11.5px}

/* full-bleed colour bands */
.band{padding:84px 0}
.band .w{max-width:1120px;margin:0 auto;padding:0 40px}
.band.dk{background:var(--deep);color:#C7D1E6}
.band.dk2{background:var(--deep-2);color:#C7D1E6}
.band.lt{background:var(--wash)}
.band.dk h2,.band.dk2 h2,.band.dk h3,.band.dk2 h3,.band.dk h4,.band.dk2 h4{color:#fff}
.band.dk .grp>h2,.band.dk2 .grp>h2{font-size:24px;letter-spacing:-.024em}
.band.lt .grp>h2{font-size:24px;letter-spacing:-.024em}
.band .grp{margin-bottom:52px}
.band .grp:last-child{margin-bottom:0}
.band .sb{color:#9FACC8;font-size:15.5px}
.band.lt .sb{color:var(--ink-2)}

/* hero — full-bleed, duotone, condensed uppercase */
.hero{position:relative;min-height:660px;display:flex;align-items:flex-end;overflow:hidden;
  background:var(--deep);padding-top:var(--barh)}
.hero .himg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;
  filter:grayscale(1) invert(.9) contrast(1.02) brightness(.62)}
.hero .hveil{position:absolute;inset:0;background:
  radial-gradient(115% 85% at 82% -5%,color-mix(in srgb,var(--brand) 62%,transparent),transparent 62%),
  linear-gradient(180deg,color-mix(in srgb,var(--deep) 72%,transparent),color-mix(in srgb,var(--deep) 34%,transparent) 46%,var(--deep) 97%)}
.hero .hin{position:relative;max-width:1120px;margin:0 auto;width:100%;padding:96px 40px 68px}
.hero .lock{display:flex;align-items:center;gap:12px;margin-bottom:26px;flex-wrap:wrap}
.hero .lock .mk{width:40px;height:40px;border-radius:10px;display:grid;place-items:center;
  font-size:13.5px;font-weight:700;color:#fff}
.hero .lock .nm{font-size:19px;font-weight:650;letter-spacing:-.02em;color:#fff}
.hero .lock .x{color:#8FA0C4;font-size:15px}
.hero h1{font-family:var(--disp);font-weight:600;text-transform:uppercase;color:#fff;
  font-size:clamp(34px,6.2vw,92px);line-height:.99;letter-spacing:.008em;margin:0 0 16px;
  max-width:20ch;overflow-wrap:break-word}
.hero .hsub{color:#B9C8E8;font-size:16.5px;margin:0 0 30px}
.hero .hsub b{color:#fff;font-weight:550}
.hero .hacts{display:flex;gap:12px;flex-wrap:wrap}

/* buttons — one primary shape, used sparingly */
.big{display:inline-flex;align-items:center;gap:9px;background:var(--brand);color:#fff;
  font-size:15.5px;font-weight:600;padding:14px 24px;border-radius:9px;border:0;cursor:pointer;
  font-family:var(--ui)}
.big:hover{background:var(--brand-2);text-decoration:none}
.ghost{display:inline-flex;align-items:center;gap:9px;background:transparent;color:#fff;
  font-size:15px;font-weight:550;padding:13px 22px;border-radius:9px;
  border:1px solid rgba(255,255,255,.32)}
.ghost:hover{background:rgba(255,255,255,.08);text-decoration:none}
.band.lt .ghost,.band.lt .ghost:hover{color:var(--ink);border-color:var(--line-2)}

/* dark-band variants of the shared components */
.dk .rows,.dk2 .rows,.dk .stack,.dk2 .stack{border-color:rgba(255,255,255,.14)}
.dk .row,.dk2 .row,.dk .itm,.dk2 .itm{border-color:rgba(255,255,255,.14)}
.dk .row .lb,.dk2 .row .lb,.dk .seq>li::before,.dk2 .seq>li::before{color:#8290B0}
.dk .row .vl,.dk2 .row .vl,.dk .itm p,.dk2 .itm p,.dk .seq p,.dk2 .seq p{color:#AAB6CF}
.dk .line{border-color:var(--brand-2);color:#E4EAF7}
.dk .ro{background:rgba(255,255,255,.05);border-color:rgba(255,255,255,.14)}
.dk .ro .u{border-color:rgba(255,255,255,.14)}
.dk .ro .v{color:#fff} .dk .ro .k{color:#9FACC8}
.dk .ro .u.w .v{color:#4ADE9C} .dk .ro .u.l .v{color:#FF8A73} .dk .ro .u.h .v{color:#FFC95C}
.dk .ro .u.big{background:color-mix(in srgb,var(--brand) 24%,transparent)}
.dk .ro .u.big .v{color:#fff} .dk .ro .u.big .k{color:#B9C8E8}
.dk .sc{background:color-mix(in srgb,var(--brand) 22%,transparent);color:#DCE5F8}
.dk .sc b{color:#9DBCFF}
.dk figure img{border-color:rgba(255,255,255,.18)}
.dk figcaption,.dk2 figcaption{color:#8D9BBA}
.dk .qa,.dk2 .qa{background:transparent;border-color:rgba(255,255,255,.14)}
.dk .qa details,.dk2 .qa details{border-color:rgba(255,255,255,.14)}
.dk .qa summary,.dk2 .qa summary{color:#fff}
.dk .qa summary:hover,.dk2 .qa summary:hover,.dk .qa details[open] summary{background:rgba(255,255,255,.05)}
.dk .qa .a,.dk2 .qa .a{color:#AAB6CF}
.dk .nb,.dk2 .nb{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.15);color:#AAB6CF}
.dk .nb strong,.dk2 .nb strong{color:#fff}
.dk .act.g{background:transparent;color:#fff;border-color:rgba(255,255,255,.3)}
.dk .act.g:hover{background:rgba(255,255,255,.08)}
.dk .ppl .p{background:rgba(255,255,255,.055)}
.dk .p .rl,.dk .p p{color:#A9B5CE}
.dk .side{background:rgba(255,255,255,.05);border-color:rgba(255,255,255,.16)}
.dk .side .lk{background:rgba(255,255,255,.055);border-color:rgba(255,255,255,.16);color:#fff}
.dk .side .lk:hover{background:rgba(255,255,255,.1)}
.dk .side .lk .go{color:#8290B0}
.dk .side .vid{border-color:rgba(255,255,255,.16)}
.dk .side .vid .cap{background:rgba(255,255,255,.055);border-color:rgba(255,255,255,.16);color:#A9B5CE}
.dk .side .vid .cap b{color:#fff}
.dk .grp>p.sb{color:#9FACC8}

/* the configurator — the light pricing band's centrepiece */
.quote{border:1px solid var(--line);border-radius:16px;background:#fff;overflow:hidden;
  box-shadow:0 30px 70px -38px rgba(13,26,60,.45)}
.quote .qh{display:flex;justify-content:space-between;align-items:center;gap:24px;
  background:#151A23;color:#fff;padding:20px 26px}
.quote .qh h3{color:#fff;font-size:18px}
.quote .qh p{margin:3px 0 0;color:#9FACC8;font-size:13.5px}
.qt{text-align:right;flex:none}
.qt .ql{display:block;font-size:10.5px;letter-spacing:.09em;color:#9FACC8;text-transform:uppercase;font-weight:650}
.qt .qv{font-size:31px;font-weight:650;letter-spacing:-.03em;font-variant-numeric:tabular-nums}
.qr{display:grid;grid-template-columns:auto 1fr auto;gap:16px;align-items:center;
  padding:17px 26px;border-bottom:1px solid var(--line);cursor:pointer}
.qr:hover{background:var(--wash)}
.qr input{appearance:none;width:18px;height:18px;border:1.5px solid var(--line-2);border-radius:50%;
  flex:none;cursor:pointer;position:relative;background:#fff;margin:0}
.qr input:checked{background:var(--brand);border-color:var(--brand)}
.qr input:checked::after{content:"";position:absolute;left:5px;top:2px;width:4px;height:8px;
  border:solid #fff;border-width:0 1.6px 1.6px 0;transform:rotate(43deg)}
.qr b{font-size:15px;font-weight:550;color:var(--ink)}
.qr small{display:block;color:var(--ink-3);font-size:13px;margin-top:2px;max-width:64ch}
.qr .qp{font-variant-numeric:tabular-nums;font-weight:600;font-size:15px;color:var(--ink);white-space:nowrap}
.qr .qp i{font-style:normal;color:var(--ink-3);font-weight:450;font-size:12.5px;margin-left:3px}
.qr:has(input:checked){background:color-mix(in srgb,var(--brand) 7%,#fff)}
.qf{display:flex;justify-content:space-between;align-items:center;gap:18px;
  padding:19px 26px;background:var(--wash);flex-wrap:wrap}
.qnote{font-size:13px;color:var(--ink-2);max-width:56ch;margin:0}

/* closing band — one giant question, one button */
.close{position:relative;overflow:hidden;background:var(--deep)}
.close::before{content:"";position:absolute;right:-220px;bottom:-320px;width:820px;height:820px;
  border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--brand) 34%,transparent),transparent 65%)}
.close .w{position:relative}
.close h2{font-family:var(--disp);font-weight:600;text-transform:uppercase;color:#fff;
  font-size:clamp(32px,4.8vw,70px);line-height:1.02;letter-spacing:.008em;max-width:22ch;
  margin-bottom:14px;overflow-wrap:break-word}
.close p{color:#B9C8E8;font-size:16.5px;max-width:60ch;margin:0 0 32px}
.close .fine{font-size:13px;color:#8290B0;max-width:74ch;margin:36px 0 0}
.close .foot{display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;
  border-top:1px solid rgba(255,255,255,.14);margin-top:44px;padding-top:22px;
  color:#8290B0;font-size:12.5px}
.close .foot b{color:#C6D0E4;font-weight:550}

/* co-brand + signature blocks (light or dark aware) */
.lockrow{display:flex;align-items:center;gap:12px;padding:0 0 26px}
.lockrow .mk{width:44px;height:44px;border-radius:11px;display:grid;place-items:center;
  font-size:15px;font-weight:700;color:#fff}
.lockrow .nm{font-size:22px;font-weight:650;letter-spacing:-.025em}
.lockrow .x{color:var(--ink-3);font-size:17px}
.dk .lockrow .nm{color:#fff}
.dk .lockrow .x{color:#8FA0C4}
.team{display:flex;align-items:center;gap:13px;padding:15px 18px;border:1px solid var(--line);
  border-radius:11px;background:#fff;max-width:520px}
.team .av{width:40px;height:40px;font-size:14px}
.team .t b{display:block;font-size:14.5px;color:var(--ink)}
.team .t span{font-size:13px;color:var(--ink-2)}
.team .go{margin-left:auto}
.dk .team{background:rgba(255,255,255,.055);border-color:rgba(255,255,255,.16)}
.dk .team .t b{color:#fff} .dk .team .t span{color:#A9B5CE}
.sig{display:flex;align-items:center;gap:13px;padding:16px 18px;border:1px solid var(--line);
  border-radius:11px;background:var(--wash);max-width:560px;margin-top:16px}
.sig .av{width:40px;height:40px;font-size:14px;background:#141414}
.sig .t b{display:block;font-size:14.5px;color:var(--ink)}
.sig .t span{font-size:13px;color:var(--ink-2)}

/* basheer wordmark (type, not an image, so the template travels alone) */
.wm{color:#fff;font-weight:700;font-size:14px;letter-spacing:.14em;line-height:1}
.wm span{color:#8E82FF}

/* ── responsive ──────────────────────────────────────────────────── */
@media(max-width:1100px){.bar .stat{display:none}}
@media(max-width:900px){
  .rail{position:static;width:auto;top:auto;bottom:auto;border-right:0;
    border-bottom:1px solid var(--line);display:none}
  .rail.o{display:block}
  .body{margin-left:0}
  .w{padding:0 18px}
  .bar .mb{display:block} .bar .by{display:none}
  .hello .in{grid-template-columns:1fr}
  .row{grid-template-columns:1fr;gap:4px}
  .ro .u{border-right:0;border-bottom:1px solid var(--line);flex-basis:50%}
  .band{padding:56px 0}
  .band .w{padding:0 18px}
  .hero{min-height:560px}
  .hero .hin{padding:72px 18px 52px}
  .quote .qh{flex-direction:column;align-items:flex-start;gap:10px}
  .qt{text-align:left}
  .qr{grid-template-columns:auto 1fr;grid-template-rows:auto auto}
  .qr .qp{grid-column:2;text-align:left}
  .close h2{font-size:clamp(30px,9vw,48px)}
}
@media(max-width:640px){
  /* cinematic bar slims to brand, total, copy, menu */
  body.cine .bar .t,body.cine .bar .div,body.cine .bar .avs{display:none}
}
