/* ============================================================
   CAPSTONE BUSINESS PERFORMANCE ADVISORS
   styles.css — All site styles
   ============================================================ */

/* RESET & ROOT VARIABLES */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{
  --navy:#1B2E52;--navy-dark:#111E36;--navy-light:#8A9BBF;
  --cream:#F7F5F0;--border:rgba(27,46,82,0.12);--text:#1a1a1a;--muted:#6B7280;
  --green:#2E6B5A;--slate:#4A6FA5;--purple:#7A5C9E;
  --green-bg:#EAF3EF;--amber-bg:#FDF3E3;--red-bg:#F9ECEC;--amber:#B86B00;--red:#8B2020;
}
html{scroll-behavior:smooth}
body{font-family:'DM Sans',sans-serif;color:var(--text);background:#fff;-webkit-font-smoothing:antialiased;overflow-x:hidden}
.serif{font-family:'Playfair Display',serif}
#homePage{display:block}
#assessPage{display:none}

/* ── NAV ── */
.site-nav{position:fixed;top:0;left:0;right:0;z-index:100;display:flex;align-items:center;justify-content:space-between;padding:18px 48px;background:rgba(0,0,0,0.35);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-bottom:0.5px solid rgba(255,255,255,0.1);transition:background 0.3s}
.site-nav.scrolled{background:rgba(17,30,54,0.97)}
.site-nav.light-nav{background:#fff!important;border-bottom:0.5px solid var(--border)}
.site-nav.light-nav .nav-logo-name{color:var(--navy)}
.site-nav.light-nav .nav-logo-sub{color:var(--muted)}
.site-nav.light-nav .nav-assess{color:var(--navy);border-color:rgba(27,46,82,0.3)}
.site-nav.light-nav .nav-cta{background:var(--navy);color:#fff}
.site-nav.light-nav .hamburger span{background:var(--navy)}
.nav-logo{display:flex;align-items:center;gap:12px;text-decoration:none;cursor:pointer}
.nav-logo-name{font-size:18px;font-weight:500;color:#fff;letter-spacing:0.1em;text-transform:uppercase;line-height:1.1}
.nav-logo-sub{font-size:10px;letter-spacing:0.12em;text-transform:uppercase;color:var(--navy-light);margin-top:2px}
.nav-right{display:flex;align-items:center;gap:24px}
.nav-assess{font-size:12px;letter-spacing:0.08em;text-transform:uppercase;color:rgba(255,255,255,0.8);text-decoration:none;border:0.5px solid rgba(255,255,255,0.3);padding:8px 18px;border-radius:2px;transition:all 0.2s;cursor:pointer;background:none;font-family:'DM Sans',sans-serif}
.nav-assess:hover{background:rgba(255,255,255,0.1);color:#fff}
.nav-cta{font-size:12px;letter-spacing:0.08em;text-transform:uppercase;color:var(--navy);background:#fff;padding:9px 22px;border-radius:2px;text-decoration:none;font-weight:500;transition:opacity 0.2s}
.nav-cta:hover{opacity:0.9}
.hamburger{display:flex;flex-direction:column;gap:5px;cursor:pointer;padding:4px;background:none;border:none}
.hamburger span{display:block;width:24px;height:1.5px;background:#fff;border-radius:1px;transition:all 0.3s}
.hamburger.open span:nth-child(1){transform:translateY(6.5px) rotate(45deg)}
.hamburger.open span:nth-child(2){opacity:0}
.hamburger.open span:nth-child(3){transform:translateY(-6.5px) rotate(-45deg)}

/* ── DRAWER ── */
.nav-drawer{position:fixed;top:0;right:-340px;bottom:0;width:320px;background:var(--navy-dark);z-index:200;transition:right 0.35s cubic-bezier(0.4,0,0.2,1);display:flex;flex-direction:column;border-left:0.5px solid rgba(255,255,255,0.08)}
.nav-drawer.open{right:0}
.nav-overlay{position:fixed;inset:0;background:rgba(0,0,0,0.5);z-index:150;opacity:0;pointer-events:none;transition:opacity 0.3s}
.nav-overlay.visible{opacity:1;pointer-events:all}
.drawer-header{padding:20px 28px;border-bottom:0.5px solid rgba(255,255,255,0.08);display:flex;justify-content:space-between;align-items:center}
.drawer-close{background:none;border:none;color:rgba(255,255,255,0.5);font-size:22px;cursor:pointer;line-height:1;padding:4px}
.drawer-close:hover{color:#fff}
.drawer-links{flex:1;padding:32px 28px;display:flex;flex-direction:column;gap:4px}
.drawer-link{font-size:15px;color:rgba(255,255,255,0.75);text-decoration:none;padding:12px 0;border-bottom:0.5px solid rgba(255,255,255,0.06);letter-spacing:0.02em;transition:color 0.2s;display:flex;justify-content:space-between;align-items:center;cursor:pointer;background:none;border-left:none;border-right:none;border-top:none;font-family:'DM Sans',sans-serif;text-align:left}
.drawer-link:hover{color:#fff}
.drawer-link::after{content:'→';opacity:0.3;font-size:14px}
.drawer-bottom{padding:28px;border-top:0.5px solid rgba(255,255,255,0.08)}
.drawer-cta{display:block;width:100%;padding:14px;background:#fff;color:var(--navy);text-align:center;text-decoration:none;font-size:13px;font-weight:500;letter-spacing:0.08em;text-transform:uppercase;border-radius:2px;margin-bottom:10px;transition:opacity 0.2s}
.drawer-cta:hover{opacity:0.9}
.drawer-assess{display:block;width:100%;padding:13px;background:transparent;color:rgba(255,255,255,0.7);text-align:center;text-decoration:none;font-size:12px;letter-spacing:0.08em;text-transform:uppercase;border:0.5px solid rgba(255,255,255,0.2);border-radius:2px;cursor:pointer;font-family:'DM Sans',sans-serif;transition:all 0.2s}
.drawer-assess:hover{border-color:rgba(255,255,255,0.4);color:#fff}

/* ── HERO ── */
.hero{position:relative;height:100vh;height:calc(var(--vh,1vh)*100);min-height:600px;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden}
.hero-video-wrap{position:absolute;inset:0;z-index:0}
.vimeo-slide{position:absolute;inset:0;width:100%;height:100%;opacity:0;transition:opacity 1.5s ease;pointer-events:none}
.vimeo-slide.active{opacity:1}
.vimeo-slide iframe{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:177.78vh;height:100vh;min-width:100%;min-height:56.25vw;border:none;pointer-events:none}
.hero-overlay{position:absolute;inset:0;background:linear-gradient(135deg,rgba(17,30,54,0.82) 0%,rgba(17,30,54,0.65) 50%,rgba(17,30,54,0.5) 100%);z-index:1}
.hero-geo-overlay{position:absolute;inset:0;z-index:2;pointer-events:none;height:0;overflow:visible}
.hero-content{position:relative;z-index:3;padding:80px 80px 16px;max-width:1200px;width:100%;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:start;flex:1;min-height:0}
.hero-eyebrow{display:flex;align-items:center;gap:10px;font-size:11px;font-weight:500;letter-spacing:0.16em;text-transform:uppercase;color:var(--navy-light);margin-bottom:10px}
.hero-eyebrow::before{content:'';display:block;width:28px;height:0.5px;background:var(--navy-light)}
.hero-h1{font-family:'Playfair Display',serif;font-size:46px;font-weight:400;line-height:1.1;color:#fff;margin-bottom:8px}
.hero-h1 em{font-style:italic;color:rgba(255,255,255,0.75)}
.hero-subhead{font-family:'Playfair Display',serif;font-size:18px;font-weight:400;font-style:italic;color:rgba(255,255,255,0.6);margin-bottom:10px;line-height:1.4}
.hero-body{font-size:14px;line-height:1.65;color:rgba(255,255,255,0.85);max-width:480px;margin-bottom:8px}
.hero-callout{border-left:2px solid rgba(255,255,255,0.7);padding:10px 14px;margin-bottom:14px;max-width:480px;background:rgba(255,255,255,0.15);font-size:13px;line-height:1.6;color:#fff;font-style:italic}
.hero-ctas{display:flex;gap:14px;align-items:center;flex-wrap:wrap}
.btn-primary{display:inline-block;padding:14px 32px;background:#fff;color:var(--navy);font-family:'DM Sans',sans-serif;font-size:12px;font-weight:500;letter-spacing:0.08em;text-transform:uppercase;border:none;border-radius:2px;cursor:pointer;text-decoration:none;transition:opacity 0.2s}
.btn-primary:hover{opacity:0.92}
.btn-ghost-hero{display:inline-block;padding:13px 32px;background:transparent;color:rgba(255,255,255,0.8);font-family:'DM Sans',sans-serif;font-size:12px;font-weight:400;letter-spacing:0.08em;text-transform:uppercase;border:0.5px solid rgba(255,255,255,0.35);border-radius:2px;cursor:pointer;text-decoration:none;transition:all 0.2s}
.btn-ghost-hero:hover{border-color:rgba(255,255,255,0.65);color:#fff}
.hero-diff-label{font-size:11px;letter-spacing:0.16em;text-transform:uppercase;color:rgba(255,255,255,0.9);margin-bottom:20px;font-weight:500}
.hero-pillars{display:flex;flex-direction:column;gap:0}
.hero-pillar{display:flex;gap:12px;align-items:flex-start;padding:8px 0;border-bottom:0.5px solid rgba(255,255,255,0.12)}
.hero-pillar:last-child{border-bottom:none}
.pillar-num{font-family:'Playfair Display',serif;font-size:28px;color:#fff;opacity:0.4;line-height:1;flex-shrink:0;width:32px}
.pillar-title{font-size:16px;font-weight:500;color:#fff;margin-bottom:4px}
.pillar-body{font-size:13px;line-height:1.6;color:rgba(255,255,255,0.75)}
.hero-stats{position:relative;z-index:3;border-top:0.5px solid rgba(255,255,255,0.1);display:flex;justify-content:center;gap:0;width:100%;flex-shrink:0}
.stat-item{padding:12px 28px;text-align:center;border-right:0.5px solid rgba(255,255,255,0.1)}
.stat-item:last-child{border-right:none}
.stat-num{font-family:'Playfair Display',serif;font-size:20px;font-weight:400;color:#fff;line-height:1}
.stat-label{font-size:11px;color:rgba(255,255,255,0.7);margin-top:3px;line-height:1.3;word-wrap:break-word;hyphens:auto}
.video-indicators{position:absolute;bottom:52px;left:50%;transform:translateX(-50%);z-index:4;display:flex;gap:8px}
.vid-dot{width:28px;height:2px;background:rgba(255,255,255,0.25);border-radius:1px;cursor:pointer;transition:all 0.3s;border:none}
.vid-dot.active{background:#fff;width:40px}

/* ── HOME SECTIONS ── */
.voice-section{background:var(--cream);display:grid;grid-template-columns:1fr 1fr}
.voice-left{padding:72px 64px 72px 80px;border-right:0.5px solid var(--border)}
.voice-tag{font-size:10px;letter-spacing:0.14em;text-transform:uppercase;color:var(--muted);margin-bottom:20px}
.voice-quote{font-family:'Playfair Display',serif;font-size:26px;font-weight:400;line-height:1.45;color:var(--navy);font-style:italic;margin-bottom:28px}
.voice-attr{font-size:12px;color:var(--muted);display:flex;align-items:center;gap:10px}
.voice-attr::before{content:'—';color:var(--navy);opacity:0.3}
.voice-right{padding:72px 80px 72px 64px;display:flex;flex-direction:column;justify-content:center}
.voice-body{font-size:15px;line-height:1.85;color:var(--muted);margin-bottom:20px}
.voice-engagement{background:var(--navy);color:#fff;border-radius:8px;padding:24px 28px}
.voice-engagement p{font-size:13px;line-height:1.7;color:rgba(255,255,255,0.7)}
.voice-engagement strong{color:#fff;font-weight:500}
.quote-band{padding:36px 80px;display:flex;align-items:center;justify-content:center;gap:40px;background:var(--navy);overflow:hidden;position:relative}
.quote-band-label{font-size:10px;letter-spacing:0.14em;text-transform:uppercase;color:var(--navy-light);flex-shrink:0}
.quote-band-rule{width:0.5px;height:28px;background:rgba(255,255,255,0.15);flex-shrink:0}
.quote-band-text{font-family:'Playfair Display',serif;font-size:19px;font-style:italic;color:#fff;text-align:center;line-height:1.4}
.proof-section{padding:72px 80px;border-bottom:0.5px solid var(--border)}
.section-header{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:40px}
.section-tag{font-size:10px;letter-spacing:0.14em;text-transform:uppercase;color:var(--muted);margin-bottom:10px}
.section-h2{font-family:'Playfair Display',serif;font-size:28px;font-weight:400;color:var(--navy);margin:0}
.section-note{font-size:11px;color:var(--muted);font-style:italic;text-align:right;line-height:1.6}
.results-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.result-card{background:#fff;border:0.5px solid var(--border);border-radius:12px;padding:28px;border-left:3px solid var(--navy)}
.result-industry{font-size:10px;letter-spacing:0.12em;text-transform:uppercase;color:var(--muted);margin-bottom:14px}
.result-num{font-family:'Playfair Display',serif;font-size:40px;font-weight:400;color:var(--navy);line-height:1}
.result-label{font-size:13px;font-weight:500;color:var(--navy);margin:4px 0 12px}
.result-body{font-size:12px;line-height:1.65;color:var(--muted)}
.serve-section{background:var(--cream);padding:72px 80px;position:relative;overflow:hidden}
.serve-grid{display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:start}
.serve-body{font-size:14px;line-height:1.85;color:var(--muted);margin-bottom:16px}
.serve-body strong{color:var(--navy);font-weight:500}
.check-list{display:flex;flex-direction:column;gap:10px}
.check-row{display:flex;align-items:flex-start;gap:14px;background:#fff;border:0.5px solid var(--border);border-radius:8px;padding:14px 18px}
.check-row span{font-size:13px;line-height:1.5}
.advisors-section{padding:72px 80px;border-bottom:0.5px solid var(--border)}
.advisors-header{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:44px}
.advisors-note{font-size:12px;color:var(--muted);max-width:280px;text-align:right;line-height:1.65}
.advisors-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.advisor-card{background:#fff;border:0.5px solid var(--border);border-radius:12px;padding:24px;position:relative;overflow:hidden;transition:transform 0.2s}
.advisor-card:hover{transform:translateY(-2px)}
.advisor-geo{position:absolute;bottom:-12px;right:-12px;opacity:0.04;pointer-events:none}
.advisor-title{font-size:10px;letter-spacing:0.12em;text-transform:uppercase;font-weight:500;margin:14px 0 6px}
.advisor-body{font-size:12px;line-height:1.65;color:var(--muted);margin-bottom:14px}
.tag-row{display:flex;flex-wrap:wrap;gap:5px}
.tag-pill{font-size:11px;padding:3px 9px;border-radius:2px}
.assess-cta-section{background:var(--cream);padding:72px 80px}
.assess-cta-inner{display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:center}
.assess-right{background:var(--navy);border-radius:12px;padding:40px;position:relative;overflow:hidden}
.assess-tag{font-size:10px;letter-spacing:0.14em;text-transform:uppercase;color:var(--navy-light);margin-bottom:16px}
.assess-h2{font-family:'Playfair Display',serif;font-size:26px;font-weight:400;color:#fff;line-height:1.3;margin-bottom:12px}
.assess-body{font-size:13px;line-height:1.7;color:rgba(255,255,255,0.6);margin-bottom:24px}
.assess-scores{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:24px}
.assess-score-card{border:0.5px solid rgba(255,255,255,0.1);border-radius:6px;padding:12px;text-align:center}
.assess-score-medal{font-size:18px;margin-bottom:4px}
.assess-score-range{font-family:'Playfair Display',serif;font-size:15px;color:#fff;line-height:1;margin-bottom:3px}
.assess-score-label{font-size:10px;letter-spacing:0.08em;text-transform:uppercase;color:rgba(255,255,255,0.45)}
.btn-assess-launch{display:block;width:100%;padding:14px;background:#fff;color:var(--navy);text-align:center;font-family:'DM Sans',sans-serif;font-size:12px;font-weight:500;letter-spacing:0.08em;text-transform:uppercase;border-radius:2px;text-decoration:none;cursor:pointer;border:none;transition:opacity 0.2s}
.btn-assess-launch:hover{opacity:0.92}
.assess-cta-tag{font-size:10px;letter-spacing:0.14em;text-transform:uppercase;color:var(--muted);margin-bottom:16px}
.assess-cta-h2{font-family:'Playfair Display',serif;font-size:32px;font-weight:400;color:var(--navy);line-height:1.2;margin-bottom:16px}
.assess-cta-body{font-size:14px;line-height:1.8;color:var(--muted);margin-bottom:20px}
.assess-features{display:flex;flex-direction:column;gap:10px}
.assess-feature{display:flex;gap:12px;align-items:flex-start;font-size:13px;color:var(--muted);line-height:1.5}
.how-section{padding:72px 80px;background:#fff}
.steps-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:40px}
.step-card{border:0.5px solid var(--border);border-radius:12px;padding:32px;position:relative;overflow:hidden;transition:border-color 0.2s}
.step-card:hover{border-color:rgba(27,46,82,0.3)}
.step-num{font-size:10px;letter-spacing:0.14em;text-transform:uppercase;color:var(--muted);margin-bottom:14px}
.step-title{font-size:16px;font-weight:500;color:var(--navy);margin-bottom:12px}
.step-body{font-size:13px;line-height:1.7;color:var(--muted)}
.step-geo{position:absolute;bottom:-14px;right:-14px;opacity:0.04;pointer-events:none}
.testimonial-section{background:var(--navy);padding:72px 80px;position:relative;overflow:hidden}
.testimonial-geo{position:absolute;inset:0;pointer-events:none}
.testimonial-inner{position:relative;z-index:2;display:grid;grid-template-columns:1fr auto;gap:64px;align-items:center}
.testimonial-quote{font-family:'Playfair Display',serif;font-size:24px;font-weight:400;color:#fff;line-height:1.55;font-style:italic;margin-bottom:20px}
.testimonial-attr{font-size:13px;color:var(--navy-light);display:flex;align-items:center;gap:10px}
.testimonial-attr::before{content:'—'}
.testimonial-right{min-width:260px}
.testimonial-box{background:rgba(255,255,255,0.07);border:0.5px solid rgba(255,255,255,0.12);border-radius:12px;padding:32px;text-align:center}
.testimonial-tagline{font-family:'Playfair Display',serif;font-size:17px;color:#fff;font-style:italic;margin-bottom:12px;line-height:1.4}
.testimonial-sub{font-size:14px;color:rgba(255,255,255,0.75);margin-bottom:28px;line-height:1.7}
.btn-calendly{display:block;width:100%;padding:14px;background:#fff;color:var(--navy);text-align:center;font-family:'DM Sans',sans-serif;font-size:12px;font-weight:500;letter-spacing:0.08em;text-transform:uppercase;border-radius:2px;text-decoration:none;margin-bottom:10px}
.site-footer{padding:28px 80px;display:flex;justify-content:space-between;align-items:center;border-top:0.5px solid var(--border)}
.footer-copy{display:flex;align-items:center;gap:10px;font-size:11px;color:var(--muted)}
.footer-links{display:flex;gap:28px}
.footer-links a,.footer-links button{font-size:12px;color:var(--muted);text-decoration:none;cursor:pointer;background:none;border:none;font-family:'DM Sans',sans-serif;padding:0}
.footer-links a:hover,.footer-links button:hover{color:var(--navy)}
.btn-navy{display:inline-block;padding:13px 32px;background:var(--navy);color:#fff;font-family:'DM Sans',sans-serif;font-size:12px;font-weight:500;letter-spacing:0.08em;text-transform:uppercase;border:none;border-radius:2px;cursor:pointer;text-decoration:none}

/* ── ANIMATIONS ── */
@keyframes fadeUp{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
.hero-left>*{animation:fadeUp 0.8s ease forwards;opacity:0}
.hero-eyebrow{animation-delay:0.2s}.hero-h1{animation-delay:0.35s}.hero-subhead{animation-delay:0.45s}
.hero-body{animation-delay:0.55s}.hero-callout{animation-delay:0.65s}.hero-ctas{animation-delay:0.75s}

/* ── ASSESSMENT PAGE ── */
.assess-page-wrap{padding-top:70px}
.a-hero{background:var(--navy);padding:40px 48px 32px;position:relative;overflow:hidden}
.a-hero-geo{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none}
.a-hero-inner{position:relative;z-index:2;max-width:760px}
.a-hero-tag{font-size:11px;letter-spacing:0.14em;text-transform:uppercase;color:var(--navy-light);display:flex;align-items:center;gap:10px;margin-bottom:12px}
.a-hero-tag::before{content:'';display:block;width:28px;height:0.5px;background:var(--navy-light)}
.a-hero-h1{font-family:'Playfair Display',serif;font-size:34px;font-weight:400;color:#fff;line-height:1.15;margin-bottom:12px}
.a-hero-h1 em{font-style:italic;color:var(--navy-light)}
.a-hero-body{font-size:14px;line-height:1.7;color:rgba(255,255,255,0.7);max-width:580px;margin-bottom:18px}
.a-hero-meta{display:flex;gap:32px}
.a-hero-meta .num{font-family:'Playfair Display',serif;font-size:22px;color:#fff}
.a-hero-meta .label{font-size:11px;color:var(--navy-light);margin-top:2px}
.progress-wrap{background:var(--cream);border-bottom:0.5px solid var(--border);padding:16px 48px;display:flex;align-items:center;gap:20px;position:sticky;top:70px;z-index:50}
.progress-label{font-size:12px;color:var(--muted);white-space:nowrap}
.progress-track{flex:1;height:3px;background:var(--border);border-radius:2px;overflow:hidden}
.progress-fill{height:100%;background:var(--navy);border-radius:2px;transition:width 0.4s ease;width:100%}
.progress-score{font-size:13px;font-weight:500;color:var(--navy);white-space:nowrap;min-width:80px;text-align:right}
.assessment-wrap{max-width:860px;margin:0 auto;padding:56px 48px 80px}
.section-intro{margin-bottom:40px}
.section-intro p{font-size:14px;line-height:1.8;color:var(--muted)}
.question-card{background:#fff;border:0.5px solid var(--border);border-radius:12px;padding:28px 32px;margin-bottom:16px;transition:border-color 0.2s}
.question-card:hover{border-color:rgba(27,46,82,0.25)}
.question-card.answered{border-left:3px solid var(--navy)}
.question-header{display:flex;align-items:flex-start;gap:20px;margin-bottom:20px}
.question-area{min-width:140px}
.question-area-label{font-size:10px;letter-spacing:0.12em;text-transform:uppercase;color:var(--muted);margin-bottom:4px}
.question-area-name{font-size:14px;font-weight:500;color:var(--navy)}
.question-text{font-size:14px;line-height:1.7;color:var(--text);flex:1;padding-top:18px}
.slider-wrap{display:flex;align-items:center;gap:16px}
.slider-labels{display:flex;justify-content:space-between;font-size:10px;color:var(--muted);letter-spacing:0.06em;margin-bottom:8px}
input[type=range]{-webkit-appearance:none;appearance:none;width:100%;height:4px;background:var(--border);border-radius:2px;outline:none;cursor:pointer}
input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:22px;height:22px;border-radius:50%;background:var(--navy);cursor:pointer;border:3px solid #fff;box-shadow:0 0 0 1px var(--navy);transition:transform 0.15s}
input[type=range]::-webkit-slider-thumb:hover{transform:scale(1.15)}
.score-display{font-family:'Playfair Display',serif;font-size:28px;font-weight:400;color:var(--navy);min-width:36px;text-align:center}
.score-display.low{color:var(--red)}.score-display.mid{color:var(--amber)}.score-display.high{color:var(--green)}
.submit-wrap{margin-top:40px;padding-top:40px;border-top:0.5px solid var(--border);text-align:center}
.submit-wrap p{font-size:13px;color:var(--muted);margin-bottom:20px;line-height:1.7}
.btn-submit{padding:16px 48px;background:var(--navy);color:#fff;font-family:'DM Sans',sans-serif;font-size:13px;font-weight:500;letter-spacing:0.08em;text-transform:uppercase;border:none;border-radius:2px;cursor:pointer}
.btn-submit:hover{opacity:0.88}
.results-panel{display:none}
.results-panel.visible{display:block}
.results-hero{padding:20px 40px}
.results-hero.winning{background:var(--green-bg);border-left:4px solid var(--green)}
.results-hero.in-the-game{background:var(--amber-bg);border-left:4px solid var(--amber)}
.results-hero.losing{background:var(--red-bg);border-left:4px solid var(--red)}
.results-badge{display:inline-flex;align-items:center;gap:8px;padding:4px 12px;border-radius:2px;font-size:11px;font-weight:500;letter-spacing:0.1em;text-transform:uppercase;margin-bottom:8px}
.results-badge.winning{background:var(--green);color:#fff}
.results-badge.in-the-game{background:var(--amber);color:#fff}
.results-badge.losing{background:var(--red);color:#fff}
.results-score-line{display:flex;align-items:baseline;gap:12px;margin-bottom:8px}
.results-score-big{font-family:'Playfair Display',serif;font-size:52px;font-weight:400;line-height:1}
.results-score-big.winning{color:var(--green)}.results-score-big.in-the-game{color:var(--amber)}.results-score-big.losing{color:var(--red)}
.results-score-denom{font-size:18px;color:var(--muted)}
.results-headline{font-family:'Playfair Display',serif;font-size:22px;font-weight:400;color:var(--navy);line-height:1.25;margin-bottom:8px}
.results-body{font-size:13px;line-height:1.65;color:var(--muted);max-width:560px}
.breakdown-section{padding:48px}
.breakdown-h2{font-family:'Playfair Display',serif;font-size:22px;font-weight:400;color:var(--navy);margin-bottom:28px}
.breakdown-grid{display:flex;flex-direction:column;gap:12px}
.breakdown-row{display:flex;align-items:center;gap:16px;padding:14px 18px;background:var(--cream);border-radius:8px}
.breakdown-area{font-size:13px;font-weight:500;color:var(--navy);min-width:180px}
.breakdown-bar-wrap{flex:1;height:6px;background:rgba(27,46,82,0.1);border-radius:3px;overflow:hidden}
.breakdown-bar{height:100%;border-radius:3px;transition:width 1s ease}
.breakdown-bar.low{background:var(--red)}.breakdown-bar.mid{background:var(--amber)}.breakdown-bar.high{background:var(--green)}
.breakdown-score{font-family:'Playfair Display',serif;font-size:18px;font-weight:400;min-width:28px;text-align:right}
.breakdown-score.low{color:var(--red)}.breakdown-score.mid{color:var(--amber)}.breakdown-score.high{color:var(--green)}
.constraints-section{padding:0 48px 48px}
.constraints-h2{font-family:'Playfair Display',serif;font-size:22px;font-weight:400;color:var(--navy);margin-bottom:8px}
.constraints-sub{font-size:13px;color:var(--muted);margin-bottom:24px;line-height:1.6}
.constraints-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.constraint-card{border:0.5px solid var(--border);border-radius:12px;padding:22px;border-top:3px solid var(--red)}
.constraint-num{font-family:'Playfair Display',serif;font-size:32px;color:var(--red);opacity:0.2;line-height:1;margin-bottom:8px}
.constraint-area{font-size:13px;font-weight:500;color:var(--navy);margin-bottom:6px}
.constraint-score{font-size:12px;color:var(--muted)}
.results-cta{background:var(--navy);padding:56px 48px;display:grid;grid-template-columns:1fr auto;gap:48px;align-items:center;position:relative;overflow:hidden}
.results-cta-left{position:relative;z-index:2}
.results-cta-tag{font-size:11px;letter-spacing:0.12em;text-transform:uppercase;color:var(--navy-light);margin-bottom:16px}
.results-cta-h2{font-family:'Playfair Display',serif;font-size:30px;font-weight:400;color:#fff;line-height:1.3;margin-bottom:12px}
.results-cta-body{font-size:14px;line-height:1.7;color:rgba(255,255,255,0.6);max-width:480px}
.results-cta-right{position:relative;z-index:2;min-width:240px}
.results-cta-box{background:rgba(255,255,255,0.07);border:0.5px solid rgba(255,255,255,0.15);border-radius:12px;padding:28px;text-align:center}
.results-cta-box p{font-size:12px;color:var(--navy-light);line-height:1.6;margin-bottom:20px}
.btn-cta{display:block;width:100%;padding:14px;background:#fff;color:var(--navy);font-family:'DM Sans',sans-serif;font-size:13px;font-weight:500;letter-spacing:0.08em;text-transform:uppercase;border:none;border-radius:2px;cursor:pointer;text-decoration:none;text-align:center}
.retake-wrap{padding:32px 48px;text-align:center;border-top:0.5px solid var(--border)}
.btn-retake{font-size:13px;color:var(--muted);background:none;border:none;cursor:pointer;text-decoration:underline;font-family:'DM Sans',sans-serif}
.a-footer{padding:24px 48px;display:flex;justify-content:space-between;align-items:center;border-top:0.5px solid var(--border)}
.a-footer p{font-size:11px;color:var(--muted)}

/* ── MOBILE RESPONSIVE (max 768px) ── */
@media(max-width:768px){
  .site-nav{padding:12px 20px}
  .nav-logo-name{font-size:15px}
  .nav-logo-sub{font-size:8px}
  #homeNav a[onclick]{display:none}
  #homeNav .nav-assess{display:none}
  #homeNav .nav-cta{font-size:11px;padding:8px 14px}
  #assessNav .nav-cta{font-size:11px;padding:8px 14px}
  .hero-content{grid-template-columns:1fr;gap:0;padding:78px 20px 16px}
  .hero-right{display:none}
  .hero-h1{font-size:28px;line-height:1.2;margin-bottom:10px}
  .hero-subhead{font-size:15px;margin-bottom:18px}
  .hero-body{font-size:14px;line-height:1.7;margin-bottom:14px;max-width:100%}
  .hero-callout{font-size:12px;line-height:1.65;margin-bottom:22px;max-width:100%;padding:10px 14px}
  .hero-ctas{flex-direction:column;gap:10px;align-items:stretch}
  .hero-ctas button,.hero-ctas a{max-width:100%!important;font-size:11px!important;padding:13px 16px!important;display:block!important;text-align:center!important}
  .hero-eyebrow{font-size:9px;margin-bottom:16px}
  .hero-stats{display:grid!important;grid-template-columns:1fr 1fr;justify-content:unset;gap:0;padding-left:0}
  .stat-item{padding:10px 8px!important;border-right:none!important;margin-right:0!important;border-bottom:0.5px solid rgba(255,255,255,0.1)}
  .stat-item:nth-child(odd){border-right:0.5px solid rgba(255,255,255,0.1)!important}
  .stat-item:nth-child(3),.stat-item:nth-child(4){border-bottom:none}
  .stat-num{font-size:17px}
  .stat-label{font-size:10px}
  .video-indicators{left:50%;transform:translateX(-50%);bottom:108px}
  .voice-section{grid-template-columns:1fr!important}
  .voice-left{padding:40px 20px 32px;border-right:none;border-bottom:0.5px solid var(--border)}
  .voice-quote{font-size:18px;line-height:1.4}
  .voice-right{padding:32px 20px 40px}
  .voice-body{font-size:13px}
  .voice-engagement p{font-size:12px}
  .quote-band{padding:24px 20px;flex-direction:column;gap:14px;text-align:center}
  .quote-band-rule{width:32px;height:0.5px;flex-shrink:0}
  .quote-band-text{font-size:15px}
  .quote-band-label{font-size:9px}
  .proof-section{padding:40px 20px}
  .section-header{flex-direction:column;gap:8px;align-items:flex-start}
  .section-note{text-align:left;font-size:10px}
  .results-grid{grid-template-columns:1fr}
  .result-num{font-size:32px}
  .serve-section{padding:40px 20px}
  .serve-grid{grid-template-columns:1fr!important;gap:28px}
  .serve-body{font-size:13px}
  .check-row span{font-size:12px}
  .btn-navy{width:100%;text-align:center;display:block}
  .advisors-section{padding:40px 20px}
  .advisors-header{flex-direction:column;gap:10px;align-items:flex-start}
  .advisors-note{text-align:left;max-width:100%;font-size:11px}
  .advisors-grid{grid-template-columns:1fr!important;gap:12px}
  .advisor-body{font-size:12px}
  .advisor-title{font-size:10px}
  .assess-cta-section{padding:40px 20px}
  .assess-cta-inner{grid-template-columns:1fr!important;gap:28px}
  .assess-cta-h2{font-size:22px}
  .assess-cta-body{font-size:13px}
  .assess-right{padding:28px 20px}
  .assess-scores{grid-template-columns:repeat(3,1fr);gap:6px}
  .assess-score-card{padding:8px 4px}
  .assess-score-medal{font-size:22px!important}
  .assess-score-range{font-size:13px!important}
  .assess-score-label{font-size:9px!important}
  .how-section{padding:40px 20px}
  .how-section .section-h2{font-size:22px!important}
  .steps-grid{grid-template-columns:1fr!important;gap:14px}
  .step-card{padding:22px 20px}
  .step-title{font-size:14px}
  .step-body{font-size:13px}
  .testimonial-section{padding:40px 20px}
  .testimonial-inner{grid-template-columns:1fr!important;gap:28px}
  .testimonial-quote{font-size:16px;line-height:1.5}
  .testimonial-right{min-width:unset}
  .testimonial-box{padding:24px 20px}
  .site-footer{padding:20px;flex-direction:column;gap:14px;align-items:flex-start}
  .footer-links{flex-wrap:wrap;gap:10px 16px}
  .footer-copy{font-size:10px}
  .section-h2{font-size:20px}
  .section-tag{font-size:9px}
  .pillar-title{font-size:14px}
  .pillar-body{font-size:13px}
  .assess-page-wrap{padding-top:60px}
  .a-hero{padding:24px 20px 20px}
  .a-hero-h1{font-size:26px;line-height:1.2}
  .a-hero-body{font-size:13px;margin-bottom:20px}
  .a-hero-meta{gap:16px;flex-wrap:wrap}
  .a-hero-meta .num{font-size:18px}
  .a-hero-meta .label{font-size:10px}
  .progress-wrap{padding:12px 20px;top:58px;gap:12px}
  .progress-label{font-size:11px}
  .assessment-wrap{padding:28px 20px 60px}
  .question-card{padding:20px}
  .question-header{flex-direction:column;gap:8px}
  .question-area{min-width:unset}
  .question-area-name{font-size:13px}
  .question-text{padding-top:0;font-size:13px;line-height:1.6}
  .slider-labels{font-size:9px}
  .score-display{font-size:22px;min-width:28px}
  .submit-wrap{padding-top:24px;margin-top:24px}
  .btn-submit{padding:14px 24px;width:100%;font-size:12px}
  .results-hero{padding:24px 20px}
  .results-hero>div{grid-template-columns:1fr!important;gap:24px!important}
  .results-score-big{font-size:48px}
  .results-headline{font-size:20px}
  .results-body{font-size:13px;max-width:100%}
  .breakdown-section{padding:28px 20px}
  .breakdown-h2{font-size:18px}
  .breakdown-area{min-width:110px;font-size:11px}
  .breakdown-score{font-size:15px}
  .constraints-section{padding:0 20px 36px}
  .constraints-h2{font-size:18px}
  .constraints-grid{grid-template-columns:1fr}
  .results-cta{padding:32px 20px;grid-template-columns:1fr!important}
  .results-cta-right{min-width:unset}
  .results-cta-h2{font-size:22px}
  .results-cta-body{font-size:13px}
  .retake-wrap{padding:20px;flex-wrap:wrap;gap:8px}
  .a-footer{padding:20px;flex-direction:column;gap:10px;align-items:flex-start}
  .a-footer p{font-size:10px}
  #medalLadder>div{padding:10px 12px!important}
  #medalLadder>div span:first-child{font-size:20px!important}
  #medalLadder>div div div:first-child{font-size:12px!important}
  #medalLadder>div div div:last-child{font-size:11px!important}
}

/* ── TABLET (768px–1024px) ── */
@media(min-width:769px) and (max-width:1024px){
  .hero-content{padding:88px 40px 24px;gap:40px}
  .hero-h1{font-size:36px}
  .hero-right{display:flex;flex-direction:column;justify-content:center}
  .pillar-title{font-size:13px}
  .pillar-body{font-size:12px}
  .hero-stats{justify-content:center}
  .stat-item{padding:10px 18px}
  .voice-section{grid-template-columns:1fr 1fr}
  .voice-left{padding:48px 36px}
  .voice-right{padding:48px 36px}
  .proof-section{padding:56px 40px}
  .serve-section{padding:56px 40px}
  .serve-grid{grid-template-columns:1fr 1fr}
  .advisors-section{padding:56px 40px}
  .advisors-grid{grid-template-columns:repeat(2,1fr)}
  .assess-cta-section{padding:56px 40px}
  .assess-cta-inner{grid-template-columns:1fr 1fr}
  .how-section{padding:56px 40px}
  .steps-grid{grid-template-columns:repeat(3,1fr)}
  .testimonial-section{padding:56px 40px}
  .testimonial-inner{grid-template-columns:1fr auto}
  .site-footer{padding:24px 40px}
  .quote-band{padding:32px 40px}
  .a-hero{padding:32px 40px}
  .assessment-wrap{padding:40px 40px 60px}
  .results-hero{padding:40px}
  .results-hero>div{gap:32px!important}
  .breakdown-section{padding:40px}
  .constraints-section{padding:0 40px 40px}
  .constraints-grid{grid-template-columns:1fr 1fr}
  .results-cta{padding:48px 40px}
}


/* SB7 CTA ORDER FIX — primary CTA always first on all screen sizes */
.hero-ctas { display: flex !important; }
@media(max-width:768px){
  .hero-ctas { flex-direction: column !important; }
  .hero-ctas a { order: 1; }
  .hero-ctas button { order: 2; }
}



/* ── MID DESKTOP (1025px–1279px) — standard laptop ── */
@media(min-width:1025px) and (max-width:1279px){
  .hero-content{padding:80px 60px 20px;gap:48px}
  .hero-h1{font-size:38px}
  .hero-subhead{font-size:16px}
  .pillar-title{font-size:13px}
  .pillar-body{font-size:13px}
  .stat-item{padding:12px 16px;flex:1;min-width:0}
  .stat-num{font-size:18px}
  .stat-label{font-size:10px}
  .proof-section,.how-section,.testimonial-section,.advisors-section,.assess-cta-section{padding:56px 60px}
  .serve-section{padding:56px 60px}
  .voice-left{padding:56px 48px 56px 60px}
  .voice-right{padding:56px 60px 56px 48px}
  .quote-band{padding:28px 60px}
  .site-footer{padding:24px 60px}
  #problem-anchor{padding:56px 60px!important}
  #stakes-anchor{padding:56px 60px!important}
  #success-anchor{padding:56px 60px!important}
  .assessment-wrap{padding:40px 32px 60px}
  .a-hero{padding:32px 60px 28px}
  .breakdown-section{padding:36px 60px}
  .constraints-section{padding:0 60px 36px}
  .results-cta{padding:40px 60px}
  .retake-wrap{padding:24px 60px}
  .a-footer{padding:20px 60px}
}

/* ── LARGE DESKTOP (1280px+) ── */
@media(min-width:1280px){
  .hero-content{max-width:1200px;padding:88px 80px 24px}
  .hero-h1{font-size:52px}
  .section-h2{font-size:32px}
  .proof-section,.serve-section,.advisors-section,.how-section,.testimonial-section,.assess-cta-section{max-width:100%}
}

/* ── EXTRA LARGE (1600px+) ── */
@media(min-width:1600px){
  .hero-content{max-width:1300px}
  .proof-section > *,.serve-section > *,.advisors-section > *,.how-section > *{max-width:1300px;margin-left:auto;margin-right:auto}
  .hero-h1{font-size:58px}
}

/* ── MOBILE: New SB7 sections (Problem, Stakes, Success) ── */
@media(max-width:768px){
  /* Problem section */
  #problem-anchor{padding:40px 20px!important}
  #problem-anchor > div > div{grid-template-columns:1fr!important;gap:28px!important}

  /* Stakes section */
  #stakes-anchor{padding:40px 20px!important}
  #stakes-anchor > div > div:first-child{text-align:left!important;margin-bottom:28px!important}
  #stakes-anchor > div > div:first-child h2{font-size:22px!important}
  #stakes-anchor > div > div:nth-child(2){grid-template-columns:1fr!important;gap:14px!important}
  #stakes-anchor > div > div:last-child{grid-template-columns:1fr!important;gap:20px!important;padding:24px 20px!important}

  /* Success section */
  #success-anchor{padding:40px 20px!important}
  #success-anchor > div > div:first-child{text-align:left!important;margin-bottom:28px!important}
  #success-anchor > div > div:nth-child(2){grid-template-columns:1fr!important;gap:14px!important}
  #success-anchor > div > div:last-child{grid-template-columns:1fr!important;gap:20px!important;padding:28px 20px!important}

  /* Problem section CTA button */
  #problem-anchor a[href]{width:100%!important;text-align:center!important;display:block!important;box-sizing:border-box!important}
}

/* ── TABLET: New SB7 sections ── */
@media(min-width:769px) and (max-width:1024px){
  #problem-anchor{padding:48px 40px!important}
  #problem-anchor > div > div{gap:40px!important}
  #stakes-anchor{padding:48px 40px!important}
  #stakes-anchor > div > div:nth-child(2){grid-template-columns:1fr!important;gap:16px!important}
  #success-anchor{padding:48px 40px!important}
  #success-anchor > div > div:nth-child(2){grid-template-columns:1fr 1fr!important}
}

/* ── MOBILE: safe area padding for notch/home bar ── */
@supports(padding:max(0px)){
  .site-nav{padding-left:max(20px,env(safe-area-inset-left));padding-right:max(20px,env(safe-area-inset-right))}
  .site-footer{padding-bottom:max(20px,env(safe-area-inset-bottom))}
  .a-footer{padding-bottom:max(20px,env(safe-area-inset-bottom))}
}


/* ── Vision paragraph responsive ── */
@media(max-width:768px){
  #success-anchor .vision-para{padding:24px 20px!important;margin-bottom:14px!important}
  #success-anchor .vision-para p{font-size:16px!important}
}
@media(min-width:769px) and (max-width:1024px){
  #success-anchor .vision-para{padding:28px 32px!important}
  #success-anchor .vision-para p{font-size:18px!important}
}

@media(max-width:768px){
  #success-anchor > div > div:last-child{grid-template-columns:1fr!important;padding:28px 20px!important}
}
@media(min-width:769px) and (max-width:1024px){
  #success-anchor > div > div:last-child{grid-template-columns:1fr auto!important}
}

/* ── World Change Band responsive ── */
@media(max-width:768px){
  .world-change-band{padding:36px 20px!important}
  .world-change-band p{font-size:17px!important;line-height:1.6!important}
  .world-change-band > div{text-align:left!important}
}
@media(min-width:769px) and (max-width:1024px){
  .world-change-band{padding:40px 40px!important}
  .world-change-band p{font-size:22px!important}
}
@media(min-width:1025px) and (max-width:1279px){
  .world-change-band{padding:40px 60px!important}
  .world-change-band p{font-size:24px!important}
}