:root {
  --obsidian:#0D0D0D;
  --obsidian-mid:#161616;
  --obsidian-light:#1F1F1F;
  --obsidian-border:#2A2A2A;
  --platinum:#F5F3EE;
  --platinum-mid:#EAE7E0;
  --platinum-warm:#DDD9CF;
  --amber:#C8841A;
  --amber-light:#D99A2E;
  --amber-pale:rgba(200,132,26,.1);
  --amber-border:rgba(200,132,26,.25);
  --white:#FFFFFF;
  --ink:#1A1A17;
  --muted:#7A7870;
  --mid:#4A4840;
  --rule:#2E2E2E;
  --rule-light:#E5E2DA;
  --display:"Playfair Display",Georgia,serif;
  --body:"Lato",system-ui,sans-serif;
  --r:3px;--rl:6px;
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:var(--body);background:var(--obsidian);color:var(--platinum);overflow-x:hidden;font-size:16px;line-height:1.7}
h1{font-family:var(--display);font-size:clamp(48px,6.5vw,90px);font-weight:400;line-height:.95;letter-spacing:-.01em}
h2{font-family:var(--display);font-size:clamp(34px,4.5vw,62px);font-weight:400;line-height:1;letter-spacing:-.01em}
h3{font-family:var(--display);font-size:clamp(22px,2.8vw,32px);font-weight:400;letter-spacing:-.005em;line-height:1.15}
.label{display:inline-block;font-family:var(--body);font-size:11px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--amber);margin-bottom:16px}
.label-muted{color:var(--muted)}
.label-light{color:rgba(245,243,238,.45)}
.con{max-width:1160px;margin:0 auto;padding:0 52px}
.con-narrow{max-width:840px;margin:0 auto;padding:0 52px}
.sec{padding:100px 0}
.sec-sm{padding:72px 0}
hr.rule-h{border:none;border-top:1px solid var(--rule);margin:0}
hr.rule-h-light{border:none;border-top:1px solid var(--rule-light);margin:0}
.amber-rule{width:32px;height:1px;background:var(--amber);margin:20px 0;opacity:.8}

/* ── BUTTONS ── */
.btn-amber{display:inline-block;background:var(--amber);color:var(--white);font-family:var(--body);font-size:13px;font-weight:700;padding:14px 32px;border-radius:var(--r);text-decoration:none;transition:all .25s;border:none;cursor:pointer;white-space:nowrap;letter-spacing:.06em;text-transform:uppercase}
.btn-amber:hover{background:var(--amber-light);transform:translateY(-1px);box-shadow:0 8px 28px rgba(200,132,26,.3)}
.btn-outline-amber{display:inline-block;background:transparent;color:var(--amber);font-family:var(--body);font-size:13px;font-weight:700;padding:13px 30px;border-radius:var(--r);text-decoration:none;border:1px solid var(--amber-border);transition:all .25s;white-space:nowrap;letter-spacing:.06em;text-transform:uppercase}
.btn-outline-amber:hover{background:var(--amber-pale);border-color:var(--amber)}
.btn-outline-plat{display:inline-block;background:transparent;color:var(--platinum);font-family:var(--body);font-size:13px;font-weight:700;padding:13px 30px;border-radius:var(--r);text-decoration:none;border:1px solid rgba(245,243,238,.2);transition:all .25s;white-space:nowrap;letter-spacing:.06em;text-transform:uppercase}
.btn-outline-plat:hover{border-color:var(--platinum);background:rgba(245,243,238,.05)}
.btn-dark{display:inline-block;background:var(--ink);color:var(--white);font-family:var(--body);font-size:13px;font-weight:700;padding:14px 32px;border-radius:var(--r);text-decoration:none;transition:all .25s;border:none;cursor:pointer;white-space:nowrap;letter-spacing:.06em;text-transform:uppercase}
.btn-dark:hover{background:#2A2820;transform:translateY(-1px)}

/* ── ANIMATIONS ── */
@keyframes fadeUp{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}
@keyframes fadeIn{from{opacity:0}to{opacity:1}}
@keyframes shimmer{0%{opacity:.3}50%{opacity:.8}100%{opacity:.3}}
.fu{animation:fadeUp .9s ease both}
.fu2{animation:fadeUp .9s .18s ease both}
.fu3{animation:fadeUp .9s .36s ease both}
.fu4{animation:fadeUp .9s .54s ease both}
.fi{animation:fadeIn 1.2s ease both}

/* ══ NAV ══ */
nav{position:fixed;top:0;left:0;right:0;z-index:200;background:rgba(13,13,13,.97);backdrop-filter:blur(20px);border-bottom:1px solid var(--rule)}
.nav-inner{max-width:1160px;margin:0 auto;padding:0 52px;height:68px;display:flex;align-items:center;justify-content:space-between;gap:32px}
.nav-logo{text-decoration:none;display:flex;flex-direction:column;gap:1px}
.nav-logo-name{font-family:var(--display);font-size:19px;font-weight:400;color:var(--platinum);letter-spacing:.02em;line-height:1}
.nav-logo-tag{font-family:var(--body);font-size:10px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--amber);opacity:.8}
.nav-links{display:flex;align-items:center;gap:4px;list-style:none}
.nav-links a{font-family:var(--body);font-size:12px;font-weight:400;letter-spacing:.08em;text-transform:uppercase;color:rgba(245,243,238,.45);text-decoration:none;padding:7px 14px;border-radius:var(--r);transition:all .2s}
.nav-links a:hover{color:var(--platinum)}
.nav-cta{color:var(--amber)!important;border:1px solid var(--amber-border)!important;font-weight:700!important}
.nav-cta:hover{background:var(--amber-pale)!important;color:var(--amber-light)!important}

/* ══ HERO ══ */
.hero{background:var(--obsidian);min-height:100vh;display:flex;align-items:center;position:relative;overflow:hidden;padding-top:68px}
.hero-texture{position:absolute;inset:0;background-image:radial-gradient(circle at 1px 1px,rgba(245,243,238,.018) 1px,transparent 0);background-size:32px 32px;pointer-events:none}
.hero-vignette{position:absolute;inset:0;background:radial-gradient(ellipse at center,transparent 40%,rgba(0,0,0,.5) 100%);pointer-events:none}
.hero-amber-line{position:absolute;top:0;left:52px;width:1px;height:100%;background:linear-gradient(to bottom,transparent 0%,var(--amber) 30%,var(--amber) 70%,transparent 100%);opacity:.12}
.hero-inner{position:relative;z-index:1;padding:80px 0;width:100%}
.hero-grid{display:grid;grid-template-columns:1fr 400px;gap:80px;align-items:start}
.hero-vol{font-family:var(--body);font-size:11px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--amber);margin-bottom:28px;opacity:.9}
.hero h1{color:var(--platinum);margin-bottom:22px}
.hero h1 em{font-style:italic;color:rgba(245,243,238,.65)}
.hero-sub{font-size:18px;color:rgba(245,243,238,.55);line-height:1.82;max-width:520px;margin-bottom:44px;font-weight:300}
.hero-sub strong{color:rgba(245,243,238,.85);font-weight:400}
.hero-actions{display:flex;gap:14px;align-items:center;flex-wrap:wrap;margin-bottom:48px}
.hero-social-proof{display:flex;gap:32px;padding-top:40px;border-top:1px solid var(--rule)}
.hsp-item{display:flex;flex-direction:column;gap:4px}
.hsp-num{font-family:var(--display);font-size:28px;font-weight:400;color:var(--platinum);line-height:1}
.hsp-label{font-family:var(--body);font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}

/* Seat availability card */
.seat-card{background:var(--obsidian-mid);border:1px solid var(--rule);border-radius:var(--rl);overflow:hidden}
.sc-header{padding:20px 24px;border-bottom:1px solid var(--rule);display:flex;justify-content:space-between;align-items:start}
.sc-header-left{}
.sc-header-label{font-family:var(--body);font-size:10px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);margin-bottom:6px}
.sc-header-title{font-family:var(--display);font-size:18px;font-weight:400;color:var(--platinum)}
.sc-availability{text-align:right}
.sca-num{font-family:var(--display);font-size:36px;font-weight:400;color:var(--amber);line-height:1;margin-bottom:2px}
.sca-label{font-family:var(--body);font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.sc-seats{padding:18px 24px;display:flex;gap:8px;border-bottom:1px solid var(--rule)}
.seat{width:32px;height:32px;border-radius:var(--r);display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:700;font-family:var(--body);letter-spacing:.04em}
.seat.taken{background:rgba(245,243,238,.06);border:1px solid var(--rule);color:var(--muted)}
.seat.open{background:var(--amber-pale);border:1px solid var(--amber-border);color:var(--amber)}
.sc-profiles{padding:0}
.sc-profile{padding:14px 24px;border-bottom:1px solid var(--rule);display:flex;gap:14px;align-items:start;transition:background .2s}
.sc-profile:last-child{border-bottom:none}
.sc-profile:hover{background:rgba(255,255,255,.02)}
.scp-av{width:40px;height:40px;border-radius:var(--r);background:var(--obsidian-light);border:1px solid var(--rule);display:flex;align-items:center;justify-content:center;flex-shrink:0;font-family:var(--display);font-size:14px;color:var(--amber)}
.scp-info{}
.scp-name{font-family:var(--body);font-size:13px;font-weight:700;color:var(--platinum);margin-bottom:2px;letter-spacing:.02em}
.scp-desc{font-size:12px;color:var(--muted);line-height:1.5}
.scp-tag{display:inline-block;font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;padding:2px 8px;border-radius:20px;background:var(--amber-pale);color:var(--amber);margin-top:5px;border:1px solid var(--amber-border)}
.sc-footer{padding:16px 24px;background:rgba(200,132,26,.05);border-top:1px solid var(--amber-border)}
.scf-text{font-size:12px;color:rgba(245,243,238,.45);font-weight:300;line-height:1.55}

/* ══ PHILOSOPHY ══ */
.philosophy{background:var(--platinum);padding:100px 0}
.phil-grid{display:grid;grid-template-columns:1fr 2px 1fr;gap:72px;align-items:start}
.phil-divider{background:var(--rule-light);height:100%}
.phil-text h2{color:var(--ink);margin-bottom:22px}
.phil-text p{color:var(--mid);font-size:17px;line-height:1.82;margin-bottom:18px;font-weight:300}
.phil-text p strong{color:var(--ink);font-weight:400}
.phil-text em{font-style:italic;color:var(--ink)}
.phil-right{}
.phil-right .label-muted{color:var(--muted);opacity:.8}
.phil-principles{display:flex;flex-direction:column;gap:0;margin-top:16px}
.phil-principle{padding:20px 0;border-bottom:1px solid var(--rule-light);display:flex;gap:18px;transition:all .2s;cursor:default}
.phil-principle:first-child{border-top:1px solid var(--rule-light)}
.phil-principle:hover{padding-left:8px}
.pp-num{font-family:var(--display);font-size:22px;font-weight:400;color:rgba(200,132,26,.3);line-height:1;flex-shrink:0;width:28px}
.pp-content h4{font-family:var(--display);font-size:18px;font-weight:500;color:var(--ink);margin-bottom:5px}
.pp-content p{font-size:13px;color:var(--muted);line-height:1.65}

/* ══ WHO IT SERVES ══ */
.who{background:var(--obsidian)}
.who-header{text-align:center;margin-bottom:64px}
.who-header h2{color:var(--platinum);margin-bottom:16px}
.who-header p{color:rgba(245,243,238,.48);max-width:560px;margin:0 auto;font-size:17px;font-weight:300;line-height:1.8}
.profiles-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--rule);border:1px solid var(--rule);border-radius:var(--rl);overflow:hidden}
.profile-card{background:var(--obsidian-mid);padding:36px 28px;transition:background .2s;position:relative;overflow:hidden}
.profile-card:hover{background:var(--obsidian-light)}
.profile-card::before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:var(--amber);transform:scaleX(0);transition:transform .3s;transform-origin:left}
.profile-card:hover::before{transform:scaleX(1)}
.pc-icon{font-size:28px;margin-bottom:18px;display:block;opacity:.8}
.pc-type{font-family:var(--body);font-size:10px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--amber);margin-bottom:10px;opacity:.85}
.profile-card h3{font-size:24px;color:var(--platinum);margin-bottom:12px;font-weight:400}
.profile-card p{font-size:13px;color:rgba(245,243,238,.48);line-height:1.72}
.pc-signal{margin-top:20px;padding:12px 14px;background:var(--amber-pale);border:1px solid var(--amber-border);border-radius:var(--r)}
.pcs-label{font-family:var(--body);font-size:9px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:rgba(200,132,26,.7);margin-bottom:4px}
.pcs-text{font-size:12px;color:rgba(245,243,238,.55);line-height:1.5;font-style:italic}

/* ══ ENGAGEMENT TIERS ══ */
.tiers{background:var(--platinum)}
.tiers-header{text-align:center;margin-bottom:64px}
.tiers-header h2{color:var(--ink);margin-bottom:16px}
.tiers-header p{color:var(--muted);max-width:540px;margin:0 auto;font-size:17px;font-weight:300}
.tiers-note{text-align:center;margin-bottom:40px;font-size:14px;color:var(--muted);font-style:italic}
.tiers-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.tier-card{background:var(--white);border:1px solid var(--rule-light);border-radius:var(--rl);padding:36px 28px;position:relative;transition:all .25s}
.tier-card:hover{transform:translateY(-3px);box-shadow:0 20px 60px rgba(26,26,23,.12)}
.tier-card.featured{background:var(--ink);border-color:var(--ink)}
.tier-num{position:absolute;top:-14px;left:28px;font-family:var(--display);font-size:12px;font-weight:400;color:var(--amber);background:var(--amber-pale);border:1px solid var(--amber-border);border-radius:20px;padding:4px 16px;letter-spacing:.1em}
.tier-name{font-family:var(--body);font-size:10px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--amber);margin-bottom:10px;margin-top:10px}
.tier-card.featured .tier-name{color:rgba(200,132,26,.7)}
.tier-title{font-family:var(--display);font-size:24px;font-weight:400;color:var(--ink);margin-bottom:10px}
.tier-card.featured .tier-title{color:var(--platinum)}
.tier-range{font-family:var(--display);font-size:42px;font-weight:400;color:var(--ink);line-height:1;margin-bottom:4px;letter-spacing:-.01em}
.tier-card.featured .tier-range{color:var(--platinum)}
.tier-note{font-size:12px;color:var(--muted);margin-bottom:20px}
.tier-card.featured .tier-note{color:rgba(245,243,238,.4)}
.tier-desc{font-size:13px;color:var(--muted);line-height:1.72;margin-bottom:20px;padding-bottom:20px;border-bottom:1px solid var(--rule-light)}
.tier-card.featured .tier-desc{color:rgba(245,243,238,.5);border-color:rgba(255,255,255,.08)}
.tier-includes{list-style:none;display:flex;flex-direction:column;gap:10px;margin-bottom:28px}
.tier-fi{display:flex;align-items:flex-start;gap:10px;font-size:13px;color:var(--mid)}
.tier-card.featured .tier-fi{color:rgba(245,243,238,.72)}
.tfi-line{width:14px;height:1px;background:var(--amber);flex-shrink:0;margin-top:10px;opacity:.6}
.tier-btn{display:block;text-align:center;font-family:var(--body);font-size:12px;font-weight:700;padding:13px 20px;border-radius:var(--r);text-decoration:none;transition:all .2s;letter-spacing:.1em;text-transform:uppercase}
.tb-amber{background:var(--amber);color:var(--white)}.tb-amber:hover{background:var(--amber-light)}
.tb-dark{background:var(--ink);color:var(--white)}.tb-dark:hover{background:#2A2820}
.tb-outline{background:transparent;color:var(--platinum);border:1px solid rgba(245,243,238,.2)}.tb-outline:hover{border-color:var(--platinum);background:rgba(245,243,238,.05)}
.tiers-footer{text-align:center;margin-top:28px;font-size:13px;color:var(--muted)}
.tiers-footer a{color:var(--amber);text-decoration:none}

/* ══ WHAT HEATHER DOES ══ */
.work{background:var(--obsidian)}
.work-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:start}
.work-text h2{color:var(--platinum);margin-bottom:20px}
.work-text p{color:rgba(245,243,238,.52);font-size:17px;line-height:1.82;margin-bottom:18px;font-weight:300}
.work-text p strong{color:rgba(245,243,238,.85);font-weight:400}
.work-areas{display:flex;flex-direction:column;gap:0}
.work-area{padding:20px 0;border-bottom:1px solid var(--rule);display:flex;gap:16px;transition:all .2s;cursor:default}
.work-area:last-child{border-bottom:none}
.work-area:hover{padding-left:6px}
.wa-icon{font-size:18px;flex-shrink:0;margin-top:2px;opacity:.8}
.wa-content h4{font-family:var(--display);font-size:19px;font-weight:400;color:var(--platinum);margin-bottom:5px}
.wa-content p{font-size:13px;color:rgba(245,243,238,.45);line-height:1.65}
.wa-type{display:inline-block;font-family:var(--body);font-size:9px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;padding:2px 9px;border-radius:20px;background:var(--amber-pale);color:rgba(200,132,26,.85);margin-top:7px;border:1px solid var(--amber-border)}

/* ══ THE PROCESS ══ */
.process{background:var(--obsidian-mid);border-top:1px solid var(--rule);border-bottom:1px solid var(--rule)}
.process-header{text-align:center;margin-bottom:56px}
.process-header h2{color:var(--platinum);margin-bottom:14px}
.process-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:2px;background:var(--rule);border:1px solid var(--rule);border-radius:var(--rl);overflow:hidden}
.proc-step{background:var(--obsidian-mid);padding:32px 22px;position:relative;overflow:hidden;transition:background .2s}
.proc-step:hover{background:var(--obsidian-light)}
.proc-step::before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:var(--amber);transform:scaleX(0);transition:transform .3s;transform-origin:left}
.proc-step:hover::before{transform:scaleX(1)}
.ps-num{font-family:var(--display);font-size:52px;font-weight:400;color:rgba(200,132,26,.08);line-height:1;position:absolute;top:12px;right:14px}
.ps-phase{font-family:var(--body);font-size:9px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--amber);margin-bottom:12px;opacity:.8}
.proc-step h3{font-family:var(--display);font-size:22px;font-weight:400;color:var(--platinum);margin-bottom:10px}
.proc-step p{font-size:13px;color:rgba(245,243,238,.45);line-height:1.65}
.ps-timeline{margin-top:16px;font-family:var(--body);font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}

/* ══ HEATHER BIO ══ */
.bio{background:var(--platinum)}
.bio-grid{display:grid;grid-template-columns:1fr 1fr;gap:96px;align-items:center}
.bio-photo{background:var(--platinum-mid);border-radius:var(--rl);aspect-ratio:4/5;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;border:1px solid var(--rule-light);position:relative;overflow:hidden}
.bio-photo::before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,transparent 40%,rgba(200,132,26,.04) 100%)}
.bp-icon{width:88px;height:88px;border-radius:50%;background:var(--platinum-warm);border:2px solid var(--platinum-warm);display:flex;align-items:center;justify-content:center;font-size:36px;position:relative;z-index:1}
.bp-note{font-size:12px;color:var(--muted);text-align:center;max-width:160px;position:relative;z-index:1;font-style:italic}
.bio-text h2{color:var(--ink);margin-bottom:22px}
.bio-text p{color:var(--mid);font-size:17px;line-height:1.82;margin-bottom:18px;font-weight:300}
.bio-text em{font-style:italic;color:var(--ink)}
.bio-numbers{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:32px;padding-top:32px;border-top:1px solid var(--rule-light)}
.bn-item{display:flex;flex-direction:column;gap:4px}
.bn-num{font-family:var(--display);font-size:28px;font-weight:400;color:var(--ink);line-height:1}
.bn-lbl{font-family:var(--body);font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}

/* ══ THE ECOSYSTEM MAP ══ */
.ecosystem{background:var(--obsidian)}
.eco-header{margin-bottom:52px}
.eco-header h2{color:var(--platinum);margin-bottom:14px}
.eco-header p{color:rgba(245,243,238,.48);font-size:17px;font-weight:300;max-width:600px}
.eco-funnel{display:flex;flex-direction:column;gap:2px}
.eco-tier{display:grid;grid-template-columns:120px 1fr;gap:20px;align-items:start}
.eco-tier-label{font-family:var(--body);font-size:10px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;padding-top:16px;text-align:right}
.eco-tier-label.t1{color:rgba(245,243,238,.35)}
.eco-tier-label.t2{color:rgba(245,243,238,.35)}
.eco-tier-label.t3{color:var(--amber)}
.eco-sites{display:flex;gap:10px;flex-wrap:wrap;padding:12px 0;border-top:1px solid var(--rule)}
.eco-site{background:var(--obsidian-mid);border:1px solid var(--rule);border-radius:var(--r);padding:12px 16px;transition:all .2s;text-decoration:none;display:flex;flex-direction:column;gap:4px;min-width:160px}
.eco-site:hover{border-color:var(--amber-border);background:var(--obsidian-light)}
.eco-site.current{background:var(--amber-pale);border-color:var(--amber-border)}
.eco-site-name{font-family:var(--display);font-size:14px;font-weight:400;color:var(--platinum)}
.eco-site.current .eco-site-name{color:var(--amber-light)}
.eco-site-role{font-family:var(--body);font-size:12px;color:var(--muted);font-weight:400}
.eco-site.current .eco-site-role{color:rgba(200,132,26,.7)}
.eco-arrow{text-align:center;color:var(--rule);font-size:18px;padding:4px 0 4px 120px}

/* ══ APPLICATION FORM ══ */
.application{background:var(--obsidian-mid);border-top:1px solid var(--rule)}
.app-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:start}
.app-text h2{color:var(--platinum);margin-bottom:20px}
.app-text p{color:rgba(245,243,238,.52);font-size:17px;line-height:1.82;margin-bottom:18px;font-weight:300}
.app-criteria{display:flex;flex-direction:column;gap:10px;margin-top:24px}
.app-criterion{display:flex;align-items:flex-start;gap:12px;font-size:14px;color:rgba(245,243,238,.55)}
.ac-dash{width:16px;height:1px;background:var(--amber);flex-shrink:0;margin-top:10px;opacity:.6}
.app-form{background:var(--obsidian);border:1px solid var(--rule);border-radius:var(--rl);padding:36px 32px}
.af-title{font-family:var(--display);font-size:22px;font-weight:400;color:var(--platinum);margin-bottom:6px}
.af-subtitle{font-size:13px;color:var(--muted);margin-bottom:28px;font-weight:300}
.af-row{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:14px}
.af-field{display:flex;flex-direction:column;gap:5px;margin-bottom:14px}
.af-label{font-family:var(--body);font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:rgba(245,243,238,.45)}
.af-input{width:100%;padding:11px 14px;background:var(--obsidian-light);border:1px solid var(--rule);border-radius:var(--r);font-family:var(--body);font-size:14px;color:var(--platinum);outline:none;transition:border-color .2s;-webkit-appearance:none}
.af-input:focus{border-color:var(--amber-border)}
.af-input::placeholder{color:var(--muted)}
select.af-input{cursor:pointer}
textarea.af-input{resize:vertical;min-height:90px;font-family:var(--body);line-height:1.6}
.af-note{font-size:11px;color:var(--muted);margin-top:16px;line-height:1.6;font-style:italic}
.af-submit{width:100%;margin-top:20px}
.af-availability{display:flex;align-items:center;gap:10px;margin-bottom:20px;padding:12px 14px;background:var(--amber-pale);border:1px solid var(--amber-border);border-radius:var(--r)}
.afav-dot{width:7px;height:7px;border-radius:50%;background:var(--amber);animation:shimmer 2s ease infinite;flex-shrink:0}
.afav-text{font-size:12px;font-weight:700;color:rgba(200,132,26,.9);letter-spacing:.04em}

/* ══ TESTIMONIALS ══ */
.testi{background:var(--platinum)}
.testi-header{margin-bottom:52px}
.testi-header h2{color:var(--ink);margin-bottom:14px}
.testi-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.testi-card{background:var(--white);border:1px solid var(--rule-light);border-radius:var(--rl);padding:32px;transition:all .2s;position:relative;overflow:hidden}
.testi-card:hover{box-shadow:0 12px 48px rgba(26,26,23,.1)}
.testi-card::before{content:"\201C";font-family:var(--display);font-size:120px;color:rgba(200,132,26,.06);position:absolute;top:-10px;right:16px;line-height:1}
.testi-type{font-family:var(--body);font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--amber);margin-bottom:16px;opacity:.85}
.testi-quote{font-family:var(--display);font-size:16px;color:var(--ink);line-height:1.68;margin-bottom:24px;font-weight:400;font-style:italic}
.testi-author{display:flex;align-items:center;gap:14px;padding-top:20px;border-top:1px solid var(--rule-light)}
.testi-av{width:40px;height:40px;border-radius:var(--r);background:var(--obsidian);display:flex;align-items:center;justify-content:center;font-family:var(--display);font-size:14px;color:var(--amber);flex-shrink:0}
.testi-name{font-family:var(--body);font-size:13px;font-weight:700;color:var(--ink);letter-spacing:.02em}
.testi-loc{font-size:12px;color:var(--muted)}
.testi-result{font-size:11px;font-weight:700;color:var(--amber);margin-top:2px;letter-spacing:.04em}

/* ══ FAQ ══ */
.faq{background:var(--obsidian)}
.faq-header{margin-bottom:48px}
.faq-header h2{color:var(--platinum);margin-bottom:14px}
.faq-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.faq-item{background:var(--obsidian-mid);border:1px solid var(--rule);border-radius:var(--r);padding:26px 28px;transition:border-color .2s}
.faq-item:hover{border-color:var(--amber-border)}
.faq-q{font-family:var(--display);font-size:18px;font-weight:400;color:var(--platinum);margin-bottom:12px;letter-spacing:-.005em}
.faq-a{font-size:13px;color:rgba(245,243,238,.45);line-height:1.72;font-weight:300}

/* ══ FINAL CTA ══ */
.final-cta{background:var(--platinum);text-align:center;padding:100px 0;position:relative;overflow:hidden}
.final-cta::before{content:"";position:absolute;inset:0;background-image:radial-gradient(circle at 1px 1px,rgba(26,26,23,.04) 1px,transparent 0);background-size:28px 28px}
.final-cta>.con-narrow{position:relative;z-index:1}
.final-cta h2{color:var(--ink);margin-bottom:16px}
.final-cta h2 em{font-style:italic;color:var(--amber)}
.final-cta p{color:var(--muted);font-size:18px;margin:0 auto 44px;font-weight:300;line-height:1.82}
.final-actions{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}
.final-g{margin-top:24px;font-size:12px;color:var(--muted);font-weight:700;letter-spacing:.1em;text-transform:uppercase;display:flex;align-items:center;gap:8px;justify-content:center}
.fg-div{width:1px;height:12px;background:var(--rule-light)}

/* ══ FOOTER ══ */
footer{background:var(--obsidian);border-top:1px solid var(--rule);padding:60px 0 28px}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:48px;margin-bottom:48px}
.footer-brand-block{}
.footer-name{font-family:var(--display);font-size:20px;font-weight:400;color:var(--platinum);margin-bottom:3px}
.footer-tagline-small{font-family:var(--body);font-size:12px;color:var(--muted);font-style:italic;margin-bottom:16px}
.footer-desc{font-size:13px;color:rgba(245,243,238,.32);line-height:1.7;max-width:260px;margin-bottom:16px;font-weight:300}
.footer-bss{font-family:var(--body);font-size:12px;font-weight:700;color:rgba(200,132,26,.7);text-decoration:none;letter-spacing:.08em;text-transform:uppercase;transition:color .2s}
.footer-bss:hover{color:var(--amber)}
.footer-col h5{font-family:var(--body);font-size:10px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:rgba(200,132,26,.5);margin-bottom:16px}
.footer-col ul{list-style:none;display:flex;flex-direction:column;gap:11px}
.footer-col ul a{font-size:13px;color:rgba(245,243,238,.32);text-decoration:none;transition:color .2s}
.footer-col ul a:hover{color:var(--platinum)}
.footer-bottom{border-top:1px solid var(--rule);padding-top:22px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px}
.footer-bottom p{font-size:12px;color:rgba(245,243,238,.38);letter-spacing:.04em}
.footer-links{display:flex;gap:20px}
.footer-links a{font-size:12px;color:rgba(245,243,238,.38);text-decoration:none;letter-spacing:.04em;transition:color .2s}
.footer-links a:hover{color:rgba(245,243,238,.65)}

/* ══ STICKY ══ */
.sticky-bar{position:fixed;bottom:0;left:0;right:0;z-index:199;background:var(--obsidian);border-top:1px solid var(--rule);padding:14px 52px;display:flex;align-items:center;justify-content:center;gap:20px;transform:translateY(100%);transition:transform .4s ease}
.sticky-bar.show{transform:translateY(0)}
.sticky-text{font-family:var(--body);font-size:13px;color:rgba(245,243,238,.5);letter-spacing:.02em}
.sticky-text strong{color:var(--platinum);font-weight:400}
.sticky-avail{display:flex;align-items:center;gap:7px;font-family:var(--body);font-size:12px;font-weight:700;color:var(--amber);letter-spacing:.06em}
.sa-dot{width:6px;height:6px;border-radius:50%;background:var(--amber);animation:shimmer 2s ease infinite;flex-shrink:0}

/* ══ RESPONSIVE ══ */
@media(max-width:1000px){
  .hero-grid,.phil-grid,.bio-grid,.work-grid,.app-grid{grid-template-columns:1fr;gap:48px}
  .phil-divider{display:none}
  .profiles-grid,.tiers-grid,.testi-grid,.process-steps{grid-template-columns:1fr}
  .faq-grid{grid-template-columns:1fr}
  .af-row{grid-template-columns:1fr}
  .footer-grid{grid-template-columns:1fr 1fr}
  .hero{min-height:auto;padding:80px 0 60px}
  .nav-links{display:none}
  .hero-social-proof{flex-wrap:wrap;gap:20px}
  .eco-funnel{gap:4px}
}


/* ══════════ RESPONSIVE / BSS / POPUP FINAL PASS ══════════ */
img{max-width:100%;height:auto}

/* Heather book links */
.bio-text em a{
  color:inherit;
  font:inherit;
  text-decoration:none;
  position:relative;
  transition:color .2s ease;
}
.bio-text em a:visited{color:inherit}
.bio-text em a::after{
  content:"";
  position:absolute;
  left:0;
  bottom:-2px;
  width:100%;
  height:1px;
  background:var(--amber);
  transform:scaleX(0);
  transform-origin:left;
  transition:transform .2s ease;
}
.bio-text em a:hover{color:var(--amber)}
.bio-text em a:hover::after{transform:scaleX(1)}
.bio-text em a:focus-visible{
  color:var(--amber);
  outline:2px solid var(--amber);
  outline-offset:3px;
  border-radius:2px;
}

/* Heather photo */
.bio-photo{overflow:hidden;padding:0;min-height:0}
.bio-photo::before{display:none}
.bio-photo-img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center top;
}

/* Mobile navigation */
.nav-toggle{
  display:none;
  width:42px;
  height:42px;
  padding:9px;
  border:0;
  background:transparent;
  cursor:pointer;
  flex-direction:column;
  justify-content:center;
  gap:5px;
  flex-shrink:0;
}
.nav-toggle span{
  display:block;
  width:100%;
  height:2px;
  background:var(--platinum);
  border-radius:2px;
  transition:transform .2s ease,opacity .2s ease;
}
.nav-toggle.is-open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.nav-toggle.is-open span:nth-child(2){opacity:0}
.nav-toggle.is-open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

/* Buy Scale Sell socials */
.footer-socials{
  display:flex;
  align-items:center;
  gap:10px;
  margin-top:18px;
  flex-wrap:wrap;
}
.footer-socials a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:34px;
  height:34px;
  border-radius:50%;
  background:rgba(255,255,255,.04);
  border:1px solid var(--rule);
  transition:all .2s ease;
}
.footer-socials a:hover{
  background:rgba(255,255,255,.08);
  border-color:var(--amber-border);
  transform:translateY(-1px);
}
.footer-socials img{
  display:block;
  width:17px;
  height:17px;
  object-fit:contain;
}

/* Product / contact popup */
.product-popup-overlay{
  position:fixed;
  inset:0;
  z-index:1000;
  display:none;
  align-items:center;
  justify-content:center;
  padding:24px;
  background:rgba(5,5,5,.90);
  backdrop-filter:blur(6px);
}
.product-popup-overlay.is-open{display:flex}
.product-popup{
  position:relative;
  width:min(94vw,760px);
  height:min(88vh,800px);
  background:#fff;
  border:1px solid rgba(255,255,255,.15);
  border-radius:10px;
  box-shadow:0 28px 90px rgba(0,0,0,.55);
  overflow:hidden;
}
.product-popup.popup-md{max-width:760px}
.product-popup.popup-lg{max-width:980px}
.product-popup iframe{
  display:block;
  width:100%;
  height:100%;
  border:0;
  background:#fff;
}
.product-popup-close{
  position:absolute;
  top:10px;
  right:10px;
  z-index:2;
  width:40px;
  height:40px;
  border:0;
  border-radius:50%;
  background:var(--obsidian);
  color:#fff;
  font-family:var(--body);
  font-size:24px;
  line-height:1;
  cursor:pointer;
  box-shadow:0 3px 14px rgba(0,0,0,.30);
}
.product-popup-close:hover{background:var(--amber)}
body.popup-open{overflow:hidden}

/* Tablet */
@media(max-width:1000px){
  .con,.con-narrow{padding-left:24px;padding-right:24px}
  .nav-inner{padding-left:24px;padding-right:24px;position:relative}
  .nav-toggle{display:flex}

  .nav-links{
    display:none;
    position:absolute;
    top:68px;
    left:24px;
    right:24px;
    flex-direction:column;
    align-items:stretch;
    gap:4px;
    padding:12px;
    background:rgba(13,13,13,.995);
    border:1px solid var(--rule);
    border-radius:0 0 var(--rl) var(--rl);
    box-shadow:0 18px 40px rgba(0,0,0,.4);
  }
  .nav-links.is-open{display:flex}
  .nav-links a{display:block;padding:11px 12px}

  .hero-grid,.phil-grid,.bio-grid,.work-grid,.app-grid{
    grid-template-columns:1fr;
    gap:46px;
  }
  .phil-divider{display:none}
  .hero{min-height:auto;padding:88px 0 64px}
  .hero-inner{padding:48px 0}
  .seat-card{width:100%;max-width:760px;margin:0 auto}
  .profiles-grid,.testi-grid,.process-steps{grid-template-columns:1fr}
  .faq-grid{grid-template-columns:1fr}
  .eco-tier{grid-template-columns:1fr}
  .eco-tier-label{text-align:left;padding-top:12px}
  .eco-arrow{padding-left:0}
  .bio-photo{width:min(100%,560px);margin:0 auto}
  .footer-grid{grid-template-columns:1fr 1fr;gap:36px}
}

/* Phone */
@media(max-width:700px){
  .con,.con-narrow{padding-left:18px;padding-right:18px}
  .nav-inner{padding-left:18px;padding-right:18px}
  .nav-links{left:18px;right:18px}

  h1{font-size:clamp(42px,12vw,58px)}
  h2{font-size:clamp(31px,9.5vw,44px)}
  .sec{padding:72px 0}
  .sec-sm{padding:52px 0}
  .hero{padding-top:86px;padding-bottom:54px}
  .hero-sub{font-size:17px}

  .hero-actions,.final-actions{
    display:grid;
    grid-template-columns:1fr;
    width:100%;
  }
  .hero-actions a,.final-actions a{
    width:100%;
    text-align:center;
  }

  .hero-social-proof{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:22px;
  }

  .sc-header{gap:14px}
  .sc-seats{flex-wrap:wrap}
  .process-steps{grid-template-columns:1fr}
  .eco-sites{display:grid;grid-template-columns:1fr}
  .eco-site{min-width:0}
  .bio-numbers{grid-template-columns:1fr}
  .af-row{grid-template-columns:1fr}

  .footer-grid{grid-template-columns:1fr;gap:32px}
  .footer-bottom{flex-direction:column;align-items:flex-start}
  .footer-links{flex-wrap:wrap;gap:10px 16px}

  .sticky-bar{
    padding:10px 14px;
    gap:10px;
    flex-wrap:wrap;
  }
  .sticky-text{width:100%;text-align:center}
  .sticky-avail{justify-content:center}
  .sticky-bar .btn-amber{flex:1 1 220px;text-align:center}

  .product-popup-overlay{padding:10px}
  .product-popup{width:100%;height:92vh}
}

@media(max-width:430px){
  .con,.con-narrow{padding-left:15px;padding-right:15px}
  .nav-inner{padding-left:15px;padding-right:15px}
  .nav-links{left:15px;right:15px}
  h1{font-size:40px}
  h2{font-size:31px}
  .hero-social-proof{grid-template-columns:1fr}
  .profile-card,.testi-card,.faq-item,.app-form{padding-left:18px;padding-right:18px}
}
/* ══ SINGLE-COLUMN ADVISORY APPLICATION ══ */

.application-single .application-inner{
  max-width:920px;
  margin:0 auto;
}

/* Intro */
.application-heading{
  max-width:760px;
  margin:0 auto;
  text-align:center;
}

.application-heading h2{
  max-width:700px;
  margin:0 auto 22px;
}

.application-heading .amber-rule{
  margin:22px auto 26px;
}

.application-heading p{
  color:rgba(245,243,238,.52);
  font-size:17px;
  line-height:1.82;
  font-weight:300;
  max-width:720px;
  margin:0 auto 16px;
}

/* Criteria area */
.application-criteria-block{
  margin-top:48px;
  padding:34px 36px;
  background:var(--obsidian);
  border:1px solid var(--rule);
  border-radius:var(--rl);
}

.application-criteria-heading{
  text-align:center;
  max-width:620px;
  margin:0 auto 28px;
}

.application-criteria-heading .label{
  margin-bottom:8px;
}

.application-criteria-heading p{
  color:var(--muted);
  font-size:13px;
  line-height:1.7;
}

/* Two-column criteria */
.app-criteria-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
  margin:0;
}

.app-criteria-grid .app-criterion{
  display:flex;
  align-items:flex-start;
  gap:12px;
  padding:16px 18px;
  background:var(--obsidian-light);
  border:1px solid var(--rule);
  border-radius:var(--r);
  color:rgba(245,243,238,.6);
  font-size:14px;
  line-height:1.6;
}

.app-criteria-grid .app-criterion:hover{
  border-color:var(--amber-border);
}

.app-criteria-grid .ac-dash{
  width:18px;
  height:1px;
  background:var(--amber);
  flex-shrink:0;
  margin-top:10px;
  opacity:.8;
}

.app-criterion-wide{
  grid-column:1 / -1;
}

/* CTA */
.application-action{
  max-width:680px;
  margin:38px auto 0;
  text-align:center;
}

.application-action .btn-amber{
  min-width:230px;
}

.application-action .af-note{
  max-width:650px;
  margin:18px auto 0;
  color:var(--muted);
  line-height:1.7;
}

/* Responsive */
@media(max-width:700px){

  .application-heading{
    text-align:left;
  }

  .application-heading h2,
  .application-heading p{
    max-width:none;
  }

  .application-heading .amber-rule{
    margin-left:0;
    margin-right:0;
  }

  .application-criteria-block{
    margin-top:36px;
    padding:24px 18px;
  }

  .application-criteria-heading{
    text-align:left;
  }

  .app-criteria-grid{
    grid-template-columns:1fr;
  }

  .app-criterion-wide{
    grid-column:auto;
  }

  .application-action{
    text-align:left;
  }

  .application-action .btn-amber{
    width:100%;
    text-align:center;
  }

  .application-action .af-note{
    text-align:left;
  }
}
