/* Luxe theme: deep black, refined gold, white panels. Loaded after site.css. */
:root{
  --black:#050506;
  --navy:#050506;--navy-2:#09090c;--navy-3:#0e0e12;
  --ivory:#f4f0e6;--ivory-2:#d9d2c0;--paper:#111116;
  --ink:#f4f0e6;--muted:#b9b3a6;
  --gold:#c9a24b;--gold-2:#e8cc8a;
  --goldgrad:linear-gradient(135deg,#f1d98f 0%,#c9a24b 52%,#a8832f 100%);
  --line:rgba(201,162,75,.22);--line-dark:rgba(201,162,75,.2);
  --serif:"Cormorant Garamond","Playfair Display",Georgia,"Times New Roman",serif;
  --sans:"Hanken Grotesk",system-ui,-apple-system,"Segoe UI",Arial,sans-serif;
  --r:3px;
  --shadow:0 18px 50px rgba(0,0,0,.5);
}
body{background:var(--black);color:var(--ink);font-size:17px;line-height:1.7}
h1,h2,h3{font-weight:500;letter-spacing:.005em}
h2{font-size:clamp(36px,4.6vw,58px)}
h3{font-size:28px}
.eyebrow{color:var(--gold-2);letter-spacing:.26em}
.rule{height:1px;background:linear-gradient(90deg,var(--gold),transparent);width:96px}
.lead{color:var(--muted)}
::selection{background:var(--gold);color:#050506}
:focus-visible{outline:2px solid var(--gold-2);outline-offset:3px}

/* buttons */
.btn{border-radius:2px;letter-spacing:.08em;text-transform:uppercase;font-size:13px;padding:17px 28px;transition:transform .15s,box-shadow .2s,filter .2s}
.btn-gold{background:var(--goldgrad);color:#0a0a0b;border-color:#d9b765;box-shadow:0 8px 24px rgba(201,162,75,.2),inset 0 1px 0 rgba(255,255,255,.35)}
.btn-gold:hover{background:var(--goldgrad);filter:brightness(1.08);transform:translateY(-1px);box-shadow:0 12px 30px rgba(201,162,75,.3)}
.btn-line{color:var(--gold-2)!important;border-color:rgba(201,162,75,.55)}
.btn-line:hover{background:rgba(201,162,75,.1)}
nav.main .btn{color:#0a0a0b;font-size:12px;padding:12px 18px}

/* header, footer */
header.site{background:rgba(5,5,6,.92);border-bottom:1px solid transparent;border-image:linear-gradient(90deg,transparent,rgba(201,162,75,.5),transparent) 1}
.brand b{letter-spacing:.2em}
nav.main a{color:rgba(244,240,230,.82);text-transform:uppercase;font-size:12px;letter-spacing:.14em}
nav.main .btn{color:#0a0a0b}
footer{background:#030304;border-top:1px solid var(--line)}
footer .disclaimer{color:rgba(244,240,230,.6)}

/* hero & page heroes */
.hero,.page-hero{background:radial-gradient(900px 480px at 82% 0%,rgba(201,162,75,.16),transparent 62%),linear-gradient(180deg,#0a0a0d,#050506)}
.page-hero{border-bottom:1px solid var(--line)}
.hero h1 em,.page-hero h1 em{background:var(--goldgrad);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent}
.hero .lead,.page-hero .lead{color:rgba(244,240,230,.8)}
.creds b{color:var(--gold-2)}
.fort-hero .rule{width:120px}

/* sections */
.problem,.about,.booking{background:#08080a}
.approach,.sect{background:#050506}
.process,.sect.alt{background:#0b0b0f;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.fortress{background:#08080a}
.advisers{background:#0e0e12;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.threat,.pillar,.post{background:linear-gradient(160deg,#14141a,#0c0c10);border:1px solid var(--line);box-shadow:var(--shadow)}
.pillar::before{background:var(--goldgrad);height:64px}
.threat .n,.pillar .k,.post small{color:var(--gold-2)}
.pull blockquote{color:#fff}
.pull .mark{color:var(--gold)}
.steps7{background:linear-gradient(160deg,#14141a,#09090c);border:1px solid var(--line)}
.about-facts b{color:#fff}
.about-facts div{border-bottom:1px solid var(--line)}
.book{background:linear-gradient(160deg,#17171d,#0a0a0d);border:1px solid var(--line);color:#fff}
.book.alt{background:linear-gradient(160deg,#1c1710,#0a0a0d)}
.book.ph-book{background:repeating-linear-gradient(135deg,#101014 0 10px,#0b0b0e 10px 20px);color:var(--muted);border:1px dashed rgba(201,162,75,.4)}
.book.ph-book small{color:var(--gold-2)}
.proc li::after{background:var(--line)}
.headshot{background:#0a0a0d;border:1px solid var(--gold);box-shadow:0 0 0 6px rgba(201,162,75,.08),0 24px 60px rgba(0,0,0,.6)}
a.vcard:hover{border-color:var(--gold);transform:translateY(-2px)}
.vid img{border-bottom:1px solid var(--line)}

/* white panels with dark text */
.quote-card,.hero-form,.cal{background:#fff;color:#15151a;box-shadow:0 30px 70px rgba(0,0,0,.55)}
.quote-card{border-left:3px solid var(--gold)}
.quote-card cite{color:#5a5a66}
.hero-form{border-top:3px solid var(--gold);border-radius:2px}
.hero-form h2,.hero-form label,.hero-form .check label{color:#15151a}
.hero-form .opt{color:#5a5a66}
.hero-form a{color:#6b4e00}
.hero-form .err,.cal .err{color:#a32018}
.cal{border:1px solid var(--line)}
.cal-head{border-bottom:1px solid #e6e0d0}
.cal-head h3,.cal .mon{color:#15151a}
.cal p{color:#4f4f5a}
.cal .slot{color:#15151a;background:#fff;border-color:#cfc7b6}
.cal .slot:hover{border-color:var(--gold)}
.cal .slot[aria-pressed="true"]{background:#0a0a0b;color:var(--gold-2);border-color:#0a0a0b}
.cal-note{background:#fbf5e3}

/* forms on dark */
label{color:#fff}
label .opt{color:var(--muted)}
input,select,textarea{background:#fff;color:#15151a;border:1px solid #d6cfbd}
input::placeholder,textarea::placeholder{color:#767683}
.err{color:#ff9d94}
.errsum{background:#2a1210;border-color:#ff9d94;color:#ffd2cc}
.errsum a{color:#ffd2cc}
.check label,.check{color:var(--ink)}
.privacy{background:#0c0c10;border:1px solid var(--line);color:var(--muted)}
.privacy h3{color:#fff}
.privacy a{color:var(--gold-2)}
.form-actions small{color:var(--muted)}
.status{background:#eef6ee;color:#143018;border-color:#9bc19b}
.invite{background:linear-gradient(160deg,#16161c,#09090c);border:1px solid var(--line);border-top:3px solid var(--gold);color:var(--ink)}

/* gate */
.gate-steps{background:#0c0c10;border:1px solid var(--line)}
.gate-steps li{border-right:1px solid var(--line)}
.gate-steps .d{background:#0c0c10;border:1px solid var(--line);color:var(--muted)}
.gate-steps li[aria-current="step"]{color:#fff;background:#14141a}
.gate-steps li[aria-current="step"] .d{background:var(--goldgrad);color:#0a0a0b;border-color:var(--gold)}
.gate-steps li.done .d{background:#0a0a0b;color:var(--gold-2);border-color:var(--gold)}
.assess-shell{border:1px solid var(--line);background:#000;box-shadow:var(--shadow)}
.assess-bar{background:#0a0a0d;border-bottom:1px solid var(--line)}
#fortressFrame{background:#000}
.sum-card{background:linear-gradient(160deg,#17171d,#08080a);border:1px solid var(--line);border-top:3px solid var(--gold)}
.sum-card .score{background:var(--goldgrad);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent}
.sum-card dt{color:rgba(244,240,230,.62)}

@media (max-width:760px){nav.main ul{background:#050506}}
@media print{header.site,footer,nav{display:none}body{background:#fff;color:#111}}

@media (min-width:761px){nav.main #navList a{white-space:nowrap}.brand{flex-shrink:0}.brand b,.brand small{white-space:nowrap}}
@media (min-width:761px) and (max-width:1360px){nav.main ul{gap:18px}nav.main a{letter-spacing:.08em;font-size:11px}}
@media (min-width:761px) and (max-width:1180px){.menu-btn{display:block}nav.main ul{display:none;position:absolute;top:72px;left:0;right:0;flex-direction:column;align-items:stretch;gap:0;background:#050506;padding:8px 28px 20px;border-bottom:1px solid var(--line-dark)}nav.main.open ul{display:flex}nav.main li a{display:block;padding:14px 0;border-bottom:1px solid var(--line-dark);font-size:12px}nav.main li:last-child a{border:0;margin-top:12px;text-align:center}}
