  *{box-sizing:border-box;margin:0;padding:0}
  html{scroll-behavior:smooth}
  body{font-family:'Inter',system-ui,-apple-system,sans-serif;color:var(--text);background:var(--bg);line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:clip;padding-bottom:64px}
  h1,h2,h3,h4{font-family:'Plus Jakarta Sans',sans-serif;line-height:1.14;color:var(--ink);letter-spacing:-.015em}
  a{color:inherit;text-decoration:none}
  .skip-link{position:absolute;left:-9999px;top:0;z-index:10000;background:var(--navy);color:#fff;padding:.8rem 1.2rem;border-radius:0 0 8px 0;font-weight:700;font-family:'Plus Jakarta Sans',system-ui,sans-serif}
  .skip-link:focus{left:0}
  :focus-visible{outline:3px solid var(--accent-strong);outline-offset:2px}
  img{max-width:100%;display:block}
  .wrap{max-width:var(--maxw);margin:0 auto;padding:0 22px}
  .eyebrow{font-size:.76rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--accent-dark)}
  .eyebrow-light{color:var(--accent)}

  .btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;font-weight:700;font-family:'Plus Jakarta Sans';border-radius:999px;padding:.95rem 1.7rem;cursor:pointer;border:2px solid transparent;transition:transform .15s,box-shadow .15s,background .15s;text-align:center}
  .btn-primary{background:var(--accent-strong);color:#fff;box-shadow:0 8px 20px -8px rgba(124,157,65,.9),0 0 16px 1px rgba(244,180,0,.4);animation:goldPulse 2.6s ease-in-out infinite}
  .btn-primary:hover{background:var(--accent-dark);transform:translateY(-2px);box-shadow:0 10px 24px -8px rgba(124,157,65,.95),0 0 28px 4px rgba(244,180,0,.7)}
  @keyframes goldPulse{0%,100%{box-shadow:0 8px 20px -8px rgba(124,157,65,.9),0 0 12px 0 rgba(244,180,0,.3)}50%{box-shadow:0 8px 20px -8px rgba(124,157,65,.9),0 0 26px 3px rgba(244,180,0,.65)}}
  .btn-ghost{background:rgba(255,255,255,.08);color:#fff;border-color:rgba(255,255,255,.4)}
  .btn-ghost:hover{background:rgba(255,255,255,.18)}
  .btn-dark{background:var(--navy);color:#fff}
  .btn-dark:hover{background:var(--navy-2);transform:translateY(-2px)}
  .btn-lg{padding:1.1rem 2rem;font-size:1.05rem}

  /* Header: stripped back for focus */
  header.lp-nav{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.96);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
  .lp-nav .wrap{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.65rem 22px}
  .lp-nav img{height:48px;width:auto}
  .lp-nav .right{display:flex;align-items:center;gap:.9rem}
  .lp-phone{font-family:'Plus Jakarta Sans';font-weight:800;color:var(--navy);font-size:1.05rem;white-space:nowrap}
  .lp-phone span{display:block;font-size:.6rem;color:var(--muted);font-weight:600;letter-spacing:.08em;text-transform:uppercase}

  /* HERO */
  .hero{position:relative;color:#fff;background:var(--ink);overflow:hidden}
  .hero-bg{position:absolute;inset:0;background:var(--hero-img) center/cover;z-index:0}
  .hero-ov{position:absolute;inset:0;z-index:1;background:linear-gradient(102deg,rgba(20,41,63,.93) 0%,rgba(20,41,63,.84) 42%,rgba(20,41,63,.5) 76%,rgba(20,41,63,.28) 100%)}
  .hero .wrap{position:relative;z-index:2;display:grid;grid-template-columns:1.1fr .9fr;gap:3rem;align-items:center;padding:4rem 22px 4.2rem}
  .hero h1{font-size:clamp(2rem,3.9vw,3.05rem);font-weight:800;color:#fff;margin:.7rem 0 0;max-width:15ch;text-wrap:balance}
  .hero h1 .hl{color:var(--accent)}
  .hero p.lead{margin:1.1rem 0 1.7rem;font-size:1.14rem;color:#dbe6f2;max-width:34rem}
  .hero-cta{display:flex;gap:.85rem;flex-wrap:wrap;margin-bottom:1.5rem}
  .hero-ticks{display:flex;gap:1.4rem;flex-wrap:wrap;padding-top:1.2rem;border-top:1px solid rgba(255,255,255,.18)}
  .hero-ticks span{display:flex;align-items:center;gap:.45rem;font-size:.9rem;color:#cfdcec}
  .hero-ticks b{color:var(--accent);font-weight:800}

  /* Savings proof card */
  .proof{background:rgba(255,255,255,.97);border-radius:14px;padding:1.6rem;box-shadow:var(--shadow-lg);color:var(--text)}
  .proof .ph{font-size:.72rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);text-align:center;margin-bottom:1rem}
  .proof .row{display:flex;justify-content:space-between;align-items:center;padding:.75rem 0;border-bottom:1px dashed var(--line)}
  .proof .row:last-of-type{border-bottom:0}
  .proof .row small{color:var(--muted);font-size:.86rem}
  .proof .row b{font-family:'Plus Jakarta Sans';font-size:1.15rem;color:var(--navy)}
  .proof .big{background:var(--accent-soft);border-radius:10px;padding:.9rem;text-align:center;margin-top:.9rem}
  .proof .big b{display:block;font-family:'Plus Jakarta Sans';font-size:2rem;color:var(--accent-dark);line-height:1}
  .proof .big small{color:var(--muted);font-size:.78rem}
  .proof .fine{display:block;text-align:center;color:var(--muted);font-size:.7rem;margin-top:.7rem;line-height:1.4}

  /* Urgency strip */
  .urgency{background:var(--navy);color:#fff;text-align:center;padding:1.15rem 22px;font-family:'Plus Jakarta Sans';font-weight:700;font-size:clamp(1rem,2vw,1.22rem)}
  .urgency b{color:var(--accent)}

  section{padding:4.6rem 0}
  .sec-head{text-align:center;max-width:46rem;margin:0 auto 2.6rem}
  .sec-head h2{font-size:clamp(1.75rem,3.2vw,2.5rem);margin:.55rem 0 .6rem}
  .sec-head p{color:var(--muted);font-size:1.05rem}

  /* VIDEO section */
  .videosec{background:var(--ink);color:#fff}
  .videosec .sec-head h2{color:#fff}
  .videosec .sec-head p{color:#b9cadd}
  .vwrap{max-width:820px;margin:0 auto}
  /* Vertical 9:16 creative: shown full-frame so the burned-in
     captions and brand overlay are never cropped. */
  .vbox{position:relative;aspect-ratio:9/16;max-width:392px;margin:0 auto;border-radius:14px;overflow:hidden;background:#000;box-shadow:0 34px 90px -24px rgba(0,0,0,.8),0 0 0 1px rgba(124,157,65,.45);cursor:pointer}
  .vbox video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;background:#000;z-index:1}
  .vbox .play{position:absolute;inset:0;display:grid;place-items:center;z-index:3}
  .vbox .play{-webkit-appearance:none;appearance:none;border:0;background:none;padding:0;margin:0;width:100%;height:100%;cursor:pointer;font:inherit;color:inherit}
  .vbox .play:focus-visible{outline:3px solid #fff;outline-offset:-6px;border-radius:14px}
  .vbox .play i{width:88px;height:88px;border-radius:50%;background:rgba(124,157,65,.96);display:grid;place-items:center;animation:ring 2.2s ease-in-out infinite;transition:transform .2s}
  .vbox:hover .play i{transform:scale(1.07)}
  .vbox .play i::after{content:"";border-style:solid;border-width:13px 0 13px 21px;border-color:transparent transparent transparent #fff;margin-left:6px}
  @keyframes ring{0%,100%{box-shadow:0 10px 30px -8px rgba(0,0,0,.6),0 0 0 0 rgba(124,157,65,.55)}50%{box-shadow:0 10px 30px -8px rgba(0,0,0,.6),0 0 0 22px rgba(124,157,65,0)}}
  .vbox .lbl{position:absolute;left:0;right:0;bottom:0;z-index:3;padding:1.6rem 1.3rem 1rem;background:linear-gradient(transparent,rgba(8,16,26,.9));color:#fff}
  .vbox .lbl b{font-family:'Plus Jakarta Sans';font-size:1.05rem;display:block}
  .vbox .lbl small{color:#c3d2e4;font-size:.82rem}
  .vbox .dur{position:absolute;top:13px;right:13px;z-index:3;background:rgba(8,16,26,.82);color:#fff;font-size:.72rem;font-weight:700;padding:.28rem .58rem;border-radius:6px}
  .vunder{text-align:center;margin-top:1.8rem}

  /* Problem */
  .prob{background:var(--bg)}
  .prob-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.3rem}
  .prob-card{background:var(--bg-soft);border:1px solid var(--line);border-radius:10px;padding:1.8rem 1.5rem;border-left:4px solid var(--navy);position:relative}
  .prob-card .n{font-family:'Plus Jakarta Sans';font-weight:800;font-size:.85rem;color:var(--accent-dark);letter-spacing:.1em;margin-bottom:.6rem;display:block}
  .prob-card h3{font-size:1.1rem;margin-bottom:.45rem;color:var(--navy)}
  .prob-card p{color:var(--muted);font-size:.93rem}

  /* Pull quote */
  .pull{background:var(--bg-soft);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
  .pull .wrap{max-width:900px;text-align:center}
  .pull blockquote{font-family:'Plus Jakarta Sans';font-size:clamp(1.25rem,2.6vw,1.75rem);font-weight:700;color:var(--ink);line-height:1.35}
  .pull .who{margin-top:1.2rem;display:flex;align-items:center;justify-content:center;gap:.7rem}
  .pull .who img{width:52px;height:52px;border-radius:50%;object-fit:cover;object-position:center 22%}
  .pull .who div{text-align:left}
  .pull .who b{display:block;font-family:'Plus Jakarta Sans';color:var(--ink);font-size:.95rem}
  .pull .who small{color:var(--muted);font-size:.82rem}

  /* Offerings */
  .offers{background:var(--bg)}
  .off-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.4rem}
  .off{position:relative;border:1px solid var(--line);border-radius:8px;overflow:hidden;background:#fff;border-bottom:3px solid var(--line);transition:transform .22s,box-shadow .22s,border-color .22s;display:flex;flex-direction:column}
  .off:hover{transform:translateY(-5px);box-shadow:var(--shadow-lg);border-bottom-color:var(--accent)}
  .off .ph{height:210px;position:relative;overflow:hidden}
  .off .ph img{height:100%;width:100%;object-fit:cover;transition:transform .5s}
  .off:hover .ph img{transform:scale(1.06)}
  .off .ph::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(20,41,63,.55),transparent 55%)}
  .off .tag{position:absolute;top:0;left:0;z-index:2;background:var(--accent-strong);color:#fff;font-size:.68rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;padding:.42rem .85rem;font-family:'Plus Jakarta Sans'}
  .off .body{padding:1.4rem 1.5rem 1.6rem;flex:1;display:flex;flex-direction:column}
  .off h3{font-size:1.25rem;color:var(--navy);margin-bottom:.5rem}
  .off p{color:var(--muted);font-size:.94rem;margin-bottom:.9rem}
  .off ul{list-style:none;margin-bottom:1.2rem;flex:1}
  .off li{font-size:.9rem;color:var(--text);padding:.3rem 0 .3rem 1.5rem;position:relative}
  .off li::before{content:"✓";position:absolute;left:0;color:var(--accent);font-weight:800}
  .off .go{align-self:flex-start;font-family:'Plus Jakarta Sans';font-weight:800;font-size:.76rem;letter-spacing:.06em;text-transform:uppercase;color:#fff;background:var(--navy);padding:.65rem 1.2rem;border-radius:999px;transition:background .15s}
  .off .go:hover{background:var(--accent-strong)}

  /* Process */
  .process{background:var(--ink);color:#fff}
  .process .sec-head h2{color:#fff}
  .process .sec-head p{color:#b9cadd}
  .steps{display:grid;grid-template-columns:repeat(5,1fr);gap:1rem;position:relative}
  .step{background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.13);border-radius:10px;padding:1.5rem 1.15rem;transition:border-color .22s,transform .22s}
  .step:hover{border-color:var(--accent);transform:translateY(-4px)}
  .step .n{width:42px;height:42px;border-radius:10px;background:var(--accent-strong);color:#fff;font-family:'Plus Jakarta Sans';font-weight:800;display:grid;place-items:center;margin-bottom:.85rem}
  .step h3{font-size:1rem;color:#fff;margin-bottom:.35rem}
  .step p{color:#b9cadd;font-size:.87rem}
  .process .cta-under{text-align:center;margin-top:2.4rem}

  /* Case study */
  .case{background:var(--bg-soft)}
  .case-card{background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden;box-shadow:var(--shadow);display:grid;grid-template-columns:.95fr 1.05fr}
  .case-card .pic{position:relative;min-height:340px;background:var(--case-img) center/cover}
  .case-card .pic span{position:absolute;left:0;top:0;background:var(--navy);color:#fff;font-size:.68rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;padding:.45rem .9rem;font-family:'Plus Jakarta Sans'}
  .case-card .info{padding:2rem}
  .case-card h3{font-size:1.45rem;margin-bottom:1.1rem;color:var(--navy)}
  .case-metrics{display:grid;grid-template-columns:1fr 1fr;gap:.9rem;margin-bottom:1.2rem}
  .cm{background:var(--bg-soft);border-radius:9px;padding:.85rem}
  .cm b{display:block;font-family:'Plus Jakarta Sans';font-size:1.4rem;color:var(--accent-dark);line-height:1.1}
  .cm small{color:var(--muted);font-size:.76rem}
  .case-card p{color:var(--muted);font-size:.94rem;margin-bottom:.7rem}

  /* Why us */
  .why{background:var(--bg)}
  .why-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.3rem}
  .wcard{background:#fff;border:1px solid var(--line);border-radius:12px;padding:1.7rem 1.5rem;transition:transform .22s,box-shadow .22s,border-color .22s}
  .wcard:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);border-color:var(--navy)}
  .wcard .ic{width:60px;height:60px;border-radius:50%;background:#fff;border:2px solid var(--navy);display:grid;place-items:center;margin-bottom:1rem;transition:background .25s}
  .wcard .ic svg{width:29px;height:29px;fill:none;stroke:var(--navy);stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;transition:stroke .25s}
  .wcard:hover .ic{background:var(--navy)}
  .wcard:hover .ic svg{stroke:#fff}
  .wcard h3{font-size:1.08rem;color:var(--navy);margin-bottom:.4rem}
  .wcard p{color:var(--muted);font-size:.92rem}
  .accred-strip{text-align:center;margin-top:2.8rem;padding-top:2.2rem;border-top:1px solid var(--line)}
  /* height:auto is load-bearing. The <img> carries width/height attributes
     (1396x179) for layout stability, and without it the attribute height wins
     while the CSS width shrinks, stretching the badges vertically. Worst at
     mobile widths, but it was distorting them at every size. */
  .accred-strip img{max-width:900px;width:100%;height:auto;margin:1rem auto 0}

  /* Who it's for */
  .fit{background:var(--bg-soft)}
  .fit-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.3rem}
  .fcard{background:#fff;border:1px solid var(--line);border-left:4px solid var(--accent);border-radius:8px;padding:1.6rem 1.5rem}
  .fcard h3{font-size:1.05rem;color:var(--navy);margin-bottom:.45rem}
  .fcard p{color:var(--muted);font-size:.92rem}
  .notfor{margin-top:1.4rem;background:#fff;border:1px dashed var(--line);border-radius:8px;padding:1.3rem 1.5rem;text-align:center}
  .notfor b{font-family:'Plus Jakarta Sans';color:var(--navy)}
  .notfor p{color:var(--muted);font-size:.92rem;margin-top:.3rem}

  /* Reviews */
  .revs{background:var(--bg)}
  .rev-head{display:flex;align-items:center;justify-content:center;gap:.9rem;flex-wrap:wrap;margin-bottom:2rem}
  .rev-head .score{font-family:'Plus Jakarta Sans';font-weight:800;font-size:1.7rem;color:var(--ink)}
  .stars{color:var(--star);letter-spacing:2px}
  .rev-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.3rem}
  .rv{background:var(--bg-soft);border:1px solid var(--line);border-radius:10px;padding:1.4rem}
  .rv .who{display:flex;align-items:center;gap:.7rem;margin-bottom:.6rem}
  .rv .av{width:40px;height:40px;border-radius:50%;background:var(--navy);color:#fff;display:grid;place-items:center;font-weight:700;font-family:'Plus Jakarta Sans';font-size:.85rem}
  .rv .who b{font-size:.94rem;color:var(--ink)}
  .rv .who small{color:var(--muted);font-size:.76rem;display:block}
  .rv p{font-size:.92rem}

  /* Final CTA + form */
  .final{background:linear-gradient(135deg,var(--navy),var(--navy-2));color:#fff}
  .final .wrap{display:grid;grid-template-columns:1.05fr .95fr;gap:3rem;align-items:center}
  .final h2{color:#fff;font-size:clamp(1.8rem,3.4vw,2.6rem);margin:.6rem 0 .8rem}
  .final p.sub{color:#d5e2f2;margin-bottom:1.2rem}
  .final ul{list-style:none;display:grid;gap:.65rem;margin-bottom:1.6rem}
  .final li{display:flex;align-items:flex-start;gap:.6rem;color:#dbe6f2;font-size:.98rem}
  .final li .ck{color:var(--accent);font-weight:800;flex-shrink:0}
  .final .nb{font-size:.86rem;color:#a9bdd6}
  .lpform{background:#fff;color:var(--text);border-radius:14px;padding:1.9rem;box-shadow:var(--shadow-lg)}
  .lpform h3{font-size:1.35rem;margin-bottom:.25rem}
  .lpform .fsub{color:var(--muted);font-size:.9rem;margin-bottom:1.2rem}
  .lpform .field{margin-bottom:.85rem}
  .lpform label{display:block;font-size:.8rem;font-weight:700;margin-bottom:.32rem;color:var(--ink)}
  .lpform input,.lpform select{width:100%;padding:.82rem .9rem;border:1.5px solid var(--line);border-radius:9px;font:inherit;font-size:.95rem;background:#fff}
  .lpform input:focus,.lpform select:focus{outline:none;border-color:var(--accent)}
  .lpform .two{display:grid;grid-template-columns:1fr 1fr;gap:.7rem}
  .lpform .btn{width:100%;margin-top:.5rem}
  .lpform .fine{display:block;text-align:center;color:var(--muted);font-size:.76rem;margin-top:.8rem}

  footer{background:var(--ink);color:#9fb3cc;text-align:center;padding:2.8rem 22px;font-size:.9rem}
  footer img{height:64px;width:auto;margin:0 auto 1rem}
  footer a{color:#fff;font-weight:700}
  footer .fl{margin-top:.8rem;font-size:.82rem;color:#7d92ad}

  /* Sticky bottom CTA */
  .sticky-cta{position:fixed;bottom:0;left:0;right:0;z-index:60;background:rgba(20,41,63,.97);backdrop-filter:blur(10px);border-top:1px solid rgba(255,255,255,.12);padding:.7rem 22px}
  .sticky-cta .inner{max-width:var(--maxw);margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:1rem}
  .sticky-cta .txt{color:#fff;font-size:.92rem}
  .sticky-cta .txt b{font-family:'Plus Jakarta Sans'}
  .sticky-cta .txt small{display:block;color:#a9bdd6;font-size:.76rem}
  .sticky-cta .acts{display:flex;gap:.6rem;align-items:center;flex-shrink:0}
  .sticky-cta .btn{padding:.72rem 1.3rem;font-size:.92rem;white-space:nowrap}

  .reveal{opacity:0;transform:translateY(20px);transition:opacity .65s ease,transform .65s ease}
  .reveal.in{opacity:1;transform:none}
  @media (prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}.btn-primary,.vbox .play i{animation:none}}

  @media(max-width:980px){
    .hero .wrap,.final .wrap{grid-template-columns:1fr}
    .prob-grid,.why-grid,.fit-grid,.rev-grid{grid-template-columns:1fr 1fr}
    .steps{grid-template-columns:repeat(2,1fr)}
    .case-card{grid-template-columns:1fr}
    .case-card .pic{min-height:220px}
  }
  @media(max-width:680px){
    .off-grid,.prob-grid,.why-grid,.fit-grid,.rev-grid,.steps{grid-template-columns:1fr}
    .lp-phone{display:none}
    .lp-nav img{height:40px}
    .lp-nav .btn{padding:.7rem 1.1rem;font-size:.9rem}
    .sticky-cta{padding:.55rem 14px}
    .sticky-cta .txt small{display:none}
    .sticky-cta .txt b{font-size:.85rem}
    .sticky-cta .btn{padding:.62rem .95rem;font-size:.85rem}
    .hero-ticks{gap:.9rem}
    .final .wrap,.hero .wrap{gap:2rem}
  }
  @media(max-width:400px){
    .sticky-cta .txt{display:none}
    .sticky-cta .inner{justify-content:center}
    .sticky-cta .acts{flex:1}
    .sticky-cta .btn{flex:1}
  }

  /* ---- Urgent variant (emergency lander): red accent, phone-first ---- */
  .urgent .urgency{background:#8f2d21}
  .urgent .urgency b{color:#ffd7cf}
  .btn-urgent{background:#c0392b;color:#fff;box-shadow:0 8px 20px -8px rgba(192,57,43,.9),0 0 16px 1px rgba(255,120,90,.45);animation:redPulse 2.2s ease-in-out infinite}
  .btn-urgent:hover{background:#a33326;transform:translateY(-2px);box-shadow:0 10px 24px -8px rgba(192,57,43,.95),0 0 28px 4px rgba(255,120,90,.75)}
  @keyframes redPulse{0%,100%{box-shadow:0 8px 20px -8px rgba(192,57,43,.9),0 0 12px 0 rgba(255,120,90,.35)}50%{box-shadow:0 8px 20px -8px rgba(192,57,43,.9),0 0 26px 3px rgba(255,120,90,.7)}}
  @media (prefers-reduced-motion:reduce){.btn-urgent{animation:none}}
  .urgent .prob-card{border-left-color:#c0392b}
  .urgent .proof .big{background:#fdecea}
  .urgent .proof .big b{color:#c0392b}
  .urgent .off .tag{background:#c0392b}
  .live-dot{width:9px;height:9px;border-radius:50%;background:#5ee08a;display:inline-block;box-shadow:0 0 0 3px rgba(94,224,138,.25);animation:pulseDot 2s infinite;margin-right:.4rem}
  @keyframes pulseDot{0%,100%{opacity:1}50%{opacity:.4}}
  @media (prefers-reduced-motion:reduce){.live-dot{animation:none}}
