:root {
  --bg: #000000;
  --bg-2: #050504;
  --ink: #0b0a08;
  --ivory: #F7F1E6;
  --ivory-soft: #E7DED0;
  --gold: #C7A35A;
  --gold-deep: #8B6A2E;
  --warm-gray: #B8B0A3;
  --muted: #C9C0B3;
  --muted-2: #897F72;
  --panel: rgba(247, 241, 230, 0.055);
  --panel-strong: rgba(247, 241, 230, 0.095);
  --line: rgba(247, 241, 230, 0.14);
  --line-gold: rgba(199, 163, 90, 0.46);
  --shadow: 0 32px 96px rgba(0,0,0,.54);
  --radius-xl: 30px;
  --radius-lg: 22px;
  --radius-md: 14px;
  --max: 1180px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  background:
    radial-gradient(circle at 12% 5%, rgba(199,163,90,.10), transparent 28%),
    radial-gradient(circle at 84% 2%, rgba(247,241,230,.055), transparent 30%),
    radial-gradient(circle at 48% 92%, rgba(199,163,90,.06), transparent 34%),
    var(--bg);
  color: var(--ivory);
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  line-height: 1.6;
  overflow-x: hidden;
}
body::before {
  content: "";
  position: fixed;
  inset: 0;
  pointer-events: none;
  background:
    linear-gradient(rgba(247,241,230,.028) 1px, transparent 1px),
    linear-gradient(90deg, rgba(199,163,90,.025) 1px, transparent 1px);
  background-size: 88px 88px;
  mask-image: linear-gradient(to bottom, black 0%, transparent 74%);
  z-index: -2;
}
body::after {
  content: "";
  position: fixed;
  inset: 0;
  pointer-events: none;
  background:
    linear-gradient(90deg, rgba(247,241,230,.035), transparent 13%, transparent 88%, rgba(247,241,230,.035)),
    radial-gradient(circle at center, transparent 0%, rgba(0,0,0,.52) 100%);
  z-index: -1;
}

img { max-width: 100%; height: auto; }
a { color: inherit; }
.skip-link { position:absolute; top:-60px; left:20px; background:var(--ivory); color:#000; padding:12px 18px; border-radius:999px; z-index:9999; }
.skip-link:focus { top:20px; }
.container { width:min(var(--max), calc(100% - 40px)); margin:0 auto; }
.container-narrow { width:min(900px, calc(100% - 40px)); margin:0 auto; }

.eyebrow {
  display:inline-flex; align-items:center; gap:12px;
  color: var(--gold);
  text-transform: uppercase; letter-spacing:.22em; font-size:.72rem; font-weight:850; margin-bottom:18px;
}
.eyebrow::before { content:""; width:42px; height:1px; background: var(--gold); opacity:.86; }

h1,h2,h3,.brand-word,.serif { font-family: Georgia, "Times New Roman", serif; font-weight:500; letter-spacing:-.035em; line-height:1.02; }
h1 { font-size: clamp(3.2rem, 8vw, 8.4rem); margin:0 0 24px; max-width:980px; }
h2 { font-size: clamp(2.35rem, 5vw, 5.05rem); margin:0 0 18px; }
h3 { font-size: clamp(1.45rem, 2.4vw, 2.16rem); margin:0 0 12px; }
p { margin:0 0 18px; color:var(--muted); font-size:1.02rem; }
.lead { font-size:clamp(1.14rem, 2vw, 1.36rem); max-width:760px; color:var(--ivory-soft); }
.small { font-size:.9rem; color:var(--muted-2); }
.gold { color:var(--gold); }
.white { color:var(--ivory); }

.site-header { position:sticky; top:0; z-index:100; backdrop-filter:blur(18px); background:rgba(0,0,0,.76); border-bottom:1px solid rgba(247,241,230,.08); }
.nav { min-height:88px; display:flex; align-items:center; justify-content:space-between; gap:28px; }
.brand { display:flex; align-items:center; text-decoration:none; min-width:max-content; }
.brand-logo-link { min-width:0; }
.brand-logo { display:block; width:min(236px, 42vw); height:auto; filter:drop-shadow(0 18px 32px rgba(0,0,0,.44)); }
.nav-links { display:flex; align-items:center; gap:22px; font-size:.76rem; letter-spacing:.15em; text-transform:uppercase; font-weight:850; }
.nav-links a { text-decoration:none; color:var(--muted); opacity:.92; }
.nav-links a:hover, .nav-links a[aria-current="page"] { color:var(--ivory); }
.nav-cta { display:flex; gap:12px; align-items:center; }
.mobile-toggle { display:none; }

.btn { display:inline-flex; align-items:center; justify-content:center; gap:10px; min-height:52px; padding:0 24px; border-radius:999px; border:1px solid rgba(247,241,230,.18); color:var(--ivory); text-decoration:none; font-weight:850; letter-spacing:.07em; text-transform:uppercase; font-size:.78rem; background:rgba(247,241,230,.045); transition: transform .2s ease, border-color .2s ease, background .2s ease, color .2s ease; }
.btn:hover { transform:translateY(-2px); border-color:rgba(199,163,90,.78); background:rgba(247,241,230,.08); }
.btn-primary { background:linear-gradient(135deg, #E0C77C, #C7A35A 42%, #7A5822); border-color:rgba(255,229,158,.62); color:#070604; box-shadow:0 20px 54px rgba(199,163,90,.22); }
.btn-primary:hover { color:#000; background:linear-gradient(135deg, #F2DA90, #C7A35A 45%, #8B6A2E); }
.btn-gold { background:linear-gradient(135deg, #E0C77C, #C7A35A 58%, #7A5822); border-color:rgba(255,224,147,.55); color:#09070b; }
.btn-small { min-height:42px; padding:0 16px; font-size:.7rem; }

.hero { position:relative; min-height:calc(100vh - 88px); display:grid; align-items:center; padding:86px 0 58px; overflow:hidden; }
.hero::before { content:""; position:absolute; inset:0; z-index:-2; background:
    linear-gradient(90deg, rgba(0,0,0,.98) 0%, rgba(0,0,0,.84) 48%, rgba(0,0,0,.58) 100%),
    radial-gradient(circle at 72% 32%, rgba(199,163,90,.20), transparent 28%),
    repeating-linear-gradient(92deg, rgba(199,163,90,.12) 0 1px, transparent 1px 82px),
    linear-gradient(115deg, transparent 0%, rgba(247,241,230,.045) 42%, transparent 64%);
  animation: heroBreath 12s ease-in-out infinite; }
.hero::after { content:""; position:absolute; inset:-30% -10%; z-index:-1; background:
    radial-gradient(ellipse at 80% 18%, rgba(199,163,90,.16), transparent 28%),
    linear-gradient(105deg, transparent 12%, rgba(247,241,230,.07) 48%, transparent 58%);
  transform: translateX(-8%) rotate(0.001deg); filter: blur(1px); opacity:.65; animation: goldDrift 18s ease-in-out infinite; }
@keyframes heroBreath { 0%,100% { opacity:.74; transform:scale(1); } 50% { opacity:.98; transform:scale(1.018); } }
@keyframes goldDrift { 0%,100% { transform:translateX(-8%); opacity:.44; } 50% { transform:translateX(5%); opacity:.84; } }
.hero-grid { display:grid; grid-template-columns:minmax(0,1.1fr) minmax(320px,.72fr); gap:44px; align-items:center; }
.hero-actions { display:flex; flex-wrap:wrap; gap:14px; margin:34px 0 26px; }
.hero-proof { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin-top:34px; max-width:780px; }
.proof-pill { border:1px solid rgba(247,241,230,.13); background:rgba(247,241,230,.052); border-radius:999px; padding:12px 15px; color:var(--ivory-soft); font-size:.82rem; text-align:center; }

.diagnostic-card, .card, .form-wrap, .calendly-card { border:1px solid rgba(247,241,230,.13); background:linear-gradient(180deg, rgba(247,241,230,.082), rgba(247,241,230,.026)); border-radius:var(--radius-xl); box-shadow:var(--shadow); position:relative; overflow:hidden; }
.diagnostic-card { padding:28px; }
.diagnostic-card::before, .card::before { content:""; position:absolute; inset:0; background:radial-gradient(circle at 86% 8%, rgba(199,163,90,.13), transparent 42%); pointer-events:none; }
.card > *, .diagnostic-card > * { position:relative; }
.card-top { display:flex; align-items:center; justify-content:space-between; gap:18px; margin-bottom:34px; position:relative; }
.label { color:var(--muted-2); text-transform:uppercase; letter-spacing:.18em; font-size:.68rem; font-weight:850; }
.memo-mark { min-width:132px; padding:13px 15px 12px; border-radius:16px; color:var(--ivory); border:1px solid rgba(199,163,90,.42); border-left:3px solid var(--gold); background:linear-gradient(135deg, rgba(199,163,90,.18), rgba(247,241,230,.035)); box-shadow:inset 0 1px 0 rgba(247,241,230,.12); text-align:left; }
.memo-mark span { display:block; color:var(--muted-2); text-transform:uppercase; letter-spacing:.18em; font-size:.58rem; font-weight:850; line-height:1; margin-bottom:7px; }
.memo-mark strong { display:block; font-family:Georgia,serif; font-size:1.05rem; line-height:1; color:var(--ivory); font-weight:500; }
.score-list { display:grid; gap:14px; position:relative; }
.score-row { display:grid; grid-template-columns:34px 1fr; gap:14px; padding:14px 0; border-top:1px solid rgba(247,241,230,.1); }
.score-number { color:var(--gold); font-family:Georgia,serif; font-size:1.25rem; }
.score-row strong { display:block; color:var(--ivory); margin-bottom:2px; }
.card-footer { margin-top:28px; padding-top:18px; border-top:1px solid rgba(199,163,90,.35); }

.section { padding:104px 0; }
.section-tight { padding:72px 0; }
.dark-band { background:linear-gradient(180deg, rgba(247,241,230,.034), rgba(247,241,230,.012)); border-top:1px solid rgba(247,241,230,.08); border-bottom:1px solid rgba(247,241,230,.08); }
.section-head { display:flex; align-items:end; justify-content:space-between; gap:34px; margin-bottom:42px; }
.section-head p { max-width:520px; }
.grid { display:grid; gap:22px; }
.grid-2 { grid-template-columns:repeat(2,minmax(0,1fr)); }
.grid-3 { grid-template-columns:repeat(3,minmax(0,1fr)); }
.grid-4 { grid-template-columns:repeat(4,minmax(0,1fr)); }
.card { padding:28px; border-radius:var(--radius-lg); }
.card-number { color:var(--gold); font-family:Georgia,serif; font-size:2.4rem; line-height:1; margin-bottom:22px; }
.card-link { display:inline-flex; margin-top:10px; color:var(--gold); text-decoration:none; font-weight:850; letter-spacing:.08em; text-transform:uppercase; font-size:.78rem; }
.card-link:hover { color:var(--ivory); }

.split { display:grid; grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr); gap:64px; align-items:center; }
.profile-frame { position:relative; border-radius:var(--radius-xl); padding:12px; background:linear-gradient(135deg, rgba(199,163,90,.72), rgba(247,241,230,.12)); box-shadow:var(--shadow); }
.profile-frame img { display:block; border-radius:calc(var(--radius-xl) - 10px); width:100%; }
.profile-frame::after { content:""; position:absolute; inset:22px; border:1px solid rgba(247,241,230,.20); border-radius:22px; pointer-events:none; }
.credential-list { display:grid; gap:12px; margin:28px 0; }
.credential { display:flex; gap:12px; align-items:center; padding:14px 16px; border-radius:16px; background:rgba(247,241,230,.05); border:1px solid rgba(247,241,230,.1); }
.credential span { color:var(--gold); }

.process-line { counter-reset:step; display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:0; border:1px solid rgba(247,241,230,.12); border-radius:var(--radius-lg); overflow:hidden; background:rgba(247,241,230,.035); }
.process-step { counter-increment:step; padding:28px 20px; border-right:1px solid rgba(247,241,230,.1); min-height:210px; }
.process-step:last-child { border-right:0; }
.process-step::before { content:counter(step); width:42px; height:42px; border-radius:50%; display:grid; place-items:center; background:linear-gradient(135deg, #E0C77C, #8B6A2E); color:#070604; margin-bottom:26px; font-weight:900; }
.process-step h3 { font-size:1.25rem; letter-spacing:-.02em; }

.page-hero { position:relative; padding:104px 0 70px; border-bottom:1px solid rgba(247,241,230,.08); overflow:hidden; background:#000; }
.page-hero::before { content:""; position:absolute; inset:0; z-index:0; background:
    linear-gradient(90deg, rgba(0,0,0,.96), rgba(0,0,0,.76)),
    repeating-linear-gradient(92deg, rgba(199,163,90,.10) 0 1px, transparent 1px 88px),
    radial-gradient(circle at 78% 20%, rgba(199,163,90,.16), transparent 34%);
  animation: heroBreath 13s ease-in-out infinite; }
.page-hero .container { position:relative; z-index:1; }
.page-hero h1 { font-size:clamp(3.1rem, 7vw, 7rem); }
.breadcrumbs { font-size:.78rem; color:var(--muted-2); letter-spacing:.12em; text-transform:uppercase; margin-bottom:28px; }
.breadcrumbs a { text-decoration:none; color:var(--gold); }

.offer-card { display:grid; grid-template-columns:1fr 240px; gap:24px; align-items:center; padding:34px; border-radius:var(--radius-xl); border:1px solid rgba(247,241,230,.14); background:linear-gradient(135deg, rgba(247,241,230,.084), rgba(247,241,230,.032)); }
.offer-meta { border-left:1px solid rgba(199,163,90,.45); padding-left:24px; }
.check-list { list-style:none; padding:0; margin:22px 0 0; display:grid; gap:12px; }
.check-list li { color:var(--ivory-soft); position:relative; padding-left:30px; }
.check-list li::before { content:"✓"; position:absolute; left:0; color:var(--gold); font-weight:900; }
.faq { display:grid; gap:14px; }
details { border:1px solid rgba(247,241,230,.12); border-radius:18px; background:rgba(247,241,230,.045); padding:18px 22px; }
summary { cursor:pointer; color:var(--ivory); font-weight:850; }
details p { margin-top:12px; }

.form-wrap { padding:30px; }
.form-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.form-field { display:grid; gap:8px; margin-bottom:16px; }
.form-field.full { grid-column:1/-1; }
label { font-size:.78rem; text-transform:uppercase; letter-spacing:.12em; color:var(--ivory-soft); font-weight:850; }
input,select,textarea { width:100%; border:1px solid rgba(247,241,230,.15); background:rgba(0,0,0,.32); color:var(--ivory); border-radius:14px; padding:14px; font:inherit; outline:none; }
textarea { min-height:150px; resize:vertical; }
input:focus, select:focus, textarea:focus { border-color:rgba(199,163,90,.82); box-shadow:0 0 0 4px rgba(199,163,90,.13); }

.cta-panel { position:relative; overflow:hidden; border:1px solid rgba(199,163,90,.46); border-radius:var(--radius-xl); padding:clamp(34px,6vw,70px); background:linear-gradient(135deg, rgba(199,163,90,.12), rgba(247,241,230,.035)), rgba(247,241,230,.035); }
.cta-panel::before { content:""; position:absolute; inset:0; background:repeating-linear-gradient(92deg, rgba(199,163,90,.10) 0 1px, transparent 1px 80px); opacity:.30; animation: heroBreath 14s ease-in-out infinite; pointer-events:none; }
.cta-panel > * { position:relative; }

.calendly-card { min-height:720px; border:1px solid rgba(199,163,90,.34); border-radius:var(--radius-xl); background:linear-gradient(135deg, rgba(199,163,90,.10), rgba(247,241,230,.04)); box-shadow:var(--shadow); overflow:hidden; }
.calendly-frame { width:100%; height:720px; border:0; display:block; background:#000; }

.site-footer { border-top:1px solid rgba(247,241,230,.08); padding:56px 0 30px; background:rgba(0,0,0,.30); }
.footer-grid { display:grid; grid-template-columns:1.4fr .7fr .7fr; gap:40px; }
.footer-logo-home { display:inline-flex; align-items:center; text-decoration:none; }
.footer-logo { display:block; width:min(260px, 74vw); height:auto; filter:drop-shadow(0 20px 38px rgba(0,0,0,.44)); }
.footer-links { display:grid; gap:10px; }
.footer-links a { color:var(--muted); text-decoration:none; }
.footer-links a:hover { color:var(--ivory); }
.footer-bottom { margin-top:42px; padding-top:22px; border-top:1px solid rgba(247,241,230,.08); display:flex; justify-content:space-between; gap:12px 24px; flex-wrap:wrap; color:var(--muted-2); font-size:.86rem; }

.home-float { position:fixed; right:18px; bottom:18px; z-index:120; display:inline-flex; align-items:center; gap:10px; padding:10px 14px 10px 10px; border-radius:999px; border:1px solid rgba(199,163,90,.45); background:rgba(0,0,0,.76); backdrop-filter:blur(16px); color:var(--ivory); text-decoration:none; font-size:.72rem; font-weight:850; letter-spacing:.12em; text-transform:uppercase; box-shadow:0 18px 46px rgba(0,0,0,.38); }
.home-float img { width:32px; height:32px; display:block; border-radius:50%; }
.home-float:hover { border-color:rgba(199,163,90,.82); transform:translateY(-1px); }

.reveal { opacity:0; transform:translateY(18px); transition:opacity .65s ease, transform .65s ease; }
.reveal.is-visible { opacity:1; transform:none; }

@media (max-width: 980px) {
  .mobile-toggle { display:inline-flex; background:transparent; border:1px solid rgba(247,241,230,.18); color:var(--ivory); border-radius:999px; padding:10px 14px; }
  .nav-links { position:absolute; top:88px; left:20px; right:20px; display:none; flex-direction:column; align-items:stretch; padding:22px; border-radius:22px; border:1px solid rgba(247,241,230,.12); background:rgba(0,0,0,.96); }
  .nav-links.is-open { display:flex; }
  .nav-cta { display:none; }
  .hero-grid, .split, .grid-2, .grid-3, .grid-4, .offer-card, .footer-grid { grid-template-columns:1fr; }
  .hero { min-height:auto; padding:70px 0; }
  .hero-proof { grid-template-columns:1fr; }
  .process-line { grid-template-columns:1fr; }
  .process-step { border-right:0; border-bottom:1px solid rgba(247,241,230,.1); min-height:auto; }
  .process-step:last-child { border-bottom:0; }
  .section-head { display:block; }
  .form-grid { grid-template-columns:1fr; }
}
@media (max-width: 760px) {
  .calendly-card { min-height:680px; border-radius:22px; }
  .calendly-frame { height:680px; }
  .brand-logo { width:min(210px, 58vw); }
  .home-float { right:12px; bottom:12px; padding-right:10px; }
  .home-float span { display:none; }
}
@media (max-width: 640px) {
  .container, .container-narrow { width:min(100% - 26px, var(--max)); }
  .nav { min-height:74px; }
  .nav-links { top:74px; }
  h1 { font-size:clamp(3rem, 14vw, 4.6rem); }
  h2 { font-size:clamp(2.1rem, 10vw, 3.5rem); }
  .section { padding:74px 0; }
  .card, .diagnostic-card, .offer-card, .form-wrap { padding:22px; }
  .footer-bottom { display:block; }
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior:auto !important; animation:none !important; transition:none !important; }
  .reveal { opacity:1; transform:none; }
}

.path-grid { display:grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap:18px; margin:24px 0; }
.path-card { padding:22px; border:1px solid rgba(199,163,90,.22); background:rgba(247,241,230,.04); border-radius:18px; box-shadow:0 18px 60px rgba(0,0,0,.18); }
.path-card-primary { border-color:rgba(199,163,90,.55); background:linear-gradient(135deg, rgba(199,163,90,.13), rgba(247,241,230,.03)); }
.path-card h3 { margin:.45rem 0 .65rem; }
.path-card p { color:var(--muted); }
@media (max-width: 780px) { .path-grid { grid-template-columns:1fr; } }
