/* ============================================================
   HoloGrowth 2026 - shared stylesheet
   Design system inherited from profit-clarity-audit.html (QC'd 2026-06-10)
   Brand: Midnight / Warm White / Bright Teal / Deep Teal / Stone
============================================================ */

/* ============== FONTS (self-hosted, variable) ============== */
@font-face{font-family:'Inter';font-style:normal;font-weight:400 600;font-display:swap;src:url(../fonts/inter-latin.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:'Inter';font-style:normal;font-weight:400 600;font-display:swap;src:url(../fonts/inter-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;}
@font-face{font-family:'Plus Jakarta Sans';font-style:normal;font-weight:200 800;font-display:swap;src:url(../fonts/jakarta-latin.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:'Plus Jakarta Sans';font-style:normal;font-weight:200 800;font-display:swap;src:url(../fonts/jakarta-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;}

/* ============== DESIGN TOKENS ============== */
:root{
  --midnight:#1C1C28; --warm-white:#F7F5F2; --bright-teal:#0D9B8A; --deep-teal:#2A6B6B;
  --stone:#E8E4DF; --graphite:#4A4A5A; --slate:#8A8A96; --pure-white:#FFFFFF;
  --success-green:#2ECC71; --warning-red:#C74F3B; --slate-on-light:#6B6B78; /* warning-red tuned for 4.5:1+ on white (error text, RED pill) */
  --font-heading:'Plus Jakarta Sans',system-ui,-apple-system,sans-serif;
  --font-body:'Inter',system-ui,-apple-system,sans-serif;
  --max:1200px; --narrow:880px; --tight:720px;
  --teal-on-dark:#12B2A0; --teal-soft:rgba(13,155,138,0.10); --line-dark:rgba(247,245,242,0.12); --line-light:rgba(28,28,40,0.10);
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;scroll-padding-top:76px;}
body{font-family:var(--font-body);font-size:18px;line-height:1.6;color:var(--midnight);background:var(--warm-white);overflow-x:hidden;}
img,svg{max-width:100%;display:block;}
ul,ol{list-style:none;}
a{color:inherit;}
button,input,textarea,select{font-family:inherit;font-size:inherit;}
:focus-visible{outline:3px solid var(--bright-teal);outline-offset:3px;border-radius:4px;}
.btn:focus-visible,.mobile-cta a:focus-visible{outline:3px solid var(--pure-white);outline-offset:3px;box-shadow:0 0 0 6px rgba(28,28,40,.55);}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important;}}

/* ============== HELPERS ============== */
.section{padding:96px 24px;}
.container{max-width:var(--max);margin:0 auto;}
.narrow{max-width:var(--narrow);margin:0 auto;}
.tight{max-width:var(--tight);margin:0 auto;}
.center{text-align:center;}
.bg-midnight{background:var(--midnight);color:var(--warm-white);}
.bg-warm{background:var(--warm-white);color:var(--midnight);}
.bg-stone{background:var(--stone);color:var(--midnight);}
.skip-link{position:absolute;left:-9999px;top:0;background:var(--deep-teal);color:#fff;padding:12px 20px;z-index:1000;border-radius:0 0 8px 0;}
.skip-link:focus{left:0;}

/* ============== TYPOGRAPHY ============== */
h1,h2,h3,h4{font-family:var(--font-heading);font-weight:600;line-height:1.15;letter-spacing:-0.015em;}
h2{font-size:38px;line-height:1.2;}
h3{font-size:22px;}
.eyebrow{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:2.4px;color:var(--slate);margin-bottom:20px;}
.eyebrow.teal{color:var(--bright-teal);}
.bg-warm .eyebrow.teal,.bg-warm .teal-text,.bg-stone .eyebrow.teal{color:var(--deep-teal);}
.sub{font-size:20px;line-height:1.5;opacity:.92;font-weight:400;}
.lead p{font-size:19px;margin-bottom:22px;}
.teal-text{color:var(--bright-teal);}
.deep-teal-text{color:var(--deep-teal);}

/* ============== BUTTONS ============== */
.btn{display:inline-block;padding:20px 40px;background:var(--deep-teal);color:var(--pure-white);border:none;border-radius:10px;font-weight:600;font-size:17px;text-decoration:none;cursor:pointer;transition:all .2s ease;letter-spacing:-0.01em;}
.btn:hover{background:#1f5050;transform:translateY(-2px);box-shadow:0 10px 30px rgba(13,155,138,.3);}
.btn.ghost{background:transparent;border:1px solid var(--line-dark);color:var(--warm-white);}
.btn.ghost:hover{background:rgba(247,245,242,.06);box-shadow:none;}
.bg-warm .btn.ghost,.bg-stone .btn.ghost{border-color:var(--line-light);color:var(--midnight);}
.bg-warm .btn.ghost:hover,.bg-stone .btn.ghost:hover{background:rgba(28,28,40,.04);}
.btn-row{margin-top:44px;display:flex;gap:14px;justify-content:center;flex-wrap:wrap;}
.cta-note{font-size:13.5px;color:var(--slate);margin-top:16px;line-height:1.5;}
.bg-warm .cta-note{color:var(--slate-on-light);}
.bg-stone .cta-note{color:var(--graphite);}

/* ============== TOP BAR ============== */
.topbar{position:sticky;top:0;z-index:90;background:rgba(28,28,40,.92);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-bottom:1px solid var(--line-dark);}
.topbar-inner{max-width:var(--max);margin:0 auto;display:flex;align-items:center;justify-content:space-between;padding:14px 24px;gap:16px;}
.logo{font-family:var(--font-heading);font-weight:700;font-size:20px;color:var(--warm-white);letter-spacing:-0.02em;text-decoration:none;}
.logo span{color:var(--bright-teal);}
.topnav{display:flex;align-items:center;gap:26px;}
.topnav a{font-size:15px;color:var(--warm-white);opacity:.85;text-decoration:none;font-weight:500;}
.topnav a:hover,.topnav a[aria-current="page"]{opacity:1;color:var(--bright-teal);}
.topbar .btn{padding:12px 24px;font-size:15px;}
.topbar .btn:hover{transform:none;}
@media (max-width:880px){.topnav{display:none;}}

/* ============== HERO ============== */
.hero{background:var(--midnight);color:var(--warm-white);padding:96px 24px 88px;text-align:center;position:relative;overflow:hidden;}
.hero::before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 50% -10%,var(--teal-soft) 0%,transparent 55%);pointer-events:none;}
.hero-inner{position:relative;z-index:1;max-width:960px;margin:0 auto;}
.hero h1{font-size:56px;font-weight:600;margin:22px 0 26px;letter-spacing:-0.025em;line-height:1.1;}
.hero h1 .accent{color:var(--bright-teal);}
.hero .sub{font-size:20px;max-width:760px;margin:0 auto 16px;color:var(--warm-white);opacity:.88;}
.hero-bullets{display:flex;flex-wrap:wrap;gap:10px 28px;justify-content:center;margin:30px auto 8px;max-width:780px;}
.hero-bullets li{font-size:15px;color:var(--warm-white);opacity:.9;display:flex;align-items:center;gap:8px;}
.hero-bullets li::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--bright-teal);flex:none;}
.micro-trust{font-size:13.5px;color:var(--slate);margin-top:18px;max-width:640px;margin-left:auto;margin-right:auto;line-height:1.5;}
.proof-bar{display:grid;grid-template-columns:repeat(4,1fr);gap:28px;margin:64px auto 0;padding-top:42px;border-top:1px solid var(--line-dark);max-width:980px;}
.proof-cell .stat{font-family:var(--font-heading);font-size:22px;font-weight:600;color:var(--warm-white);margin-bottom:5px;}
.proof-cell .label{font-size:13px;color:var(--slate);}
a.proof-cell:hover .stat{color:var(--bright-teal);}

/* ============== SECTION HEAD ============== */
.sec-head{text-align:center;max-width:800px;margin:0 auto 48px;}
.sec-head h2{margin-bottom:14px;}
.sec-head .sub{color:inherit;}

/* ============== LOGO WALL ============== */
.logo-wall{padding:44px 24px;background:var(--midnight);border-top:1px solid var(--line-dark);}
.logo-wall .label{font-size:12px;text-transform:uppercase;letter-spacing:2px;color:var(--slate);text-align:center;margin-bottom:26px;}
.logo-row{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:36px 52px;max-width:1080px;margin:0 auto;}
.logo-row img{height:26px;width:auto;opacity:.66;filter:brightness(0) invert(1);transition:opacity .2s;}
.logo-row img:hover{opacity:1;}
.logo-row img.taller{height:34px;}

/* ============== INDUSTRY TRUTH ============== */
.truth-body p{font-size:19px;margin-bottom:22px;color:var(--graphite);}
.truth-body strong{color:var(--deep-teal);}
.quote-card{background:var(--pure-white);border:1px solid var(--stone);border-radius:14px;padding:30px 34px;max-width:720px;margin:36px auto;box-shadow:0 4px 20px rgba(28,28,40,.04);}
.quote-card p{font-size:19px;font-style:italic;margin-bottom:12px;color:var(--midnight);}
.quote-card .attr{font-size:14px;font-weight:600;color:var(--slate-on-light);font-style:normal;}
.bridge{font-size:19px;text-align:center;max-width:760px;margin:0 auto;color:var(--graphite);}
.bridge strong{color:var(--midnight);}

/* ============== COMPARISON ============== */
.compare{display:grid;grid-template-columns:1fr 1fr;gap:24px;max-width:1000px;margin:0 auto;}
.compare-col{border-radius:16px;padding:34px;}
.compare-col.free{background:rgba(247,245,242,.05);border:1px solid var(--line-dark);}
.compare-col.ours{background:rgba(13,155,138,.10);border:1px solid rgba(13,155,138,.4);}
.compare-col h3{margin-bottom:20px;font-size:20px;}
.compare-col.free h3{color:var(--slate);}
.compare-col li{display:flex;gap:12px;align-items:flex-start;padding:9px 0;font-size:16px;line-height:1.45;}
.compare-col.free li{color:#A0A0AC;}
.ic{flex:none;width:22px;height:22px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:700;margin-top:1px;}
.ic.x{background:rgba(200,80,60,.18);color:#e08070;}
.ic.t{background:rgba(13,155,138,.2);color:var(--bright-teal);}

/* ============== PILLARS ============== */
.pillars{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;max-width:1080px;margin:0 auto;}
.pillar{background:rgba(247,245,242,.04);border:1px solid var(--line-dark);border-radius:16px;padding:34px 30px;}
.pillar .num{font-family:var(--font-heading);font-size:14px;font-weight:700;color:var(--bright-teal);letter-spacing:2px;margin-bottom:14px;}
.pillar h3{font-size:20px;margin-bottom:12px;}
.pillar p{font-size:16px;line-height:1.55;opacity:.85;}

/* ============== METRIC CARDS (results) ============== */
.results-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;max-width:1140px;margin:0 auto;}
.result-card{background:rgba(247,245,242,.04);border:1px solid var(--line-dark);border-radius:16px;padding:30px 26px;display:flex;flex-direction:column;text-decoration:none;transition:border-color .2s,transform .2s;}
a.result-card:hover{border-color:rgba(13,155,138,.5);transform:translateY(-3px);}
.result-card .metric{font-family:var(--font-heading);font-size:27px;font-weight:700;color:var(--bright-teal);line-height:1.15;margin-bottom:8px;}
.result-card .what{font-size:14.5px;color:var(--warm-white);opacity:.85;margin-bottom:16px;line-height:1.45;}
.result-card .who{margin-top:auto;font-size:13.5px;color:#A0A0AC;font-weight:600;}
.result-card .tie{font-size:13px;color:#A0A0AC;font-style:italic;margin-top:10px;line-height:1.45;}
.bg-warm .result-card,.bg-stone .result-card{background:var(--pure-white);border:1px solid var(--stone);}
.bg-warm .result-card .what,.bg-stone .result-card .what{color:var(--graphite);opacity:1;}
.bg-warm .result-card .metric{color:var(--deep-teal);}

/* ============== VIDEO FACADES ============== */
.video-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;max-width:1080px;margin:0 auto;}
.yt-facade{position:relative;aspect-ratio:16/9;border-radius:14px;overflow:hidden;cursor:pointer;border:1px solid var(--line-dark);background:#101018;padding:0;width:100%;display:block;}
.yt-facade img{width:100%;height:100%;object-fit:cover;opacity:.85;transition:opacity .2s,transform .3s;}
.yt-facade:hover img{opacity:1;transform:scale(1.03);}
.yt-facade .play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:64px;height:64px;border-radius:50%;background:var(--bright-teal);display:flex;align-items:center;justify-content:center;box-shadow:0 8px 30px rgba(13,155,138,.45);transition:transform .2s;}
.yt-facade:hover .play{transform:translate(-50%,-50%) scale(1.1);}
.yt-facade .play svg{width:22px;height:22px;fill:#fff;margin-left:4px;}
.yt-facade .vtitle{position:absolute;left:0;right:0;bottom:0;padding:14px 16px;background:linear-gradient(transparent,rgba(16,16,24,.92));color:var(--warm-white);font-size:14px;font-weight:600;text-align:left;line-height:1.4;}
.yt-facade iframe{position:absolute;inset:0;width:100%;height:100%;border:0;}

/* ============== TESTIMONIALS ============== */
.testi-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;max-width:1140px;margin:0 auto;}
.testi{background:var(--pure-white);border:1px solid var(--stone);border-radius:16px;padding:30px 28px;display:flex;flex-direction:column;}
.bg-midnight .testi{background:rgba(247,245,242,.04);border-color:var(--line-dark);}
.testi .stars{color:#00B67A;font-size:15px;letter-spacing:3px;margin-bottom:14px;}
.testi p{font-size:16px;line-height:1.6;color:var(--graphite);margin-bottom:18px;}
.bg-midnight .testi p{color:var(--warm-white);opacity:.88;}
.testi .person{display:flex;align-items:center;gap:12px;margin-top:auto;}
.testi .person img{width:44px;height:44px;border-radius:50%;object-fit:cover;}
.testi .person .name{font-size:14.5px;font-weight:600;color:var(--midnight);}
.bg-midnight .testi .person .name{color:var(--warm-white);}
.testi .person .role{font-size:13px;color:var(--slate-on-light);}
.bg-midnight .testi .person .role{color:var(--slate);}

/* ============== PATH / STEPS ============== */
.path-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;max-width:1140px;margin:0 auto;counter-reset:step;}
.path-step{background:var(--pure-white);border:1px solid var(--stone);border-radius:16px;padding:30px 26px;position:relative;}
.path-step .step-num{font-family:var(--font-heading);font-size:13px;font-weight:700;letter-spacing:1.6px;color:var(--deep-teal);text-transform:uppercase;margin-bottom:12px;}
.path-step h3{font-size:19px;margin-bottom:6px;}
.path-step .price{font-size:14.5px;font-weight:600;color:var(--deep-teal);margin-bottom:12px;}
.path-step p{font-size:15px;line-height:1.55;color:var(--graphite);}

/* ============== SAFETY NET ============== */
.safety{background:var(--pure-white);border:2px solid rgba(13,155,138,.35);border-radius:18px;padding:38px 40px;max-width:880px;margin:52px auto 0;}
.safety h3{font-size:22px;margin-bottom:20px;text-align:center;}
.safety li{display:flex;gap:14px;align-items:flex-start;padding:10px 0;font-size:16.5px;line-height:1.55;color:var(--graphite);}
.safety li strong{color:var(--midnight);}

/* ============== FOR / NOT FOR ============== */
.fit-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;max-width:1000px;margin:0 auto;}
.fit-col{background:var(--pure-white);border-radius:16px;padding:34px;border:1px solid var(--stone);}
.fit-col.yes{border-left:4px solid var(--success-green);}
.fit-col.no{border-left:4px solid var(--warning-red);}
.fit-col h3{font-size:20px;margin-bottom:18px;}
.fit-col li{display:flex;gap:12px;align-items:flex-start;padding:8px 0;font-size:16px;line-height:1.5;color:var(--graphite);}

/* ============== FOUNDER ============== */
.founder{display:grid;grid-template-columns:340px 1fr;gap:56px;align-items:start;max-width:1040px;margin:0 auto;}
.founder img{border-radius:18px;width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;object-position:top;}
.founder .lead p{color:var(--graphite);}
.founder-stats{display:flex;gap:34px;margin-top:26px;flex-wrap:wrap;}
.founder-stats .fs .n{font-family:var(--font-heading);font-size:24px;font-weight:700;color:var(--deep-teal);}
.founder-stats .fs .l{font-size:13px;color:var(--slate-on-light);}

/* ============== FAQ ============== */
.faq{max-width:var(--narrow);margin:0 auto;}
.faq-item{border-bottom:1px solid var(--line-dark);}
.bg-warm .faq-item{border-color:var(--line-light);}
.faq-q{width:100%;background:none;border:none;color:inherit;text-align:left;padding:24px 44px 24px 4px;font-family:var(--font-heading);font-size:19px;font-weight:600;cursor:pointer;position:relative;line-height:1.35;}
.faq-q::after{content:"+";position:absolute;right:8px;top:50%;transform:translateY(-50%);font-size:26px;font-weight:400;color:var(--bright-teal);transition:transform .2s;}
.faq-item.open .faq-q::after{transform:translateY(-50%) rotate(45deg);}
.faq-a{max-height:0;overflow:hidden;visibility:hidden;transition:max-height .3s ease,visibility .3s;}
.faq-item.open .faq-a{max-height:1600px;visibility:visible;}
.faq-a p{padding:0 4px 26px;font-size:16.5px;line-height:1.65;opacity:.85;}

/* ============== FOOTER ============== */
footer{background:var(--midnight);color:var(--slate);padding:64px 24px 40px;border-top:1px solid var(--line-dark);}
.footer-inner{max-width:var(--max);margin:0 auto;display:grid;grid-template-columns:1.5fr 1fr 1.2fr 1fr;gap:40px;}
.footer-inner .logo{margin-bottom:14px;display:inline-block;}
.footer-inner .tagline{font-size:14.5px;line-height:1.6;max-width:300px;}
footer h3{font-family:var(--font-heading);font-size:13px;text-transform:uppercase;letter-spacing:1.8px;color:var(--warm-white);margin-bottom:16px;font-weight:600;}
footer li{padding:5px 0;}
footer a{font-size:14.5px;text-decoration:none;color:var(--slate);display:inline-block;padding:5px 0;}
footer a:hover{color:var(--bright-teal);}
.footer-bottom{max-width:var(--max);margin:48px auto 0;padding-top:24px;border-top:1px solid var(--line-dark);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:8px;font-size:13px;}

/* ============== MOBILE STICKY CTA ============== */
.mobile-cta{display:none;position:fixed;bottom:0;left:0;right:0;z-index:95;padding:10px 14px calc(10px + env(safe-area-inset-bottom));background:rgba(28,28,40,.96);backdrop-filter:blur(8px);border-top:1px solid var(--line-dark);}
.mobile-cta a{display:block;text-align:center;background:var(--deep-teal);color:#fff;font-weight:600;font-size:16px;padding:15px;border-radius:10px;text-decoration:none;}

/* ============== CASE STUDY PAGE ============== */
.cs-hero{padding:84px 24px 64px;}
.cs-hero .metric-big{font-family:var(--font-heading);font-size:52px;font-weight:700;color:var(--bright-teal);line-height:1.05;margin:18px 0 10px;}
.cs-meta{display:flex;gap:30px;flex-wrap:wrap;margin-top:30px;}
.cs-meta .m .n{font-family:var(--font-heading);font-weight:700;font-size:19px;color:var(--warm-white);}
.cs-meta .m .l{font-size:12.5px;color:var(--slate);text-transform:uppercase;letter-spacing:1.2px;}
.cs-body{max-width:var(--tight);margin:0 auto;}
.cs-body h2{font-size:28px;margin:52px 0 18px;}
.cs-body p{font-size:17.5px;line-height:1.7;color:var(--graphite);margin-bottom:20px;}
.cs-body ul.checks li{display:flex;gap:12px;padding:7px 0;font-size:17px;color:var(--graphite);align-items:flex-start;}
.cs-nav{display:flex;justify-content:space-between;gap:16px;max-width:var(--tight);margin:64px auto 0;flex-wrap:wrap;}
.cs-nav a{font-size:15px;font-weight:600;color:var(--deep-teal);text-decoration:none;}

/* ============== TEAM ============== */
.meetup-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;max-width:1080px;margin:44px auto 0;}
.meetup-grid img{border-radius:14px;width:100%;height:100%;object-fit:cover;aspect-ratio:3/2;}
.team-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;max-width:900px;margin:44px auto 0;}
.team-member{display:flex;align-items:center;gap:14px;background:rgba(247,245,242,.04);border:1px solid var(--line-dark);border-radius:14px;padding:16px 18px;}
.team-member img{width:56px;height:56px;border-radius:50%;object-fit:cover;flex:none;}
.team-member .tn{font-family:var(--font-heading);font-weight:600;font-size:15.5px;color:var(--warm-white);}
.team-member .tr{font-size:13px;color:#A0A0AC;}
@media (max-width:880px){.meetup-grid{grid-template-columns:1fr 1fr;}.team-grid{grid-template-columns:1fr 1fr;}}
@media (max-width:560px){.meetup-grid{grid-template-columns:1fr;}.team-grid{grid-template-columns:1fr;}}

/* ============== TRUST STRIP / BADGES ============== */
.badge-row{display:flex;flex-wrap:wrap;gap:14px 34px;justify-content:center;align-items:center;margin-top:36px;}
.badge-row .badge{font-size:13.5px;color:var(--slate);display:flex;align-items:center;gap:8px;}
.bg-stone .badge-row .badge{color:var(--graphite);}
.badge-row .badge::before{content:"✓";color:var(--bright-teal);font-weight:700;}

/* ============== LEGAL ============== */
.legal{max-width:var(--narrow);margin:0 auto;padding:72px 24px 96px;}
.legal h1{font-size:40px;margin-bottom:10px;}
.legal .updated{color:var(--slate-on-light);font-size:14.5px;margin-bottom:34px;}
.legal h2{font-size:24px;margin:42px 0 14px;}
.legal h3{font-size:18px;margin:26px 0 10px;}
.legal p,.legal li{font-size:16px;line-height:1.7;color:var(--graphite);margin-bottom:14px;}
.legal ul{list-style:disc;padding-left:22px;}
.legal ul li{margin-bottom:8px;}
.legal a{color:var(--deep-teal);}
.legal .tldr{background:var(--pure-white);border:1px solid var(--stone);border-radius:12px;padding:22px 26px;margin-bottom:36px;font-size:15.5px;color:var(--graphite);}

/* ============== GRID UTILITIES (mobile-safe; replaces inline column styles) ============== */
.cols-3{grid-template-columns:repeat(3,1fr);max-width:1000px;}
.cols-3-sm{grid-template-columns:repeat(3,1fr);max-width:760px;margin:34px auto 0;}
.proof-3{grid-template-columns:repeat(3,1fr);max-width:860px;}
.pillars.cols-2{grid-template-columns:repeat(2,1fr);max-width:900px;margin:0 auto;}
.show-more-videos{display:none;}

/* ============== SHARED LIST STYLES (replaces repeated inline styles; case-study
   .cs-body ul.checks li stays more specific and wins there) ============== */
.checks li{display:flex;gap:12px;padding:8px 0;font-size:17px;color:var(--graphite);}
.qualify-list{list-style:none;max-width:460px;margin:0 auto 22px;text-align:left;font-size:15.5px;color:var(--graphite);}
.qualify-list li{padding:4px 0;display:flex;gap:10px;align-items:flex-start;}

/* ============== ARTICLES (insights) ============== */
.article{max-width:720px;margin:0 auto;padding:64px 24px 96px;}
.article h1{font-size:clamp(30px,4.2vw,44px);line-height:1.15;margin-bottom:14px;}
.article .article-meta{font-size:14px;color:var(--slate-on-light);margin-bottom:36px;}
.article h2{font-size:26px;margin:44px 0 16px;}
.article h3{font-size:20px;margin:32px 0 12px;}
.article p{font-size:17.5px;line-height:1.75;color:var(--graphite);margin-bottom:20px;}
.article ul,.article ol{margin:0 0 20px 22px;}
.article ul{list-style:disc;} .article ol{list-style:decimal;}
.article li{font-size:17px;line-height:1.7;color:var(--graphite);margin-bottom:8px;}
.article blockquote{border-left:3px solid var(--bright-teal);padding:8px 0 8px 20px;margin:26px 0;font-size:18px;font-style:italic;color:var(--midnight);}
.article strong{color:var(--midnight);}
.article a{color:var(--deep-teal);}
.article .article-cta{background:var(--pure-white);border:1px solid var(--stone);border-left:4px solid var(--bright-teal);border-radius:12px;padding:24px 28px;margin:36px 0;}
.article .article-cta p{margin-bottom:10px;font-size:16px;}
.insights-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;max-width:1140px;margin:0 auto;}
.insight-card{background:var(--pure-white);border:1px solid var(--stone);border-radius:16px;padding:28px 26px;display:flex;flex-direction:column;text-decoration:none;transition:transform .2s,border-color .2s;}
.insight-card:hover{transform:translateY(-3px);border-color:var(--bright-teal);}
.insight-card .cat{font-size:11.5px;font-weight:600;text-transform:uppercase;letter-spacing:1.6px;color:var(--deep-teal);margin-bottom:12px;}
.insight-card h3{font-size:19px;line-height:1.3;color:var(--midnight);margin-bottom:10px;}
.insight-card p{font-size:14.5px;line-height:1.55;color:var(--graphite);margin-bottom:14px;}
.insight-card .read{margin-top:auto;font-size:14px;font-weight:600;color:var(--deep-teal);}
@media (max-width:1024px){.insights-grid{grid-template-columns:repeat(2,1fr);}}
@media (max-width:640px){.insights-grid{grid-template-columns:1fr;}}

/* ============== CALCULATOR ============== */
.calc{background:var(--pure-white);border:1px solid var(--stone);border-radius:18px;padding:36px 32px;max-width:760px;margin:0 auto;text-align:left;}
.calc .calc-row{margin-bottom:22px;}
.calc label{display:block;font-family:var(--font-heading);font-weight:600;font-size:16px;color:var(--midnight);margin-bottom:6px;}
.calc .hint{font-size:13.5px;color:var(--slate-on-light);margin-bottom:8px;line-height:1.5;}
.calc input{width:100%;padding:14px 16px;font-size:17px;border:1.5px solid var(--stone);border-radius:10px;background:var(--warm-white);color:var(--midnight);}
.calc input:focus{outline:none;border-color:var(--bright-teal);}
.calc .calc-btn{width:100%;margin-top:6px;}
.calc-results{margin-top:28px;display:none;}
.calc-results.show{display:block;}
.calc-metric{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border-radius:10px;margin-bottom:8px;font-size:15.5px;background:var(--warm-white);}
.calc-metric .pill{font-weight:700;font-size:13px;padding:4px 12px;border-radius:99px;color:#fff;}
/* Pill fills tuned for WCAG AA on the 13px bold label: white on #17814A = 4.9:1, midnight on #c99a1e = 6.5:1, white on warning-red = 4.6:1 */
.pill.g{background:#17814A;} .pill.y{background:#c99a1e;color:var(--midnight);} .pill.r{background:var(--warning-red);} .pill.k{background:#1C1C28;}
.calc-verdict{margin-top:18px;border-radius:14px;padding:24px 26px;text-align:center;}
.calc-verdict.vg{background:rgba(46,204,113,.12);border:1.5px solid #1e9e5a;}
.calc-verdict.vy{background:rgba(232,185,60,.14);border:1.5px solid #c99a1e;}
.calc-verdict.vr{background:rgba(200,80,60,.12);border:1.5px solid var(--warning-red);}
.calc-verdict h3{font-size:22px;margin-bottom:8px;}
.calc-verdict p{font-size:15.5px;color:var(--graphite);line-height:1.6;}

/* ============== RESPONSIVE ============== */
@media (max-width:1024px){
  .results-grid{grid-template-columns:repeat(2,1fr);}
  .path-grid{grid-template-columns:repeat(2,1fr);}
  .cols-3,.cols-3-sm{grid-template-columns:repeat(2,1fr);}
  .pillars.cols-2{grid-template-columns:1fr;max-width:640px;}
  .pillars{grid-template-columns:1fr;max-width:640px;}
  .video-grid{grid-template-columns:1fr;max-width:640px;}
  .testi-grid{grid-template-columns:1fr;max-width:640px;}
  .footer-inner{grid-template-columns:1fr 1fr;}
}
@media (max-width:880px){
  .section{padding:64px 20px;}
  body{padding-bottom:calc(76px + env(safe-area-inset-bottom));}
  h2{font-size:30px;}
  .hero{padding:64px 20px 64px;}
  .hero h1{font-size:34px;}
  .hero .sub{font-size:18px;}
  .proof-bar{grid-template-columns:repeat(2,1fr);gap:22px;}
  .compare{grid-template-columns:1fr;}
  .fit-grid{grid-template-columns:1fr;}
  .founder{grid-template-columns:1fr;gap:36px;max-width:520px;}
  .cs-hero .metric-big{font-size:38px;}
  .mobile-cta{display:block;}
  /* Keep focused/anchored elements clear of the fixed bottom CTA bar */
  html{scroll-padding-bottom:calc(88px + env(safe-area-inset-bottom));}
}
@media (max-width:560px){
  .topbar .btn{padding:13px 14px;font-size:12.5px;}
  .topbar-inner{padding:12px 16px;}
  .hero-inner{display:flex;flex-direction:column;}
  .hero-inner > .eyebrow{order:1;}
  .hero-inner > h1{order:2;}
  .hero-inner > .sub{order:3;}
  .hero-inner > .hero-bullets{order:4;}
  .hero-inner > .btn-row{order:5;margin-top:26px;}
  .hero-inner > .yt-facade{order:6;margin-top:26px;}
  .hero-inner > .micro-trust{order:7;}
  .hero-inner > .proof-bar{order:8;}
  .hero .btn.ghost{display:none;}
  .cols-3,.cols-3-sm,.proof-3{grid-template-columns:1fr;}
  .proof-3{grid-template-columns:repeat(2,1fr);}
  .testi-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;gap:14px;padding-bottom:10px;scrollbar-width:none;}
  .testi-grid::-webkit-scrollbar{display:none;}
  .testi{flex:0 0 86%;scroll-snap-align:center;}
  .vid-extra{display:none;}
  .video-grid.expanded .vid-extra{display:block;}
  .show-more-videos{display:inline-block;}
  .results-grid{grid-template-columns:1fr;}
  .path-grid{grid-template-columns:1fr;}
  .footer-inner{grid-template-columns:1fr;}
  .logo-row{gap:24px 32px;}
  .logo-row img{height:20px;}
  .logo-row img.taller{height:26px;}
}

/* ============== KIT (CONVERTKIT) EMBED OVERRIDES ==============
   Forces the Kit inline embeds inside #magnet-form / #nl-form to match
   the site design regardless of what the Kit builder outputs. The embeds
   sit inside a white card the page already draws, so the form itself
   must render bare: no background, no border, no shadow. */
#magnet-form .formkit-form[data-uid],#nl-form .formkit-form[data-uid]{background:transparent!important;border:none!important;box-shadow:none!important;max-width:100%!important;margin:0!important;}
#magnet-form .formkit-form *,#nl-form .formkit-form *{font-family:var(--font-body)!important;}
#magnet-form .formkit-form [data-style]{padding:0!important;}
#magnet-form .formkit-header,#nl-form .formkit-header,
#magnet-form .formkit-subheader,#nl-form .formkit-subheader,
#magnet-form .formkit-image,#nl-form .formkit-image{display:none!important;}
#magnet-form .formkit-fields,#nl-form .formkit-fields{display:flex!important;flex-direction:row!important;gap:12px!important;flex-wrap:wrap!important;justify-content:center!important;margin:0!important;}
#magnet-form .formkit-field,#nl-form .formkit-field{flex:1 1 280px!important;margin:0!important;}
#magnet-form .formkit-input,#nl-form .formkit-input{width:100%!important;padding:17px 18px!important;font-size:16px!important;color:var(--midnight)!important;background:var(--pure-white)!important;border:1px solid rgba(28,28,40,.18)!important;border-radius:10px!important;font-weight:400!important;}
#magnet-form .formkit-input::placeholder,#nl-form .formkit-input::placeholder{color:var(--slate-on-light)!important;} /* 5.25:1 on white - --slate is only 3.4:1 */
#magnet-form .formkit-input:focus,#nl-form .formkit-input:focus{outline:none!important;border-color:var(--deep-teal)!important;box-shadow:0 0 0 3px var(--teal-soft)!important;}
#magnet-form .formkit-submit,#nl-form .formkit-submit{flex:0 0 auto!important;margin:0!important;padding:0!important;background:var(--deep-teal)!important;color:var(--pure-white)!important;border:none!important;border-radius:10px!important;font-weight:600!important;font-size:17px!important;letter-spacing:-0.01em!important;cursor:pointer!important;transition:all .2s ease!important;}
#magnet-form .formkit-submit>span,#nl-form .formkit-submit>span{padding:17px 32px!important;display:block!important;}
#magnet-form .formkit-submit:hover,#nl-form .formkit-submit:hover{background:#1f5050!important;transform:translateY(-2px);box-shadow:0 10px 30px rgba(13,155,138,.3)!important;}
#magnet-form .formkit-guarantee,#nl-form .formkit-guarantee{font-size:13.5px!important;color:var(--slate-on-light)!important;margin:14px 0 0!important;}
#magnet-form .formkit-alert,#nl-form .formkit-alert{border-radius:10px!important;font-size:16px!important;}
#magnet-form .formkit-alert-success,#nl-form .formkit-alert-success{background:var(--teal-soft)!important;border:1px solid var(--deep-teal)!important;color:var(--midnight)!important;}
@media (max-width:560px){
  #magnet-form .formkit-fields,#nl-form .formkit-fields{flex-direction:column!important;}
  #magnet-form .formkit-field,#nl-form .formkit-field,#magnet-form .formkit-submit,#nl-form .formkit-submit{flex:1 1 100%!important;width:100%!important;}
}
/* The !important transitions above outrank the global reduced-motion kill switch
   (higher specificity), so re-kill them here for users who ask for less motion. */
@media (prefers-reduced-motion:reduce){
  #magnet-form .formkit-form *,#nl-form .formkit-form *{transition:none!important;animation:none!important;}
  #magnet-form .formkit-submit:hover,#nl-form .formkit-submit:hover{transform:none!important;}
}

/* ============== WCAG AA: teal text on dark card surfaces ==============
   --bright-teal (4.38:1 on #252530 cards) fails AA for small text; the
   slightly lighter --teal-on-dark (5.7:1) is used wherever teal small text
   sits on dark surfaces. Large accent headlines keep brand teal (3:1 rule). */
.pillar .num{color:var(--teal-on-dark);}
.result-card .who a{color:var(--teal-on-dark);}
.bg-midnight .sub a,.hero .sub a,.bg-midnight .sec-head a{color:var(--teal-on-dark);}
.bg-midnight .eyebrow.teal,.hero .eyebrow.teal{color:var(--teal-on-dark);}
.compare-col.free h3{color:#9C9CA8;}
.compare-col.free .ic.x{color:#9C9CA8;}

/* ============== HOMEPAGE FEEDBACK PASS (2026-07-19) ============== */
/* Logo marquee - endless scroll, pauses on hover, static wrap if reduced motion */
.logo-marquee{overflow:hidden;max-width:100%;margin:0 auto;-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);}
.logo-track{display:flex;align-items:center;gap:64px;width:max-content;animation:logo-scroll 36s linear infinite;padding:2px 0;}
.logo-marquee:hover .logo-track{animation-play-state:paused;}
@keyframes logo-scroll{to{transform:translateX(-50%);}}
.logo-track img{height:26px;width:auto;opacity:.66;filter:brightness(0) invert(1);transition:opacity .2s;flex:none;}
.logo-track img.taller{height:34px;}
.logo-track img:hover{opacity:1;}
.logo-word{font-family:var(--font-heading);font-weight:700;font-size:19px;letter-spacing:.04em;color:var(--warm-white);opacity:.66;white-space:nowrap;flex:none;}
@media (prefers-reduced-motion:reduce){.logo-track{animation:none;flex-wrap:wrap;width:auto;justify-content:center;gap:36px 52px;}}

/* Interview carousel */
.vid-carousel-wrap{position:relative;max-width:1080px;margin:0 auto;}
.vid-carousel{display:flex;gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;padding:4px 2px 12px;scrollbar-width:thin;}
.vc-item{flex:0 0 340px;scroll-snap-align:start;}
.vc-item .yt-facade{width:100%;}
.vc-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:2;width:44px;height:44px;border-radius:50%;border:1px solid var(--line-dark);background:rgba(28,28,40,.85);color:var(--warm-white);font-size:18px;cursor:pointer;transition:background .2s;}
.vc-arrow:hover{background:var(--deep-teal);}
.vc-arrow.prev{left:-14px;}
.vc-arrow.next{right:-14px;}
@media (max-width:700px){.vc-item{flex-basis:82%;}.vc-arrow{display:none;}}

/* Industry-truth skim helpers */
.truth-points{margin:20px 0 24px;display:grid;gap:12px;}
.truth-points li{display:flex;gap:12px;align-items:flex-start;font-size:17px;line-height:1.55;color:var(--graphite);}
.gap-stats{display:grid;grid-template-columns:1fr 1fr;gap:18px;max-width:720px;margin:34px auto 0;}
.gap-stat{background:var(--pure-white);border:1px solid var(--stone);border-radius:16px;padding:26px 24px;text-align:center;}
.gap-stat .n{font-family:var(--font-heading);font-size:34px;font-weight:700;color:var(--deep-teal);margin-bottom:8px;}
.gap-stat .l{font-size:14.5px;color:var(--graphite);line-height:1.5;}
@media (max-width:560px){.gap-stats{grid-template-columns:1fr;}}

/* Result-card trend glyph + equal cards */
.result-card .metric .trend{width:20px;height:20px;color:var(--teal-on-dark);margin-right:8px;vertical-align:-2px;display:inline-block;}
.result-card{display:flex;flex-direction:column;}
.result-card .who{margin-top:auto;}

/* Pillar + path icons, equal tiles */
.pillar-icon,.step-icon{width:34px;height:34px;color:var(--teal-on-dark);margin-bottom:16px;display:block;}
.bg-stone .step-icon,.bg-warm .step-icon{color:var(--deep-teal);}
.pillars{align-items:stretch;}
.pillar{display:flex;flex-direction:column;}
.path-grid{align-items:stretch;}
.path-step{display:flex;flex-direction:column;}
.path-step p:last-child{margin-bottom:0;}

/* Initials avatar for testimonials without photos */
.avatar-initials{width:44px;height:44px;border-radius:50%;background:var(--teal-soft);color:var(--deep-teal);display:flex;align-items:center;justify-content:center;font-family:var(--font-heading);font-weight:700;font-size:15px;flex:none;}
.bg-midnight .avatar-initials{background:rgba(18,178,160,.16);color:var(--teal-on-dark);}

/* Apply-section qualify list: centered, icon and text on one line */
.qualify-list{display:flex;flex-direction:column;gap:10px;align-items:center;margin:0 auto 22px;width:max-content;max-width:100%;}
.qualify-list li{display:flex;gap:10px;align-items:center;font-size:16px;color:var(--graphite);text-align:left;}

/* ============== SHARED FIXES FROM THE VISUAL REVIEW (2026-07-19) ============== */
/* Buttons inside article bodies: .article a (0,1,1) beat .btn (0,1,0) making labels teal-on-teal */
.article a.btn,.article .btn{color:var(--pure-white);}
/* Hero bullets: keep the dot attached to line 1 when a bullet wraps */
.hero-bullets li{align-items:flex-start;}
.hero-bullets li::before{margin-top:7px;}
/* Facade overlay titles: readable over thumbnails with baked-in text */
.yt-facade .vtitle{background:linear-gradient(180deg,transparent 0%,rgba(16,16,24,.55) 30%,rgba(16,16,24,.92) 100%);padding-top:26px;}
/* Odd last cell in 2-col mobile proof grids spans full width, centered */
@media (max-width:700px){.proof-3 > :last-child:nth-child(odd){grid-column:1/-1;}}
/* Review treatment on quote-cards (stars + person) - shared so pages can drop inline styles */
.quote-card .stars{color:#00B67A;font-size:15px;letter-spacing:3px;margin-bottom:12px;}
.quote-card .person{display:flex;align-items:center;gap:12px;margin-top:16px;}
.quote-card .person img{width:44px;height:44px;border-radius:50%;object-fit:cover;}
.quote-card .person .name{font-size:14.5px;font-weight:600;color:var(--midnight);}
.quote-card .person .role{font-size:13px;color:var(--slate-on-light);}
/* Pillar CTA rows bottom-align across equal-height cards */
.pillar .btn-row{margin-top:auto;padding-top:20px;}
/* Kit embeds: reserve space so a slow load never collapses the card */
#nl-form,#magnet-form{min-height:150px;}

/* ============== MOBILE QC SHARED FIXES (2026-07-19) ============== */
@media (max-width:900px){
  /* sticky mobile CTA must never cover the footer's last lines */
  footer{padding-bottom:calc(96px + env(safe-area-inset-bottom));}
  /* topbar CTA reaches the 44px tap-target guideline */
  .topbar .btn{padding:14px 22px;}
}
@media (max-width:700px){
  /* odd last proof cell spans the row centered instead of orphaning left */
  .proof-3 > :last-child:nth-child(odd){text-align:center;}
}

/* Apply-section iClosed embed: wider than the .narrow text so iClosed shows its desktop 2-pane layout */
.apply-embed-wrap{max-width:1080px;margin:0 auto;padding:0 24px;}
