
  :root{
    --graphite:#20231e; --graphite-2:#2b2f28; --paper:#f2f3ef; --canvas:#f7f8f4;
    --lime:#9bd45f; --lime-deep:#4f7a1f; --ink:#15201a; --muted:#5a6152;
    --paper-muted:#b6bbb0; --line:#e3e5e0; --white:#fff;
    --display:'Space Grotesk',system-ui,sans-serif; --body:'Inter',system-ui,sans-serif;
    --maxw:1200px;
  }
  *{box-sizing:border-box;margin:0;padding:0}
  html{scroll-behavior:smooth}
  body{font-family:var(--body);color:var(--ink);background:var(--canvas);line-height:1.6;-webkit-font-smoothing:antialiased}
  .wrap{max-width:var(--maxw);margin:0 auto;padding:0 28px}
  h1,h2,h3{font-family:var(--display);font-weight:700;line-height:1.02;letter-spacing:-.03em}
  h2{font-size:clamp(2rem,4.4vw,3.4rem)}
  h3{font-size:clamp(1.15rem,1.8vw,1.5rem);letter-spacing:-.02em}
  p{color:var(--muted)}
  a{color:inherit;text-decoration:none}
  .btn{display:inline-flex;align-items:center;gap:.5em;font-family:var(--display);font-weight:600;font-size:1rem;
    padding:.85em 1.5em;border-radius:2px;cursor:pointer;border:0;transition:transform .15s ease,background .15s ease}
  .btn-lime{background:var(--lime);color:var(--ink)}
  .btn-lime:hover{background:#a9de71;transform:translateY(-2px)}
  .btn-ghost{background:transparent;color:var(--paper);border:1.5px solid rgba(242,243,239,.25)}
  .btn-ghost:hover{border-color:var(--lime);color:var(--lime)}
  .rule{width:54px;height:3px;background:var(--lime);border:0;margin:0 0 26px}
  .eyebrow-num{font-family:var(--display);color:var(--lime-deep);font-weight:600;font-size:.95rem}

  /* rosette + blueprint */
  .grid-bg{position:absolute;inset:0;pointer-events:none;opacity:.5;
    background-image:linear-gradient(rgba(242,243,239,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(242,243,239,.05) 1px,transparent 1px);
    background-size:44px 44px}
  svg.rosette{display:block}

  /* HEADER */
  header{position:sticky;top:0;z-index:50;background:rgba(32,35,30,.9);backdrop-filter:blur(10px);border-bottom:1px solid rgba(242,243,239,.08)}
  .nav{display:flex;align-items:center;justify-content:space-between;height:72px}
  .brand{display:flex;align-items:center;gap:11px;color:var(--paper);font-family:var(--display);font-weight:700;font-size:1.15rem;letter-spacing:-.02em}
  .nav-links{display:flex;gap:30px;color:var(--paper-muted);font-weight:500;font-size:.95rem}
  .nav-links a:hover{color:var(--lime)}
  .nav-right{display:flex;align-items:center;gap:20px}
  .nav-phone{color:var(--lime);font-family:var(--display);font-weight:600;display:flex;align-items:center;gap:7px}

  /* HERO */
  .hero{position:relative;background:var(--graphite);color:var(--paper);overflow:hidden;padding:76px 0 120px}
  .hero .wrap{position:relative;z-index:2;display:grid;grid-template-columns:1.15fr .85fr;gap:56px;align-items:center}
  .hero-rosette{position:absolute;right:-160px;top:-80px;width:620px;opacity:.09;z-index:1}
  .hero h1{font-size:clamp(2.6rem,6vw,5rem);color:var(--paper);max-width:12ch}
  .hero h1 .hl{color:var(--lime)}
  .hero .sub{font-size:1.22rem;color:var(--paper-muted);margin:26px 0 34px;max-width:34ch}
  .hero-cta{display:flex;gap:14px;flex-wrap:wrap;align-items:center}
  .proof-row{display:flex;gap:26px;margin-top:38px;flex-wrap:wrap}
  .proof-row .pf{display:flex;flex-direction:column}
  .proof-row .pf b{font-family:var(--display);font-size:1.5rem;color:var(--paper);font-weight:600;line-height:1}
  .proof-row .pf span{font-size:.82rem;color:var(--paper-muted);margin-top:5px;letter-spacing:.02em}
  .stars{color:var(--lime);letter-spacing:2px}

  /* the floating callback card — the non-band moment */
  .callcard{background:var(--paper);color:var(--ink);border-radius:4px;padding:30px 28px;box-shadow:0 40px 80px -30px rgba(0,0,0,.6);
    position:relative;margin-bottom:-80px}
  .callcard h3{color:var(--ink);margin-bottom:4px}
  .callcard .cc-sub{font-size:.9rem;margin-bottom:20px}
  .field{width:100%;padding:.82em 1em;border:1.5px solid var(--line);border-radius:2px;font-family:var(--body);font-size:.95rem;margin-bottom:12px;background:var(--white)}
  .field:focus{outline:0;border-color:var(--lime-deep)}
  .callcard .btn{width:100%;justify-content:center;margin-top:6px}
  .cc-photo{width:44px;height:44px;border-radius:50%;object-fit:cover;border:2px solid var(--lime)}
  .cc-top{display:flex;align-items:center;gap:12px;margin-bottom:18px}
  .cc-top .cc-meta small{color:var(--muted);font-size:.78rem;display:block}

  /* TRUST STRIP */
  .trust{background:var(--paper);border-bottom:1px solid var(--line)}
  .trust .wrap{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;padding:74px 28px 56px}
  .stat b{font-family:var(--display);font-size:clamp(2.4rem,4vw,3.2rem);color:var(--ink);font-weight:700;line-height:1;display:block;letter-spacing:-.03em}
  .stat b em{color:var(--lime-deep);font-style:normal}
  .stat span{color:var(--muted);font-size:.95rem;margin-top:8px;display:block}

  /* OUTCOMES */
  section{padding:96px 0}
  .sec-head{max-width:44ch;margin-bottom:56px}
  .sec-head p{font-size:1.15rem;margin-top:16px}
  .outcomes{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:20px;align-items:end}
  .oc{padding:32px;border:1px solid var(--line);border-radius:4px;background:var(--white)}
  .oc:first-child{background:var(--graphite);color:var(--paper);border-color:var(--graphite);padding-bottom:44px}
  .oc:first-child h3,.oc:first-child p{color:var(--paper)}
  .oc:first-child p{color:var(--paper-muted)}
  .oc .ico{width:40px;height:40px;color:var(--lime-deep);margin-bottom:22px}
  .oc:first-child .ico{color:var(--lime)}
  .oc h3{margin-bottom:10px}
  .oc p{font-size:.98rem}

  /* TESTIMONIAL (graphite) */
  .quote{position:relative;background:var(--graphite-2);color:var(--paper);overflow:hidden}
  .quote .wrap{position:relative;z-index:2;display:grid;grid-template-columns:.8fr 1.2fr;gap:48px;align-items:center}
  .quote img.face{width:100%;border-radius:4px;aspect-ratio:4/5;object-fit:cover}
  .quote blockquote{font-family:var(--display);font-weight:500;font-size:clamp(1.5rem,2.8vw,2.2rem);line-height:1.28;letter-spacing:-.02em;color:var(--paper)}
  .quote .qmark{color:var(--lime);font-size:4rem;line-height:.6;font-family:var(--display)}
  .quote cite{display:block;margin-top:26px;font-style:normal;color:var(--paper-muted);font-size:1rem}
  .quote cite b{color:var(--lime);font-weight:600;display:block;font-family:var(--display)}

  /* PRICING */
  .pricing{background:var(--paper)}
  .price-grid{display:grid;grid-template-columns:1fr 1.15fr;gap:48px;align-items:center}
  .price-card{background:var(--graphite);color:var(--paper);border-radius:6px;padding:44px;box-shadow:0 40px 90px -40px rgba(32,35,30,.6);position:relative;overflow:hidden}
  .price-card .grid-bg{opacity:.6}
  .price-card .amt{font-family:var(--display);font-weight:700;font-size:4.2rem;color:var(--lime);line-height:1;letter-spacing:-.04em;position:relative;z-index:2}
  .price-card .amt s{color:var(--paper-muted);font-size:1.6rem;font-weight:400;margin-right:14px;text-decoration-thickness:2px}
  .price-card .amt-sub{color:var(--paper-muted);position:relative;z-index:2;margin-top:6px}
  .price-card ul{list-style:none;margin:28px 0;position:relative;z-index:2}
  .price-card li{display:flex;gap:12px;align-items:flex-start;padding:9px 0;color:var(--paper);font-size:.98rem;border-bottom:1px solid rgba(242,243,239,.09)}
  .price-card li svg{width:20px;height:20px;color:var(--lime);flex:0 0 auto;margin-top:2px}
  .price-card .btn{width:100%;justify-content:center;position:relative;z-index:2;margin-top:8px}
  .price-copy h2{margin-bottom:20px}
  .guarantee{display:inline-flex;align-items:center;gap:10px;margin-top:22px;color:var(--lime-deep);font-family:var(--display);font-weight:600}

  /* PROCESS */
  .steps{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid var(--line)}
  .step{padding:38px 34px 38px 0;border-right:1px solid var(--line);position:relative}
  .step:last-child{border-right:0}
  .step .n{font-family:var(--display);font-weight:700;font-size:1rem;color:var(--lime-deep);display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border:1.5px solid var(--lime);border-radius:50%;margin-bottom:18px}
  .step h3{margin-bottom:8px}
  .step p{font-size:.96rem}

  /* COVERAGE (graphite) */
  .coverage{background:var(--graphite);color:var(--paper);position:relative;overflow:hidden}
  .coverage .wrap{position:relative;z-index:2}
  .coverage h2{color:var(--paper);max-width:20ch}
  .pills{display:flex;flex-wrap:wrap;gap:11px;margin-top:34px;max-width:760px}
  .pill{border:1px solid rgba(242,243,239,.2);color:var(--paper-muted);padding:9px 17px;border-radius:2px;font-size:.92rem;font-weight:500}
  .pill:hover{border-color:var(--lime);color:var(--lime)}

  /* FINAL CTA */
  .final{background:var(--lime);color:var(--ink);text-align:center}
  .final h2{color:var(--ink);max-width:18ch;margin:0 auto 18px}
  .final p{color:var(--lime-deep);font-size:1.15rem;max-width:40ch;margin:0 auto 32px;font-weight:500}
  .final .btn-dark{background:var(--graphite);color:var(--paper)}
  .final .btn-dark:hover{background:#000;transform:translateY(-2px)}

  /* FOOTER */
  footer{background:var(--graphite);color:var(--paper-muted);position:relative;overflow:hidden;padding:60px 0 40px}
  footer .wrap{position:relative;z-index:2;display:flex;justify-content:space-between;align-items:flex-start;gap:40px;flex-wrap:wrap}
  footer .brand{margin-bottom:14px}
  footer a:hover{color:var(--lime)}
  .fcol h4{color:var(--paper);font-family:var(--display);font-size:.95rem;margin-bottom:14px}
  .fcol a{display:block;padding:5px 0;font-size:.92rem}

  /* MOTION — signature reveal */
  @keyframes up{from{opacity:0;transform:translateY(26px)}to{opacity:1;transform:none}}
  @keyframes spin-in{from{opacity:0;transform:rotate(-40deg) scale(.8)}to{opacity:.09;transform:none}}
  .rise{animation:up .9s cubic-bezier(.16,1,.3,1) both}
  .rise-2{animation:up .9s cubic-bezier(.16,1,.3,1) .12s both}
  .rise-3{animation:up .9s cubic-bezier(.16,1,.3,1) .24s both}
  .rise-4{animation:up .9s cubic-bezier(.16,1,.3,1) .36s both}
  .hero-rosette{animation:spin-in 1.4s cubic-bezier(.16,1,.3,1) .2s both}
  @media (prefers-reduced-motion:reduce){.rise,.rise-2,.rise-3,.rise-4,.hero-rosette{animation:none;opacity:1;transform:none}.hero-rosette{opacity:.09}}

  @media(max-width:860px){
    .hero .wrap,.quote .wrap,.price-grid{grid-template-columns:1fr;gap:32px}
    .trust .wrap{grid-template-columns:1fr 1fr;gap:34px 24px}
    .outcomes{grid-template-columns:1fr}
    .steps{grid-template-columns:1fr}
    .step{border-right:0;border-bottom:1px solid var(--line)}
    .nav-links{display:none}
    .callcard{margin-bottom:0}
    .hero{padding-bottom:64px}
  }


/* ================= vertical-page comp (HVAC etc.) ================= */

  :root{
    --graphite:#20231e; --graphite-2:#2b2f28; --paper:#f2f3ef; --canvas:#f7f8f4;
    --lime:#9bd45f; --lime-deep:#4f7a1f; --ink:#15201a; --muted:#5a6152;
    --paper-muted:#b6bbb0; --line:#e3e5e0; --white:#fff;
    --display:'Space Grotesk',system-ui,sans-serif; --body:'Inter',system-ui,sans-serif; --maxw:1200px;
  }
  *{box-sizing:border-box;margin:0;padding:0}
  body{font-family:var(--body);color:var(--ink);background:var(--canvas);line-height:1.6;-webkit-font-smoothing:antialiased}
  .wrap{max-width:var(--maxw);margin:0 auto;padding:0 28px}
  h1,h2,h3{font-family:var(--display);font-weight:700;line-height:1.03;letter-spacing:-.03em}
  h2{font-size:clamp(2rem,4.4vw,3.3rem)}
  h3{font-size:clamp(1.15rem,1.8vw,1.5rem);letter-spacing:-.02em}
  p{color:var(--muted)}
  a{color:inherit;text-decoration:none}
  .btn{display:inline-flex;align-items:center;gap:.5em;font-family:var(--display);font-weight:600;font-size:1rem;padding:.85em 1.5em;border-radius:2px;cursor:pointer;border:0;transition:transform .15s,background .15s}
  .btn-lime{background:var(--lime);color:var(--ink)}.btn-lime:hover{background:#a9de71;transform:translateY(-2px)}
  .btn-ghost{background:transparent;color:var(--paper);border:1.5px solid rgba(242,243,239,.25)}.btn-ghost:hover{border-color:var(--lime);color:var(--lime)}
  .rule{width:54px;height:3px;background:var(--lime);border:0;margin:0 0 26px}
  .grid-bg{position:absolute;inset:0;pointer-events:none;opacity:.5;background-image:linear-gradient(rgba(242,243,239,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(242,243,239,.05) 1px,transparent 1px);background-size:44px 44px}
  header{position:sticky;top:0;z-index:50;background:rgba(32,35,30,.9);backdrop-filter:blur(10px);border-bottom:1px solid rgba(242,243,239,.08)}
  .nav{display:flex;align-items:center;justify-content:space-between;height:72px}
  .brand{display:flex;align-items:center;gap:11px;color:var(--paper);font-family:var(--display);font-weight:700;font-size:1.15rem;letter-spacing:-.02em}
  .nav-links{display:flex;gap:30px;color:var(--paper-muted);font-weight:500;font-size:.95rem}
  .nav-links a:hover,.nav-links a.on{color:var(--lime)}
  .nav-right{display:flex;align-items:center;gap:20px}
  .nav-phone{color:var(--lime);font-family:var(--display);font-weight:600;display:flex;align-items:center;gap:7px}
  .hero{position:relative;background:var(--graphite);color:var(--paper);overflow:hidden;padding:70px 0 110px}
  .hero .wrap{position:relative;z-index:2;display:grid;grid-template-columns:1.15fr .85fr;gap:56px;align-items:center}
  .hero-rosette{position:absolute;right:-160px;top:-80px;width:600px;opacity:.09;z-index:1}
  .hero .tag{display:inline-block;font-family:var(--display);font-weight:600;color:var(--lime);font-size:.9rem;letter-spacing:.08em;text-transform:uppercase;border:1px solid rgba(155,212,95,.3);padding:5px 12px;border-radius:2px;margin-bottom:22px}
  .hero h1{font-size:clamp(2.4rem,5.4vw,4.4rem);color:var(--paper);max-width:14ch}
  .hero h1 .hl{color:var(--lime)}
  .hero .sub{font-size:1.18rem;color:var(--paper-muted);margin:24px 0 32px;max-width:36ch}
  .hero-cta{display:flex;gap:14px;flex-wrap:wrap}
  .proof-row{display:flex;gap:26px;margin-top:36px;flex-wrap:wrap}
  .proof-row .pf b{font-family:var(--display);font-size:1.4rem;color:var(--paper);font-weight:600;line-height:1;display:block}
  .proof-row .pf span{font-size:.8rem;color:var(--paper-muted);margin-top:5px;display:block}
  .stars{color:var(--lime);letter-spacing:2px}
  .callcard{background:var(--paper);color:var(--ink);border-radius:4px;padding:28px 26px;box-shadow:0 40px 80px -30px rgba(0,0,0,.6);position:relative;margin-bottom:-70px}
  .callcard h3{color:var(--ink);font-size:1.25rem;margin-bottom:4px}
  .callcard .cc-sub{font-size:.88rem;margin-bottom:18px}
  .field{width:100%;padding:.8em 1em;border:1.5px solid var(--line);border-radius:2px;font-family:var(--body);font-size:.95rem;margin-bottom:11px;background:var(--white)}
  .field:focus{outline:0;border-color:var(--lime-deep)}
  .callcard .btn{width:100%;justify-content:center;margin-top:5px}
  section{padding:92px 0}
  .sec-head{max-width:46ch;margin-bottom:52px}
  .sec-head p{font-size:1.12rem;margin-top:15px}
  /* anatomy checklist — the thesis, practised */
  .anatomy{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}
  .an{display:flex;gap:18px;padding:26px;border:1px solid var(--line);border-radius:4px;background:var(--white)}
  .an:first-child{grid-column:1/-1;background:var(--graphite);border-color:var(--graphite)}
  .an:first-child h3,.an:first-child p{color:var(--paper)}.an:first-child p{color:var(--paper-muted)}
  .an .ico{width:34px;height:34px;color:var(--lime-deep);flex:0 0 auto}
  .an:first-child .ico{color:var(--lime)}
  .an h3{margin-bottom:6px}.an p{font-size:.96rem}
  /* reflowed SEO prose — designed, not a wall */
  .prose{background:var(--paper)}
  .prose .wrap{display:grid;grid-template-columns:.85fr 1.15fr;gap:56px;align-items:start}
  .prose h2{position:sticky;top:100px}
  .prose .body p{font-size:1.06rem;color:var(--muted);margin-bottom:18px}
  .prose .body p strong{color:var(--ink);font-weight:600}
  .callout{background:var(--graphite);color:var(--paper);border-radius:4px;padding:26px 28px;margin:26px 0;position:relative;overflow:hidden}
  .callout b{font-family:var(--display);font-size:2.2rem;color:var(--lime);display:block;line-height:1;letter-spacing:-.03em}
  .callout span{color:var(--paper-muted);font-size:.98rem;display:block;margin-top:8px}
  .quote{position:relative;background:var(--graphite-2);color:var(--paper);overflow:hidden}
  .quote .wrap{position:relative;z-index:2;display:grid;grid-template-columns:.8fr 1.2fr;gap:48px;align-items:center}
  .quote img.face{width:100%;border-radius:4px;aspect-ratio:4/5;object-fit:cover}
  .quote blockquote{font-family:var(--display);font-weight:500;font-size:clamp(1.5rem,2.8vw,2.1rem);line-height:1.28;letter-spacing:-.02em;color:var(--paper)}
  .quote .qmark{color:var(--lime);font-size:4rem;line-height:.6;font-family:var(--display)}
  .quote cite{display:block;margin-top:24px;font-style:normal;color:var(--paper-muted)}
  .quote cite b{color:var(--lime);font-weight:600;display:block;font-family:var(--display)}
  .pricing{background:var(--canvas)}
  .price-grid{display:grid;grid-template-columns:1fr 1.15fr;gap:48px;align-items:center}
  .price-card{background:var(--graphite);color:var(--paper);border-radius:6px;padding:44px;box-shadow:0 40px 90px -40px rgba(32,35,30,.6);position:relative;overflow:hidden}
  .price-card .grid-bg{opacity:.6}
  .price-card .amt{font-family:var(--display);font-weight:700;font-size:4rem;color:var(--lime);line-height:1;letter-spacing:-.04em;position:relative;z-index:2}
  .price-card .amt s{color:var(--paper-muted);font-size:1.5rem;font-weight:400;margin-right:12px}
  .price-card .amt-sub{color:var(--paper-muted);position:relative;z-index:2;margin-top:6px}
  .price-card ul{list-style:none;margin:26px 0;position:relative;z-index:2}
  .price-card li{display:flex;gap:12px;align-items:flex-start;padding:9px 0;color:var(--paper);font-size:.97rem;border-bottom:1px solid rgba(242,243,239,.09)}
  .price-card li svg{width:20px;height:20px;color:var(--lime);flex:0 0 auto;margin-top:2px}
  .price-card .btn{width:100%;justify-content:center;position:relative;z-index:2;margin-top:8px}
  .guarantee{display:inline-flex;align-items:center;gap:10px;margin-top:22px;color:var(--lime-deep);font-family:var(--display);font-weight:600}
  /* FAQ */
  .faq{max-width:820px;margin:0 auto}
  .qa{border-bottom:1px solid var(--line);padding:24px 0}
  .qa h3{display:flex;justify-content:space-between;gap:16px;align-items:center;cursor:default}
  .qa h3 svg{width:22px;height:22px;color:var(--lime-deep);flex:0 0 auto}
  .qa p{margin-top:12px;font-size:1.02rem}
  .final{background:var(--lime);color:var(--ink);text-align:center}
  .final h2{color:var(--ink);max-width:20ch;margin:0 auto 18px}
  .final p{color:var(--lime-deep);font-size:1.15rem;max-width:44ch;margin:0 auto 32px;font-weight:500}
  .final .btn-dark{background:var(--graphite);color:var(--paper)}.final .btn-dark:hover{background:#000;transform:translateY(-2px)}
  footer{background:var(--graphite);color:var(--paper-muted);position:relative;overflow:hidden;padding:56px 0 40px}
  footer .wrap{position:relative;z-index:2;display:flex;justify-content:space-between;gap:40px;flex-wrap:wrap}
  footer .brand{margin-bottom:12px}footer a:hover{color:var(--lime)}
  .fcol h4{color:var(--paper);font-family:var(--display);font-size:.95rem;margin-bottom:14px}
  .fcol a{display:block;padding:5px 0;font-size:.92rem}
  @keyframes up{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}
  @keyframes spin-in{from{opacity:0;transform:rotate(-40deg) scale(.8)}to{opacity:.09;transform:none}}
  .rise{animation:up .9s cubic-bezier(.16,1,.3,1) both}.rise-2{animation:up .9s cubic-bezier(.16,1,.3,1) .12s both}
  .rise-3{animation:up .9s cubic-bezier(.16,1,.3,1) .24s both}.rise-4{animation:up .9s cubic-bezier(.16,1,.3,1) .36s both}
  .hero-rosette{animation:spin-in 1.4s cubic-bezier(.16,1,.3,1) .2s both}
  @media (prefers-reduced-motion:reduce){.rise,.rise-2,.rise-3,.rise-4,.hero-rosette{animation:none;opacity:1;transform:none}.hero-rosette{opacity:.09}}
  @media(max-width:860px){
    .hero .wrap,.quote .wrap,.price-grid,.prose .wrap{grid-template-columns:1fr;gap:32px}
    .anatomy{grid-template-columns:1fr}.prose h2{position:static}
    .nav-links{display:none}.callcard{margin-bottom:0}.hero{padding-bottom:60px}
  }
