:root {
  --obsidian: #080B0F;
  --slate: #111620;
  --slate2: #161D2A;
  --slate3: #1E2535;
  --slate4: #8A9AB5;
  --stone: #2A3040;
  --stone2: #3A4558;
  --gold: #A87828;
  --gold2: #B8861E;
  --green-bright: #6FCF8E;
  --text: #D4CFC8;
  --text2: #9A9590;
  --white: #F0EDE8;
  --light-warm: #F5F0E8;
  --light-gray: #EDEBE6;
  --gold-wash: #F2EBD8;
  --dark-text: #1A1208;
  --dark-text2: #3A2E1A;
}
* { margin:0; padding:0; box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { font-family:"Jost",sans-serif; background:var(--obsidian); color:var(--text); overflow-x:hidden; cursor:none; }

#cursor { position:fixed; width:8px; height:8px; background:var(--gold); border-radius:50%; pointer-events:none; z-index:9999; transform:translate(-50%,-50%); }
#cursor-ring { position:fixed; width:32px; height:32px; border:1px solid rgba(196,144,58,0.5); border-radius:50%; pointer-events:none; z-index:9998; transform:translate(-50%,-50%); transition:all 0.15s ease; }

body::before { content:""; position:fixed; inset:0; background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)' opacity='0.04'/%3E%3C/svg%3E"); pointer-events:none; z-index:1000; opacity:0.3; }

/* NAV */
nav { position:fixed; top:0; width:100%; z-index:500; padding:22px 60px; display:flex; justify-content:space-between; align-items:center; background:linear-gradient(to bottom,rgba(8,11,15,0.96),transparent); backdrop-filter:blur(12px); }
.nav-logo { font-family:"Cormorant Garamond",serif; font-size:1.6rem; font-weight:600; color:var(--white); text-decoration:none; letter-spacing:0.05em; display:flex; align-items:center; gap:10px; }
.nav-wordmark { display:inline; }
.nav-logo .nav-wordmark span { color:var(--gold); }
.nav-mark { width:32px; height:32px; flex-shrink:0; }
.nav-links { display:flex; gap:40px; list-style:none; }
.nav-links a { font-family:"Jost",sans-serif; font-size:0.85rem; font-weight:500; letter-spacing:0.12em; text-transform:uppercase; color:var(--text2); text-decoration:none; transition:color 0.3s; white-space:nowrap; }
.nav-links a:hover { color:var(--gold2); }
.nav-cta-desktop { font-family:"Jost",sans-serif; font-size:0.8rem; font-weight:600; letter-spacing:0.15em; text-transform:uppercase; color:var(--obsidian); background:var(--gold); padding:10px 24px; text-decoration:none; transition:background 0.3s; }
.nav-cta-desktop:hover { background:var(--gold2); }
.nav-mobile-cta { display:none; }
.hamburger { display:none; flex-direction:column; justify-content:space-between; width:28px; height:20px; background:none; border:none; cursor:pointer; padding:0; z-index:600; }
.hamburger span { display:block; width:100%; height:2px; background:var(--white); transition:all 0.35s ease; transform-origin:center; }
.hamburger.open span:nth-child(1) { transform:translateY(9px) rotate(45deg); }
.hamburger.open span:nth-child(2) { opacity:0; transform:scaleX(0); }
.hamburger.open span:nth-child(3) { transform:translateY(-9px) rotate(-45deg); }

/* HERO */
.hero { position:relative; height:100vh; min-height:700px; display:flex; align-items:center; justify-content:center; overflow:hidden; }
.hero-bg { position:absolute; inset:0; background-size:cover; background-position:center 40%; filter:brightness(0.3) saturate(0.8); transform:scale(1.05); animation:heroZoom 20s ease-in-out infinite alternate; }
@keyframes heroZoom { 0%{transform:scale(1.05);} 100%{transform:scale(1.12);} }
.hero-overlay { position:absolute; inset:0; background:linear-gradient(135deg,rgba(8,11,15,0.7) 0%,rgba(17,22,32,0.4) 50%,rgba(8,11,15,0.8) 100%); }
#neural-canvas { display:none; }
.hero-content { position:relative; z-index:10; text-align:center; max-width:1000px; padding:0 40px; }
.hero-tag { font-family:"Cutive Mono",monospace; font-size:0.92rem; color:var(--green-bright); letter-spacing:0.2em; text-transform:uppercase; margin-bottom:28px; opacity:0; animation:fadeUp 0.8s 0.3s forwards; }
.hero-title { font-family:"Cormorant Garamond",serif; font-size:clamp(3.2rem,7vw,6.5rem); font-weight:300; line-height:1.08; color:var(--white); margin-bottom:30px; opacity:0; animation:fadeUp 0.8s 0.5s forwards; }
.hero-title em { font-style:italic; color:var(--gold2); }
.hero-sub { font-family:"Jost",sans-serif; font-size:clamp(1.05rem,2vw,1.35rem); font-weight:300; color:#E8E5E0; line-height:1.7; max-width:680px; margin:0 auto 50px; opacity:0; animation:fadeUp 0.8s 0.7s forwards; }
.hero-actions { display:flex; gap:20px; justify-content:center; align-items:center; flex-wrap:wrap; opacity:0; animation:fadeUp 0.8s 0.9s forwards; }
.btn-primary { font-family:"Jost",sans-serif; font-size:0.9rem; font-weight:600; letter-spacing:0.15em; text-transform:uppercase; color:var(--obsidian); background:var(--gold); padding:16px 40px; text-decoration:none; display:inline-block; transition:all 0.3s; position:relative; overflow:hidden; }
.btn-primary::after { content:""; position:absolute; inset:0; background:var(--gold2); transform:translateX(-100%); transition:transform 0.3s; }
.btn-primary:hover::after { transform:translateX(0); }
.btn-primary span { position:relative; z-index:1; }
.btn-secondary { font-family:"Jost",sans-serif; font-size:0.9rem; font-weight:500; letter-spacing:0.12em; text-transform:uppercase; color:var(--white); border:1px solid rgba(196,144,58,0.4); padding:16px 40px; text-decoration:none; display:inline-block; transition:all 0.3s; }
.btn-secondary:hover { border-color:var(--gold); color:var(--gold2); }
.scroll-indicator { position:absolute; bottom:40px; left:50%; transform:translateX(-50%); display:flex; flex-direction:column; align-items:center; gap:8px; opacity:0; animation:fadeIn 1s 1.5s forwards; }
.scroll-line { width:1px; height:50px; background:linear-gradient(to bottom,transparent,var(--gold)); animation:scrollPulse 2s ease-in-out infinite; }
@keyframes scrollPulse { 0%,100%{opacity:0.4;} 50%{opacity:1;} }
.scroll-label { font-family:"Cutive Mono",monospace; font-size:0.65rem; color:var(--text2); letter-spacing:0.2em; writing-mode:vertical-rl; }

/* TICKER */
.ticker { background:var(--slate3); border-top:1px solid rgba(196,144,58,0.4); border-bottom:1px solid rgba(196,144,58,0.4); overflow:hidden; padding:16px 0; }
.ticker-inner { display:flex; white-space:nowrap; animation:ticker 28s linear infinite; }
@keyframes ticker { 0%{transform:translateX(0);} 100%{transform:translateX(-50%);} }
.ticker-item { font-family:"Jost",sans-serif; font-size:0.88rem; font-weight:500; color:var(--white); letter-spacing:0.08em; padding:0 28px; display:flex; align-items:center; gap:28px; text-transform:uppercase; }
.ticker-item::after { content:"◆"; color:var(--gold); font-size:0.48rem; opacity:0.8; }

/* SECTION SHARED */
section { position:relative; }
.section-label { font-family:"Cutive Mono",monospace; font-size:0.82rem; color:var(--green-bright); letter-spacing:0.25em; text-transform:uppercase; margin-bottom:16px; }
.section-title { font-family:"Cormorant Garamond",serif; font-size:clamp(2.4rem,4.5vw,4rem); font-weight:300; color:var(--white); line-height:1.15; margin-bottom:20px; }
.section-title em { font-style:italic; color:var(--gold2); }
.section-body { font-family:"Jost",sans-serif; font-size:1.1rem; font-weight:300; color:#C8C4BE; line-height:1.8; max-width:600px; }

/* STATEMENT */
.statement { padding:140px 60px; display:grid; grid-template-columns:1fr 1fr; gap:100px; align-items:center; background:var(--light-warm); overflow:hidden; }
.statement-left { max-width:560px; }
.statement .section-title { font-weight:500; color:var(--dark-text); }
.statement .section-title em { color:var(--gold); }
.statement .section-body { font-weight:400; color:#2E2010; font-size:1.1rem; }
.statement .stat-value { font-weight:400; color:var(--gold); }
.statement .stat-label { font-weight:600; color:#1A1208; font-size:0.9rem; }
.statement .stat-source { color:#5A7A5A; opacity:1; font-weight:500; }
.statement .stat-bg-num { color:rgba(168,120,40,0.08); }
.statement-right { position:relative; height:500px; }
.stats-grid { position:absolute; inset:0; display:grid; grid-template-columns:1fr 1fr; grid-template-rows:1fr 1fr; gap:16px; }
.stat-card { background:var(--white); border:1px solid rgba(168,120,40,0.25); padding:36px 30px; display:flex; flex-direction:column; justify-content:flex-end; position:relative; overflow:hidden; transition:border-color 0.4s,transform 0.4s; box-shadow:0 2px 12px rgba(168,120,40,0.08); }
.stat-card:hover { border-color:rgba(196,144,58,0.45); transform:translateY(-3px); }
.stat-card::before { content:""; position:absolute; top:0; left:0; right:0; height:2px; background:linear-gradient(to right,var(--gold),transparent); opacity:0.6; }
.stat-bg-num { position:absolute; top:-10px; right:10px; font-family:"Cormorant Garamond",serif; font-size:7rem; font-weight:700; color:rgba(196,144,58,0.05); line-height:1; pointer-events:none; }
.stat-value { font-family:"Cormorant Garamond",serif; font-size:3.2rem; font-weight:300; color:var(--gold); line-height:1; margin-bottom:10px; }
.stat-label { font-family:"Jost",sans-serif; font-size:0.88rem; font-weight:500; color:var(--dark-text2); margin-bottom:6px; }
.stat-source { font-family:"Cutive Mono",monospace; font-size:0.65rem; color:var(--green-bright); letter-spacing:0.1em; opacity:0.8; }

/* SERVICES */
.services { padding:140px 60px; background:var(--obsidian); position:relative; overflow:hidden; }
.services::before { content:""; position:absolute; top:-200px; right:-200px; width:700px; height:700px; background:radial-gradient(circle,rgba(111,207,142,0.04) 0%,transparent 70%); pointer-events:none; }
.hex-grid { position:absolute; inset:0; background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='60' height='52' viewBox='0 0 60 52'%3E%3Cpath d='M15 2 L45 2 L60 28 L45 50 L15 50 L0 28Z' fill='none' stroke='rgba(196,144,58,0.04)' stroke-width='1'/%3E%3C/svg%3E"); pointer-events:none; opacity:0.8; }
.services-header { text-align:center; margin-bottom:80px; }
.services-header .section-body { margin:0 auto; text-align:center; }
.services-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:2px; background:rgba(196,144,58,0.1); }
.service-card { background:var(--slate); padding:44px 36px; transition:all 0.4s; position:relative; overflow:hidden; cursor:default; }
.service-card::before { content:""; position:absolute; top:0; left:0; right:0; height:2px; background:var(--gold); transform:scaleX(0); transform-origin:left; transition:transform 0.4s; }
.service-card:hover { background:var(--slate2); transform:translateY(-4px); }
.service-card:hover::before { transform:scaleX(1); }
.service-icon { width:48px; height:48px; margin-bottom:24px; color:var(--gold); }
.service-num { font-family:"Cutive Mono",monospace; font-size:0.7rem; color:var(--stone2); letter-spacing:0.15em; margin-bottom:16px; }
.service-name { font-family:"Cormorant Garamond",serif; font-size:1.5rem; font-weight:600; color:var(--white); margin-bottom:14px; line-height:1.2; }
.service-desc { font-family:"Jost",sans-serif; font-size:0.95rem; font-weight:300; color:#B0ABA5; line-height:1.75; }

/* PHOTO DIVIDER */
.photo-divider { height:500px; position:relative; overflow:hidden; }
.photo-divider-img { position:absolute; inset:0; background-size:cover; background-position:center; filter:brightness(0.28) saturate(0.65); }
.photo-divider-overlay { position:absolute; inset:0; background:linear-gradient(to right,rgba(8,11,15,0.75) 0%,transparent 40%,transparent 60%,rgba(8,11,15,0.75) 100%); display:flex; align-items:center; justify-content:center; }
.photo-divider-text { text-align:center; position:relative; z-index:10; max-width:860px; padding:0 40px; }
.quote-mark { font-family:"Cormorant Garamond",serif; font-size:8rem; font-weight:300; color:var(--gold); opacity:0.35; line-height:0.5; display:block; margin-bottom:10px; }
.photo-divider-text blockquote { font-family:"Cormorant Garamond",serif; font-size:clamp(2rem,3.8vw,3.4rem); font-weight:300; color:var(--white); line-height:1.25; font-style:italic; margin-bottom:24px; }
.photo-divider-text blockquote em { color:var(--gold2); font-style:normal; }
.quote-attr { font-family:"Cutive Mono",monospace; font-size:0.78rem; color:var(--green-bright); letter-spacing:0.2em; text-transform:uppercase; }

/* STATS STRIP */
.stats-strip { background:var(--light-gray); padding:80px 60px; position:relative; overflow:hidden; }
.stats-strip::before { content:""; position:absolute; inset:0; background:linear-gradient(135deg,rgba(111,207,142,0.03) 0%,transparent 50%,rgba(196,144,58,0.03) 100%); }
.stats-strip-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:2px; background:rgba(196,144,58,0.08); position:relative; z-index:1; }
.strip-stat { background:var(--light-gray); padding:48px 36px; text-align:center; border-bottom:2px solid transparent; transition:border-color 0.4s; }
.strip-stat:hover { border-bottom-color:var(--gold); }
.strip-val { font-family:"Cormorant Garamond",serif; font-size:3.8rem; font-weight:300; color:var(--gold); line-height:1; margin-bottom:12px; }
.strip-label { font-family:"Jost",sans-serif; font-size:1rem; font-weight:500; color:var(--dark-text); margin-bottom:8px; }
.strip-sub { font-family:"Jost",sans-serif; font-size:0.85rem; font-weight:300; color:var(--dark-text2); line-height:1.6; }

/* PROCESS */
.process { padding:140px 60px; background:var(--slate); position:relative; overflow:hidden; }
.process-bg { position:absolute; inset:0; background-size:cover; background-position:center; filter:brightness(0.07) saturate(0.3); opacity:0.5; }
.process-content { position:relative; z-index:10; }
.process-header { text-align:center; margin-bottom:80px; }
.process-steps { display:grid; grid-template-columns:repeat(4,1fr); position:relative; }
.process-steps::before { content:""; position:absolute; top:40px; left:12.5%; right:12.5%; height:1px; background:linear-gradient(to right,transparent,var(--gold),var(--gold),transparent); opacity:0.3; }
.process-step { padding:40px 30px; text-align:center; }
.step-num { width:80px; height:80px; border:1px solid rgba(196,144,58,0.35); border-radius:50%; display:flex; align-items:center; justify-content:center; margin:0 auto 28px; font-family:"Cormorant Garamond",serif; font-size:2rem; font-weight:300; color:var(--gold2); background:var(--slate); transition:all 0.4s; }
.process-step:hover .step-num { border-color:var(--gold); background:rgba(196,144,58,0.1); transform:scale(1.1); }
.step-title { font-family:"Cormorant Garamond",serif; font-size:1.45rem; font-weight:600; color:var(--white); margin-bottom:14px; }
.step-desc { font-family:"Jost",sans-serif; font-size:0.95rem; font-weight:300; color:#B0ABA5; line-height:1.75; }

/* RESULTS */
.results { padding:120px 60px; background:var(--gold-wash); }
.results-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:2px; background:rgba(168,120,40,0.2); margin-top:70px; }
.result-item { background:var(--gold-wash); padding:60px 40px; text-align:center; position:relative; overflow:hidden; }
.result-item::after { content:""; position:absolute; inset:0; background:radial-gradient(circle at center,rgba(196,144,58,0.05) 0%,transparent 70%); opacity:0; transition:opacity 0.4s; }
.result-item:hover::after { opacity:1; }
.result-num { font-family:"Cormorant Garamond",serif; font-size:clamp(3.5rem,5vw,5.5rem); font-weight:300; color:var(--gold); line-height:1; display:block; }
.result-label { font-family:"Jost",sans-serif; font-size:1rem; font-weight:400; color:var(--dark-text2); margin-top:12px; }

/* TERMINAL */
.terminal-section { padding:140px 60px; background:var(--slate2); display:grid; grid-template-columns:1fr 1fr; gap:100px; align-items:center; }
.terminal { background:#0A0E14; border:1px solid rgba(196,144,58,0.25); font-family:"Cutive Mono",monospace; overflow:hidden; }
.terminal-bar { background:var(--stone); padding:12px 16px; display:flex; align-items:center; gap:8px; border-bottom:1px solid rgba(196,144,58,0.15); }
.dot { width:12px; height:12px; border-radius:50%; }
.dot.red{background:#FF5F57;} .dot.yellow{background:#FEBC2E;} .dot.green{background:#28C840;}
.terminal-title { font-size:0.75rem; color:var(--text2); margin-left:auto; letter-spacing:0.1em; }
.terminal-body { padding:28px; font-size:0.82rem; line-height:2; min-height:320px; }
.t-comment{color:#4A5568;} .t-key{color:var(--green-bright);} .t-val{color:#68D391;} .t-gold{color:var(--gold2);} .t-purple{color:#B794F4;} .t-white{color:var(--white);}
.t-cursor { display:inline-block; width:8px; height:16px; background:var(--green-bright); animation:blink 1s infinite; vertical-align:middle; }
@keyframes blink { 0%,100%{opacity:1;} 50%{opacity:0;} }

/* CALENDAR */
.calendar-section { padding:140px 60px; background:var(--obsidian); position:relative; overflow:hidden; }
.calendar-section::before { content:""; position:absolute; top:-300px; right:-200px; width:800px; height:800px; background:radial-gradient(circle,rgba(111,207,142,0.05) 0%,transparent 65%); pointer-events:none; }
.calendar-inner { display:grid; grid-template-columns:1fr 1.3fr; gap:80px; align-items:start; position:relative; z-index:1; }
.calendar-right { background:var(--slate); border:1px solid rgba(196,144,58,0.2); overflow:hidden; }
.cal-header { background:var(--slate3); padding:28px 36px; border-bottom:1px solid rgba(196,144,58,0.15); display:flex; justify-content:space-between; align-items:center; }
.cal-month { font-family:"Cormorant Garamond",serif; font-size:1.4rem; font-weight:600; color:var(--white); }
.cal-nav { display:flex; gap:12px; }
.cal-btn { width:32px; height:32px; border:1px solid rgba(196,144,58,0.3); background:transparent; color:var(--gold); cursor:pointer; display:flex; align-items:center; justify-content:center; font-size:0.9rem; transition:all 0.3s; }
.cal-btn:hover { background:rgba(196,144,58,0.15); border-color:var(--gold); }
.cal-body { padding:24px 36px 36px; }
.cal-weekdays { display:grid; grid-template-columns:repeat(7,1fr); gap:4px; margin-bottom:12px; }
.cal-wd { font-family:"Cutive Mono",monospace; font-size:0.7rem; color:var(--green-bright); text-align:center; letter-spacing:0.1em; padding:8px 0; }
.cal-days { display:grid; grid-template-columns:repeat(7,1fr); gap:4px; }
.cal-day { aspect-ratio:1; display:flex; align-items:center; justify-content:center; font-family:"Jost",sans-serif; font-size:0.88rem; color:var(--text2); cursor:pointer; border:1px solid transparent; transition:all 0.2s; border-radius:2px; }
.cal-day:hover { background:rgba(196,144,58,0.12); border-color:rgba(196,144,58,0.3); color:var(--white); }
.cal-day.available { color:var(--white); font-weight:500; }
.cal-day.available:hover { background:rgba(111,207,142,0.12); border-color:var(--green-bright); color:var(--green-bright); }
.cal-day.selected { background:var(--gold); color:var(--obsidian); font-weight:600; border-color:var(--gold); }
.cal-day.today { border-color:rgba(196,144,58,0.5); color:var(--gold2); }
.cal-day.empty { cursor:default; }
.cal-day.empty:hover { background:transparent; border-color:transparent; }
.cal-time-header { padding:20px 36px 12px; border-top:1px solid rgba(196,144,58,0.12); font-family:"Cutive Mono",monospace; font-size:0.75rem; color:var(--green-bright); letter-spacing:0.15em; text-transform:uppercase; display:none; }
.cal-times { display:none; flex-wrap:wrap; gap:10px; padding:0 36px 28px; }
.cal-time { font-family:"Jost",sans-serif; font-size:0.85rem; padding:10px 18px; border:1px solid rgba(196,144,58,0.25); color:var(--text); cursor:pointer; transition:all 0.2s; background:transparent; }
.cal-time:hover { background:rgba(196,144,58,0.12); border-color:var(--gold); color:var(--white); }
.cal-time.selected { background:var(--gold); color:var(--obsidian); border-color:var(--gold); font-weight:600; }
.cal-confirm { display:none; padding:20px 36px 32px; border-top:1px solid rgba(196,144,58,0.12); }
.cal-confirm-text { font-family:"Jost",sans-serif; font-size:0.92rem; color:var(--white); margin-bottom:16px; line-height:1.6; }
.cal-confirm-text span { color:var(--gold2); font-weight:500; }
.cal-book-btn { font-family:"Jost",sans-serif; font-size:0.85rem; font-weight:600; letter-spacing:0.12em; text-transform:uppercase; color:var(--obsidian); background:var(--gold); border:none; padding:14px 32px; cursor:pointer; transition:background 0.3s; width:100%; }
.cal-book-btn:hover { background:var(--gold2); }
.cal-fields { display:flex; flex-direction:column; gap:12px; margin-bottom:20px; }
.cal-field { display:flex; flex-direction:column; gap:5px; }
.cal-field input { font-family:"Jost",sans-serif; font-size:0.85rem; color:var(--white); background:rgba(255,255,255,0.04); border:1px solid rgba(196,144,58,0.25); padding:11px 14px; outline:none; transition:border-color 0.2s; width:100%; box-sizing:border-box; }
.cal-field input::placeholder { color:var(--text2); }
.cal-field input:focus { border-color:rgba(196,144,58,0.6); }
.cal-field input.cal-field-error { border-color:rgba(220,80,80,0.7); }
.cal-field-label { font-family:"Jost",sans-serif; font-size:0.75rem; font-weight:600; letter-spacing:0.1em; text-transform:uppercase; color:var(--text2); }
.cal-field-req { color:var(--gold); }
.cal-form-error { font-family:"Jost",sans-serif; font-size:0.82rem; color:rgba(220,100,100,0.9); margin-bottom:10px; display:none; }
.cal-success { display:none; padding:40px 36px; text-align:center; border-top:1px solid rgba(196,144,58,0.12); }
.cal-success-icon { font-size:2.5rem; margin-bottom:16px; }
.cal-success h4 { font-family:"Cormorant Garamond",serif; font-size:1.6rem; color:var(--white); margin-bottom:10px; }
.cal-success p { font-size:0.92rem; color:var(--text2); line-height:1.7; }

/* CTA */
.cta-section { position:relative; padding:160px 60px; overflow:hidden; text-align:center; }
.cta-bg { position:absolute; inset:0; background-size:cover; background-position:center 30%; filter:brightness(0.2) saturate(0.6); }
.cta-overlay { position:absolute; inset:0; background:radial-gradient(ellipse at center,rgba(8,11,15,0.3) 0%,rgba(8,11,15,0.85) 100%); }
.cta-content { position:relative; z-index:10; }
.cta-title { font-family:"Cormorant Garamond",serif; font-size:clamp(3rem,5.5vw,5.5rem); font-weight:300; color:var(--white); line-height:1.1; margin-bottom:30px; }
.cta-title em { font-style:italic; color:var(--gold2); }
.cta-sub { font-size:1.2rem; font-weight:300; color:#D8D4CE; margin:0 auto 60px; max-width:540px; line-height:1.7; }
.orb { position:absolute; border-radius:50%; pointer-events:none; animation:orbFloat linear infinite; }
@keyframes orbFloat { 0%,100%{transform:translateY(0) translateX(0);opacity:0.6;} 25%{transform:translateY(-30px) translateX(15px);opacity:0.9;} 50%{transform:translateY(-15px) translateX(-10px);opacity:0.7;} 75%{transform:translateY(-40px) translateX(20px);opacity:0.8;} }

/* FOOTER */
footer { background:#050709; padding:80px 60px 40px; border-top:1px solid rgba(196,144,58,0.15); }
.footer-grid { display:grid; grid-template-columns:2fr 1fr 1fr 1fr; gap:60px; margin-bottom:60px; }
.footer-logo { font-family:"Cormorant Garamond",serif; font-size:1.5rem; font-weight:600; color:var(--white); margin-bottom:18px; }
.footer-logo span { color:var(--gold); }
.footer-tagline { font-size:0.92rem; font-weight:300; color:var(--text2); line-height:1.7; }
.footer-legal { font-family:"Jost",sans-serif; font-size:0.8rem; font-weight:300; color:#8B8680; line-height:1.65; margin-top:18px; padding-top:16px; border-top:1px solid rgba(196,144,58,0.1); }
.footer-legal strong { color:var(--text2); font-weight:500; }
.footer-col-title { font-family:"Cutive Mono",monospace; font-size:0.72rem; color:var(--gold); letter-spacing:0.2em; text-transform:uppercase; margin-bottom:20px; }
.footer-links { list-style:none; }
.footer-links li { margin-bottom:10px; }
.footer-links a { font-size:0.9rem; color:var(--text2); text-decoration:none; transition:color 0.3s; }
.footer-links a:hover { color:var(--gold2); }
.footer-bottom { border-top:1px solid rgba(255,255,255,0.06); padding-top:32px; display:flex; justify-content:space-between; align-items:center; }
.footer-copy { font-family:"Cutive Mono",monospace; font-size:0.75rem; color:var(--stone2); letter-spacing:0.08em; }

/* REVEAL */
.reveal { opacity:0; transform:translateY(40px); transition:opacity 0.7s ease,transform 0.7s ease; }
.reveal.visible { opacity:1; transform:translateY(0); }

@keyframes fadeUp { to{opacity:1;transform:translateY(0);} from{opacity:0;transform:translateY(30px);} }
@keyframes fadeIn { to{opacity:1;} from{opacity:0;} }
.particle { position:absolute; background:var(--gold); border-radius:50%; pointer-events:none; animation:particleFloat linear infinite; }
@keyframes particleFloat { 0%{transform:translateY(100vh);opacity:0;} 10%{opacity:0.5;} 90%{opacity:0.3;} 100%{transform:translateY(-10vh);opacity:0;} }

/* =========================================
   HIGH-END ENHANCEMENTS
========================================= */

/* MENU OPEN — drop nav backdrop-filter so the fixed overlay covers the viewport
   (an ancestor with backdrop-filter becomes the containing block for fixed children) */
body.menu-open nav { backdrop-filter:none !important; -webkit-backdrop-filter:none !important; background:transparent !important; box-shadow:none !important; }

/* SCROLL PROGRESS BAR */
#scroll-progress { position:fixed; top:0; left:0; height:2px; width:0%; z-index:9000; background:linear-gradient(to right,var(--gold),var(--green-bright),var(--gold2)); box-shadow:0 0 12px rgba(196,144,58,0.6); transition:width 0.1s linear; pointer-events:none; }

/* PAGE LOAD FADE */
body { opacity:0; transition:opacity 0.9s ease; }
body.loaded { opacity:1; }

/* CURSOR — premium blend */
#cursor { mix-blend-mode:screen; transition:width 0.25s ease,height 0.25s ease,background 0.25s ease; }
#cursor.grow { width:14px; height:14px; background:var(--green-bright); }
#cursor-ring.grow { border-color:rgba(111,207,142,0.7) !important; }

/* NAV — scrolled state */
nav { transition:padding 0.4s ease, background 0.4s ease, backdrop-filter 0.4s ease, box-shadow 0.4s ease; }
nav.scrolled { padding-top:14px; padding-bottom:14px; background:rgba(8,11,15,0.85); backdrop-filter:blur(18px) saturate(1.2); box-shadow:0 1px 0 rgba(196,144,58,0.12), 0 8px 30px rgba(0,0,0,0.4); }
.nav-links a { position:relative; }
.nav-links a::after { content:""; position:absolute; left:0; bottom:-6px; width:100%; height:1px; background:var(--gold2); transform:scaleX(0); transform-origin:right; transition:transform 0.35s cubic-bezier(0.22,1,0.36,1); }
.nav-links a:hover::after { transform:scaleX(1); transform-origin:left; }
.nav-cta-desktop { white-space:nowrap; position:relative; overflow:hidden; box-shadow:0 4px 18px rgba(196,144,58,0.25); }
.nav-cta-desktop::after { content:""; position:absolute; top:0; left:-120%; width:60%; height:100%; background:linear-gradient(100deg,transparent,rgba(255,255,255,0.45),transparent); transform:skewX(-18deg); transition:none; }
.nav-cta-desktop:hover::after { animation:sheen 0.8s ease; }
@keyframes sheen { to { left:130%; } }

/* HERO — flowing aurora field */
.hero-aurora { position:absolute; inset:-20%; z-index:2; pointer-events:none; filter:blur(60px); opacity:0.55; }
.hero-aurora span { position:absolute; border-radius:50%; mix-blend-mode:screen; will-change:transform; }
.aurora-1 { width:46vw; height:46vw; left:-6%; top:6%; background:radial-gradient(circle at 30% 30%, rgba(196,144,58,0.55), transparent 62%); animation:auroraDrift1 22s ease-in-out infinite alternate; }
.aurora-2 { width:40vw; height:40vw; right:-4%; top:18%; background:radial-gradient(circle at 60% 40%, rgba(111,207,142,0.42), transparent 60%); animation:auroraDrift2 28s ease-in-out infinite alternate; }
.aurora-3 { width:34vw; height:34vw; left:32%; bottom:-12%; background:radial-gradient(circle at 50% 50%, rgba(184,134,30,0.4), transparent 62%); animation:auroraDrift3 25s ease-in-out infinite alternate; }
@keyframes auroraDrift1 { 0%{transform:translate(0,0) scale(1);} 50%{transform:translate(8vw,4vw) scale(1.15);} 100%{transform:translate(-4vw,8vw) scale(0.95);} }
@keyframes auroraDrift2 { 0%{transform:translate(0,0) scale(1.05);} 50%{transform:translate(-7vw,5vw) scale(0.9);} 100%{transform:translate(5vw,-4vw) scale(1.2);} }
@keyframes auroraDrift3 { 0%{transform:translate(0,0) scale(1);} 50%{transform:translate(6vw,-5vw) scale(1.18);} 100%{transform:translate(-6vw,-2vw) scale(0.92);} }
.hero-content { z-index:11; }
.hero-overlay { z-index:3; }
#neural-canvas { display:block !important; position:absolute; inset:0; width:100%; height:100%; z-index:4; opacity:0.5; pointer-events:none; }

/* HERO TITLE — animated gold sheen on the italic line */
.hero-title em { background:linear-gradient(100deg,var(--gold2) 0%,#F4D77E 25%,var(--gold2) 50%,#E9C25A 75%,var(--gold2) 100%); background-size:200% auto; -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent; color:transparent; animation:titleSheen 6s linear infinite; }
@keyframes titleSheen { to { background-position:200% center; } }

/* BUTTONS — soft glow + lift */
.btn-primary { box-shadow:0 6px 24px rgba(196,144,58,0.25); will-change:transform; }
.btn-primary:hover { transform:translateY(-2px); box-shadow:0 12px 36px rgba(196,144,58,0.4); }
.btn-secondary { backdrop-filter:blur(4px); will-change:transform; }
.btn-secondary:hover { transform:translateY(-2px); box-shadow:0 10px 30px rgba(196,144,58,0.18); background:rgba(196,144,58,0.05); }

/* SERVICE CARDS — cursor spotlight + tilt */
.service-card { will-change:transform; transition:transform 0.25s cubic-bezier(0.22,1,0.36,1), background 0.4s; transform-style:preserve-3d; }
.service-card::after { content:""; position:absolute; inset:0; opacity:0; transition:opacity 0.4s; pointer-events:none; background:radial-gradient(420px circle at var(--mx,50%) var(--my,50%), rgba(196,144,58,0.14), transparent 45%); }
.service-card:hover::after { opacity:1; }
.service-icon { transition:transform 0.4s cubic-bezier(0.22,1,0.36,1), color 0.4s; }
.service-card:hover .service-icon { transform:translateY(-4px) scale(1.06); color:var(--gold2); }

/* STAT / RESULT cards spotlight */
.stat-card, .result-item, .strip-stat { will-change:transform; }

/* TICKER — fade edges */
.ticker { position:relative; -webkit-mask-image:linear-gradient(to right,transparent,#000 8%,#000 92%,transparent); mask-image:linear-gradient(to right,transparent,#000 8%,#000 92%,transparent); }

/* REVEAL — smoother easing + variants */
.reveal { transition:opacity 0.9s cubic-bezier(0.22,1,0.36,1), transform 0.9s cubic-bezier(0.22,1,0.36,1); }
.reveal-stagger > * { opacity:0; transform:translateY(30px); transition:opacity 0.8s cubic-bezier(0.22,1,0.36,1), transform 0.8s cubic-bezier(0.22,1,0.36,1); }
.reveal-stagger.visible > * { opacity:1; transform:translateY(0); }

/* COUNT-UP numbers shimmer-in */
.counter { display:inline-block; }

/* PROCESS — animated connecting line draw */
.process-steps::before { background-size:200% 100%; animation:lineFlow 6s linear infinite; }
@keyframes lineFlow { to { background-position:200% 0; } }

/* GLOW on section labels */
.section-label { position:relative; }

/* REDUCED MOTION */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation-duration:0.001ms !important; animation-iteration-count:1 !important; transition-duration:0.01ms !important; }
  .hero-aurora, #neural-canvas { display:none !important; }
  .hero-bg { animation:none !important; }
}

/* =========================================
   TABLET  max-width: 1024px
========================================= */
@media (max-width:1024px) {
  nav { padding:20px 32px; }
  .statement { grid-template-columns:1fr; gap:60px; padding:100px 32px; }
  .statement-left { max-width:100%; }
  .statement-right { height:380px; }
  .services { padding:100px 32px; }
  .services-grid { grid-template-columns:repeat(2,1fr); }
  .process { padding:100px 32px; }
  .process-steps { grid-template-columns:repeat(2,1fr); }
  .process-steps::before { display:none; }
  .results { padding:100px 32px; }
  .results-grid { grid-template-columns:repeat(2,1fr); }
  .stats-strip { padding:80px 32px; }
  .stats-strip-grid { grid-template-columns:repeat(2,1fr); }
  .terminal-section { grid-template-columns:1fr; gap:60px; padding:100px 32px; }
  .calendar-section { padding:100px 32px; }
  .calendar-inner { grid-template-columns:1fr; gap:60px; }
  .cta-section { padding:120px 32px; }
  footer { padding:60px 32px 32px; }
  .footer-grid { grid-template-columns:1fr 1fr; gap:40px; }
}

/* =========================================
   NAV COLLAPSE  max-width: 900px
   (use the hamburger overlay before the bar gets crowded)
========================================= */
@media (max-width:900px) {
  .nav-cta-desktop { display:none; }
  .hamburger { display:flex; }
  .nav-links {
    position:fixed; top:0; left:0; right:0; bottom:0;
    background:rgba(8,11,15,0.97); backdrop-filter:blur(20px);
    flex-direction:column; align-items:center; justify-content:center;
    gap:0; z-index:550;
    transform:translateX(100%); transition:transform 0.4s cubic-bezier(0.77,0,0.18,1);
    padding:80px 40px 40px;
  }
  .nav-links.open { transform:translateX(0); }
  .nav-links li { width:100%; text-align:center; border-bottom:1px solid rgba(196,144,58,0.1); }
  .nav-links a { font-size:1.1rem; letter-spacing:0.14em; color:var(--white); display:block; padding:18px 0; }
  .nav-links a::after { display:none; }
  .nav-mobile-cta { display:block !important; margin-top:28px; border-bottom:none !important; }
  .nav-mobile-cta a { display:inline-block; background:var(--gold) !important; color:var(--obsidian) !important; padding:14px 44px !important; font-weight:600; border-bottom:none !important; letter-spacing:0.15em; }
}

/* =========================================
   MOBILE  max-width: 768px
========================================= */
@media (max-width:768px) {
  #cursor,#cursor-ring { display:none; }
  body { cursor:auto; }
  .hero-aurora { filter:blur(45px); opacity:0.4; }
  #neural-canvas { display:none !important; }
  #scroll-progress { height:3px; }

  /* NAV MOBILE */
  nav { padding:18px 24px; }
  .nav-cta-desktop { display:none; }
  .hamburger { display:flex; }
  .nav-links {
    position:fixed; top:0; left:0; right:0; bottom:0;
    background:rgba(8,11,15,0.97); backdrop-filter:blur(20px);
    flex-direction:column; align-items:center; justify-content:center;
    gap:0; z-index:550;
    transform:translateX(100%); transition:transform 0.4s cubic-bezier(0.77,0,0.18,1);
    padding:80px 40px 40px;
  }
  .nav-links.open { transform:translateX(0); }
  .nav-links li { width:100%; text-align:center; border-bottom:1px solid rgba(196,144,58,0.1); }
  .nav-links a { font-size:1.1rem; letter-spacing:0.14em; color:var(--white); display:block; padding:18px 0; }
  .nav-mobile-cta { display:block !important; margin-top:28px; border-bottom:none !important; }
  .nav-mobile-cta a { display:inline-block; background:var(--gold) !important; color:var(--obsidian) !important; padding:14px 44px !important; font-weight:600; border-bottom:none !important; letter-spacing:0.15em; }

  /* HERO */
  .hero-content { padding:0 24px; }
  .hero-tag { font-size:0.75rem; letter-spacing:0.15em; }
  .hero-title { font-size:clamp(2.3rem,11vw,3.4rem); }
  .hero-sub { font-size:1rem; margin-bottom:36px; }
  .hero-actions { flex-direction:column; gap:12px; width:100%; padding:0 16px; }
  .btn-primary,.btn-secondary { width:100%; text-align:center; padding:16px 20px; font-size:0.85rem; }

  /* TICKER */
  .ticker-item { font-size:0.78rem; padding:0 20px; }

  /* STATEMENT */
  .statement { padding:72px 24px; gap:48px; }
  .statement-right { height:auto; position:relative; }
  .stats-grid { position:relative; grid-template-columns:1fr 1fr; gap:10px; height:auto; }
  .stat-card { padding:24px 18px; }
  .stat-bg-num { font-size:4rem; }
  .stat-value { font-size:2.2rem; }
  .stat-label { font-size:0.78rem; }
  .stat-source { font-size:0.6rem; }

  /* SECTIONS */
  .section-label { font-size:0.72rem; letter-spacing:0.18em; }
  .section-title { font-size:clamp(1.9rem,8vw,2.6rem); }
  .section-body { font-size:1rem; }

  /* SERVICES */
  .services { padding:72px 24px; }
  .services-grid { grid-template-columns:1fr; }
  .service-card { padding:32px 24px; }
  .service-icon { width:40px; height:40px; }
  .service-name { font-size:1.3rem; }
  .service-desc { font-size:0.9rem; }

  /* PHOTO DIVIDER */
  .photo-divider { height:360px; }
  .photo-divider-text { padding:0 24px; }
  .photo-divider-text blockquote { font-size:clamp(1.35rem,5.5vw,2rem); }
  .quote-mark { font-size:4.5rem; }
  .quote-attr { font-size:0.65rem; letter-spacing:0.1em; }

  /* STATS STRIP */
  .stats-strip { padding:60px 24px; }
  .stats-strip-grid { grid-template-columns:1fr; }
  .strip-stat { padding:36px 24px; text-align:left; border-bottom:1px solid rgba(196,144,58,0.08); border-right:none; }
  .strip-val { font-size:3rem; }
  .strip-label { font-size:0.95rem; }
  .strip-sub { font-size:0.83rem; }

  /* PROCESS */
  .process { padding:72px 24px; }
  .process-steps { grid-template-columns:1fr; }
  .process-step { padding:32px 0; text-align:left; display:flex; gap:24px; align-items:flex-start; border-bottom:1px solid rgba(196,144,58,0.08); }
  .step-num { width:56px; height:56px; font-size:1.4rem; flex-shrink:0; margin:0; }
  .step-title { font-size:1.2rem; }
  .step-desc { font-size:0.9rem; }

  /* RESULTS */
  .results { padding:72px 24px; }
  .results-grid { grid-template-columns:1fr 1fr; }
  .result-item { padding:40px 20px; }
  .result-num { font-size:clamp(2.8rem,10vw,4rem); }
  .result-label { font-size:0.88rem; }

  /* TERMINAL */
  .terminal-section { padding:72px 24px; gap:44px; }
  .terminal-body { font-size:0.74rem; padding:18px; min-height:auto; }
  .terminal-title { display:none; }

  /* CALENDAR */
  .calendar-section { padding:72px 24px; }
  .calendar-inner { gap:44px; }
  .cal-header { padding:20px 20px; }
  .cal-month { font-size:1.2rem; }
  .cal-body { padding:16px 20px 20px; }
  .cal-wd { font-size:0.62rem; padding:6px 0; }
  .cal-day { font-size:0.8rem; }
  .cal-time-header { padding:14px 20px 8px; font-size:0.68rem; }
  .cal-times { padding:0 20px 20px; gap:7px; }
  .cal-time { font-size:0.78rem; padding:8px 12px; }
  .cal-confirm { padding:14px 20px 20px; }
  .cal-confirm-text { font-size:0.88rem; }
  .cal-success { padding:28px 20px; }

  /* CTA */
  .cta-section { padding:90px 24px; }
  .cta-title { font-size:clamp(2rem,9vw,3.2rem); }
  .cta-sub { font-size:1rem; }
  .cta-section .btn-primary { font-size:0.85rem; padding:16px 32px; }

  /* FOOTER */
  footer { padding:56px 24px 28px; }
  .footer-grid { grid-template-columns:1fr; gap:36px; }
  .footer-bottom { flex-direction:column; gap:10px; text-align:center; }
}

/* =========================================
   SMALL MOBILE  max-width: 480px
========================================= */
@media (max-width:480px) {
  .hero-title { font-size:clamp(2rem,12vw,2.8rem); }
  .stats-grid { grid-template-columns:1fr; }
  .stat-card { padding:24px 20px; }
  .photo-divider { height:300px; }
  .photo-divider-text blockquote { font-size:clamp(1.1rem,6.5vw,1.7rem); }
  .results-grid { grid-template-columns:1fr; }
  .result-item { padding:36px 20px; }
  .process-step { gap:18px; }
  .step-num { width:48px; height:48px; font-size:1.2rem; }
}

/* =========================================
   CINEMATIC PHOTO ENHANCEMENTS
========================================= */

/* Scroll-driven parallax + Ken Burns on full-bleed photos.
   JS sets --pscale and --py; we keep transforms GPU-only. */
.photo-divider-img, .process-bg, .cta-bg {
  will-change:transform; transform-origin:center;
  transform:scale(var(--pscale,1.08)) translate3d(0,var(--py,0px),0);
  transition:filter 1.1s cubic-bezier(0.22,1,0.36,1);
}
/* Cinematic reveal — photo settles from a darker, tighter frame */
.photo-divider, .process, .cta-section { overflow:hidden; }
.photo-divider-img { filter:brightness(0.10) saturate(0.5); }
.photo-divider.in-view .photo-divider-img { filter:brightness(0.30) saturate(0.7); }
.cta-bg { filter:brightness(0.06) saturate(0.4); }
.cta-section.in-view .cta-bg { filter:brightness(0.22) saturate(0.65); }


/* =========================================
   SUB-PAGE COMPONENTS
========================================= */
.page-head { position:relative; padding:190px 60px 90px; background:var(--obsidian); overflow:hidden; }
.page-head::before { content:""; position:absolute; top:-260px; left:-180px; width:760px; height:760px;
  background:radial-gradient(circle,rgba(196,144,58,0.10) 0%,transparent 68%); pointer-events:none; }
.page-head::after { content:""; position:absolute; bottom:-300px; right:-200px; width:700px; height:700px;
  background:radial-gradient(circle,rgba(111,207,142,0.06) 0%,transparent 68%); pointer-events:none; }
.page-head-inner { position:relative; z-index:2; max-width:900px; margin:0 auto; text-align:center; }
.crumbs { font-family:"Cutive Mono",monospace; font-size:0.72rem; letter-spacing:0.16em; text-transform:uppercase;
  color:var(--stone2); margin-bottom:30px; }
.crumbs a { color:var(--text2); text-decoration:none; transition:color .3s; }
.crumbs a:hover { color:var(--gold2); }
.crumbs span { color:var(--stone2); }
.page-title { font-family:"Cormorant Garamond",serif; font-size:clamp(2.6rem,5.6vw,4.6rem); font-weight:300;
  color:var(--white); line-height:1.12; margin:0 0 28px; }
.page-title em { font-style:italic; color:var(--gold2); }
.page-lede { font-family:"Jost",sans-serif; font-size:clamp(1.02rem,1.7vw,1.24rem); font-weight:300;
  color:#C8C4BE; line-height:1.78; max-width:720px; margin:0 auto; }
.page-actions { display:flex; gap:18px; justify-content:center; flex-wrap:wrap; margin-top:46px; }

.page-sec { padding:100px 60px; background:var(--obsidian); }
.page-sec.alt { background:var(--slate); }
.page-sec-inner { max-width:960px; margin:0 auto; }
.page-sec .section-title { margin-bottom:44px; }
.page-sec .section-body { max-width:760px; }

/* numbered steps */
.step-rows { display:flex; flex-direction:column; gap:2px; background:rgba(196,144,58,0.10); }
.step-row { display:flex; gap:28px; align-items:flex-start; background:var(--obsidian); padding:34px 34px; transition:background .35s; }
.page-sec.alt .step-row { background:var(--slate); }
.step-row:hover { background:var(--slate2); }
.step-n { font-family:"Cutive Mono",monospace; font-size:0.86rem; color:var(--gold); letter-spacing:0.12em;
  padding-top:7px; flex-shrink:0; }
.step-row h3 { font-family:"Cormorant Garamond",serif; font-size:1.5rem; font-weight:600; color:var(--white); margin-bottom:10px; }
.step-row p { font-family:"Jost",sans-serif; font-size:0.98rem; font-weight:300; color:#B0ABA5; line-height:1.78; }

/* mini cards */
.mini-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(250px,1fr)); gap:2px; background:rgba(196,144,58,0.10); }
.mini-card { background:var(--obsidian); padding:38px 32px; transition:background .35s; }
.page-sec.alt .mini-card { background:var(--slate); }
.mini-card:hover { background:var(--slate2); }
.mini-card h3 { font-family:"Cormorant Garamond",serif; font-size:1.42rem; font-weight:600; color:var(--white); margin-bottom:14px; }
.mini-card p { font-family:"Jost",sans-serif; font-size:0.95rem; font-weight:300; color:#B0ABA5; line-height:1.78; }
.mini-card a { color:var(--green-bright); text-decoration:none; }
.mini-card a:hover { color:var(--gold2); }

/* FAQ */
.faq-list { display:flex; flex-direction:column; gap:2px; background:rgba(196,144,58,0.10); }
.faq-item { background:var(--obsidian); }
.faq-item summary { cursor:pointer; list-style:none; padding:30px 34px; font-family:"Cormorant Garamond",serif;
  font-size:1.34rem; font-weight:600; color:var(--white); display:flex; justify-content:space-between;
  align-items:center; gap:20px; transition:background .3s,color .3s; }
.faq-item summary::-webkit-details-marker { display:none; }
.faq-item summary::after { content:"+"; font-family:"Jost",sans-serif; font-weight:300; font-size:1.7rem;
  color:var(--gold); flex-shrink:0; transition:transform .35s; line-height:1; }
.faq-item[open] summary::after { transform:rotate(45deg); }
.faq-item summary:hover { background:var(--slate); color:var(--gold2); }
.faq-a { padding:0 34px 30px; }
.faq-a p { font-family:"Jost",sans-serif; font-size:1rem; font-weight:300; color:#C0BBB5; line-height:1.85; max-width:760px; }

/* page CTA */
.page-cta { padding:120px 60px; background:var(--slate2); text-align:center; position:relative; overflow:hidden; }
.page-cta::before { content:""; position:absolute; top:-240px; left:50%; margin-left:-380px; width:760px; height:760px;
  background:radial-gradient(circle,rgba(196,144,58,0.10) 0%,transparent 68%); pointer-events:none; }
.page-cta-inner { position:relative; z-index:2; max-width:760px; margin:0 auto; }
.page-cta .section-title { margin-bottom:22px; }

@media (max-width:1024px) {
  .page-head { padding:160px 32px 76px; }
  .page-sec, .page-cta { padding:80px 32px; }
}
@media (max-width:768px) {
  .page-head { padding:140px 24px 64px; }
  .page-sec, .page-cta { padding:66px 24px; }
  .page-actions { flex-direction:column; padding:0 8px; }
  .page-actions .btn-primary, .page-actions .btn-secondary { width:100%; text-align:center; }
  .step-row { flex-direction:column; gap:12px; padding:28px 24px; }
  .step-n { padding-top:0; }
  .mini-card { padding:30px 24px; }
  .faq-item summary { padding:24px; font-size:1.16rem; }
  .faq-a { padding:0 24px 24px; }
}
.hero-kicker { font-family:"Jost",sans-serif; font-size:clamp(0.95rem,1.6vw,1.1rem); font-weight:300;
  letter-spacing:0.06em; color:var(--gold2); margin:-14px 0 26px; opacity:0; animation:fadeUp .8s .6s forwards; }
