/* ============================================
   TLSM Theme — Main Stylesheet v1.1.1
   Ported from homepage-v2.html reference
   Palette: ink / navy / teal / cream
   Typography: Bebas Neue · Inter · Lora · Dancing Script
   ============================================ */

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{
  --ink:#06090F;
  --navy:#16465F;        /* the blue you liked */
  --navy-deep:#0E3247;
  --navy-soft:#1B5070;
  --surface:#0B1521;
  --surface2:#10202F;
  --white:#FFFFFF;
  --teal:#3DBFAE;        /* the teal accent you liked */
  --teal-dim:#2E9E8F;
  --blue-mid:#4A9FD4;
  --red:#D8442F;
  --rule:rgba(255,255,255,0.08);
  --orb-light:rgba(255,255,255,0.045);
  --orb-dark:rgba(0,0,0,0.10);
}
html{scroll-behavior:smooth}
body{font-family:'Inter',sans-serif;background:var(--ink);color:var(--white);overflow-x:hidden;line-height:1.6}
::selection{background:var(--teal);color:var(--ink)}

/* ══ SCROLL PROGRESS ══════════════════════════════════ */
.scroll-progress{position:fixed;top:0;left:0;height:3px;background:linear-gradient(90deg,var(--teal),var(--blue-mid));width:0%;z-index:9999;transition:width 0.08s linear}

/* ══ REVEAL ANIMATIONS ════════════════════════════════ */
.rv{opacity:0;transform:translateY(28px);transition:opacity 0.8s cubic-bezier(0.16,1,0.3,1),transform 0.8s cubic-bezier(0.16,1,0.3,1)}
.rv.in{opacity:1;transform:translateY(0)}
.rv-d1{transition-delay:0.1s}.rv-d2{transition-delay:0.2s}.rv-d3{transition-delay:0.3s}.rv-d4{transition-delay:0.4s}.rv-d5{transition-delay:0.5s}.rv-d6{transition-delay:0.6s}

/* ══ ORBS — the gradient circles you liked ════════════ */
.orb{position:absolute;border-radius:50%;pointer-events:none;will-change:transform}
.orb-l{background:radial-gradient(circle at 35% 35%,var(--orb-light),transparent 70%)}
.orb-d{background:radial-gradient(circle at 60% 60%,var(--orb-dark),transparent 70%)}
.orb-t{background:radial-gradient(circle at 40% 40%,rgba(61,191,174,0.06),transparent 70%)}
.orb-b{background:radial-gradient(circle at 40% 40%,rgba(74,159,212,0.07),transparent 70%)}
.orb-float-1{animation:orbFloat1 14s ease-in-out infinite}
.orb-float-2{animation:orbFloat2 18s ease-in-out infinite}
.orb-float-3{animation:orbFloat3 22s ease-in-out infinite}
@keyframes orbFloat1{0%,100%{transform:translate(0,0)}50%{transform:translate(20px,-24px)}}
@keyframes orbFloat2{0%,100%{transform:translate(0,0)}50%{transform:translate(-26px,18px)}}
@keyframes orbFloat3{0%,100%{transform:translate(0,0) scale(1)}50%{transform:translate(14px,20px) scale(1.05)}}

/* ══ ANNOUNCEMENT ═════════════════════════════════════ */
.ann-bar{background:linear-gradient(90deg,var(--navy-deep),var(--navy),var(--navy-deep));padding:11px 2rem;text-align:center;font-size:0.76rem;font-weight:600;letter-spacing:0.06em;color:rgba(255,255,255,0.92);position:relative;z-index:999}
.ann-bar strong{color:var(--teal)}
.ann-bar a{color:var(--white);text-decoration:underline;text-underline-offset:3px;margin-left:6px;transition:color 0.2s}
.ann-bar a:hover{color:var(--teal)}

/* ══ NAV ══════════════════════════════════════════════ */
.nav{position:fixed;top:0;left:0;right:0;z-index:900;background:rgba(6,9,15,0.6);backdrop-filter:blur(20px);border-bottom:1px solid transparent;transition:background 0.3s,border-color 0.3s}
.nav.scrolled{background:rgba(6,9,15,0.95);border-bottom-color:var(--rule)}
.nav-inner{max-width:1300px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;padding:0 2rem;height:68px}
.nav-logo{font-family:'Bebas Neue',sans-serif;font-size:1.05rem;letter-spacing:0.14em;color:var(--white);text-decoration:none;display:flex;align-items:center;gap:10px}
.nav-logo-badge{width:30px;height:30px;border-radius:7px;background:linear-gradient(135deg,var(--navy-soft),var(--navy-deep));border:1px solid rgba(61,191,174,0.4);display:flex;align-items:center;justify-content:center;font-size:0.68rem;font-weight:800;color:var(--teal);letter-spacing:0}
.nav-links{display:flex;align-items:center;gap:2rem;list-style:none}
.nav-links a{color:rgba(255,255,255,0.5);text-decoration:none;font-size:0.74rem;font-weight:600;letter-spacing:0.1em;text-transform:uppercase;transition:color 0.2s;position:relative}
.nav-links a:not(.nav-cta):not(.nav-phone)::after{content:'';position:absolute;bottom:-6px;left:0;width:0;height:2px;background:var(--teal);transition:width 0.25s}
.nav-links a:not(.nav-cta):not(.nav-phone):hover::after{width:100%}
.nav-links a:hover{color:var(--white)}
.nav-phone{
  color:var(--teal)!important;font-weight:800!important;position:relative;
  display:inline-block;
  animation:navPhonePulse 2s ease-in-out infinite;
}
@keyframes navPhonePulse{
  0%,100%{
    color:var(--teal);
    text-shadow:0 0 0 rgba(61,191,174,0), 0 0 0 rgba(123,237,224,0);
    transform:scale(1);
  }
  50%{
    color:#9FF5EA;
    text-shadow:0 0 10px rgba(61,191,174,0.95), 0 0 22px rgba(61,191,174,0.7), 0 0 36px rgba(61,191,174,0.4);
    transform:scale(1.055);
  }
}
.nav-cta{background:var(--teal)!important;color:var(--ink)!important;padding:10px 22px;border-radius:7px;font-weight:800!important;transition:all 0.25s!important}
.nav-cta:hover{background:#4FD4C2!important;transform:translateY(-1px);box-shadow:0 6px 24px rgba(61,191,174,0.35)}

/* ══ HERO ═════════════════════════════════════════════ */
.hero{min-height:100vh;background:linear-gradient(165deg,var(--navy-deep) 0%,var(--navy) 45%,#0D2A3D 100%);position:relative;overflow:hidden;padding-top:120px;display:flex;flex-direction:column}
.hero-orbs .orb:nth-child(1){width:640px;height:640px;top:-220px;left:-180px}
.hero-orbs .orb:nth-child(2){width:520px;height:520px;bottom:-160px;right:-120px}
.hero-orbs .orb:nth-child(3){width:380px;height:380px;top:30%;right:18%}
.hero-orbs .orb:nth-child(4){width:300px;height:300px;bottom:20%;left:24%}
.hero-grid-lines{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,0.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,0.025) 1px,transparent 1px);background-size:84px 84px;pointer-events:none;mask-image:radial-gradient(ellipse 80% 70% at 50% 40%,black 30%,transparent 75%)}
.hero-inner{position:relative;z-index:2;max-width:1300px;margin:0 auto;padding:2.5rem 2rem 2.5rem;display:grid;grid-template-columns:1.1fr 0.9fr;gap:3.5rem;align-items:center;flex:1}

.hero-pretag{display:inline-flex;align-items:center;gap:10px;margin-bottom:1.75rem;font-size:0.66rem;font-weight:700;letter-spacing:0.22em;text-transform:uppercase;color:var(--teal)}
.hero-pretag-line{width:38px;height:1px;background:var(--teal)}
.hero-pretag-dot{width:7px;height:7px;border-radius:50%;background:var(--teal);animation:pulse 1.8s ease-in-out infinite}
@keyframes pulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:0.35;transform:scale(0.65)}}

.hero-h1{font-family:'Bebas Neue',sans-serif;font-size:clamp(3.6rem,6vw,6.6rem);line-height:0.92;letter-spacing:0.02em;color:var(--white);margin-bottom:1.75rem}
.h1-pre{display:block;font-size:0.42em;letter-spacing:0.14em;color:rgba(255,255,255,0.4);margin-bottom:0.5em}
.h1-accent{color:var(--teal);position:relative;display:inline-block}
.h1-accent .ul{position:absolute;bottom:-7px;left:0;width:100%;height:9px;overflow:visible}

.hero-deck{font-family:'Lora',serif;font-size:1.08rem;font-style:italic;color:rgba(255,255,255,0.62);line-height:1.88;max-width:560px;margin-bottom:2.25rem}
.hero-deck strong{color:var(--white);font-style:normal}

.hero-ctas{display:flex;gap:1rem;flex-wrap:wrap;align-items:center;margin-bottom:2.75rem}
.btn-teal{display:inline-flex;align-items:center;gap:10px;background:var(--teal);color:var(--ink);padding:17px 34px;border-radius:8px;font-size:0.84rem;font-weight:800;letter-spacing:0.09em;text-transform:uppercase;text-decoration:none;transition:all 0.25s;position:relative;overflow:hidden}
.btn-teal::before{content:'';position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,0.25),transparent);transition:left 0.5s}
.btn-teal:hover::before{left:100%}
.btn-teal:hover{transform:translateY(-2px);box-shadow:0 10px 36px rgba(61,191,174,0.4)}
.btn-line{display:inline-flex;align-items:center;gap:10px;background:rgba(255,255,255,0.05);color:rgba(255,255,255,0.85);padding:17px 30px;border-radius:8px;font-size:0.84rem;font-weight:700;letter-spacing:0.09em;text-transform:uppercase;text-decoration:none;transition:all 0.25s;border:1px solid rgba(255,255,255,0.18)}
.btn-line:hover{border-color:var(--teal);color:var(--teal);background:rgba(61,191,174,0.06)}

.hero-proof{display:grid;grid-template-columns:repeat(4,1fr);gap:1.25rem;align-items:start;padding-top:2rem;border-top:1px solid rgba(255,255,255,0.12)}
.hp{display:flex;flex-direction:column;gap:2px;min-width:0}
.hp-num{font-family:'Bebas Neue',sans-serif;font-size:1.9rem;color:var(--white);line-height:1}
.hp-label{font-size:0.6rem;letter-spacing:0.13em;text-transform:uppercase;color:rgba(255,255,255,0.4);line-height:1.4}
.hp-vr{display:none}
.hp-stars{display:flex;gap:2px;margin-bottom:4px}
@media(max-width:520px){
  .hero-proof{grid-template-columns:repeat(2,1fr);gap:1.5rem 1.25rem}
}
.hp-stars svg{width:13px;height:13px;fill:var(--teal)}

/* HERO RIGHT — orbital */
.hero-orbital{position:relative;width:100%;height:270px;display:flex;align-items:center;justify-content:center;margin-bottom:0}

.hero-right-col{display:flex;flex-direction:column;gap:1.1rem;min-width:0;position:relative}
.hero-inner > div{min-width:0}
@media(max-width:1024px){.hero-right-col{margin-top:1rem}}

/* ══ ORBITAL DECORATION — ambient flair behind the hybrid card ══════ */
.hy-orbit-decor{position:absolute;inset:-60px;z-index:0;pointer-events:none;overflow:visible}
.hy-ring{
  position:absolute;top:50%;left:50%;border-radius:50%;
  border:1px solid rgba(61,191,174,0.18);
  transform:translate(-50%,-50%);
  animation:hyRingBreathe 6s ease-in-out infinite;
}
.hy-ring-a{width:112%;height:112%;animation-delay:0s}
.hy-ring-b{width:128%;height:128%;border-color:rgba(61,191,174,0.1);animation-delay:1.2s}
@keyframes hyRingBreathe{
  0%,100%{opacity:0.5;transform:translate(-50%,-50%) scale(1)}
  50%{opacity:1;transform:translate(-50%,-50%) scale(1.025)}
}
.hy-dot{
  position:absolute;width:6px;height:6px;border-radius:50%;
  background:var(--teal);box-shadow:0 0 10px 2px rgba(61,191,174,0.7);
  animation:hyDotFloat 4.5s ease-in-out infinite;
}
.hy-dot-1{top:-2%;left:14%;animation-delay:0s}
.hy-dot-2{top:38%;right:-3%;animation-delay:1.4s}
.hy-dot-3{bottom:6%;left:-3%;animation-delay:2.7s}
@keyframes hyDotFloat{
  0%,100%{transform:translateY(0);opacity:0.55}
  50%{transform:translateY(-9px);opacity:1}
}
.hy-arc{
  position:absolute;top:50%;left:50%;width:120%;height:120%;
  transform:translate(-50%,-50%);
  border-radius:50%;
  border:1.5px solid transparent;
  border-top-color:rgba(123,237,224,0.5);
  animation:hyArcSpin 14s linear infinite;
}
@keyframes hyArcSpin{to{transform:translate(-50%,-50%) rotate(360deg)}}
@media(max-width:1024px){.hy-orbit-decor{display:none}}

.orb-ring{position:absolute;border-radius:50%;border:1px solid rgba(255,255,255,0.1)}
.orb-ring-a{width:280px;height:280px;animation:ringBreathe 5s ease-in-out infinite}
.orb-ring-b{width:205px;height:205px;border-color:rgba(61,191,174,0.22);animation:ringBreathe 5s ease-in-out 1s infinite}
.orb-ring-c{width:135px;height:135px;border-color:rgba(61,191,174,0.4);animation:ringBreathe 5s ease-in-out 2s infinite}
@keyframes ringBreathe{0%,100%{transform:scale(1);opacity:0.55}50%{transform:scale(1.03);opacity:1}}
.orb-core{width:118px;height:118px;border-radius:50%;background:radial-gradient(circle at 36% 30%,#1d5a7d,#082030);border:2px solid rgba(61,191,174,0.6);display:flex;align-items:center;justify-content:center;position:relative;z-index:3;animation:coreGlow 3.2s ease-in-out infinite}
@keyframes coreGlow{0%,100%{box-shadow:0 0 36px rgba(61,191,174,0.18),inset 0 0 22px rgba(61,191,174,0.05)}50%{box-shadow:0 0 70px rgba(61,191,174,0.42),inset 0 0 44px rgba(61,191,174,0.12)}}
.oc-pre{font-size:0.44rem;letter-spacing:0.16em;text-transform:uppercase;color:rgba(255,255,255,0.38);margin-bottom:3px;text-align:center}
.oc-num{font-family:'Bebas Neue',sans-serif;font-size:2.9rem;color:var(--teal);line-height:1;text-align:center;text-shadow:0 0 30px rgba(61,191,174,0.6)}
.oc-post{font-size:0.42rem;letter-spacing:0.12em;text-transform:uppercase;color:rgba(255,255,255,0.38);margin-top:3px;line-height:1.45;text-align:center}
.sat{position:absolute;width:100%;height:100%;animation:spin 14s linear infinite;transform:rotate(0deg)}
.sat-b{animation-duration:19s;animation-direction:reverse;animation-name:spinB}
.sat-c{animation-duration:11s;animation-name:spinC}
.sat-d{animation-duration:24s;animation-direction:reverse;animation-name:spinD}
@keyframes spinB{from{transform:rotate(90deg)}to{transform:rotate(450deg)}}
@keyframes spinC{from{transform:rotate(180deg)}to{transform:rotate(540deg)}}
@keyframes spinD{from{transform:rotate(270deg)}to{transform:rotate(-90deg)}}
@keyframes spin{to{transform:rotate(360deg)}}
.sat-node{position:absolute;top:-16px;left:50%;transform:translateX(-50%);background:rgba(8,28,42,0.92);border:1px solid rgba(61,191,174,0.35);border-radius:100px;padding:5px 12px;display:flex;align-items:center;gap:6px;white-space:nowrap;font-size:0.58rem;font-weight:700;color:rgba(255,255,255,0.78);letter-spacing:0.07em;backdrop-filter:blur(4px)}
.sat .sat-node{animation:cspin 14s linear infinite}
.sat-b .sat-node{animation:cspinB 19s linear infinite reverse}
.sat-c .sat-node{animation:cspinC 11s linear infinite}
.sat-d .sat-node{animation:cspinD 24s linear infinite reverse}
@keyframes cspinB{from{transform:translateX(-50%) rotate(-90deg)}to{transform:translateX(-50%) rotate(-450deg)}}
@keyframes cspinC{from{transform:translateX(-50%) rotate(-180deg)}to{transform:translateX(-50%) rotate(-540deg)}}
@keyframes cspinD{from{transform:translateX(-50%) rotate(-270deg)}to{transform:translateX(-50%) rotate(90deg)}}
@keyframes cspin{from{transform:translateX(-50%) rotate(0)}to{transform:translateX(-50%) rotate(-360deg)}}
.sat-dot{width:7px;height:7px;border-radius:50%;background:var(--teal)}
.sat-dot.b{background:var(--blue-mid)}
.orb-badge{position:absolute;bottom:-10px;left:50%;transform:translateX(-50%);background:var(--teal);color:var(--ink);padding:8px 22px;border-radius:100px;font-size:0.63rem;font-weight:800;letter-spacing:0.1em;text-transform:uppercase;white-space:nowrap;z-index:5;display:flex;align-items:center;gap:8px;box-shadow:0 8px 30px rgba(61,191,174,0.35)}
.orb-badge-dot{width:7px;height:7px;border-radius:50%;background:var(--ink);animation:pulse 1.2s ease-in-out infinite}

/* ══ TICKER ═══════════════════════════════════════════ */
.ticker{background:rgba(0,0,0,0.25);border-top:1px solid rgba(255,255,255,0.08);padding:14px 0;overflow:hidden;white-space:nowrap;position:relative;z-index:2}
.ticker-track{display:inline-flex;gap:3.5rem;align-items:center;animation:tick 30s linear infinite}
.ticker:hover .ticker-track{animation-play-state:paused}
@keyframes tick{to{transform:translateX(-50%)}}
.tk-badge{font-size:0.66rem;font-weight:800;letter-spacing:0.16em;text-transform:uppercase;color:var(--teal);padding-right:1.5rem;border-right:1px solid rgba(255,255,255,0.1)}
.tk-item{font-size:0.72rem;font-weight:600;letter-spacing:0.1em;text-transform:uppercase;color:rgba(255,255,255,0.32);transition:color 0.2s}
.tk-sep{color:var(--teal);font-size:0.45rem;opacity:0.6}

/* ══ SECTION SHELL ════════════════════════════════════ */
.s{padding:5rem 2rem;position:relative;overflow:hidden}
.s-inner{max-width:1300px;margin:0 auto;position:relative;z-index:2}
.eyebrow{font-size:0.66rem;font-weight:800;letter-spacing:0.24em;text-transform:uppercase;color:var(--teal);display:flex;align-items:center;gap:12px;margin-bottom:1.25rem}
.eyebrow::after{content:'';width:44px;height:1px;background:linear-gradient(90deg,var(--teal),transparent)}
.eyebrow.center{justify-content:center}
.eyebrow.center::before{content:'';width:44px;height:1px;background:linear-gradient(270deg,var(--teal),transparent)}
.h2{font-family:'Bebas Neue',sans-serif;font-size:clamp(2.6rem,4.5vw,4.8rem);line-height:0.93;letter-spacing:0.02em;color:var(--white)}
.h2 em{color:var(--teal);font-style:normal}
.deck{font-family:'Lora',serif;font-size:1.04rem;font-style:italic;color:rgba(255,255,255,0.55);line-height:1.9}
.deck strong{font-style:normal;color:rgba(255,255,255,0.92)}

/* ══ PROBLEM — navy w/ orbs ═══════════════════════════ */
.problem-s{background:linear-gradient(180deg,var(--ink) 0%,var(--surface) 100%)}
.problem-s .orb:nth-child(1){width:560px;height:560px;top:-160px;right:-140px}
.problem-s .orb:nth-child(2){width:420px;height:420px;bottom:-100px;left:-120px}
.problem-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:5rem;align-items:center}
.problem-photo{position:relative;border-radius:14px;overflow:hidden;aspect-ratio:4/5;box-shadow:0 30px 80px rgba(0,0,0,0.45)}
.problem-photo img{width:100%;height:100%;object-fit:cover;filter:saturate(0.7) contrast(1.06)}
.problem-overlay{position:absolute;inset:0;background:linear-gradient(to bottom,transparent 38%,rgba(6,9,15,0.94) 100%)}
.problem-stamp{position:absolute;bottom:0;left:0;right:0;padding:1.5rem;background:linear-gradient(135deg,var(--red),#B23522)}
.problem-stamp p{font-family:'Bebas Neue',sans-serif;font-size:1.12rem;letter-spacing:0.06em;color:var(--white);text-align:center;line-height:1.3}
.pi{display:flex;gap:1.25rem;padding:1.6rem 0;border-bottom:1px solid var(--rule);transition:padding-left 0.3s}
.pi:hover{padding-left:8px}
.pi:first-child{padding-top:0}
.pi-num{font-family:'Bebas Neue',sans-serif;font-size:2.6rem;background:linear-gradient(180deg,rgba(61,191,174,0.35),rgba(61,191,174,0.04));-webkit-background-clip:text;background-clip:text;color:transparent;min-width:46px;line-height:1}
.pi-head{font-weight:700;font-size:0.96rem;color:var(--white);margin-bottom:5px}
.pi-body{font-size:0.85rem;color:rgba(255,255,255,0.42);line-height:1.72}

/* ══ STATS BAND — navy gradient + orbs ════════════════ */
.stats-band{background:linear-gradient(160deg,var(--navy-deep),var(--navy) 55%,var(--navy-deep));padding:4.5rem 2rem;position:relative;overflow:hidden}
.stats-band .orb:nth-child(1){width:480px;height:480px;top:-200px;left:8%}
.stats-band .orb:nth-child(2){width:560px;height:560px;bottom:-260px;right:4%}
.stats-band-inner{max-width:1300px;margin:0 auto;display:grid;grid-template-columns:repeat(4,1fr);gap:2.5rem;text-align:center;position:relative;z-index:2}
.sb-num{font-family:'Bebas Neue',sans-serif;font-size:3.8rem;color:var(--white);line-height:1;display:block}
.sb-num .accent{color:var(--teal)}
.sb-label{font-size:0.7rem;font-weight:600;letter-spacing:0.13em;text-transform:uppercase;color:rgba(255,255,255,0.5);margin-top:8px;line-height:1.6}

/* ══ WHY US ═══════════════════════════════════════════ */
.why-s{background:var(--surface)}
.why-s .orb:nth-child(1){width:600px;height:600px;top:-200px;right:-180px}
.why-top{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:start;margin-bottom:4rem}
.why-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem}
.wc{background:linear-gradient(160deg,var(--surface2),rgba(16,32,47,0.5));border:1px solid var(--rule);border-radius:14px;padding:2.1rem;transition:all 0.35s;position:relative;overflow:hidden}
.wc::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,var(--teal),transparent);opacity:0;transition:opacity 0.35s}
.wc:hover{transform:translateY(-5px);border-color:rgba(61,191,174,0.35);box-shadow:0 20px 50px rgba(0,0,0,0.35)}
.wc:hover::before{opacity:1}
.wc-icon{width:46px;height:46px;border-radius:10px;background:rgba(61,191,174,0.09);border:1px solid rgba(61,191,174,0.22);display:flex;align-items:center;justify-content:center;margin-bottom:1.4rem}
.wc-icon svg{width:21px;height:21px;stroke:var(--teal);fill:none;stroke-width:1.5}
.wc-title{font-weight:700;font-size:0.95rem;color:var(--white);margin-bottom:0.55rem;letter-spacing:0.01em}
.wc-body{font-size:0.83rem;color:rgba(255,255,255,0.42);line-height:1.74}
.wc-pill{display:inline-block;margin-top:1.1rem;font-size:0.58rem;font-weight:800;letter-spacing:0.14em;text-transform:uppercase;color:var(--teal);border:1px solid rgba(61,191,174,0.3);padding:4px 11px;border-radius:100px}

/* ══ SERVICES ═════════════════════════════════════════ */
.svc-s{background:linear-gradient(180deg,var(--surface) 0%,var(--ink) 100%)}
.svc-s .orb:nth-child(1){width:520px;height:520px;bottom:-180px;left:-160px}
.svc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-top:3.5rem}
.svc-card{border:1px solid var(--rule);border-radius:16px;overflow:hidden;transition:all 0.35s;background:var(--surface2);position:relative}
.svc-card:hover{border-color:rgba(61,191,174,0.4);transform:translateY(-6px);box-shadow:0 24px 60px rgba(0,0,0,0.4)}
.svc-img{aspect-ratio:16/9;overflow:hidden;position:relative}
.svc-img img{width:100%;height:100%;object-fit:cover;transition:transform 0.6s cubic-bezier(0.16,1,0.3,1);display:block}
.svc-card:hover .svc-img img{transform:scale(1.06)}
.svc-img::after{content:'';position:absolute;inset:0;background:linear-gradient(to top,var(--surface2) 0%,transparent 35%)}
.svc-body{padding:1.9rem}
.svc-tag{font-size:0.6rem;font-weight:800;letter-spacing:0.16em;text-transform:uppercase;color:var(--teal);margin-bottom:0.55rem}
.svc-title{font-family:'Bebas Neue',sans-serif;font-size:1.55rem;color:var(--white);letter-spacing:0.03em;margin-bottom:0.8rem;line-height:1.04}
.svc-desc{font-size:0.84rem;color:rgba(255,255,255,0.44);line-height:1.76;margin-bottom:1.4rem}
.svc-link{font-size:0.7rem;font-weight:800;letter-spacing:0.12em;text-transform:uppercase;color:var(--teal);text-decoration:none;display:inline-flex;align-items:center;gap:7px;transition:gap 0.25s}
.svc-card:hover .svc-link{gap:12px}

/* ══ ASK MAPS / AI ════════════════════════════════════ */
.ai-s{background:linear-gradient(165deg,var(--navy-deep) 0%,var(--navy) 50%,#0C2940 100%)}
.ai-s .orb:nth-child(1){width:680px;height:680px;top:-240px;left:-200px}
.ai-s .orb:nth-child(2){width:540px;height:540px;bottom:-200px;right:-160px}
.ai-s .orb:nth-child(3){width:360px;height:360px;top:40%;right:30%}
.ai-inner{display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:center}
.ai-badge{display:inline-flex;align-items:center;gap:9px;background:rgba(61,191,174,0.1);border:1px solid rgba(61,191,174,0.4);border-radius:100px;padding:7px 18px;margin-bottom:1.6rem;font-size:0.66rem;font-weight:800;letter-spacing:0.13em;text-transform:uppercase;color:var(--teal)}
.ai-badge-dot{width:7px;height:7px;border-radius:50%;background:var(--teal);animation:pulse 1.2s ease-in-out infinite}
.ai-feats{display:flex;flex-direction:column;gap:1.6rem;margin-top:2.25rem}
.ai-feat{display:flex;gap:1.1rem}
.ai-check{width:30px;height:30px;min-width:30px;border-radius:50%;background:rgba(61,191,174,0.1);border:1px solid rgba(61,191,174,0.4);display:flex;align-items:center;justify-content:center;margin-top:2px}
.ai-check svg{width:12px;height:12px;stroke:var(--teal);fill:none;stroke-width:3}
.ai-ft{font-weight:700;font-size:0.92rem;color:var(--white);margin-bottom:4px}
.ai-fb{font-size:0.83rem;color:rgba(255,255,255,0.5);line-height:1.72}

/* Terminal */
.term{background:rgba(4,10,16,0.85);backdrop-filter:blur(8px);border:1px solid rgba(61,191,174,0.25);border-radius:16px;overflow:hidden;box-shadow:0 30px 90px rgba(0,0,0,0.5)}
.term-bar{background:rgba(255,255,255,0.04);padding:13px 18px;display:flex;align-items:center;gap:8px;border-bottom:1px solid rgba(255,255,255,0.06)}
.t-dot{width:11px;height:11px;border-radius:50%}
.term-label{margin-left:10px;font-size:0.64rem;letter-spacing:0.12em;text-transform:uppercase;color:rgba(255,255,255,0.3)}
.term-body{padding:1.6rem}
.t-query{background:rgba(61,191,174,0.06);border:1px solid rgba(61,191,174,0.18);border-radius:9px;padding:1.1rem;margin-bottom:1.1rem}
.t-query-label{font-size:0.6rem;letter-spacing:0.14em;text-transform:uppercase;color:var(--teal);margin-bottom:7px;display:flex;align-items:center;gap:7px}
.t-query-label::before{content:'';width:6px;height:6px;border-radius:50%;background:var(--teal);animation:pulse 1.4s infinite}
.t-query-text{font-family:'Lora',serif;font-size:0.9rem;font-style:italic;color:rgba(255,255,255,0.78)}
.t-resp{background:rgba(255,255,255,0.03);border-left:3px solid var(--teal);border-radius:6px;padding:1.1rem;margin-bottom:1.1rem}
.t-resp p{font-family:'Lora',serif;font-size:0.83rem;font-style:italic;color:rgba(255,255,255,0.62);line-height:1.78}
.t-results-label{font-size:0.64rem;color:rgba(255,255,255,0.32);margin-bottom:10px;letter-spacing:0.1em;text-transform:uppercase}
.t-row-r{display:flex;align-items:center;gap:11px;padding:10px 13px;border-radius:8px;margin-bottom:7px;background:rgba(255,255,255,0.03);border:1px solid rgba(255,255,255,0.06);transition:background 0.2s}
.t-row-r.winner{background:rgba(61,191,174,0.07);border-color:rgba(61,191,174,0.3)}
.tr-rank{font-family:'Bebas Neue',sans-serif;font-size:0.95rem;min-width:21px;color:rgba(255,255,255,0.25)}
.tr-dot{width:8px;height:8px;border-radius:50%}
.tr-dot.live{background:var(--teal);box-shadow:0 0 10px var(--teal);animation:pulse 1.6s infinite}
.tr-dot.off{background:rgba(255,255,255,0.12)}
.tr-name{font-size:0.83rem;flex:1}
.tr-badge{font-size:0.58rem;font-weight:700;letter-spacing:0.09em;padding:4px 11px;border-radius:100px;white-space:nowrap}
.tr-badge.win{background:rgba(61,191,174,0.16);color:var(--teal);border:1px solid rgba(61,191,174,0.35)}
.tr-badge.out{background:rgba(255,255,255,0.04);color:rgba(255,255,255,0.22)}
.term-foot{padding-top:1.1rem;border-top:1px solid rgba(255,255,255,0.05);font-size:0.64rem;color:rgba(255,255,255,0.2);text-align:center;font-style:italic}

/* ══ PROOF ════════════════════════════════════════════ */
.proof-s{background:var(--ink)}
.proof-s .orb:nth-child(1){width:560px;height:560px;top:-180px;right:-160px}
.proof-header{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:end;margin-bottom:3.5rem}
.proof-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}
.proof-card{background:linear-gradient(165deg,var(--surface2),rgba(16,32,47,0.4));border:1px solid var(--rule);border-radius:16px;padding:2.1rem;display:flex;flex-direction:column;transition:all 0.35s;position:relative;overflow:hidden}
.proof-card::after{content:'';position:absolute;top:-60px;right:-60px;width:160px;height:160px;border-radius:50%;background:radial-gradient(circle,rgba(61,191,174,0.06),transparent 70%)}
.proof-card:hover{border-color:rgba(61,191,174,0.32);transform:translateY(-4px)}
.proof-stars{display:flex;gap:3px;margin-bottom:1.3rem}
.proof-stars svg{width:14px;height:14px;fill:var(--teal)}
.proof-q{font-family:'Lora',serif;font-size:0.92rem;font-style:italic;color:rgba(255,255,255,0.68);line-height:1.88;flex:1;margin-bottom:1.6rem;position:relative;z-index:1}
.proof-author{display:flex;align-items:center;gap:13px;margin-top:auto}
.proof-av{width:42px;height:42px;border-radius:50%;background:linear-gradient(135deg,var(--navy-soft),var(--navy-deep));border:1px solid rgba(61,191,174,0.3);display:flex;align-items:center;justify-content:center;font-family:'Bebas Neue',sans-serif;font-size:1rem;color:var(--teal)}
.proof-name{font-weight:700;font-size:0.86rem;color:var(--white)}
.proof-role{font-size:0.72rem;color:rgba(255,255,255,0.35);margin-top:1px}
.gbadge{display:inline-flex;align-items:center;gap:9px;color:var(--teal);font-size:0.74rem;font-weight:800;text-decoration:none;border:1px solid rgba(61,191,174,0.3);padding:11px 22px;border-radius:8px;letter-spacing:0.09em;text-transform:uppercase;transition:all 0.25s}
.gbadge:hover{background:rgba(61,191,174,0.08);border-color:var(--teal)}

/* ══ AUDIT — navy w/ orbs ═════════════════════════════ */
.audit-s{background:linear-gradient(160deg,#0C2940 0%,var(--navy) 50%,var(--navy-deep) 100%)}
.audit-s .orb:nth-child(1){width:620px;height:620px;top:-200px;left:-180px}
.audit-s .orb:nth-child(2){width:480px;height:480px;bottom:-160px;right:-120px}
.audit-inner{display:grid;grid-template-columns:1.1fr 0.9fr;gap:5rem;align-items:center}
.ac-item{display:flex;gap:1.3rem;padding:1.35rem 0;border-bottom:1px solid rgba(255,255,255,0.1);transition:padding-left 0.3s}
.ac-item:hover{padding-left:8px}
.ac-item:last-child{border-bottom:none}
.ac-num{font-family:'Bebas Neue',sans-serif;font-size:1.5rem;color:var(--teal);min-width:30px;line-height:1.2}
.ac-head{font-weight:700;font-size:0.92rem;color:var(--white);margin-bottom:3px}
.ac-body{font-size:0.83rem;color:rgba(255,255,255,0.5);line-height:1.68}
.audit-photo-frame{border-radius:16px;overflow:hidden;aspect-ratio:3/4;position:relative;box-shadow:0 30px 90px rgba(0,0,0,0.4)}
.audit-photo-frame img{width:100%;height:100%;object-fit:cover;filter:saturate(0.8)}
.audit-ov{position:absolute;inset:0;background:linear-gradient(to bottom,transparent 45%,rgba(6,15,24,0.92) 100%)}
.audit-card{position:absolute;bottom:24px;left:24px;right:24px;background:var(--teal);border-radius:12px;padding:1.4rem 1.5rem;text-align:center;box-shadow:0 16px 48px rgba(61,191,174,0.3)}
.audit-card-val{font-size:0.66rem;font-weight:800;letter-spacing:0.14em;text-transform:uppercase;color:rgba(6,9,15,0.55)}
.audit-card-offer{font-family:'Bebas Neue',sans-serif;font-size:2.3rem;color:var(--ink);letter-spacing:0.04em;line-height:1}
.audit-card-sub{font-size:0.7rem;font-weight:600;color:rgba(6,9,15,0.6);margin-top:4px}

/* ══ FOUNDER ══════════════════════════════════════════ */
.founder-s{background:var(--surface)}
.founder-s .orb:nth-child(1){width:500px;height:500px;bottom:-160px;right:-140px}
.founder-inner{display:grid;grid-template-columns:260px 1fr;gap:5rem;align-items:start;max-width:1040px;margin:0 auto}
.founder-frame{width:176px;height:176px;border-radius:50%;overflow:hidden;border:2px solid var(--teal);margin-bottom:1.3rem;box-shadow:0 0 0 8px rgba(61,191,174,0.06),0 20px 60px rgba(0,0,0,0.4)}
.founder-frame img{width:100%;height:100%;object-fit:cover}
.founder-col{display:flex;flex-direction:column;align-items:center;text-align:center}
.founder-sig{font-family:'Dancing Script',cursive;font-size:2.1rem;color:var(--white);line-height:1}
.founder-title{font-size:0.62rem;letter-spacing:0.15em;text-transform:uppercase;color:rgba(255,255,255,0.32);margin-top:6px}
.founder-quote{font-family:'Lora',serif;font-size:1.04rem;font-style:italic;color:rgba(255,255,255,0.66);line-height:1.94}
.founder-quote p{margin-bottom:1.3rem}
.founder-quote strong{font-style:normal;font-weight:700;color:var(--white)}

/* ══ FINAL CTA — exact style you liked ════════════════ */
.cta-s{background:linear-gradient(160deg,var(--navy-deep) 0%,var(--navy) 50%,#0D2A3D 100%);position:relative;overflow:hidden;text-align:center;padding:8rem 2rem}
.cta-s .orb:nth-child(1){width:700px;height:700px;top:-260px;left:-200px}
.cta-s .orb:nth-child(2){width:580px;height:580px;bottom:-220px;right:-160px}
.cta-s .orb:nth-child(3){width:400px;height:400px;top:50%;left:60%}
.cta-inner{position:relative;z-index:2;max-width:780px;margin:0 auto}
.cta-eyebrow{font-size:0.66rem;font-weight:800;letter-spacing:0.22em;text-transform:uppercase;color:rgba(255,255,255,0.5);margin-bottom:1.75rem}
.cta-h2{font-family:'Bebas Neue',sans-serif;font-size:clamp(3rem,5.5vw,5.8rem);line-height:0.93;letter-spacing:0.02em;color:var(--white);margin-bottom:1.5rem}
.cta-h2 em{color:var(--teal);font-style:normal}
.cta-deck{font-family:'Lora',serif;font-size:1.05rem;font-style:italic;color:rgba(255,255,255,0.62);line-height:1.85;margin-bottom:2.75rem;max-width:600px;margin-left:auto;margin-right:auto}
.btn-ink{display:inline-flex;align-items:center;gap:10px;background:var(--ink);color:var(--white);padding:19px 44px;border-radius:10px;font-family:'Bebas Neue',sans-serif;font-size:1.08rem;letter-spacing:0.1em;text-decoration:none;transition:all 0.25s;box-shadow:0 14px 44px rgba(0,0,0,0.35)}
.btn-ink:hover{transform:translateY(-3px);box-shadow:0 20px 60px rgba(0,0,0,0.5)}
.cta-phone{margin-top:2rem;font-family:'Bebas Neue',sans-serif;letter-spacing:0.1em;color:rgba(255,255,255,0.42);font-size:0.85rem}
.cta-phone a{color:var(--white);text-decoration:none;font-size:1.9rem;display:block;margin-top:6px;letter-spacing:0.06em;transition:color 0.2s}
.cta-phone a:hover{color:var(--teal)}

/* ══ TRUST + FOOTER ═══════════════════════════════════ */
.trust-strip{background:var(--ink);border-top:1px solid var(--rule);padding:1.4rem 2rem}
.trust-strip-inner{max-width:1300px;margin:0 auto;display:flex;align-items:center;justify-content:center;gap:1.5rem;flex-wrap:wrap}
.tb{font-size:0.62rem;font-weight:800;letter-spacing:0.14em;text-transform:uppercase;color:rgba(255,255,255,0.22);border:1px solid rgba(255,255,255,0.08);padding:7px 15px;border-radius:6px;transition:all 0.25s}
.tb:hover{color:var(--teal);border-color:rgba(61,191,174,0.3)}
.footer{background:#04070B;border-top:1px solid var(--rule);padding:4.5rem 2rem 2rem}
.footer-inner{max-width:1300px;margin:0 auto}
.footer-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr 1fr;gap:2.5rem;margin-bottom:3rem}

/* ══ MARKET LOCK CHECK WIDGET ══════════════════════════════════════ */
.mlc{
  border-top:1px solid var(--rule);
  padding:2.5rem 0;
  display:grid;grid-template-columns:1fr 1fr;
  gap:2.5rem;align-items:center;
}
.mlc-label{
  display:flex;align-items:center;gap:12px;
  font-size:0.62rem;font-weight:800;letter-spacing:0.2em;
  text-transform:uppercase;color:var(--teal);margin-bottom:0.6rem;
}
.mlc-label::before{content:'';width:32px;height:1px;background:var(--teal)}
.mlc-h{
  font-family:'Bebas Neue',sans-serif;font-size:1.7rem;
  letter-spacing:0.03em;color:var(--white);margin-bottom:0.35rem;
}
.mlc-sub{font-size:0.82rem;color:rgba(255,255,255,0.4)}
.mlc-form{display:flex;gap:10px;flex-wrap:wrap}
.mlc-form select,.mlc-form input{
  background:rgba(255,255,255,0.04);
  border:1px solid rgba(255,255,255,0.12);
  border-radius:8px;padding:13px 16px;
  font-size:0.85rem;color:var(--white);outline:none;
  font-family:'Inter',sans-serif;flex:1;min-width:160px;
  transition:border-color 0.2s;
}
.mlc-form select{color:rgba(255,255,255,0.55);cursor:pointer}
.mlc-form input::placeholder{color:rgba(255,255,255,0.3)}
.mlc-form select:focus,.mlc-form input:focus{border-color:var(--teal)}
.mlc-btn{
  background:var(--teal);color:var(--ink);
  padding:13px 24px;border-radius:8px;
  font-family:'Bebas Neue',sans-serif;font-size:0.92rem;
  letter-spacing:0.1em;cursor:pointer;border:none;
  white-space:nowrap;transition:all 0.25s;
  display:inline-flex;align-items:center;gap:8px;
}
.mlc-btn:hover{background:#4FD4C2;transform:translateY(-1px)}
@media(max-width:900px){
  .mlc{grid-template-columns:1fr}
}
.fb-logo svg{flex-shrink:0}
.fb-logo{font-family:'Bebas Neue',sans-serif;font-size:1rem;letter-spacing:0.14em;color:var(--white);margin-bottom:0.85rem;display:flex;align-items:center;gap:9px}
.fb-badge{width:24px;height:24px;border-radius:5px;background:linear-gradient(135deg,var(--navy-soft),var(--navy-deep));border:1px solid rgba(61,191,174,0.4);display:flex;align-items:center;justify-content:center;font-size:0.56rem;font-weight:800;color:var(--teal)}
.fb-desc{font-size:0.8rem;color:rgba(255,255,255,0.28);line-height:1.78;max-width:270px;margin-bottom:1.4rem}
.fb-phone{font-family:'Bebas Neue',sans-serif;font-size:1.25rem;color:var(--teal);text-decoration:none;letter-spacing:0.06em;display:block}
.fb-email{font-size:0.78rem;color:rgba(255,255,255,0.25);text-decoration:none;margin-top:4px;display:block;transition:color 0.2s}
.fb-email:hover{color:var(--teal)}
.fcol h4{font-size:0.62rem;letter-spacing:0.18em;text-transform:uppercase;color:rgba(255,255,255,0.25);margin-bottom:1.1rem}
.fcol ul{list-style:none;display:flex;flex-direction:column;gap:0.65rem}
.fcol ul a{font-size:0.8rem;color:rgba(255,255,255,0.38);text-decoration:none;transition:color 0.2s}
.fcol ul a:hover{color:var(--teal)}
.footer-bottom{border-top:1px solid var(--rule);padding-top:1.6rem;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem}
.fcopy{font-size:0.7rem;color:rgba(255,255,255,0.16)}
.flegal{display:flex;gap:1.5rem}
.flegal a{font-size:0.7rem;color:rgba(255,255,255,0.16);text-decoration:none;transition:color 0.2s}
.flegal a:hover{color:var(--teal)}

/* ══ STICKY ═══════════════════════════════════════════ */
.sticky-cta{position:fixed;bottom:26px;right:26px;z-index:888;opacity:0;transform:translateY(20px);transition:all 0.4s}
.sticky-cta.show{opacity:1;transform:translateY(0)}
.sticky-cta a{display:flex;align-items:center;gap:10px;background:var(--teal);color:var(--ink);padding:15px 24px;border-radius:100px;font-weight:800;font-size:0.82rem;letter-spacing:0.07em;text-transform:uppercase;text-decoration:none;box-shadow:0 8px 36px rgba(61,191,174,0.45);transition:all 0.25s}
.sticky-cta a:hover{transform:translateY(-3px);box-shadow:0 14px 48px rgba(61,191,174,0.55)}
.sticky-cta svg{width:15px;height:15px;stroke:var(--ink);fill:none;stroke-width:2.5}

/* ══ RESPONSIVE ═══════════════════════════════════════ */
@media(max-width:1024px){
  .hero-inner,.problem-grid,.ai-inner,.audit-inner,.founder-inner,.proof-header,.why-top{grid-template-columns:1fr}
  .hero-orbital{display:none}
  .audit-photo-col{order:-1;max-width:420px}
  .why-grid,.svc-grid,.proof-grid{grid-template-columns:1fr 1fr}.footer-grid{grid-template-columns:1fr 1fr 1fr}
  .stats-band-inner{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:640px){
  .why-grid,.svc-grid,.proof-grid,.footer-grid,.stats-band-inner{grid-template-columns:1fr}
  .nav-links{display:none}
  .hero-h1{font-size:3.2rem}
  .s{padding:3.5rem 1.5rem}
}
@keyframes blink{0%,100%{opacity:1}50%{opacity:0}}

/* ══ ADVANCED INTERACTION LAYER ═══════════════════════ */

/* Cursor spotlight — soft glow that follows the mouse */
.spotlight{position:fixed;width:560px;height:560px;border-radius:50%;pointer-events:none;z-index:1;background:radial-gradient(circle,rgba(61,191,174,0.05) 0%,rgba(74,159,212,0.03) 35%,transparent 70%);transform:translate(-50%,-50%);transition:opacity 0.4s;opacity:0}
body:hover .spotlight{opacity:1}

/* Hero entrance choreography */
.hero-h1 .h1-pre,.hero-h1 .h1-l{display:block;opacity:0;transform:translateY(34px);animation:heroLine 0.9s cubic-bezier(0.16,1,0.3,1) forwards}
.hero-h1 .h1-pre{animation-delay:0.15s}
.hero-h1 .h1-l:nth-of-type(2){animation-delay:0.3s}
.hero-h1 .h1-l:nth-of-type(3){animation-delay:0.45s}
.hero-h1 .h1-l:nth-of-type(4){animation-delay:0.6s}
@keyframes heroLine{to{opacity:1;transform:translateY(0)}}

/* Copydoodle underline draws itself in on reveal */
.h1-accent .ul path{stroke-dasharray:130;stroke-dashoffset:130;animation:drawUL 1.1s cubic-bezier(0.65,0,0.35,1) 1.1s forwards}
@keyframes drawUL{to{stroke-dashoffset:0}}

/* Gradient shimmer on key accent words */
.shimmer{background:linear-gradient(110deg,var(--teal) 35%,#7FE7D9 50%,var(--teal) 65%);background-size:220% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:shimmerSlide 4.5s ease-in-out infinite}
@keyframes shimmerSlide{0%,100%{background-position:120% 0}50%{background-position:-20% 0}}

/* 3D tilt-ready cards */
.tilt{
  transform-style:preserve-3d;
  will-change:transform;
  transition:transform 0.35s cubic-bezier(0.16,1,0.3,1),box-shadow 0.35s ease;
}
.tilt:hover{
  box-shadow:0 24px 60px rgba(0,0,0,0.35),0 0 0 1px rgba(61,191,174,0.12);
  z-index:2;
}
.tilt-glow{
  position:absolute;inset:0;border-radius:inherit;
  background:radial-gradient(circle at var(--mx,50%) var(--my,50%),rgba(61,191,174,0.14),transparent 60%);
  opacity:0;transition:opacity 0.35s ease;
  pointer-events:none;z-index:1;
}
.tilt:hover .tilt-glow{opacity:1}
.tilt .tilt-inner{transform:translateZ(24px)}

/* Magnetic buttons */
.magnetic{
  will-change:transform;
  transition:transform 0.35s cubic-bezier(0.16,1,0.3,1);
  position:relative;
}
.magnetic:active{transition:transform 0.1s ease}

/* Terminal row hover */
.t-row-r{transition:background 0.2s,border-color 0.2s,transform 0.2s}
.t-row-r:hover{transform:translateX(4px)}
.t-row-r.winner:hover{background:rgba(61,191,174,0.12)}

/* Back to top */
.to-top{position:fixed;bottom:26px;left:26px;z-index:888;width:46px;height:46px;border-radius:50%;background:rgba(255,255,255,0.06);border:1px solid rgba(255,255,255,0.14);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;cursor:pointer;opacity:0;transform:translateY(16px);transition:all 0.35s;text-decoration:none}
.to-top.show{opacity:1;transform:translateY(0)}
.to-top:hover{border-color:var(--teal);background:rgba(61,191,174,0.1)}
.to-top svg{width:17px;height:17px;stroke:rgba(255,255,255,0.7);fill:none;stroke-width:2.2}
.to-top:hover svg{stroke:var(--teal)}

/* Section divider — soft diagonal sweep between dark/navy sections */
.sweep{height:90px;position:relative;overflow:hidden;margin-top:-1px}
.sweep svg{position:absolute;inset:0;width:100%;height:100%}

/* Stats: subtle ring behind numbers */
.stats-band-inner > div{position:relative;padding:1rem 0}
.stats-band-inner > div::before{content:'';position:absolute;top:50%;left:50%;transform:translate(-50%,-58%);width:118px;height:118px;border-radius:50%;border:1px solid rgba(255,255,255,0.08);pointer-events:none}

/* Eyebrow tracking-in animation when revealed */
.eyebrow.rv{letter-spacing:0.4em;transition:opacity 0.8s cubic-bezier(0.16,1,0.3,1),transform 0.8s cubic-bezier(0.16,1,0.3,1),letter-spacing 1.1s cubic-bezier(0.16,1,0.3,1)}
.eyebrow.rv.in{letter-spacing:0.24em}

/* Focus visibility for accessibility */
a:focus-visible{outline:2px solid var(--teal);outline-offset:3px;border-radius:4px}

/* Reduced motion: kill all the candy */
@media (prefers-reduced-motion: reduce){
  *,*::before,*::after{animation-duration:0.01ms!important;animation-iteration-count:1!important;transition-duration:0.01ms!important;scroll-behavior:auto!important}
  .rv{opacity:1;transform:none}
  .spotlight{display:none}
}


/* ══ GEOMETRIC FLOURISHES ═════════════════════════════ */
.geo{position:absolute;pointer-events:none;z-index:1;opacity:0.5}
.geo svg{display:block}
.geo-spin-slow{animation:geoSpin 40s linear infinite}
.geo-spin-rev{animation:geoSpin 55s linear infinite reverse}
@keyframes geoSpin{to{transform:rotate(360deg)}}
.geo-drift{animation:geoDrift 16s ease-in-out infinite}
@keyframes geoDrift{0%,100%{transform:translateY(0)}50%{transform:translateY(-14px)}}

/* dot grid pattern */
.geo-dots{width:140px;height:140px;background-image:radial-gradient(rgba(61,191,174,0.35) 1.2px,transparent 1.2px);background-size:18px 18px;mask-image:radial-gradient(circle,black 40%,transparent 75%)}

/* diagonal hash lines */
.geo-hash{width:120px;height:120px;background-image:repeating-linear-gradient(45deg,rgba(74,159,212,0.25) 0 1.5px,transparent 1.5px 11px);mask-image:linear-gradient(135deg,black 30%,transparent 85%)}

/* concentric crosshair */
.geo-cross svg circle{fill:none;stroke:rgba(61,191,174,0.3);stroke-width:1}
.geo-cross svg line{stroke:rgba(61,191,174,0.4);stroke-width:1}

/* rotated outline square */
.geo-square{width:72px;height:72px;border:1px solid rgba(74,159,212,0.3);transform:rotate(45deg)}
.geo-square::after{content:'';position:absolute;inset:12px;border:1px solid rgba(61,191,174,0.22)}

/* plus cluster */
.geo-plus{color:rgba(61,191,174,0.45);font-size:1rem;font-weight:300;letter-spacing:0.8em;line-height:1.9;font-family:'Inter',sans-serif}

/* corner bracket */
.geo-bracket{width:54px;height:54px;border-left:2px solid rgba(61,191,174,0.4);border-top:2px solid rgba(61,191,174,0.4)}
.geo-bracket.br{border-left:none;border-top:none;border-right:2px solid rgba(61,191,174,0.4);border-bottom:2px solid rgba(61,191,174,0.4)}

/* triangle outline */
.geo-tri svg path{fill:none;stroke:rgba(74,159,212,0.35);stroke-width:1.2}

/* section h2 accent: small geometric mark before key headlines */
.geo-mark{display:inline-block;width:10px;height:10px;background:var(--teal);transform:rotate(45deg);margin-right:14px;vertical-align:middle;opacity:0.9}

@media(max-width:768px){.geo{display:none}}


/* ══ PROBLEM: SEARCH RESULTS PANEL ════════════════════ */
.problem-search{position:relative;border-radius:14px;overflow:hidden;box-shadow:0 30px 80px rgba(0,0,0,0.45);background:linear-gradient(165deg,#0A1420,#0E1C2C);border:1px solid rgba(74,159,212,0.18);display:flex;flex-direction:column}
.ps-window{flex:1;display:flex;flex-direction:column}
.ps-bar{background:rgba(255,255,255,0.04);padding:12px 16px;display:flex;align-items:center;gap:8px;border-bottom:1px solid rgba(255,255,255,0.06)}
.ps-dot{width:10px;height:10px;border-radius:50%}
.ps-searchbox{margin-left:10px;flex:1;background:rgba(255,255,255,0.05);border:1px solid rgba(255,255,255,0.08);border-radius:100px;padding:7px 14px;font-size:0.74rem;color:rgba(255,255,255,0.6);display:flex;align-items:center;gap:8px;font-style:italic}
.ps-body{padding:1.4rem;display:flex;flex-direction:column;gap:9px;flex:1}
.ps-label{font-size:0.6rem;font-weight:800;letter-spacing:0.14em;text-transform:uppercase;color:var(--teal);display:flex;align-items:center;gap:7px;margin-bottom:4px}
.ps-row{display:flex;align-items:center;gap:12px;padding:13px 14px;border-radius:10px;background:rgba(255,255,255,0.03);border:1px solid rgba(255,255,255,0.06)}
.ps-row.ps-win{border-color:rgba(61,191,174,0.16)}
.ps-rank{width:28px;height:28px;min-width:28px;border-radius:50%;background:rgba(61,191,174,0.14);border:1px solid rgba(61,191,174,0.35);display:flex;align-items:center;justify-content:center;font-family:'Bebas Neue',sans-serif;font-size:0.95rem;color:var(--teal)}
.ps-name{font-weight:700;font-size:0.84rem;color:rgba(255,255,255,0.85)}
.ps-meta{font-size:0.68rem;color:rgba(255,255,255,0.38);margin-top:2px}
.ps-stars{color:var(--teal);letter-spacing:1px}
.ps-info{flex:1}
.ps-badge-call{font-size:0.58rem;font-weight:700;letter-spacing:0.06em;white-space:nowrap;background:rgba(61,191,174,0.12);color:var(--teal);border:1px solid rgba(61,191,174,0.3);padding:5px 10px;border-radius:100px}
.ps-badge-dead{font-size:0.58rem;font-weight:700;letter-spacing:0.06em;white-space:nowrap;background:rgba(216,68,47,0.12);color:#E8745F;border:1px solid rgba(216,68,47,0.35);padding:5px 10px;border-radius:100px}
.ps-fold{display:flex;align-items:center;gap:12px;padding:6px 0;font-size:0.6rem;font-weight:700;letter-spacing:0.12em;text-transform:uppercase;color:rgba(216,68,47,0.85);white-space:nowrap}
.ps-fold-line{flex:1;height:1px;background:repeating-linear-gradient(90deg,rgba(216,68,47,0.5) 0 7px,transparent 7px 14px)}
.ps-row.ps-lose{background:rgba(216,68,47,0.04);border-color:rgba(216,68,47,0.18);border-style:dashed}


/* ══ AUDIT SCORECARD ══════════════════════════════════ */
.audit-scorecard{border-radius:16px;overflow:hidden;background:linear-gradient(165deg,#0A1420,#0E1C2C);border:1px solid rgba(74,159,212,0.2);box-shadow:0 30px 90px rgba(0,0,0,0.4);display:flex;flex-direction:column}
.asc-head{padding:1.4rem 1.5rem 1.1rem;border-bottom:1px solid rgba(255,255,255,0.06)}
.asc-title{display:flex;align-items:center;gap:9px;font-weight:800;font-size:0.92rem;color:var(--white)}
.asc-sub{font-size:0.68rem;color:rgba(255,255,255,0.35);margin-top:4px;letter-spacing:0.06em}
.asc-body{padding:1.4rem 1.5rem;display:flex;flex-direction:column;gap:14px;flex:1}
.asc-row{display:flex;align-items:center;gap:12px}
.asc-metric{font-size:0.74rem;font-weight:600;color:rgba(255,255,255,0.6);min-width:148px}
.asc-track{flex:1;height:7px;background:rgba(255,255,255,0.06);border-radius:100px;overflow:hidden}
.asc-fill{height:100%;border-radius:100px}
.asc-grade{font-family:'Bebas Neue',sans-serif;font-size:1.05rem;min-width:22px;text-align:center}
.asc-grade.bad{color:#E8745F}
.asc-grade.mid{color:#E8A85F}
.asc-divider{height:1px;background:rgba(255,255,255,0.06);margin:4px 0}
.asc-verdict{display:flex;flex-direction:column;gap:4px}
.asc-verdict-label{font-size:0.6rem;font-weight:800;letter-spacing:0.12em;text-transform:uppercase;color:var(--teal)}
.asc-verdict-text{font-family:'Lora',serif;font-style:italic;font-size:0.88rem;color:rgba(255,255,255,0.7);line-height:1.6}

/* ══ FOUNDER MONOGRAM ═════════════════════════════════ */
.founder-mono{display:flex;align-items:center;justify-content:center;background:radial-gradient(circle at 36% 30%,#1d5a7d,#082030)}
.founder-mono span{font-family:'Bebas Neue',sans-serif;font-size:3.6rem;color:var(--teal);letter-spacing:0.05em;text-shadow:0 0 30px rgba(61,191,174,0.4)}


/* ══ LIVE BOOKING CHIPS (from PMM) ════════════════════════════════ */
.hero-chips{position:relative;display:flex;flex-direction:column;gap:10px;margin-bottom:2rem}
.hchip{display:inline-flex;align-items:center;gap:10px;background:rgba(8,17,32,0.7);backdrop-filter:blur(8px);border:1px solid rgba(61,191,174,0.3);border-radius:100px;padding:9px 16px;font-size:0.78rem;color:rgba(255,255,255,0.8);width:fit-content;transition:opacity 0.4s}
.hchip .pring{width:9px;height:9px;border-radius:50%;background:var(--teal);box-shadow:0 0 8px var(--teal);flex-shrink:0;animation:pulse 1.6s ease-in-out infinite}

/* ══ SCROLLING SEARCH BAR ══════════════════════════════════════════ */
.search-ill{background:rgba(12,26,46,0.7);border:1px solid rgba(74,159,212,0.2);border-radius:12px;padding:1.1rem 1.4rem;margin-top:1.5rem;display:flex;align-items:center;gap:12px}
.search-ill svg{flex-shrink:0;opacity:0.5}
.search-ill-text{font-size:0.88rem;color:rgba(255,255,255,0.6);font-style:italic}
#searchCycler{color:var(--teal);font-style:normal;font-weight:600}

/* ══ SVG FLOURISH DIVIDERS (from PMM) ═════════════════════════════ */
.svg-flourish{display:flex;justify-content:center;padding:16px 0 8px;pointer-events:none}
.svg-flourish svg{width:220px;height:28px;opacity:0.8}

/* ══ SPINNING PHONE BADGE (from PMM) ══════════════════════════════ */
.spin-badge{position:fixed;bottom:90px;right:24px;z-index:889;width:82px;height:82px;text-decoration:none;display:none}
.spin-badge .spin-ring{animation:spinOrb 16s linear infinite}
.spin-badge .badge-icon{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:34px;height:34px;border-radius:50%;background:var(--teal);display:flex;align-items:center;justify-content:center}
.spin-badge .badge-icon svg{stroke:var(--ink);width:16px;height:16px;fill:none;stroke-width:2.5}
.spin-badge.show{display:block}
@keyframes spinOrb{to{transform:rotate(360deg)}}

/* ══ LEAD MAGNET POPUP ═════════════════════════════════════════════ */
.lm-overlay{position:fixed;inset:0;background:rgba(0,0,0,0.72);backdrop-filter:blur(6px);z-index:9998;display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity 0.4s}
.lm-overlay.open{opacity:1;pointer-events:all}
.lm-modal{background:linear-gradient(165deg,var(--navy-deep),var(--navy));border:1px solid rgba(61,191,174,0.3);border-radius:18px;padding:2.5rem;max-width:540px;width:calc(100% - 40px);position:relative;transform:translateY(24px);transition:transform 0.4s;box-shadow:0 40px 100px rgba(0,0,0,0.6)}
.lm-overlay.open .lm-modal{transform:translateY(0)}
.lm-close{position:absolute;top:16px;right:18px;font-size:1.4rem;color:rgba(255,255,255,0.35);cursor:pointer;background:none;border:none;line-height:1;transition:color 0.2s}
.lm-close:hover{color:var(--white)}
.lm-eyebrow{font-size:0.65rem;font-weight:800;letter-spacing:0.2em;text-transform:uppercase;color:var(--teal);margin-bottom:0.75rem}
.lm-h{font-family:'Bebas Neue',sans-serif;font-size:2.1rem;line-height:0.95;letter-spacing:0.02em;color:var(--white);margin-bottom:0.75rem}
.lm-h em{color:var(--teal);font-style:normal}
.lm-sub{font-family:'Lora',serif;font-style:italic;font-size:0.9rem;color:rgba(255,255,255,0.55);line-height:1.7;margin-bottom:1.4rem}
.lm-list{display:flex;flex-direction:column;gap:6px;margin-bottom:1.5rem}
.lm-list li{display:flex;align-items:flex-start;gap:9px;font-size:0.83rem;color:rgba(255,255,255,0.72);list-style:none}
.lm-list li::before{content:'✓';color:var(--teal);font-weight:800;font-size:0.8rem;margin-top:1px;flex-shrink:0}
.lm-form{display:flex;flex-direction:column;gap:10px}
.lm-form input{background:rgba(255,255,255,0.06);border:1px solid rgba(255,255,255,0.14);border-radius:8px;padding:13px 16px;font-size:0.88rem;color:var(--white);outline:none;transition:border-color 0.2s;font-family:'Inter',sans-serif}
.lm-form input::placeholder{color:rgba(255,255,255,0.35)}
.lm-form input:focus{border-color:var(--teal)}
.lm-submit{background:var(--teal);color:var(--ink);padding:15px;border-radius:8px;font-family:'Bebas Neue',sans-serif;font-size:1.05rem;letter-spacing:0.1em;cursor:pointer;border:none;width:100%;transition:all 0.25s;position:relative;overflow:hidden}
.lm-submit::before{content:'';position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,0.25),transparent);transition:left 0.5s}
.lm-submit:hover::before{left:100%}
.lm-submit:hover{background:#4FD4C2;transform:translateY(-1px)}
.lm-micro{font-size:0.68rem;color:rgba(255,255,255,0.28);text-align:center;margin-top:6px}
.lm-success{display:none;text-align:center;padding:1rem}
.lm-success h3{font-family:'Bebas Neue',sans-serif;font-size:1.8rem;color:var(--teal);margin-bottom:0.5rem}
.lm-success p{font-size:0.88rem;color:rgba(255,255,255,0.6)}

/* ══ USP BAND ══════════════════════════════════════════════════════ */
.usp-band{background:var(--navy-deep);border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);padding:1.75rem 2rem}
.usp-band-inner{max-width:1300px;margin:0 auto;display:flex;align-items:center;justify-content:center;gap:2.5rem;flex-wrap:wrap}
.usp-item{display:flex;align-items:center;gap:10px;font-size:0.78rem;font-weight:600;letter-spacing:0.06em;text-transform:uppercase;color:rgba(255,255,255,0.6)}
.usp-item svg{width:16px;height:16px;stroke:var(--teal);fill:none;stroke-width:2;flex-shrink:0}
.usp-item strong{color:var(--white)}
.usp-sep{width:1px;height:28px;background:var(--rule)}


/* ══ SCROLL POPUP — centered modal, appears mid-scroll ════════════ */
.pop-overlay{
  position:fixed;inset:0;
  background:rgba(0,0,0,0.75);
  backdrop-filter:blur(8px);
  z-index:9998;
  display:flex;align-items:center;justify-content:center;
  opacity:0;pointer-events:none;
  transition:opacity 0.45s ease;
  padding:1.5rem;
}
.pop-overlay.open{opacity:1;pointer-events:all}
.pop-modal{
  background:linear-gradient(160deg,var(--navy-deep) 0%,#0E2A40 100%);
  border:1px solid rgba(61,191,174,0.35);
  border-radius:18px;
  padding:2.75rem 2.5rem 2.25rem;
  max-width:520px;width:100%;
  position:relative;
  transform:translateY(48px) scale(0.94);
  transition:transform 0.55s cubic-bezier(0.16,1,0.3,1);
  box-shadow:0 40px 100px rgba(0,0,0,0.6),0 0 0 1px rgba(61,191,174,0.08);
}
.pop-overlay.open .pop-modal{transform:translateY(0) scale(1)}
.pop-close{
  position:absolute;top:14px;right:16px;
  width:38px;height:38px;border-radius:50%;
  background:rgba(255,255,255,0.06);
  border:1px solid rgba(255,255,255,0.1);
  color:rgba(255,255,255,0.45);
  font-size:1.1rem;cursor:pointer;
  display:flex;align-items:center;justify-content:center;
  transition:background 0.2s,color 0.2s,border-color 0.2s;line-height:1;
  z-index:10;
}
.pop-close:hover{background:rgba(255,255,255,0.12);color:var(--white)}
.pop-eyebrow{
  font-size:0.62rem;font-weight:800;letter-spacing:0.2em;
  text-transform:uppercase;color:var(--teal);
  margin-bottom:0.7rem;
  display:flex;align-items:center;gap:8px;
}
.pop-eyebrow::before{
  content:'';width:7px;height:7px;border-radius:50%;
  background:var(--teal);flex-shrink:0;animation:pulse 1.6s infinite
}
.pop-h{
  font-family:'Bebas Neue',sans-serif;
  font-size:2.4rem;line-height:0.93;letter-spacing:0.02em;
  color:var(--white);margin-bottom:0.65rem;
}
.pop-h em{color:var(--teal);font-style:normal}
.pop-sub{
  font-family:'Lora',serif;font-style:italic;
  font-size:0.9rem;color:rgba(255,255,255,0.55);line-height:1.75;
  margin-bottom:1.4rem;
  border-top:1px solid var(--rule);padding-top:1rem;
}
.pop-sub strong{font-style:normal;color:rgba(255,255,255,0.88)}
.pop-form{display:flex;flex-direction:column;gap:9px}
.pop-form input{
  background:rgba(255,255,255,0.05);
  border:1px solid rgba(255,255,255,0.12);
  border-radius:8px;padding:12px 16px;
  font-size:0.88rem;color:var(--white);outline:none;
  transition:border-color 0.2s;font-family:'Inter',sans-serif;
}
.pop-form input::placeholder{color:rgba(255,255,255,0.3)}
.pop-form input:focus{border-color:var(--teal);background:rgba(61,191,174,0.04)}
.pop-submit{
  background:var(--teal);color:var(--ink);
  padding:15px;border-radius:8px;
  font-family:'Bebas Neue',sans-serif;font-size:1.05rem;
  letter-spacing:0.1em;cursor:pointer;border:none;
  width:100%;transition:all 0.25s;margin-top:3px;
  position:relative;overflow:hidden;
}
.pop-submit::before{
  content:'';position:absolute;top:0;left:-100%;
  width:100%;height:100%;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,0.22),transparent);
  transition:left 0.55s;
}
.pop-submit:hover::before{left:100%}
.pop-submit:hover{background:#4FD4C2;transform:translateY(-1px)}
.pop-micro{font-size:0.65rem;color:rgba(255,255,255,0.25);text-align:center;margin-top:6px;line-height:1.5}
.pop-success{display:none;text-align:center;padding:1rem 0}
.pop-success h3{font-family:'Bebas Neue',sans-serif;font-size:2rem;color:var(--teal);margin-bottom:0.5rem}
.pop-success p{font-size:0.88rem;color:rgba(255,255,255,0.55);line-height:1.7}

/* ══ MID-PAGE INLINE FORM (between testimonials & audit) ══════════ */
.inline-lm{
  background:linear-gradient(160deg,var(--navy-deep) 0%,var(--navy) 60%,#0C2A3E 100%);
  padding:5rem 2rem;position:relative;overflow:hidden;
}
.inline-lm .orb:nth-child(1){width:500px;height:500px;top:-160px;right:-140px}
.inline-lm .orb:nth-child(2){width:400px;height:400px;bottom:-130px;left:-120px}
.inline-lm-inner{
  max-width:780px;margin:0 auto;
  display:grid;grid-template-columns:1fr 1fr;
  gap:4rem;align-items:center;position:relative;z-index:2;
}
.ilm-left{}
.ilm-h{
  font-family:'Bebas Neue',sans-serif;
  font-size:clamp(2.2rem,4vw,3.4rem);
  line-height:0.92;letter-spacing:0.02em;
  color:var(--white);margin-bottom:0.85rem;
}
.ilm-h em{color:var(--teal);font-style:normal}
.ilm-deck{
  font-family:'Lora',serif;font-style:italic;
  font-size:0.95rem;color:rgba(255,255,255,0.55);
  line-height:1.82;margin-bottom:1.4rem;
}
.ilm-deck strong{font-style:normal;color:rgba(255,255,255,0.88)}
.ilm-points{display:flex;flex-direction:column;gap:8px}
.ilm-pt{
  display:flex;align-items:flex-start;gap:10px;
  font-size:0.83rem;color:rgba(255,255,255,0.65);
}
.ilm-pt::before{
  content:'→';color:var(--teal);font-weight:800;
  font-size:0.82rem;flex-shrink:0;margin-top:1px;
}
.ilm-right{
  background:rgba(6,9,15,0.45);
  border:1px solid rgba(61,191,174,0.25);
  border-radius:14px;padding:1.75rem;
  backdrop-filter:blur(4px);
}
.ilm-form-h{
  font-family:'Bebas Neue',sans-serif;font-size:1.3rem;
  letter-spacing:0.04em;color:var(--white);
  margin-bottom:0.35rem;
}
.ilm-form-sub{font-size:0.72rem;color:rgba(255,255,255,0.35);margin-bottom:1.1rem}
.ilm-form{display:flex;flex-direction:column;gap:8px}
.ilm-form input{
  background:rgba(255,255,255,0.05);
  border:1px solid rgba(255,255,255,0.1);
  border-radius:7px;padding:11px 14px;
  font-size:0.85rem;color:var(--white);outline:none;
  transition:border-color 0.2s;font-family:'Inter',sans-serif;
}
.ilm-form input::placeholder{color:rgba(255,255,255,0.28)}
.ilm-form input:focus{border-color:var(--teal)}
.ilm-submit{
  background:var(--teal);color:var(--ink);
  padding:13px;border-radius:7px;
  font-family:'Bebas Neue',sans-serif;font-size:0.95rem;
  letter-spacing:0.1em;cursor:pointer;border:none;
  width:100%;transition:all 0.22s;
}
.ilm-submit:hover{background:#4FD4C2;transform:translateY(-1px)}
.ilm-micro{font-size:0.62rem;color:rgba(255,255,255,0.22);text-align:center;margin-top:5px;line-height:1.5}
.ilm-success{display:none;text-align:center;padding:1.25rem 0}
.ilm-success h4{font-family:'Bebas Neue',sans-serif;font-size:1.6rem;color:var(--teal);margin-bottom:0.4rem}
.ilm-success p{font-size:0.82rem;color:rgba(255,255,255,0.5);line-height:1.7}
@media(max-width:768px){
  .inline-lm-inner{grid-template-columns:1fr}
  .pop-modal{padding:1.75rem 1.5rem}
  .pop-h{font-size:1.9rem}
}


/* ══ HERO MAPS/ASK MAPS™ TYPING WIDGET ════════════════════════════ */
.maps-widget{
  background:rgba(8,17,32,0.65);
  backdrop-filter:blur(8px);
  border:1px solid rgba(61,191,174,0.3);
  border-radius:12px;
  overflow:hidden;
  margin-bottom:2rem;
  max-width:none;
  margin-bottom:0;
}
.mw-bar{
  display:flex;align-items:center;gap:8px;
  padding:9px 14px;
  background:rgba(255,255,255,0.04);
  border-bottom:1px solid rgba(255,255,255,0.06);
  font-size:0.68rem;font-weight:700;letter-spacing:0.08em;
  text-transform:uppercase;color:rgba(255,255,255,0.5);
}
.mw-bar svg{stroke:var(--teal);flex-shrink:0}
.mw-live{
  margin-left:auto;display:flex;align-items:center;gap:6px;
  color:var(--teal);font-size:0.62rem;letter-spacing:0.12em;
}
.mw-body{padding:14px 16px}
.mw-pre{
  display:block;font-size:0.72rem;color:rgba(255,255,255,0.45);
  margin-bottom:6px;line-height:1.5;
}
.mw-type{
  font-family:'Bebas Neue',sans-serif;
  font-size:1.5rem;letter-spacing:0.03em;
  color:var(--teal);line-height:1.1;
  min-height:1.3em;
}
.mw-cursor{color:var(--teal);animation:blink 0.75s step-end infinite}


/* ══ TESTIMONIAL AVATAR — supports photo or initials ══════════════ */
.proof-av{overflow:hidden;position:relative}
.proof-av img{width:100%;height:100%;object-fit:cover;border-radius:50%}


/* ══ AERIAL MAP / DRONE-PAN BACKGROUND ════════════════════════════ */
.aerial-wrap{
  position:absolute;inset:0;overflow:hidden;
  mask-image:radial-gradient(ellipse 90% 80% at 50% 35%,black 35%,transparent 80%);
  -webkit-mask-image:radial-gradient(ellipse 90% 80% at 50% 35%,black 35%,transparent 80%);
  pointer-events:none;
}
.aerial-pan{
  position:absolute;
  top:-10%;left:-10%;width:140%;height:140%;
  animation:aerialDrift 90s ease-in-out infinite alternate;
  opacity:0.4;
}
.aerial-svg{width:100%;height:100%}
.aerial-svg .block{fill:rgba(74,159,212,0.07)}
.aerial-svg .block-alt{fill:rgba(61,191,174,0.05)}
.aerial-svg .road{stroke:rgba(255,255,255,0.05);stroke-width:3;fill:none}
.aerial-svg .road-minor{stroke:rgba(255,255,255,0.03);stroke-width:1.4;fill:none}
.aerial-svg .green{fill:rgba(61,191,174,0.06)}
.aerial-pin{animation:pinPulse 3.2s ease-in-out infinite}
.aerial-pin.p2{animation-delay:1.1s}
.aerial-pin.p3{animation-delay:2.2s}
.aerial-pin-core{fill:var(--teal);filter:drop-shadow(0 0 6px rgba(61,191,174,0.7))}
.aerial-pin-ring{fill:none;stroke:var(--teal);stroke-width:1.5;opacity:0.5}

@keyframes aerialDrift{
  0%   {transform:translate(0,0) scale(1);}
  50%  {transform:translate(-3%,-2%) scale(1.06);}
  100% {transform:translate(2%,1%) scale(1.02);}
}
@keyframes pinPulse{
  0%,100%{transform:scale(1);opacity:1}
  50%{transform:scale(1.6);opacity:0}
}
@media(max-width:768px){
  .aerial-wrap{display:none}
}

/* ── Optional: real drone video layer (for Sunny / WordPress) ──────
   To use real drone footage, add a <video> with the .aerial-video
   class inside .aerial-wrap, replacing or layering with .aerial-pan.
─────────────────────────────────────────────────────────────────── */
.aerial-video{
  position:absolute;inset:0;width:100%;height:100%;
  object-fit:cover;opacity:0.35;
  animation:aerialDrift 90s ease-in-out infinite alternate;
}


/* ══ SLIDING ARROW CTAs ════════════════════════════════════════════ */
.btn-teal,.btn-line,.btn-ink,.svc-link,.gbadge{
  position:relative;
  overflow:hidden;
}
.btn-teal .arrow,.btn-line .arrow,.btn-ink .arrow,.svc-link .arrow{
  display:inline-block;
  transition:transform 0.35s cubic-bezier(0.16,1,0.3,1);
  margin-left:4px;
}
.btn-teal:hover .arrow,.btn-line:hover .arrow,.btn-ink:hover .arrow,.svc-link:hover .arrow{
  transform:translateX(5px);
}
/* Auto-detect trailing arrow glyphs and animate them */
.svc-link{transition:gap 0.3s cubic-bezier(0.16,1,0.3,1),color 0.25s ease}
.svc-link:hover{gap:10px}


/* ══════════════════════════════════════════════════════
   INTERIOR PAGES
══════════════════════════════════════════════════════ */
.page-hero{background:linear-gradient(165deg,var(--navy-deep) 0%,var(--navy) 55%,#0D2A3D 100%);position:relative;overflow:hidden;padding:11rem 2rem 5rem;text-align:center}
.page-hero .orb{position:absolute;border-radius:50%;filter:blur(80px);opacity:0.5}
.page-hero .orb1{width:520px;height:520px;top:-180px;left:-140px;background:radial-gradient(circle,rgba(74,159,212,0.35),transparent 70%)}
.page-hero .orb2{width:440px;height:440px;bottom:-160px;right:-120px;background:radial-gradient(circle,rgba(61,191,174,0.3),transparent 70%)}
.page-hero-inner{position:relative;z-index:2;max-width:860px;margin:0 auto}
.page-eyebrow{display:inline-flex;align-items:center;gap:10px;font-size:0.65rem;font-weight:800;letter-spacing:0.2em;text-transform:uppercase;color:var(--teal);margin-bottom:1.25rem;justify-content:center}
.page-eyebrow::before{content:'';width:32px;height:1px;background:var(--teal)}
.page-title{font-family:'Bebas Neue',sans-serif;font-size:clamp(2.6rem,5.5vw,4.6rem);line-height:0.98;letter-spacing:0.02em;color:var(--white);margin-bottom:1rem}
.page-title em{color:var(--teal);font-style:normal}
.page-subtitle{font-family:'Lora',serif;font-style:italic;font-size:1.02rem;color:rgba(255,255,255,0.55);line-height:1.85;max-width:680px;margin:0 auto}

.content-area{background:var(--ink);padding:4.5rem 2rem}
.content-inner{max-width:880px;margin:0 auto}
.content-inner.wide{max-width:1200px}
.entry-content h2{font-family:'Bebas Neue',sans-serif;font-size:1.9rem;letter-spacing:0.03em;color:var(--white);margin:2.5rem 0 1rem;line-height:1.05}
.entry-content h2:first-child{margin-top:0}
.entry-content h3{font-family:'Bebas Neue',sans-serif;font-size:1.35rem;letter-spacing:0.03em;color:var(--teal);margin:2rem 0 0.75rem;line-height:1.1}
.entry-content p{font-size:0.95rem;color:rgba(255,255,255,0.6);line-height:1.9;margin-bottom:1.25rem}
.entry-content p strong{color:rgba(255,255,255,0.92)}
.entry-content ul{margin:0 0 1.5rem 0;display:flex;flex-direction:column;gap:0.6rem;list-style:none}
.entry-content ul li{display:flex;align-items:flex-start;gap:10px;font-size:0.92rem;color:rgba(255,255,255,0.6);line-height:1.7}
.entry-content ul li::before{content:'→';color:var(--teal);font-weight:800;flex-shrink:0;margin-top:1px}
.entry-content a{color:var(--teal);text-decoration:underline;text-underline-offset:3px}

/* FAQ accordion */
.faq-list{display:flex;flex-direction:column;gap:0.75rem}
.faq-item{background:var(--surface);border:1px solid var(--rule);border-radius:10px;overflow:hidden;transition:border-color 0.3s}
.faq-item:hover{border-color:rgba(61,191,174,0.25)}
.faq-q{padding:1.15rem 1.4rem;display:flex;justify-content:space-between;align-items:center;cursor:pointer;font-weight:700;font-size:0.92rem;color:var(--white);gap:1rem}
.faq-q .chev{flex-shrink:0;transition:transform 0.3s cubic-bezier(0.16,1,0.3,1);color:var(--teal)}
.faq-item.open .chev{transform:rotate(180deg)}
.faq-a{max-height:0;overflow:hidden;transition:max-height 0.4s cubic-bezier(0.16,1,0.3,1)}
.faq-item.open .faq-a{max-height:400px}
.faq-a-inner{padding:0 1.4rem 1.25rem;font-size:0.88rem;color:rgba(255,255,255,0.55);line-height:1.8}
.faq-cat{font-size:0.62rem;font-weight:800;letter-spacing:0.18em;text-transform:uppercase;color:var(--teal);margin:2.5rem 0 1rem}
.faq-cat:first-child{margin-top:0}

/* Card grid for Who We Help / Services index */
.idx-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.25rem;margin-top:1rem}
.idx-card{background:linear-gradient(160deg,var(--surface2),rgba(16,32,47,0.5));border:1px solid var(--rule);border-radius:14px;padding:1.75rem;text-decoration:none;display:block;transition:all 0.3s}
.idx-card:hover{border-color:rgba(61,191,174,0.35);transform:translateY(-3px)}
.idx-card-icon{width:42px;height:42px;border-radius:10px;background:rgba(61,191,174,0.1);display:flex;align-items:center;justify-content:center;margin-bottom:1rem}
.idx-card-icon svg{width:20px;height:20px;stroke:var(--teal);fill:none;stroke-width:2}
.idx-card-title{font-family:'Bebas Neue',sans-serif;font-size:1.25rem;letter-spacing:0.03em;color:var(--white);margin-bottom:0.5rem}
.idx-card-body{font-size:0.85rem;color:rgba(255,255,255,0.45);line-height:1.7;margin-bottom:0.85rem}
.idx-card-link{font-size:0.75rem;font-weight:800;letter-spacing:0.08em;text-transform:uppercase;color:var(--teal)}

/* Stat row for Investors / Results pages */
.stat-row{display:grid;grid-template-columns:repeat(4,1fr);gap:1.25rem;margin:2rem 0 2.5rem;text-align:center}
.stat-row-item{background:var(--surface);border:1px solid var(--rule);border-radius:12px;padding:1.5rem 1rem}
.stat-row-num{font-family:'Bebas Neue',sans-serif;font-size:2.2rem;color:var(--teal);line-height:1}
.stat-row-label{font-size:0.72rem;color:rgba(255,255,255,0.4);margin-top:0.4rem;letter-spacing:0.04em}

/* Job listing cards (Careers) */
.job-card{background:var(--surface);border:1px solid var(--rule);border-radius:12px;padding:1.5rem 1.75rem;display:flex;justify-content:space-between;align-items:center;gap:1.5rem;margin-bottom:0.85rem;transition:border-color 0.3s}
.job-card:hover{border-color:rgba(61,191,174,0.3)}
.job-title{font-family:'Bebas Neue',sans-serif;font-size:1.2rem;color:var(--white);letter-spacing:0.02em;margin-bottom:0.3rem}
.job-meta{font-size:0.78rem;color:rgba(255,255,255,0.4)}
.job-apply{font-size:0.75rem;font-weight:800;letter-spacing:0.08em;text-transform:uppercase;color:var(--teal);text-decoration:none;white-space:nowrap;border:1px solid rgba(61,191,174,0.3);padding:9px 18px;border-radius:7px;transition:all 0.25s}
.job-apply:hover{background:rgba(61,191,174,0.08)}

/* CTA block reusable on interior pages */
.page-cta{background:linear-gradient(160deg,var(--navy-deep) 0%,var(--navy) 100%);border-radius:16px;padding:3rem 2.5rem;text-align:center;margin-top:3rem;border:1px solid rgba(61,191,174,0.2)}
.page-cta h3{font-family:'Bebas Neue',sans-serif;font-size:1.9rem;color:var(--white);margin-bottom:0.6rem;letter-spacing:0.02em}
.page-cta p{font-size:0.92rem;color:rgba(255,255,255,0.5);margin-bottom:1.5rem}

@media(max-width:768px){
  .idx-grid,.stat-row{grid-template-columns:1fr 1fr}
  .page-hero{padding:9rem 1.5rem 4rem}
}
@media(max-width:560px){
  .idx-grid,.stat-row{grid-template-columns:1fr}
  .job-card{flex-direction:column;align-items:flex-start}
}


/* ══ MIKE CAPUZZI-STYLE COPYDOODLES ════════════════════════════════ */
.doodle{position:absolute;color:var(--teal);pointer-events:none;overflow:visible}
.doodle path,.doodle rect{stroke-dasharray:var(--dl,100);stroke-dashoffset:var(--dl,100);animation:drawDoodle 1.1s cubic-bezier(0.65,0,0.35,1) forwards}
@keyframes drawDoodle{to{stroke-dashoffset:0}}
.doodle-circle{width:128%;height:170%;top:-35%;left:-14%;z-index:0}
.doodle-underline{width:108%;height:14px;left:-4%;bottom:-9px}
.doodle-arrow{width:64px;height:50px}
.doodle-star{width:30px;height:30px;color:var(--teal)}
.doodle-check{
  position:static;
  width:18px;height:18px;
  min-width:18px;
  color:var(--teal);
  flex-shrink:0;
  overflow:visible;
}
.doodle-arrow-down{width:54px;height:54px}

/* Popup-specific doodle placements */
.pop-h{position:relative;z-index:1}
.pop-h .doodle-circle{animation-delay:0.3s}
.pop-eyebrow-wrap{position:relative;display:inline-block}
.pop-arrow-to-form{position:absolute;right:-58px;top:50%;color:var(--teal);transform:rotate(8deg)}
.pop-benefit{display:flex;align-items:flex-start;gap:10px;font-size:0.83rem;color:rgba(255,255,255,0.65);line-height:1.6;margin-bottom:8px}
.pop-benefit .doodle-check{margin-top:1px}
.pop-benefits{margin:1.1rem 0 1.3rem}
@media(max-width:600px){.pop-arrow-to-form{display:none}}


/* ══ BREADCRUMBS ══════════════════════════════════════════════════ */
.breadcrumb{display:flex;align-items:center;justify-content:center;gap:8px;font-size:0.74rem;color:rgba(255,255,255,0.35);margin-bottom:1.5rem;flex-wrap:wrap}
.breadcrumb a{color:rgba(255,255,255,0.45);text-decoration:none;transition:color 0.2s}
.breadcrumb a:hover{color:var(--teal)}
.breadcrumb .sep{color:rgba(255,255,255,0.2)}
.breadcrumb .current{color:var(--teal)}

/* ══ RELATED LINKS ════════════════════════════════════════════════ */
.related-links{margin-top:3rem;padding-top:2.5rem;border-top:1px solid var(--rule)}
.related-links h3{font-family:'Bebas Neue',sans-serif;font-size:1.3rem;letter-spacing:0.03em;color:var(--white);margin-bottom:1.25rem}
.related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}
.related-card{background:var(--surface);border:1px solid var(--rule);border-radius:10px;padding:1.25rem;text-decoration:none;transition:all 0.3s;display:block}
.related-card:hover{border-color:rgba(61,191,174,0.3);transform:translateY(-2px)}
.related-card-cat{font-size:0.6rem;font-weight:800;letter-spacing:0.14em;text-transform:uppercase;color:var(--teal);margin-bottom:0.4rem}
.related-card-title{font-family:'Bebas Neue',sans-serif;font-size:1.05rem;color:var(--white);letter-spacing:0.02em;line-height:1.15}
@media(max-width:768px){.related-grid{grid-template-columns:1fr}}


/* ══ HERO REPORT PREVIEW CARD ══════════════════════════════════════ */
.hero-report-card{
  background:linear-gradient(160deg,rgba(14,42,64,0.9),rgba(11,21,33,0.95));
  border:1px solid rgba(61,191,174,0.28);
  border-radius:14px;
  padding:1.5rem 1.6rem;
  margin-top:1.5rem;
  max-width:380px;
  position:relative;
  backdrop-filter:blur(6px);
  box-shadow:0 20px 50px rgba(0,0,0,0.35);
}
.hrc-eyebrow{
  font-size:0.62rem;font-weight:800;letter-spacing:0.16em;text-transform:uppercase;
  color:var(--teal);margin-bottom:0.55rem;
}
.hrc-title{
  font-family:'Bebas Neue',sans-serif;font-size:1.35rem;letter-spacing:0.02em;
  color:var(--white);margin-bottom:0.9rem;line-height:1.1;
}
.hrc-list{display:flex;flex-direction:column;gap:9px;margin-bottom:1rem}
.hrc-item{display:flex;align-items:flex-start;gap:9px;font-size:0.8rem;color:rgba(255,255,255,0.6);line-height:1.55}
.hrc-item svg{flex-shrink:0;margin-top:2px;stroke:var(--teal);width:14px;height:14px}
.hrc-item strong{color:rgba(255,255,255,0.9)}
.hrc-foot{
  display:flex;align-items:center;justify-content:space-between;
  border-top:1px solid var(--rule);padding-top:0.85rem;
  font-size:0.7rem;color:rgba(255,255,255,0.35);
}
.hrc-price{
  font-family:'Bebas Neue',sans-serif;font-size:1.6rem;color:var(--teal);
  border:2px solid var(--teal);border-radius:50%;
  width:46px;height:46px;display:flex;align-items:center;justify-content:center;
  transform:rotate(-6deg);
}
@media(max-width:1024px){.hero-report-card{max-width:none}}


/* ══ US VS THEM COMPARISON ══════════════════════════════════════ */
.compare-s{background:var(--surface);position:relative;overflow:hidden;padding:5rem 2rem}
.compare-grid{
  max-width:1100px;margin:0 auto;
  display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:0;
  border-radius:16px;overflow:hidden;
  border:1px solid var(--rule);
}
.cmp-col{padding:2rem 1.75rem}
.cmp-label-col{background:var(--ink)}
.cmp-them-col{background:rgba(255,255,255,0.02);border-left:1px solid var(--rule)}
.cmp-us-col{background:linear-gradient(160deg,var(--navy-deep),var(--navy));border-left:1px solid rgba(61,191,174,0.25);position:relative}
.cmp-us-col::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--teal),var(--blue-mid))}
.cmp-head{font-family:'Bebas Neue',sans-serif;font-size:1.3rem;letter-spacing:0.04em;margin-bottom:0.3rem}
.cmp-head-sub{font-size:0.7rem;color:rgba(255,255,255,0.35);letter-spacing:0.04em}
.cmp-them-col .cmp-head{color:rgba(255,255,255,0.5)}
.cmp-us-col .cmp-head{color:var(--teal)}
.cmp-label-col .cmp-head{visibility:hidden;height:1.3rem}
.cmp-label-col .cmp-head-sub{visibility:hidden}
.cmp-row{display:flex;align-items:flex-start;gap:10px;padding:1rem 0;border-top:1px solid var(--rule);font-size:0.85rem;line-height:1.55}
.cmp-label-col .cmp-row{color:rgba(255,255,255,0.7);font-weight:600}
.cmp-them-col .cmp-row{color:rgba(255,255,255,0.4)}
.cmp-us-col .cmp-row{color:rgba(255,255,255,0.85)}
.cmp-row:first-of-type{border-top:none}
.cmp-icon{flex-shrink:0;width:16px;height:16px;margin-top:2px}
.cmp-icon.x{stroke:#E8745F}
.cmp-icon.check{stroke:var(--teal)}
@media(max-width:900px){
  .compare-grid{grid-template-columns:1fr}
  .cmp-label-col{display:none}
  .cmp-them-col,.cmp-us-col{border-left:none;border-top:1px solid var(--rule)}
  .cmp-them-col .cmp-row::before,.cmp-us-col .cmp-row::before{content:attr(data-label);display:block;font-size:0.6rem;font-weight:800;letter-spacing:0.12em;text-transform:uppercase;color:rgba(255,255,255,0.3);margin-bottom:4px}
}


/* ══ DIAGONAL LINE FLOURISH ══════════════════════════════════════ */
.diag-flourish{
  position:absolute;
  width:160px;height:160px;
  pointer-events:none;
  opacity:0.3;
  background:repeating-linear-gradient(
    45deg,
    rgba(61,191,174,0.08) 0px,
    rgba(61,191,174,0.08) 1px,
    transparent 1px,
    transparent 18px
  );
  -webkit-mask-image:radial-gradient(circle at 70% 70%, transparent 0%, transparent 25%, black 70%);
  mask-image:radial-gradient(circle at 70% 70%, transparent 0%, transparent 25%, black 70%);
}
.diag-flourish.sm{width:120px;height:120px}
.diag-flourish.lg{width:240px;height:240px}
@media(max-width:768px){.diag-flourish{display:none}}


/* ══ TRUEMARKETING ROI™ CALCULATOR ════════════════════════════════ */
.tmroi{
  border-top:1px solid var(--rule);
  padding:2.5rem 0;
  display:grid;grid-template-columns:0.95fr 1.05fr;
  gap:2.5rem;align-items:start;
}
.tmroi-label{
  display:flex;align-items:center;gap:12px;
  font-size:0.62rem;font-weight:800;letter-spacing:0.2em;
  text-transform:uppercase;color:var(--teal);margin-bottom:0.6rem;
}
.tmroi-label::before{content:'';width:32px;height:1px;background:var(--teal)}
.tmroi-h{
  font-family:'Bebas Neue',sans-serif;font-size:1.7rem;
  letter-spacing:0.03em;color:var(--white);margin-bottom:0.5rem;
}
.tmroi-sub{font-size:0.82rem;color:rgba(255,255,255,0.4);line-height:1.7;margin-bottom:1rem;max-width:420px}
.tmroi-sub strong{color:rgba(255,255,255,0.7)}
.tmroi-card{
  background:rgba(255,255,255,0.03);
  border:1px solid rgba(255,255,255,0.08);
  border-radius:12px;
  padding:1.5rem;
}
.tmroi-row{margin-bottom:1rem}
.tmroi-row label{
  display:block;font-size:0.7rem;font-weight:700;letter-spacing:0.06em;
  text-transform:uppercase;color:rgba(255,255,255,0.45);margin-bottom:0.4rem;
}
.tmroi-row .tmroi-input-wrap{position:relative}
.tmroi-row .tmroi-input-wrap span{
  position:absolute;left:14px;top:50%;transform:translateY(-50%);
  color:rgba(255,255,255,0.35);font-size:0.9rem;pointer-events:none;
}
.tmroi-row input{
  width:100%;
  background:rgba(255,255,255,0.04);
  border:1px solid rgba(255,255,255,0.12);
  border-radius:8px;padding:12px 14px 12px 30px;
  font-size:0.95rem;color:var(--white);outline:none;
  font-family:'Inter',sans-serif;
  transition:border-color 0.2s;
}
.tmroi-row input:focus{border-color:var(--teal)}
.tmroi-row input::-webkit-outer-spin-button,.tmroi-row input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.tmroi-btn{
  width:100%;background:var(--teal);color:var(--ink);
  padding:13px 24px;border-radius:8px;
  font-family:'Bebas Neue',sans-serif;font-size:0.95rem;
  letter-spacing:0.1em;cursor:pointer;border:none;
  transition:all 0.25s;margin-top:0.25rem;
  display:flex;align-items:center;justify-content:center;gap:8px;
}
.tmroi-btn:hover{background:#4FD4C2;transform:translateY(-1px)}
.tmroi-result{
  margin-top:1.25rem;padding-top:1.25rem;
  border-top:1px solid rgba(255,255,255,0.08);
  display:none;
}
.tmroi-result.show{display:block}
.tmroi-result-top{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:0.6rem}
.tmroi-result-num{font-family:'Bebas Neue',sans-serif;font-size:2.6rem;line-height:1}
.tmroi-result-num.excellent{color:var(--teal)}
.tmroi-result-num.good{color:#7FD9A4}
.tmroi-result-num.breakeven{color:#E8B85F}
.tmroi-result-tier{
  font-size:0.66rem;font-weight:800;letter-spacing:0.14em;text-transform:uppercase;
  padding:5px 12px;border-radius:100px;
}
.tmroi-result-tier.excellent{background:rgba(61,191,174,0.15);color:var(--teal)}
.tmroi-result-tier.good{background:rgba(127,217,164,0.15);color:#7FD9A4}
.tmroi-result-tier.breakeven{background:rgba(232,184,95,0.15);color:#E8B85F}
.tmroi-result-desc{font-size:0.82rem;color:rgba(255,255,255,0.55);line-height:1.7}
.tmroi-result-desc strong{color:rgba(255,255,255,0.85)}
@media(max-width:900px){
  .tmroi{grid-template-columns:1fr}
}


/* ══ CONTRAST & READABILITY ══════════════════════════════════════ */
.nav-logo-text{font-family:'Bebas Neue',sans-serif;font-size:1.05rem;letter-spacing:0.14em;color:var(--white)}
.nav-logo-badge{display:none}
.hero-deck,.deck{color:rgba(255,255,255,0.78)}
.wc-body,.svc-desc,.proof-q,.pop-sub,.tmroi-sub,.fb-desc,.entry-content p{color:rgba(255,255,255,0.72)}
.s.proof-s,.compare-s{background:#0C1C2B}
.s.audit-s,.s.svc-s{background:#091420}
.faq-a-inner{color:rgba(255,255,255,0.65)}


/* ══ GROWTH ACCELERATOR LAB — BLOG SECTION ══════════════════════ */
.blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-top:2rem}
.blog-card{background:rgba(255,255,255,0.03);border:1px solid rgba(255,255,255,0.08);border-radius:14px;padding:1.75rem 1.6rem;text-decoration:none;display:flex;flex-direction:column;gap:0.75rem;transition:all 0.3s cubic-bezier(0.16,1,0.3,1);position:relative;overflow:hidden}
.blog-card::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--teal),transparent);opacity:0;transition:opacity 0.3s}
.blog-card:hover{border-color:rgba(61,191,174,0.3);transform:translateY(-4px);box-shadow:0 20px 40px rgba(0,0,0,0.25)}
.blog-card:hover::before{opacity:1}
.blog-card-cat{font-size:0.6rem;font-weight:800;letter-spacing:0.16em;text-transform:uppercase;color:var(--teal)}
.blog-card-title{font-family:'Bebas Neue',sans-serif;font-size:1.15rem;letter-spacing:0.02em;color:var(--white);line-height:1.2}
.blog-card-excerpt{font-size:0.82rem;color:rgba(255,255,255,0.55);line-height:1.7;flex:1}
.blog-card-foot{display:flex;align-items:center;justify-content:space-between;padding-top:0.85rem;border-top:1px solid rgba(255,255,255,0.07);font-size:0.7rem}
.blog-read{color:rgba(255,255,255,0.3);letter-spacing:0.04em}
.blog-arrow{color:var(--teal);font-weight:700}
@media(max-width:900px){.blog-grid{grid-template-columns:1fr 1fr}}
@media(max-width:580px){.blog-grid{grid-template-columns:1fr}}


/* ════════════════════════════════════════════════════════════════════
   MASTER QA FIXES — scroll-reveal, contrast, beige accents, layout
════════════════════════════════════════════════════════════════════ */

/* 1. SCROLL REVEAL — fix .in class (JS uses .in, not .visible) */
.rv.in{opacity:1 !important;transform:translateY(0) !important}
/* Also handle pages where content never scrolls — show everything */
.page-hero .rv,.page-hero .rv.rv-d1,.page-hero .rv.rv-d2{
  animation:revealIn 0.7s cubic-bezier(0.16,1,0.3,1) forwards;
}
.page-hero .rv.rv-d1{animation-delay:0.15s}
.page-hero .rv.rv-d2{animation-delay:0.28s}
@keyframes revealIn{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:none}}

/* Force content-area .rv elements visible on non-homepage pages */
.content-area .rv,.content-area .rv.in{
  opacity:1 !important;transform:none !important;
}

/* 2. LOGO — proper sizing alongside text */
.nav-logo{display:flex;align-items:center;gap:10px;text-decoration:none}
.nav-logo svg{flex-shrink:0;border-radius:8px}
.nav-logo-text{
  font-family:"Bebas Neue",sans-serif;font-size:1rem;
  letter-spacing:0.14em;color:#fff;white-space:nowrap;
}
.nav-logo-badge{display:none}

/* 3. CONTENT AREA — lighter background so cards are visible */
.content-area{background:#0D1E2E;padding:4.5rem 2rem}

/* 4. IDX-CARDS — stronger visible contrast */
.idx-card{
  background:linear-gradient(160deg,#132233,#0F1C2A) !important;
  border:1px solid rgba(61,191,174,0.2) !important;
}
.idx-card:hover{
  border-color:rgba(61,191,174,0.5) !important;
  background:linear-gradient(160deg,#1a2d40,#142230) !important;
}
.idx-card-title{color:#FFFFFF !important;font-size:1.2rem}
.idx-card-body{color:rgba(255,255,255,0.65) !important}
.idx-card-link{color:var(--teal) !important;font-size:0.75rem;font-weight:800;letter-spacing:0.06em;text-transform:uppercase;margin-top:0.5rem;display:inline-block}

/* 5. BEIGE / WARM CONTRAST — soft cream tones for variety */
:root{
  --cream:#E8E0D0;
  --cream-dim:#C8BDA8;
  --warm-section:#0A1721;
}
/* Section alternation — breaks up the flat dark */
.s.proof-s{background:#0A1B28}
.s.ai-s{background:#091520}
.s.svc-s{background:#0D1E2E}
.compare-s{background:#081320}
.s.audit-s{background:#0A1B28}

/* Cream/warm text on key callout elements */
.h2 em,.page-title em{color:var(--teal)}
.hero-deck{color:rgba(232,224,208,0.85)}  /* warm cream */
.deck{color:rgba(232,224,208,0.7)}
.wc-body{color:rgba(200,189,168,0.8)}  /* warm beige body */
.svc-desc{color:rgba(200,189,168,0.75)}
.proof-q{color:rgba(232,224,208,0.82)}
.entry-content p{color:rgba(220,210,195,0.78)}
.entry-content h2{color:#FFFFFF}
.entry-content h3{color:var(--teal)}
.entry-content ul li{color:rgba(220,210,195,0.75)}
.faq-a-inner{color:rgba(220,210,195,0.72)}
.tmroi-sub{color:rgba(220,210,195,0.68)}
.fb-desc{color:rgba(200,189,168,0.6)}
/* Warm cream label text on stat numbers */
.hp-label,.page-eyebrow,.eyebrow,.s-eyebrow{color:rgba(200,189,168,0.6) !important}
/* Soft warm subtitle on page heroes */
.page-subtitle{color:rgba(220,210,195,0.72) !important}
/* Slightly warmer section eyebrows */
.audit-s .deck,.cta-s .deck{color:rgba(232,224,208,0.75)}

/* 6. CTA BUTTONS — ensure text is always visible */
.btn-teal{color:#000 !important;background:var(--teal) !important;font-weight:800}
.btn-teal:hover{background:#4FD4C2 !important}

/* 7. RELATED LINKS — make them visible */
.related-card{background:#132233 !important;border:1px solid rgba(61,191,174,0.15) !important}
.related-card:hover{border-color:rgba(61,191,174,0.4) !important;background:#1a2d40 !important}
.related-card-title{color:#FFFFFF !important}
.related-card-cat{color:var(--teal) !important}

/* 8. JOB CARDS */
.job-card{background:#132233 !important;border-color:rgba(61,191,174,0.15) !important}
.job-card:hover{border-color:rgba(61,191,174,0.35) !important}

/* 9. FAQ accordion */
.faq-item{background:#132233 !important}
.faq-q{color:#FFFFFF !important}

/* 10. STAT ROW */
.stat-row-item{background:#132233 !important;border-color:rgba(61,191,174,0.15) !important}
.stat-row-num{color:var(--teal) !important}
.stat-row-label{color:rgba(200,189,168,0.55) !important}

/* 11. BLOG CARDS */
.blog-card{background:#0F1D2B !important;border-color:rgba(255,255,255,0.1) !important}
.blog-card-title{color:#FFFFFF !important}
.blog-card-excerpt{color:rgba(220,210,195,0.65) !important}

/* 12. PAGE CTA block */
.page-cta{background:linear-gradient(160deg,#0E2A3E,#16435E) !important;border-color:rgba(61,191,174,0.25) !important}
.page-cta h3{color:#FFFFFF !important}
.page-cta p{color:rgba(220,210,195,0.7) !important}


/* ══ MARKET LOCK RESULT ═══════════════════════════════════════════ */
.mlc-result{display:none;margin-top:1.1rem;padding:1.1rem 1.25rem;border-radius:12px;
  background:linear-gradient(160deg,rgba(61,191,174,0.10),rgba(61,191,174,0.03));
  border:1px solid rgba(61,191,174,0.28)}
.mlc-result.show{display:block;animation:mlcIn .5s cubic-bezier(0.16,1,0.3,1)}
@keyframes mlcIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
.mlc-result-head{display:flex;align-items:center;gap:10px;margin-bottom:.5rem;flex-wrap:wrap}
.mlc-status{font-family:'Bebas Neue',sans-serif;font-size:1.05rem;letter-spacing:.1em;
  color:var(--ink);background:var(--teal);padding:3px 12px;border-radius:100px}
.mlc-status.limited{background:#E8B85F}
.mlc-market{font-size:.8rem;color:var(--cream-dim);letter-spacing:.03em}
.mlc-result-body{font-size:.85rem;line-height:1.7;color:var(--cream);margin-bottom:.85rem}
.mlc-result-body strong{color:#fff}
.mlc-claim{display:inline-flex;align-items:center;gap:8px;font-size:.72rem;font-weight:800;
  letter-spacing:.1em;text-transform:uppercase;color:var(--ink);background:var(--teal);
  padding:11px 20px;border-radius:8px;text-decoration:none;transition:all .25s}
.mlc-claim:hover{background:#4FD4C2;transform:translateY(-1px)}


/* ════════════════════════════════════════════════════════════════
   WARM PALETTE + CLARITY PASS
════════════════════════════════════════════════════════════════ */
:root{
  --cream:#EDE4D3;        /* primary warm body text */
  --cream-dim:#B9AE99;    /* secondary warm text */
  --cream-faint:#8A8172;  /* labels, meta */
  --panel:#0E1F2D;        /* card surface */
  --panel-2:#122636;      /* raised card surface */
}

/* Body copy — warm cream, not cold grey */
body,p,li,td{color:var(--cream)}
.hero-deck{color:rgba(237,228,211,0.88)}
.deck,.page-subtitle,.svc-desc,.wc-body,.proof-q,.pop-sub,
.tmroi-sub,.entry-content p,.entry-content li,.faq-a-inner,
.idx-card-body,.blog-card-excerpt,.mlc-sub,.hrc-item,
.job-meta,.related-card-body,.page-cta p{color:var(--cream) !important;opacity:.82}

/* Meta / label text — dimmer warm */
.hp-label,.eyebrow,.page-eyebrow,.s-eyebrow,.mlc-label,
.tmroi-label,.blog-card-cat,.idx-card-cat,.stat-row-label,
.breadcrumb,.fb-desc,.blog-read,.hrc-eyebrow{color:var(--cream-faint) !important}

/* Headings stay crisp white; accents stay teal */
h1,h2,h3,h4,.h2,.page-title,.idx-card-title,.blog-card-title,
.wc-title,.svc-title,.job-title,.faq-q,.related-card-title,
.page-cta h3,.mlc-h,.tmroi-h,.hrc-title{color:#FFFFFF !important}
.h2 em,.page-title em,.entry-content h3{color:var(--teal) !important}

/* Surfaces — lift cards off the background so they read */
.idx-card,.related-card,.job-card,.faq-item,.stat-row-item,
.blog-card,.wc,.proof-card{
  background:linear-gradient(160deg,var(--panel-2),var(--panel)) !important;
  border:1px solid rgba(237,228,211,0.10) !important;
}
.idx-card:hover,.related-card:hover,.job-card:hover,
.blog-card:hover,.faq-item:hover{
  border-color:rgba(61,191,174,0.42) !important;
}

/* Section rhythm — subtle warm/cool alternation instead of flat black */
.content-area{background:#0B1926}
.s.proof-s{background:#0C1D2A}
.s.ai-s{background:#081521}
.s.svc-s{background:#0B1926}
.compare-s{background:#081521}
.s.audit-s{background:#0C1D2A}

/* Warm hairlines instead of cold white ones */
:root{--rule:rgba(237,228,211,0.10)}

/* CLUTTER PASS — dial back decorative noise */
.geo{opacity:.18 !important}
.geo-plus,.geo-dots{opacity:.12 !important}
.diag-flourish{display:none !important}
.orb{opacity:.32 !important}
.hero-grid-lines{opacity:.5}


/* ══ LOGO ═════════════════════════════════════════════════════════ */
.nav-logo{display:flex;align-items:center;gap:11px;text-decoration:none}
.nav-logo-mark{flex-shrink:0}
.nav-logo-wrap{display:flex;flex-direction:column;line-height:1}
.nav-logo-top{font-family:'Bebas Neue',sans-serif;font-size:1.22rem;letter-spacing:.09em;color:#fff}
.nav-logo-sub{font-size:.53rem;font-weight:700;letter-spacing:.245em;color:var(--teal);opacity:.85;margin-top:2px}
.nav-logo-badge,.nav-logo-text{display:none}
@media(max-width:600px){.nav-logo-top{font-size:1.05rem}.nav-logo-sub{font-size:.46rem;letter-spacing:.2em}}


/* ══ ACTUAL BEIGE/CREAM SECTION — light background, dark text ══════ */
.proof-s{
  background:linear-gradient(180deg,#F3EDE1 0%,#EDE4D2 100%) !important;
  position:relative;overflow:hidden;
}
.proof-s .orb{opacity:.15 !important;filter:blur(90px)}
.proof-s .geo{opacity:.08 !important}
.proof-s .eyebrow{color:#1E8878 !important}
.proof-s .h2{color:#1B2A22 !important}
.proof-s .h2 em{color:#1E8878 !important;font-style:normal}
.proof-s .deck{color:#4A4436 !important;opacity:1}
.proof-s .gbadge{
  background:#FFFFFF !important;border-color:rgba(30,136,120,0.3) !important;color:#1E8878 !important;
}
.proof-s .gbadge:hover{background:#F7F3E9 !important}
.proof-s .proof-card{
  background:#FFFFFF !important;
  border:1px solid rgba(30,136,120,0.15) !important;
  box-shadow:0 10px 30px rgba(60,50,30,0.06);
}
.proof-s .proof-card:hover{border-color:rgba(30,136,120,0.4) !important}
.proof-s .proof-q{color:#3A3428 !important;opacity:1}
.proof-s .proof-name{color:#1B2A22 !important}
.proof-s .proof-role{color:#7A7260 !important}
.proof-s .proof-av{background:linear-gradient(160deg,#1E5C7D,#123A52) !important;color:#7BEDE0 !important}
.proof-s .proof-stars svg{fill:#E0A83D !important}
.proof-s .deck strong{color:#1B2A22 !important}



/* ══ FOUNDER QUOTE — cream callout box, matching brand reference ═══ */
.founder-s{background:#0A1A26 !important}
.founder-quote{
  background:#F3EDE1;
  border:2px solid #3DBFAE;
  border-radius:16px;
  padding:2.4rem 2.6rem;
  box-shadow:0 20px 50px rgba(0,0,0,0.25);
}
.founder-quote p{
  font-family:'Lora',serif;
  font-style:italic;
  font-size:1.15rem;
  line-height:1.75;
  color:#3A3428;
  margin-bottom:1.4rem;
}
.founder-quote p:last-child{margin-bottom:0}
.founder-quote p strong{
  font-style:italic;
  color:#1E8878;
  font-weight:700;
}
.founder-s .eyebrow{color:#3DBFAE !important;margin-bottom:1.2rem}
.founder-frame.founder-mono{
  background:linear-gradient(160deg,#1E5C7D,#123A52);
  border:2px solid rgba(61,191,174,0.5);
}


/* ══ WHY-US SECTION — cream luxe treatment ══════════════════════════ */
.why-s{background:linear-gradient(180deg,#F3EDE1 0%,#EDE4D2 100%) !important}
.why-s .orb{opacity:.12 !important}
.why-s .geo{opacity:.10 !important}
.why-s .eyebrow{color:#1E8878 !important}
.why-s .h2{color:#1B2A22 !important}
.why-s .h2 em.shimmer{
  background:linear-gradient(90deg,#1E8878,#3DBFAE,#1E8878);
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;
  font-style:normal;
}
.why-s .deck{color:#4A4436 !important;opacity:1}
.why-s .deck strong{color:#1B2A22 !important}
.why-s .btn-teal{background:#1E8878 !important;color:#FFF !important}
.why-s .btn-teal:hover{background:#176B5F !important}
.why-s .wc{
  background:#FFFFFF !important;
  border:1px solid rgba(30,136,120,0.15) !important;
  box-shadow:0 10px 30px rgba(60,50,30,0.06);
}
.why-s .wc:hover{border-color:rgba(30,136,120,0.4) !important}
.why-s .wc-icon svg{stroke:#1E8878 !important}
.why-s .wc-title{color:#1B2A22 !important}
.why-s .wc-body{color:#5A5344 !important;opacity:1}
.why-s .wc-pill{background:rgba(30,136,120,0.1) !important;color:#1E8878 !important}

/* ══ AUDIT/LEAD-CAPTURE SECTION — cream luxe treatment ═══════════════ */
.audit-s{background:linear-gradient(180deg,#EDE4D2 0%,#F3EDE1 100%) !important}
.audit-s .orb{opacity:.12 !important}
.audit-s .geo{opacity:.10 !important}
.audit-s .eyebrow{color:#1E8878 !important}
.audit-s .h2{color:#1B2A22 !important}
.audit-s .h2 em{color:#1E8878 !important;font-style:normal}
.audit-s .deck{color:#4A4436 !important;opacity:1}
.audit-s .deck strong{color:#1B2A22 !important}
.audit-s .ac-num{color:rgba(30,136,120,0.28) !important}
.audit-s .ac-head{color:#1B2A22 !important}
.audit-s .ac-body{color:#5A5344 !important;opacity:1}
.audit-s .report-card{
  background:#FFFFFF !important;
  border:1px solid rgba(30,136,120,0.18) !important;
  box-shadow:0 20px 50px rgba(60,50,30,0.08) !important;
}
.audit-s .rc-head,.audit-s .rc-title{color:#1B2A22 !important}
.audit-s .rc-row-label{color:#5A5344 !important}
.audit-s .rc-bar-track{background:rgba(30,136,120,0.1) !important}
.audit-s .rc-cta-note{color:#7A7260 !important}
.audit-s .pop-form input,.audit-s input{
  background:#FFFFFF !important;border-color:rgba(30,136,120,0.25) !important;color:#1B2A22 !important;
}
.audit-s .pop-form input::placeholder,.audit-s input::placeholder{color:#9A9280 !important}
.audit-s .pop-submit,.audit-s .btn-teal{background:#1E8878 !important;color:#FFF !important}
.audit-s .pop-submit:hover,.audit-s .btn-teal:hover{background:#176B5F !important}
.audit-s .pop-micro{color:#7A7260 !important}


/* ══ INLINE LEAD FORM — cream card on dark section ═══════════════════ */
.ilm-right{
  background:#F3EDE1 !important;
  border:2px solid #3DBFAE !important;
  backdrop-filter:none !important;
  box-shadow:0 20px 50px rgba(0,0,0,0.3);
}
.ilm-form-h{color:#1B2A22 !important}
.ilm-form-sub{color:#6B6352 !important}
.ilm-form input{
  background:#FFFFFF !important;
  border:1px solid rgba(30,136,120,0.25) !important;
  color:#1B2A22 !important;
}
.ilm-form input::placeholder{color:#A69C86 !important}
.ilm-form input:focus{border-color:#1E8878 !important}
.ilm-submit{background:#1E8878 !important;color:#FFFFFF !important}
.ilm-submit:hover{background:#176B5F !important}
.ilm-micro{color:#8A8172 !important}
.ilm-success h4{color:#1E8878 !important}
.ilm-success p{color:#6B6352 !important}


/* ══ TESTIMONIALS — 6-card anonymized grid ═══════════════════════ */
.proof-grid-6{grid-template-columns:repeat(3,1fr)}
.proof-av-badge{
  width:38px;height:38px;border-radius:50%;
  background:linear-gradient(160deg,#1E5C7D,#123A52);
  border:1px solid rgba(61,191,174,0.4);
  display:flex;align-items:center;justify-content:center;
  color:#3DBFAE;font-size:0.95rem;flex-shrink:0;
}
.proof-s .proof-av-badge{border-color:rgba(30,136,120,0.4)}
@media(max-width:900px){.proof-grid-6{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.proof-grid-6{grid-template-columns:1fr}}


.hero-risk-reversal{
  font-size:.78rem;color:rgba(237,228,211,0.55);
  margin-top:-1.6rem;margin-bottom:2rem;
  display:flex;align-items:center;gap:7px;
}
.hero-risk-reversal::before{content:'\2713';color:#3DBFAE;font-weight:800}


/* ══ GUARANTEE SECTION ════════════════════════════════════════════ */
.guarantee-s{background:#081521}
.guarantee-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem;max-width:1100px;margin:0 auto}
.grt-card{
  background:linear-gradient(160deg,var(--panel-2),var(--panel));
  border:1px solid rgba(237,228,211,0.10);
  border-radius:14px;padding:1.6rem 1.5rem;position:relative;
  transition:all 0.3s;
}
.grt-card:hover{border-color:rgba(61,191,174,0.4);transform:translateY(-3px)}
.grt-card--accent{
  background:linear-gradient(160deg,#123A52,#0B2A3E);
  border:1px solid rgba(61,191,174,0.5);
}
.grt-num{
  font-family:'Bebas Neue',sans-serif;font-size:1.6rem;
  color:rgba(61,191,174,0.35);margin-bottom:0.6rem;letter-spacing:0.05em;
}
.grt-card--accent .grt-num{color:var(--teal)}
.grt-title{font-weight:800;font-size:1rem;color:#FFFFFF;margin-bottom:0.5rem;letter-spacing:0.01em}
.grt-body{font-size:0.86rem;color:var(--cream);opacity:0.75;line-height:1.65}
@media(max-width:900px){.guarantee-grid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.guarantee-grid{grid-template-columns:1fr}}


.hrc-sample{
  display:flex;align-items:center;justify-content:center;gap:7px;
  margin-top:0.9rem;padding-top:0.9rem;border-top:1px solid var(--rule);
  font-size:0.74rem;font-weight:700;letter-spacing:0.04em;
  color:var(--teal);text-decoration:none;transition:opacity 0.2s;
}
.hrc-sample:hover{opacity:0.75}


/* ══ HERO OFFER CARD — single, clear, Hormozi-style value stack ═════ */
.offer-card{
  background:linear-gradient(165deg,#0E2A3E 0%,#0B2233 100%);
  border:1px solid rgba(61,191,174,0.35);
  border-radius:16px;
  padding:1.6rem 1.7rem 1.8rem;
  box-shadow:0 30px 70px rgba(0,0,0,0.4);
}
.offer-live{
  display:flex;align-items:center;gap:8px;
  font-size:0.68rem;font-weight:700;letter-spacing:0.04em;
  color:rgba(255,255,255,0.5);margin-bottom:1.1rem;
  padding-bottom:1rem;border-bottom:1px solid rgba(255,255,255,0.08);
}
.offer-live span#heroBizType{color:var(--teal);font-weight:800}
.offer-head{margin-bottom:1.1rem}
.offer-eyebrow{font-size:0.65rem;font-weight:800;letter-spacing:0.14em;text-transform:uppercase;color:var(--teal);margin-bottom:0.3rem}
.offer-h{font-family:'Bebas Neue',sans-serif;font-size:1.5rem;letter-spacing:0.02em;color:#FFFFFF;line-height:1.1}
.offer-stack{display:flex;flex-direction:column;gap:0.75rem;margin-bottom:1.2rem}
.offer-item{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.offer-item-txt{display:flex;align-items:flex-start;gap:9px;font-size:0.85rem;color:rgba(255,255,255,0.82);line-height:1.5;flex:1}
.offer-item-txt svg{stroke:var(--teal);flex-shrink:0;margin-top:2px;width:15px;height:15px}
.offer-item-val{font-family:'Bebas Neue',sans-serif;font-size:0.95rem;color:rgba(255,255,255,0.35);flex-shrink:0;white-space:nowrap}
.offer-total,.offer-today{
  display:flex;align-items:center;justify-content:space-between;
  padding-top:0.85rem;border-top:1px solid rgba(255,255,255,0.1);
  font-size:0.85rem;
}
.offer-total{color:rgba(255,255,255,0.45)}
.offer-total-strike{text-decoration:line-through;font-family:'Bebas Neue',sans-serif;font-size:1.1rem}
.offer-today{border-top:none;padding-top:0.5rem;margin-bottom:1.3rem;color:#FFFFFF;font-weight:700}
.offer-today-num{font-family:'Bebas Neue',sans-serif;font-size:2rem;color:var(--teal)}
.offer-cta{width:100%;justify-content:center;display:flex}
.offer-scarcity{
  margin-top:1rem;font-size:0.74rem;color:rgba(255,255,255,0.45);
  text-align:center;line-height:1.6;
}
.offer-scarcity a{color:var(--teal);text-decoration:underline;text-underline-offset:2px}




/* ══ HYBRID CARD — before/after + choose your path ═══════════════ */
.hybrid-card{
  background:linear-gradient(165deg,#0E2A3E 0%,#0B2233 100%);
  border:1px solid rgba(61,191,174,0.3);
  border-radius:16px;
  padding:1.4rem 1.5rem 1.6rem;
  box-shadow:0 30px 70px rgba(0,0,0,0.4);
  position:relative;z-index:1;
}
.hy-eyebrow{
  font-size:0.62rem;font-weight:800;letter-spacing:0.1em;text-transform:uppercase;
  color:var(--teal);text-align:center;margin-bottom:0.9rem;
}
.hy-split{display:flex;gap:0;border-radius:12px;overflow:hidden;margin-bottom:1.1rem}
.hy-half{flex:1;padding:0.9rem 0.8rem}
.hy-before{background:rgba(200,80,70,0.08);border:1px solid rgba(200,80,70,0.25);border-right:none;border-radius:12px 0 0 12px}
.hy-after{background:rgba(61,191,174,0.1);border:1px solid rgba(61,191,174,0.4);border-radius:0 12px 12px 0}
.hy-label{font-size:0.58rem;font-weight:800;letter-spacing:0.06em;text-transform:uppercase;margin-bottom:0.6rem}
.hy-before .hy-label{color:#E08070}
.hy-after .hy-label{color:var(--teal)}
.hy-item{font-size:0.72rem;color:rgba(255,255,255,0.72);margin-bottom:0.4rem;line-height:1.4}
.hy-divider{height:1px;background:rgba(255,255,255,0.08);margin-bottom:1.1rem}
.hy-q{font-family:'Bebas Neue',sans-serif;font-size:1.25rem;color:#fff;text-align:center;margin-bottom:0.85rem}
.hy-path{
  display:block;width:100%;text-align:left;
  background:rgba(255,255,255,0.04);border:1px solid rgba(255,255,255,0.12);
  border-radius:10px;padding:0.75rem 0.9rem;
  font-family:'Inter',sans-serif;font-size:0.83rem;color:rgba(255,255,255,0.85);
  margin-bottom:0.55rem;cursor:pointer;transition:all 0.2s;
}
.hy-path:hover{border-color:var(--teal);background:rgba(61,191,174,0.06);transform:translateX(2px)}
.hy-scarcity{
  margin-top:0.9rem;font-size:0.72rem;color:rgba(255,255,255,0.4);
  text-align:center;line-height:1.6;
}
.hy-scarcity a{color:var(--teal);text-decoration:underline;text-underline-offset:2px}


/* ══ CHOOSE YOUR PATH — big standalone lead magnet ═══════════════ */
.path-magnet{background:#0A1B28;position:relative;overflow:hidden;padding:5rem 2rem}
.path-magnet-inner{max-width:1000px;margin:0 auto;text-align:center;position:relative;z-index:2}
.pm-h{font-family:'Bebas Neue',sans-serif;font-size:clamp(2.2rem,4.5vw,3.4rem);color:#fff;letter-spacing:0.02em;margin:0.6rem 0 1rem;line-height:1.02}
.pm-h em{color:var(--teal);font-style:normal}
.pm-deck{font-size:1rem;color:var(--cream);opacity:0.75;max-width:600px;margin:0 auto 2.75rem;line-height:1.7}
.pm-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem;text-align:left}
.pm-card{
  background:linear-gradient(160deg,var(--panel-2),var(--panel));
  border:1px solid rgba(237,228,211,0.12);
  border-radius:16px;padding:1.75rem 1.6rem;
  cursor:pointer;transition:all 0.3s cubic-bezier(0.16,1,0.3,1);
  font-family:'Inter',sans-serif;text-align:left;
  display:flex;flex-direction:column;
}
.pm-card:hover{border-color:rgba(61,191,174,0.5);transform:translateY(-5px);box-shadow:0 20px 40px rgba(0,0,0,0.3)}
.pm-card--accent{border-color:rgba(61,191,174,0.3);background:linear-gradient(160deg,#123A52,#0E2A3E)}
.pm-icon{font-size:2rem;margin-bottom:0.9rem}
.pm-title{font-family:'Bebas Neue',sans-serif;font-size:1.25rem;color:#fff;line-height:1.15;margin-bottom:0.7rem;letter-spacing:0.01em}
.pm-body{font-size:0.85rem;color:var(--cream);opacity:0.7;line-height:1.65;margin-bottom:1.2rem;flex:1}
.pm-cta{font-size:0.72rem;font-weight:800;letter-spacing:0.06em;text-transform:uppercase;color:var(--teal);display:flex;align-items:center;gap:6px}
.pm-fine{font-size:0.78rem;color:var(--cream-dim);margin-top:2.25rem}
@media(max-width:900px){.pm-grid{grid-template-columns:1fr}}

/* ========== Blog / archive card grid v1.1.1 — solid tokens (no missing vars) ========== */
.site-main:not(.homepage) {
  width: 100%;
}

.archive-header,
.archive-header.section-dark-primary {
  padding: 9rem 1.5rem 3.5rem;
  text-align: center;
  background: linear-gradient(165deg, var(--navy-deep) 0%, var(--navy) 55%, #0D2A3D 100%);
  border-bottom: 1px solid rgba(61, 191, 174, 0.18);
  position: relative;
  overflow: hidden;
}
.archive-header.bg-checkered::before {
  content: '';
  position: absolute;
  inset: 0;
  background-image:
    linear-gradient(rgba(255,255,255,0.015) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,0.015) 1px, transparent 1px);
  background-size: 28px 28px;
  pointer-events: none;
  opacity: 0.9;
}
.archive-header-inner {
  max-width: 760px;
  margin: 0 auto;
  position: relative;
  z-index: 1;
}
.archive-eyebrow {
  color: var(--teal);
  text-transform: uppercase;
  letter-spacing: 0.12em;
  font-size: 0.8rem;
  font-weight: 600;
  margin-bottom: 0.75rem;
}
.archive-title {
  font-family: 'Bebas Neue', sans-serif;
  color: #fff;
  font-size: clamp(1.85rem, 4vw, 2.75rem);
  line-height: 1.15;
  letter-spacing: 0.02em;
  margin-bottom: 0.75rem;
}
.archive-deck {
  color: var(--cream-dim);
  font-size: 1.05rem;
  max-width: 560px;
  margin: 0 auto;
  line-height: 1.7;
}

.archive-container {
  max-width: 1200px;
  margin: 0 auto;
  padding: 3rem 1.5rem 4.5rem;
  background: var(--ink);
}

.posts-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.5rem;
}
@media (min-width: 640px) {
  .posts-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (min-width: 1024px) {
  .posts-grid { grid-template-columns: repeat(3, 1fr); }
}

.post-card {
  display: flex;
  flex-direction: column;
  background: linear-gradient(160deg, var(--surface2), var(--surface));
  border: 1px solid var(--rule);
  border-radius: 14px;
  overflow: hidden;
  transition: transform 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease;
}
.post-card:hover {
  border-color: rgba(61, 191, 174, 0.4);
  box-shadow: 0 18px 40px rgba(0, 0, 0, 0.35), 0 0 0 1px rgba(61, 191, 174, 0.12);
  transform: translateY(-3px);
}

/* Thumbnail */
.post-card-thumb {
  display: block;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  background: var(--navy);
}
.post-card-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.45s ease;
}
.post-card:hover .post-card-thumb img { transform: scale(1.04); }

/* Gradient placeholder when no featured image — card still looks intentional */
.post-card:not(:has(.post-card-thumb))::before {
  content: '';
  display: block;
  aspect-ratio: 16 / 9;
  background:
    radial-gradient(ellipse at 30% 40%, rgba(61, 191, 174, 0.28), transparent 55%),
    radial-gradient(ellipse at 75% 70%, rgba(74, 159, 212, 0.22), transparent 50%),
    linear-gradient(145deg, var(--navy-deep) 0%, var(--navy) 50%, #0B1926 100%);
  border-bottom: 1px solid rgba(61, 191, 174, 0.15);
}
@supports not selector(:has(*)) {
  .post-card.no-thumb::before,
  .post-card:not(.has-post-thumbnail)::before {
    content: '';
    display: block;
    aspect-ratio: 16 / 9;
    background:
      radial-gradient(ellipse at 30% 40%, rgba(61, 191, 174, 0.28), transparent 55%),
      linear-gradient(145deg, var(--navy-deep), var(--navy));
  }
}

.post-card-body {
  display: flex;
  flex-direction: column;
  gap: 0.65rem;
  padding: 1.25rem 1.35rem 1.4rem;
  flex: 1;
}
.post-card-meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.5rem;
  font-size: 0.78rem;
}
.category-badge,
.category-tag {
  display: inline-block;
  padding: 0.2rem 0.55rem;
  border-radius: 999px;
  background: rgba(61, 191, 174, 0.12);
  color: var(--teal);
  font-weight: 600;
  font-size: 0.72rem;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}
.read-time { color: var(--cream-dim); }
.post-card-title {
  font-family: 'Bebas Neue', sans-serif;
  font-size: 1.25rem;
  line-height: 1.25;
  letter-spacing: 0.02em;
  margin: 0;
}
.post-card-title a {
  color: #fff;
  text-decoration: none;
}
.post-card-title a:hover { color: var(--teal); }
.post-card-excerpt {
  color: var(--cream-dim);
  font-size: 0.92rem;
  line-height: 1.55;
  flex: 1;
  margin: 0;
}
.post-card-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  margin-top: 0.35rem;
  padding-top: 0.85rem;
  border-top: 1px solid rgba(255, 255, 255, 0.08);
  font-size: 0.85rem;
}
.post-card-footer time { color: var(--cream-dim); }
.read-more {
  color: var(--teal);
  font-weight: 600;
  white-space: nowrap;
  text-decoration: none;
}
.read-more:hover { color: #7BEDE0; }

.archive-pagination {
  margin-top: 2.5rem;
  display: flex;
  justify-content: center;
}
.archive-pagination .nav-links {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  align-items: center;
  justify-content: center;
  list-style: none;
}
.archive-pagination .page-numbers {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 2.4rem;
  height: 2.4rem;
  padding: 0 0.7rem;
  border-radius: 8px;
  border: 1px solid rgba(61, 191, 174, 0.2);
  color: var(--cream);
  background: rgba(16, 32, 47, 0.75);
  text-decoration: none;
  font-size: 0.88rem;
}
.archive-pagination .page-numbers.current,
.archive-pagination a.page-numbers:hover {
  background: rgba(61, 191, 174, 0.15);
  border-color: var(--teal);
  color: #fff;
}

/* Single post reading layout */
.single-post-main {
  background: var(--ink);
}
.post-container {
  max-width: 760px;
  margin: 0 auto;
  padding: 8.5rem 1.5rem 4.5rem;
}
.single-post,
.article-post {
  width: 100%;
}
.article-header { margin-bottom: 1.75rem; }
.article-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem 1rem;
  align-items: center;
  margin-bottom: 1rem;
  color: var(--cream-dim);
  font-size: 0.88rem;
}
.article-title {
  font-family: 'Bebas Neue', sans-serif;
  color: #fff;
  font-size: clamp(1.75rem, 4vw, 2.6rem);
  line-height: 1.15;
  letter-spacing: 0.02em;
  margin: 0;
}
.article-content {
  color: var(--cream);
  font-size: 1.05rem;
  line-height: 1.75;
}
.article-content > *:first-child { margin-top: 0; }
.article-content h2,
.article-content h3,
.article-content h4 {
  color: #fff;
  margin: 2rem 0 0.85rem;
  line-height: 1.25;
}
.article-content p { margin-bottom: 1.15rem; }
.article-content ul,
.article-content ol {
  margin: 0 0 1.25rem 1.25rem;
  list-style: disc;
}
.article-content ol { list-style: decimal; }
.article-content li { margin-bottom: 0.4rem; }
.article-content a {
  color: var(--teal);
  text-decoration: underline;
  text-underline-offset: 2px;
}
.article-content blockquote {
  margin: 1.5rem 0;
  padding: 1rem 1.25rem;
  border-left: 3px solid var(--teal);
  background: rgba(61, 191, 174, 0.06);
  border-radius: 0 10px 10px 0;
  color: var(--cream);
  font-family: 'Lora', serif;
  font-style: italic;
}

.single-cta-band {
  margin-top: 3rem;
  padding: 2.25rem 2rem;
  text-align: center;
  background: linear-gradient(160deg, var(--navy-deep), var(--navy));
  border: 1px solid rgba(61, 191, 174, 0.25);
  border-radius: 14px;
}
.single-cta-band h3 {
  font-family: 'Bebas Neue', sans-serif;
  font-size: 1.6rem;
  color: #fff;
  margin-bottom: 0.5rem;
}
.single-cta-band p {
  color: var(--cream-dim);
  margin-bottom: 1.25rem;
}
.single-cta-band .cta-button,
.single-cta-band .magnetic-cta {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: var(--teal);
  color: var(--ink);
  padding: 14px 28px;
  border-radius: 8px;
  font-size: 0.84rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  text-decoration: none;
}
.single-cta-band .cta-button:hover { background: #4FD4C2; }

.post-navigation {
  display: flex;
  justify-content: space-between;
  gap: 1rem;
  margin-top: 2.5rem;
  padding-top: 1.5rem;
  border-top: 1px solid var(--rule);
  font-size: 0.88rem;
}
.post-navigation a {
  color: var(--teal);
  text-decoration: none;
}
.post-navigation a:hover { color: #7BEDE0; }

.related-posts {
  margin-top: 3rem;
}
.related-posts h3 {
  font-family: 'Bebas Neue', sans-serif;
  font-size: 1.5rem;
  color: #fff;
  margin-bottom: 1.25rem;
}
.related-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1rem;
}
@media (min-width: 700px) {
  .related-grid { grid-template-columns: repeat(3, 1fr); }
}
.related-card {
  background: linear-gradient(160deg, var(--surface2), var(--surface));
  border: 1px solid var(--rule);
  border-radius: 12px;
  padding: 1.25rem;
}
.related-card h4 {
  font-family: 'Bebas Neue', sans-serif;
  font-size: 1.1rem;
  margin-bottom: 0.5rem;
}
.related-card h4 a {
  color: #fff;
  text-decoration: none;
}
.related-card h4 a:hover { color: var(--teal); }
.related-card p {
  font-size: 0.85rem;
  color: var(--cream-dim);
  margin-bottom: 0.75rem;
  line-height: 1.55;
}

/* 404 / empty */
.error-container {
  max-width: 560px;
  margin: 0 auto;
  padding: 10rem 1.5rem 5rem;
  text-align: center;
}
.error-code {
  font-family: 'Bebas Neue', sans-serif;
  font-size: 5rem;
  color: var(--teal);
  line-height: 1;
}
.error-title {
  font-family: 'Bebas Neue', sans-serif;
  font-size: 2rem;
  color: #fff;
  margin: 0.5rem 0 1rem;
}
.error-message { color: var(--cream-dim); margin-bottom: 1.75rem; }
.error-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  justify-content: center;
  margin-bottom: 1.5rem;
}
.error-actions .cta-button {
  display: inline-flex;
  align-items: center;
  background: var(--teal);
  color: var(--ink);
  padding: 14px 24px;
  border-radius: 8px;
  font-weight: 800;
  font-size: 0.8rem;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  text-decoration: none;
}
.error-actions .cta-button.secondary {
  background: transparent;
  color: var(--cream);
  border: 1px solid rgba(255,255,255,0.2);
}
.error-contact { color: var(--cream-faint); font-size: 0.9rem; }
.error-contact a { color: var(--teal); }

/* Extra safety: ensure body background uses ink globally */
body.blog, body.archive, body.single, body.search, body.error404, body.page {
  background: var(--ink);
  color: var(--cream);
}

/* page-cta button row helper */
.page-cta .btn-teal,
.page-cta .btn-line { margin: 0; }
