/* Layout: midnight-emerald hero bands with brass details, porcelain content bands, 1120px column */
:root{
  --bg:#FFFFFF; --surface:#FFFFFF; --ink:#0B2523; --muted:#52686A; --line:#E1E9E7;
  --accent:#0E5C57; --accent-ink:#FFFFFF; --accent-soft:#E3EFEC;
  --gold:#B08A3E; --gold-soft:#F7F0E1;
  --warm:#C8553D; --warm-soft:#FBEAE5; --grid:#F2D3CD; --grid-strong:#E7B3AA;
  --night:#08201F; --night-2:#0C2E2C; --night-ink:#ECF3F1; --night-muted:#A9BEBB; --night-line:rgba(236,243,241,.14); --night-gold:#D4B06A;
  --display:"Gloock", "Georgia", "Times New Roman", serif;
  --body:"Hanken Grotesk", "Segoe UI", system-ui, -apple-system, sans-serif;
  --mono:"IBM Plex Mono", ui-monospace, "SFMono-Regular", Menlo, monospace;
  --deva:"Mukta", "Nirmala UI", "Noto Sans Devanagari", sans-serif;
  --radius:18px;
}
@media (prefers-color-scheme: dark){
  :root:not([data-theme="light"]){
    --bg:#071514; --surface:#0E2120; --ink:#E7F0EE; --muted:#9DB3B0; --line:#1F3634;
    --accent:#4FC1B4; --accent-ink:#04201D; --accent-soft:#11302D;
    --gold:#D4B06A; --gold-soft:#2A2416;
    --warm:#F08A73; --warm-soft:#3A2420; --grid:#2A2423; --grid-strong:#4A2E2A;
    --night:#041110; --night-2:#082120; --night-ink:#ECF3F1; --night-muted:#A9BEBB; --night-line:rgba(236,243,241,.12); --night-gold:#D4B06A;
    color-scheme:dark;
  }
}
:root[data-theme="dark"]{
  --bg:#071514; --surface:#0E2120; --ink:#E7F0EE; --muted:#9DB3B0; --line:#1F3634;
  --accent:#4FC1B4; --accent-ink:#04201D; --accent-soft:#11302D;
  --gold:#D4B06A; --gold-soft:#2A2416;
  --warm:#F08A73; --warm-soft:#3A2420; --grid:#2A2423; --grid-strong:#4A2E2A;
  --night:#041110; --night-2:#082120; --night-ink:#ECF3F1; --night-muted:#A9BEBB; --night-line:rgba(236,243,241,.12); --night-gold:#D4B06A;
  color-scheme:dark;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}}
body{background:var(--bg);color:var(--ink);font-family:var(--body);font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased}
body::before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0px);z-index:10;background:var(--bg)}
a{color:inherit}
:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:6px}
.wrap{max-width:1120px;margin-inline:auto;padding-left:max(16px, env(safe-area-inset-left,0px));padding-right:max(16px, env(safe-area-inset-right,0px))}
h1,h2,h3{font-family:var(--display);line-height:1.12;margin:0;text-wrap:balance;letter-spacing:-.01em}
h1{font-size:clamp(2.1rem, 1.3rem + 3.4vw, 3.6rem);font-weight:750}
h2{font-size:clamp(1.65rem, 1.2rem + 1.8vw, 2.4rem);font-weight:650}
h3{font-size:1.18rem;font-weight:650}
p{margin:0}
.eyebrow{font-family:var(--mono);font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;color:var(--accent)}
.lede{font-size:1.14rem;color:var(--muted);max-width:60ch}

/* Header */
header.bar{position:sticky;top:env(safe-area-inset-top,0px);z-index:20;background:color-mix(in srgb, var(--bg) 88%, transparent);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.bar .wrap{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-block:14px}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none}
.brand-mark{width:34px;height:34px;flex:none}
.brand-name{font-family:var(--display);font-weight:750;font-size:1.3rem;letter-spacing:-.02em}
.brand-name span{color:var(--accent);font-weight:500}
nav.links{display:flex;gap:26px;align-items:center}
nav.links a{text-decoration:none;color:var(--muted);font-weight:500;font-size:.96rem}
nav.links a:hover{color:var(--ink)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-family:var(--body);font-weight:600;font-size:.98rem;border-radius:999px;padding:12px 22px;text-decoration:none;border:1px solid transparent;cursor:pointer;transition:background .2s, color .2s, border-color .2s}
.btn-primary{background:var(--accent);color:var(--accent-ink)}
.btn-primary:hover{background:color-mix(in srgb, var(--accent) 86%, var(--ink))}
.btn-ghost{background:transparent;border-color:var(--line);color:var(--ink)}
.btn-ghost:hover{border-color:var(--accent);color:var(--accent)}
.menu-btn{display:none;background:none;border:1px solid var(--line);border-radius:10px;padding:8px 12px;color:var(--ink);font:inherit;font-size:.9rem;cursor:pointer}
@media (max-width: 860px){
  nav.links{display:none}
  .menu-btn{display:inline-block}
  .bar .btn{display:none}
  nav.links.open{display:flex;position:absolute;left:0;right:0;top:100%;flex-direction:column;align-items:flex-start;gap:4px;background:var(--surface);border-bottom:1px solid var(--line);padding:12px max(16px, env(safe-area-inset-right,0px)) 18px max(16px, env(safe-area-inset-left,0px))}
  nav.links.open a{padding:10px 0;font-size:1.05rem;width:100%}
}

/* Hero */
.hero{padding-block:clamp(40px, 6vw, 84px) clamp(48px, 7vw, 96px)}
.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(28px, 5vw, 64px);align-items:center}
.hero-copy{display:flex;flex-direction:column;gap:22px;min-width:0}
.hero-copy h1 em{font-style:normal;color:var(--accent)}
.deva{font-family:var(--deva);font-size:1.12rem;color:var(--warm);font-weight:500}
.hero-actions{display:flex;flex-wrap:wrap;gap:12px}
.hero-note{font-size:.92rem;color:var(--muted)}
.paper{position:relative;border-radius:22px;padding:clamp(18px, 3vw, 30px);
  background-color:var(--surface);
  background-image:
    linear-gradient(var(--grid-strong) 1px, transparent 1px),
    linear-gradient(90deg, var(--grid-strong) 1px, transparent 1px),
    linear-gradient(var(--grid) 1px, transparent 1px),
    linear-gradient(90deg, var(--grid) 1px, transparent 1px);
  background-size:40px 40px,40px 40px,8px 8px,8px 8px;
  border:1px solid var(--line);min-width:0}
.trace{display:block;width:100%;height:84px;margin-bottom:14px}
.trace path{fill:none;stroke:var(--warm);stroke-width:2;stroke-linejoin:round;stroke-linecap:round;stroke-dasharray:1400;stroke-dashoffset:0;animation:draw 2.4s ease-out}
@keyframes draw{from{stroke-dashoffset:1400}to{stroke-dashoffset:0}}
@media (prefers-reduced-motion: reduce){.trace path{animation:none}}
.paper-scale{position:absolute;top:14px;right:18px;font-family:var(--mono);font-size:.72rem;color:var(--muted);background:var(--surface);padding:2px 6px;border-radius:4px}
.consult{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 18px 40px -24px rgba(8,40,40,.35);overflow:hidden}
.consult-head{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:14px 18px;border-bottom:1px solid var(--line);flex-wrap:wrap}
.live{display:inline-flex;align-items:center;gap:8px;font-family:var(--mono);font-size:.78rem;color:var(--muted)}
.dot{width:8px;height:8px;border-radius:50%;background:var(--warm);box-shadow:0 0 0 4px var(--warm-soft)}
.chip{display:inline-flex;align-items:center;gap:6px;font-size:.8rem;font-weight:600;padding:4px 10px;border-radius:999px;background:var(--accent-soft);color:var(--accent)}
.consult-body{padding:16px 18px;display:grid;gap:14px}
.site{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}
.site b{font-weight:600}
.site small{color:var(--muted);font-size:.86rem}
.vitals{display:grid;grid-template-columns:repeat(4, minmax(0,1fr));gap:8px}
.vital{border:1px solid var(--line);border-radius:10px;padding:8px 10px;min-width:0}
.vital span{display:block;font-size:.72rem;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}
.vital strong{font-family:var(--mono);font-weight:500;font-size:1.02rem;font-variant-numeric:tabular-nums}
.vital strong i{font-style:normal;font-size:.72rem;color:var(--muted);margin-left:2px}
.vital.flag{border-color:color-mix(in srgb, var(--warm) 55%, var(--line));background:var(--warm-soft)}
.attach{display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:.92rem;border-top:1px dashed var(--line);padding-top:12px;flex-wrap:wrap}
.attach code{font-family:var(--mono);font-size:.82rem;color:var(--muted)}
.joining{display:flex;align-items:center;gap:12px;background:var(--accent-soft);border-radius:10px;padding:10px 12px}
.avatar{width:36px;height:36px;border-radius:50%;background:var(--accent);color:var(--accent-ink);display:grid;place-items:center;font-family:var(--display);font-weight:650;flex:none}
.joining p{font-size:.92rem}
.joining .t{margin-left:auto;font-family:var(--mono);font-size:.9rem;color:var(--accent);font-variant-numeric:tabular-nums}
.example-tag{margin-top:10px;font-size:.8rem;color:var(--muted);text-align:right}
@media (max-width: 900px){.hero-grid{grid-template-columns:1fr}}
@media (max-width: 460px){.vitals{grid-template-columns:repeat(2, minmax(0,1fr))}}

/* Sections */
section.band{padding-block:clamp(56px, 8vw, 104px);border-top:1px solid var(--line)}
.section-head{display:flex;flex-direction:column;gap:12px;margin-bottom:clamp(28px, 4vw, 44px);max-width:720px}
.who{display:grid;grid-template-columns:repeat(3, minmax(0,1fr));gap:20px}
.who article{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:24px;display:flex;flex-direction:column;gap:10px;min-width:0}
.who .tag{font-family:var(--mono);font-size:.76rem;color:var(--warm);text-transform:uppercase;letter-spacing:.07em}
.who p{color:var(--muted);font-size:.98rem}
.who ul{margin:4px 0 0;padding-left:18px;color:var(--ink);font-size:.95rem;display:grid;gap:4px}
@media (max-width: 860px){.who{grid-template-columns:1fr}}

.steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4, minmax(0,1fr));gap:0;counter-reset:s;border-top:2px solid var(--ink)}
.steps li{padding:22px 22px 6px 0;display:flex;flex-direction:column;gap:8px;counter-increment:s;min-width:0}
.steps li::before{content:"Step " counter(s);font-family:var(--mono);font-size:.78rem;color:var(--accent);letter-spacing:.06em;text-transform:uppercase}
.steps p{color:var(--muted);font-size:.96rem}
@media (max-width: 860px){.steps{grid-template-columns:1fr 1fr;row-gap:12px}}
@media (max-width: 520px){.steps{grid-template-columns:1fr}}

.spec-wrap{display:grid;grid-template-columns:1fr 1.2fr;gap:clamp(28px, 5vw, 64px);align-items:start}
.spec-list{display:flex;flex-wrap:wrap;gap:10px}
.spec-list li{list-style:none;border:1px solid var(--line);background:var(--surface);border-radius:999px;padding:9px 16px;font-weight:500;font-size:.96rem}
.spec-list{margin:0;padding:0}
.assure{display:grid;gap:14px;margin-top:6px}
.assure div{display:flex;gap:12px;align-items:flex-start}
.tick{flex:none;width:22px;height:22px;border-radius:50%;background:var(--accent-soft);color:var(--accent);display:grid;place-items:center;font-size:.8rem;font-weight:700;margin-top:2px}
.assure p{color:var(--muted);font-size:.97rem}
.assure b{color:var(--ink);font-weight:600}
@media (max-width: 860px){.spec-wrap{grid-template-columns:1fr}}

.plans{display:grid;grid-template-columns:repeat(3, minmax(0,1fr));gap:20px}
.plan{border:1px solid var(--line);border-radius:var(--radius);padding:26px;display:flex;flex-direction:column;gap:14px;background:var(--surface);min-width:0}
.plan.feature{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent) inset}
.plan .for{font-size:.92rem;color:var(--muted)}
.plan ul{margin:0;padding-left:18px;display:grid;gap:6px;font-size:.95rem;flex:1}
.plan .price{font-family:var(--mono);font-size:.86rem;color:var(--muted);border-top:1px solid var(--line);padding-top:12px}
@media (max-width: 860px){.plans{grid-template-columns:1fr}}

.centre{background:var(--accent);color:var(--accent-ink);border-top:none}
.centre .eyebrow{color:var(--accent-ink);opacity:.8}
.centre-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(28px, 5vw, 64px);align-items:start}
.centre p.lede{color:var(--accent-ink);opacity:.86}
.centre-list{list-style:none;margin:0;padding:0;display:grid;gap:0;border-top:1px solid color-mix(in srgb, var(--accent-ink) 30%, transparent)}
.centre-list li{display:flex;justify-content:space-between;gap:16px;padding:14px 0;border-bottom:1px solid color-mix(in srgb, var(--accent-ink) 30%, transparent);font-weight:500}
.centre-list li span{opacity:.75;font-weight:400;text-align:right}
.centre .note{margin-top:18px;font-size:.92rem;opacity:.86}
.centre .deva{color:var(--accent-ink);opacity:.9}
.btn-light{background:var(--accent-ink);color:var(--accent)}
.btn-light:hover{background:color-mix(in srgb, var(--accent-ink) 88%, var(--accent))}
.centre :focus-visible{outline-color:var(--accent-ink)}
.hero-note a{color:var(--accent);font-weight:600}
@media (max-width: 860px){.centre-grid{grid-template-columns:1fr}}

.faq{display:grid;gap:0;border-top:1px solid var(--line);max-width:820px}
.faq details{border-bottom:1px solid var(--line);padding:18px 0}
.faq summary{cursor:pointer;font-weight:600;font-size:1.04rem;list-style:none;display:flex;justify-content:space-between;gap:16px}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";font-family:var(--mono);color:var(--accent);font-size:1.2rem;line-height:1}
.faq details[open] summary::after{content:"–"}
.faq p{color:var(--muted);margin-top:10px;max-width:68ch}

.contact-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(28px, 5vw, 64px);align-items:start}
.reach{display:grid;gap:18px}
.reach .line{display:flex;flex-direction:column;gap:4px}
.reach .line span{font-size:.82rem;color:var(--muted);text-transform:uppercase;letter-spacing:.07em;font-family:var(--mono)}
.reach .line strong{font-size:1.12rem;font-weight:600;user-select:all}
form.enquiry{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:clamp(20px, 3vw, 30px);display:grid;grid-template-columns:1fr 1fr;gap:16px;min-width:0}
.field{display:flex;flex-direction:column;gap:6px;min-width:0}
.field.full{grid-column:1 / -1}
label{font-size:.88rem;font-weight:600}
input,select,textarea{font:inherit;font-size:.98rem;color:var(--ink);background:var(--bg);border:1px solid var(--line);border-radius:10px;padding:11px 12px;width:100%}
textarea{min-height:96px;resize:vertical}
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}
.form-foot{grid-column:1 / -1;display:flex;flex-wrap:wrap;align-items:center;gap:12px;justify-content:space-between}
.form-foot small{color:var(--muted);font-size:.85rem;max-width:42ch}
.result{grid-column:1 / -1;border:1px dashed var(--accent);border-radius:10px;padding:16px;display:grid;gap:12px;background:var(--accent-soft)}
.result pre{margin:0;white-space:pre-wrap;font-family:var(--mono);font-size:.84rem;color:var(--ink)}
.result .row{display:flex;flex-wrap:wrap;gap:10px}
.err{color:var(--warm);font-size:.88rem;grid-column:1 / -1}
@media (max-width: 860px){.contact-grid{grid-template-columns:1fr}}
@media (max-width: 520px){form.enquiry{grid-template-columns:1fr}}

.emergency{background:var(--warm-soft);border-top:1px solid var(--line)}
.emergency .wrap{padding-block:18px;display:flex;gap:12px;align-items:center;flex-wrap:wrap;font-size:.95rem}
.emergency strong{color:var(--warm)}
footer{border-top:1px solid var(--line)}
footer .wrap{padding-block:30px;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;color:var(--muted);font-size:.9rem}
footer nav{display:flex;gap:18px;flex-wrap:wrap}
footer a{text-decoration:none}
footer a:hover{color:var(--ink)}
.switch{font-weight:600;color:var(--ink)!important;border:1px solid var(--line);border-radius:999px;padding:6px 14px}
.switch:hover{border-color:var(--accent);color:var(--accent)!important}
@media (max-width: 860px){nav.links.open .switch{border:none;padding:10px 0}}
/* Base reset so the pages also work on any host */
body{margin:0}
[hidden]{display:none!important}
img{max-width:100%}

/* Gateway page */
.gate-hero{padding-block:clamp(44px, 7vw, 96px) clamp(24px, 3vw, 36px);text-align:left}
.gate-hero .wrap{display:flex;flex-direction:column;gap:18px}
.gate-hero h1{font-size:clamp(2.3rem, 1.4rem + 3.8vw, 4rem);max-width:15ch}
.gate-hero .trace{height:60px;margin:6px 0 0;max-width:520px}
.gate{padding-block:0 clamp(48px, 7vw, 96px)}
.gate .wrap{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.door{position:relative;display:flex;flex-direction:column;gap:16px;padding:clamp(26px, 4vw, 44px);border-radius:24px;border:1px solid var(--line);background:var(--surface);text-decoration:none;color:var(--ink);transition:transform .25s ease, box-shadow .25s ease, border-color .25s ease;min-width:0}
.door:hover{transform:translateY(-3px);box-shadow:0 24px 50px -30px rgba(8,40,40,.45);border-color:var(--accent)}
@media (prefers-reduced-motion: reduce){.door{transition:none}.door:hover{transform:none}}
.door .brandline{font-family:var(--mono);font-size:.8rem;letter-spacing:.09em;text-transform:uppercase;color:var(--accent)}
.door h2{font-size:clamp(1.6rem, 1.2rem + 1.6vw, 2.3rem)}
.door p{color:var(--muted);max-width:44ch}
.door ul{list-style:none;margin:0;padding:0;display:grid;gap:10px;border-top:1px solid var(--line);padding-top:16px}
.door li{display:flex;gap:10px;align-items:flex-start;font-size:.98rem}
.door li::before{content:"";flex:none;width:7px;height:7px;border-radius:50%;background:var(--accent);margin-top:9px}
.door .go{margin-top:auto;padding-top:8px}
.door .go span{display:inline-flex;align-items:center;gap:10px;font-weight:600;background:var(--accent);color:var(--accent-ink);border-radius:999px;padding:13px 24px}
.door.deep{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}
.door.deep .brandline{color:var(--accent-ink);opacity:.8}
.door.deep p{color:var(--accent-ink);opacity:.86}
.door.deep ul{border-top-color:color-mix(in srgb, var(--accent-ink) 30%, transparent)}
.door.deep li::before{background:var(--accent-ink)}
.door.deep .go span{background:var(--accent-ink);color:var(--accent)}
.door.deep:hover{border-color:var(--accent-ink)}
.door.deep:focus-visible{outline-color:var(--ink)}
.trust{border-top:1px solid var(--line)}
.trust .wrap{padding-block:22px;display:flex;flex-wrap:wrap;gap:12px 28px;color:var(--muted);font-size:.93rem}
.trust span{display:inline-flex;gap:8px;align-items:center}
.trust span::before{content:"✓";color:var(--accent);font-weight:700}
@media (max-width: 820px){.gate .wrap{grid-template-columns:1fr}}

/* ---------- Premium layer ---------- */
h1,h2{font-weight:400;letter-spacing:-.005em}
h3{font-family:var(--body);font-weight:600;letter-spacing:0}
.eyebrow{color:var(--gold)}
.night{background:var(--night);color:var(--night-ink)}
.night .eyebrow{color:var(--night-gold)}
.night .lede,.night .hero-note{color:var(--night-muted)}
.night .hero-note a{color:var(--night-gold)}
.night h1 em{color:var(--night-gold);font-style:normal}
.night .btn-primary{background:var(--night-gold);color:#1B1606}
.night .btn-primary:hover{background:color-mix(in srgb, var(--night-gold) 85%, #fff)}
.night .btn-ghost{border-color:var(--night-line);color:var(--night-ink)}
.night .btn-ghost:hover{border-color:var(--night-gold);color:var(--night-gold)}
.night :focus-visible{outline-color:var(--night-gold)}
header.bar.night{background:color-mix(in srgb, var(--night) 92%, transparent);border-bottom-color:var(--night-line)}
body::before{background:var(--night)}
header.bar.night .brand-name span{color:var(--night-gold)}
header.bar.night nav.links a{color:var(--night-muted)}
header.bar.night nav.links a:hover{color:var(--night-ink)}
header.bar.night .menu-btn{border-color:var(--night-line);color:var(--night-ink)}
header.bar.night .switch{color:var(--night-ink)!important;border-color:var(--night-line)}
header.bar.night .switch:hover{border-color:var(--night-gold);color:var(--night-gold)!important}
@media (max-width: 860px){header.bar.night nav.links.open{background:var(--night);border-bottom-color:var(--night-line)}}
.brand-mark rect{fill:var(--night-gold)}
.brand-mark path{stroke:#1B1606}
section.hero.night,.gate-hero.night,.gate.night{background:
  radial-gradient(1100px 520px at 85% -10%, color-mix(in srgb, var(--accent) 38%, transparent), transparent 60%),
  radial-gradient(700px 400px at -10% 110%, color-mix(in srgb, var(--night-gold) 12%, transparent), transparent 60%),
  var(--night)}
.gate.night{background:var(--night)}
.night .trace path{stroke:var(--night-gold);stroke-width:1.6}
.paper{border-color:transparent;box-shadow:0 30px 70px -30px rgba(0,0,0,.55)}
.consult{box-shadow:none}
.who article,.plan{border-radius:var(--radius);box-shadow:0 1px 0 var(--line), 0 18px 40px -34px rgba(8,40,40,.35)}
.who .tag{color:var(--gold)}
.plan.feature{border-color:var(--gold);box-shadow:0 0 0 1px var(--gold) inset, 0 24px 50px -36px rgba(8,40,40,.45)}
.plan.feature h3::after{content:"Most chosen";margin-left:10px;font-family:var(--mono);font-size:.68rem;letter-spacing:.08em;text-transform:uppercase;color:var(--gold);vertical-align:middle}
.steps{border-top:1px solid var(--gold)}
.steps li::before{color:var(--gold)}
.tick{background:var(--gold-soft);color:var(--gold)}
.spec-list li{border-color:var(--line);box-shadow:0 1px 0 var(--line)}
.faq summary::after{color:var(--gold)}
.chip{background:var(--gold-soft);color:var(--gold)}
.door{border-radius:26px}
.gate.night .door{background:var(--night-2);border-color:var(--night-line);color:var(--night-ink)}
.gate.night .door p{color:var(--night-muted)}
.gate.night .door .brandline{color:var(--night-gold)}
.gate.night .door ul{border-top-color:var(--night-line)}
.gate.night .door li::before{background:var(--night-gold)}
.gate.night .door .go span{background:var(--night-gold);color:#1B1606}
.gate.night .door:hover{border-color:var(--night-gold);box-shadow:0 30px 60px -30px rgba(0,0,0,.6)}
.gate.night .door.deep{background:linear-gradient(160deg, color-mix(in srgb, var(--accent) 55%, var(--night-2)), var(--night-2) 70%);border-color:color-mix(in srgb, var(--night-gold) 45%, transparent)}
.gate.night .door.deep .go span{background:var(--night-ink);color:var(--night)}
.trust.night{border-top-color:var(--night-line)}
.trust.night span{color:var(--night-muted)}
.trust.night span::before{color:var(--night-gold)}
.emergency{background:var(--warm-soft)}
footer.night{border-top:none}
footer.night .wrap{color:var(--night-muted)}
footer.night a:hover{color:var(--night-ink)}
.paper{color:var(--ink)}
.gate-hero h1{max-width:19ch}
.gate-main{background:
  radial-gradient(1100px 620px at 88% -5%, color-mix(in srgb, var(--accent) 36%, transparent), transparent 62%),
  radial-gradient(800px 500px at -10% 75%, color-mix(in srgb, var(--night-gold) 11%, transparent), transparent 62%),
  var(--night)}
.gate-main section.night{background:transparent}
.bar-actions{display:flex;align-items:center;gap:10px}
.theme-btn{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;border:1px solid var(--line);background:transparent;color:var(--ink);cursor:pointer;flex:none;transition:border-color .2s,color .2s}
.theme-btn:hover{border-color:var(--gold);color:var(--gold)}
header.bar.night .theme-btn{border-color:var(--night-line);color:var(--night-ink)}
header.bar.night .theme-btn:hover{border-color:var(--night-gold);color:var(--night-gold)}
@media (max-width: 860px){.bar-actions .btn-ghost{display:none}}
.plans:has(> .plan:nth-child(2):last-child){grid-template-columns:repeat(2, minmax(0,1fr))}
@media (max-width: 860px){.plans:has(> .plan:nth-child(2):last-child){grid-template-columns:1fr}}
#principles .who{grid-template-columns:repeat(auto-fit, minmax(200px, 1fr))}
.plans.doctors{grid-template-columns:repeat(auto-fill, minmax(260px, 1fr))}
.plan .eyebrow{margin:0}
.plan ul{align-content:start}
.plan .price a{color:var(--accent);text-decoration:none;font-weight:500}.plan .price a:hover{text-decoration:underline}
