/* Fonts are self-hosted (latin subset) so the first paint doesn't wait on Google Fonts. */
@font-face{font-family:'Inter';font-style:normal;font-weight:400 800;font-display:swap;src:url(assets/inter-latin.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:'IBM Plex Mono';font-style:normal;font-weight:400;font-display:swap;src:url(assets/plexmono-400-latin.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:'IBM Plex Mono';font-style:normal;font-weight:500;font-display:swap;src:url(assets/plexmono-500-latin.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:'IBM Plex Mono';font-style:normal;font-weight:600;font-display:swap;src:url(assets/plexmono-600-latin.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}

  :root{
    --bg:#F5F7FB;
    --surface:#FFFFFF;
    --surface-alt:#ECF1FA;
    --ink:#111524;
    --ink-muted:#5A6178;
    --border:#DCE2F2;
    --accent:#1663D6;
    --accent-dark:#0D3E9E;
    --accent-deep:#082B70;
    --accent-tint:#EAF2FE;
    --seal:#A9781F;
    --seal-bg:#FBF0D9;
    --seal-border:#E4C77E;
    --shadow: 0 1px 2px rgba(17,21,36,.05), 0 8px 24px rgba(17,21,36,.07);
    --radius-s: 8px;
    --radius-m: 14px;
    --radius-l: 22px;
    --font-display:'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    --font-body:'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    --font-mono:'IBM Plex Mono', 'SFMono-Regular', Menlo, Consolas, monospace;
  }
  /* ClipOrbits commits to one visual world: bright, light, verifiable,
     matching every real competitor in this category. Colors are painted
     explicitly below rather than adapting to the viewer's OS theme. */

  *{box-sizing:border-box;}
  html{scroll-behavior:smooth;}
  body{
    margin:0;
    background:var(--bg);
    color:var(--ink);
    font-family:var(--font-body);
    line-height:1.65;
    -webkit-font-smoothing:antialiased;
    overflow-x:hidden;
  }
  img{max-width:100%;}
  h1,h2,h3{font-family:var(--font-display); text-wrap:balance; margin:0 0 .5em; font-weight:600; letter-spacing:-.01em;}
  h1{font-size:clamp(2.1rem,4.6vw,3.3rem); line-height:1.08; font-weight:600;}
  .hero h1{font-size:clamp(1.9rem,3.4vw,2.75rem);}
  body[data-page="home"] .hero h1{font-size:clamp(2.1rem,3.8vw,3.1rem); font-weight:800; letter-spacing:-.025em; line-height:1.04;}
  h2{font-size:clamp(1.5rem,2.8vw,2.1rem); line-height:1.18;}
  h3{font-size:1.22rem; line-height:1.3;}
  p{margin:0 0 1em;}
  a{color:inherit;}
  ul,ol{padding-left:1.2em;}
  li{margin-bottom:.4em;}
  .container{max-width:1100px; margin:0 auto; padding:0 24px;}
  .container-wide{max-width:1280px;}
  .prose{max-width:65ch;}
  .eyebrow{
    display:inline-flex; align-items:center; gap:8px;
    font-family:var(--font-mono); font-size:.72rem; letter-spacing:.09em; text-transform:uppercase;
    color:var(--accent-dark); font-weight:500;
  }
  .num{font-variant-numeric:tabular-nums; font-family:var(--font-mono);}
  [hidden]{display:none !important;}

  /* ---------- Nav ---------- */
  header.site-nav{
    position:sticky; top:0; z-index:100;
    background:var(--bg);
    border-bottom:1px solid var(--border);
  }
  .nav-row{
    max-width:1100px; margin:0 auto; padding:14px 24px;
    display:flex; align-items:center; gap:20px;
  }
  .brand{
    display:flex; align-items:center; gap:8px;
    font-family:var(--font-display); font-weight:600; font-size:1.2rem;
    text-decoration:none; color:var(--ink); flex:0 0 auto;
    cursor:pointer; background:none; border:none; padding:0;
  }
  .brand .logo-mark{height:38px; width:auto; display:block; flex:0 0 auto;}
  nav.links{display:flex; align-items:center; gap:4px; flex:1; position:relative;}
  nav.links a, nav.links button.navlink{
    font-size:.92rem; font-weight:500; color:var(--ink-muted); text-decoration:none;
    padding:8px 12px; border-radius:20px; background:none; border:none; cursor:pointer; font-family:var(--font-body);
  }
  nav.links a:hover, nav.links button.navlink:hover{background:var(--surface-alt); color:var(--ink);}
  nav.links a.active, nav.links button.navlink.active{color:var(--accent-dark); background:var(--accent-tint);}
  .dropdown{position:relative;}
  .dropdown-panel{
    position:absolute; top:calc(100% + 6px); left:0; min-width:250px;
    background:var(--surface); border:1px solid var(--border); border-radius:var(--radius-m);
    box-shadow:var(--shadow); padding:8px; display:flex; flex-direction:column; gap:2px;
  }
  .dropdown-panel a{display:block; padding:9px 12px; border-radius:8px; font-size:.88rem; color:var(--ink);}
  .dropdown-panel a:hover{background:var(--surface-alt);}
  .nav-cta{
    flex:0 0 auto; font-size:.88rem; font-weight:600; text-decoration:none;
    background:var(--accent); color:#fff; padding:10px 18px; border-radius:10px;
    white-space:nowrap; transition:background .15s ease; border:none; cursor:pointer; font-family:var(--font-body);
  }
  .nav-cta:hover{background:var(--accent-dark);}
  nav.links a.nav-cta{background:var(--accent); color:#fff; border-radius:10px; font-weight:600;}
  nav.links a.nav-cta:hover{background:var(--accent-dark); color:#fff;}
  .menu-toggle{display:none; background:none; border:1px solid var(--border); border-radius:8px; padding:8px 10px; cursor:pointer; color:var(--ink);}
  .mobile-only-cta{display:none;}
  @media (max-width:860px){
    nav.links{display:none; position:fixed; top:64px; left:0; right:0; bottom:0; background:var(--bg); flex-direction:column; align-items:stretch; padding:16px; overflow-y:auto; z-index:99;}
    nav.links.open{display:flex;}
    nav.links a, nav.links button.navlink{text-align:left; font-size:1rem; padding:12px 14px;}
    .dropdown-panel{position:static; box-shadow:none; border:none; margin-left:12px;}
    .menu-toggle{display:block; margin-left:auto;}
    .nav-cta.desktop-only{display:none;}
    .mobile-only-cta{display:inline-flex;}
  }
  :focus-visible{outline:2px solid var(--accent); outline-offset:2px;}

  /* ---------- Buttons ---------- */
  .btn{
    display:inline-flex; align-items:center; gap:8px; justify-content:center;
    font-family:var(--font-body); font-weight:600; font-size:.95rem; text-decoration:none;
    padding:13px 24px; border-radius:12px; border:1px solid transparent; cursor:pointer;
    transition:transform .12s ease, background .15s ease, border-color .15s ease, box-shadow .15s ease;
  }
  .btn:active{transform:scale(.98);}
  .btn-primary{
    background:var(--accent-dark); color:#fff; font-weight:700; padding:15px 24px;
    box-shadow:0 8px 20px -6px rgba(13,62,158,.55), 0 2px 4px rgba(13,62,158,.25);
  }
  .btn-primary:hover{background:var(--accent-deep); transform:translateY(-1px); box-shadow:0 12px 24px -6px rgba(13,62,158,.6), 0 3px 6px rgba(13,62,158,.3);}
  .btn-ghost{background:transparent; color:var(--ink); border-color:var(--border);}
  .btn-ghost:hover{background:var(--surface-alt);}
  .btn-block{width:100%;}
  .btn-sm{padding:9px 16px; font-size:.85rem; border-radius:10px;}
  .cta-row{display:flex; gap:12px; flex-wrap:wrap; align-items:center; margin-top:1.4em;}
  .micro{font-size:.82rem; color:var(--ink-muted); margin-top:10px;}

  /* ---------- Sections / layout ---------- */
  section.page{padding:0 0 100px;}
  .band{padding-top:64px; padding-bottom:64px;}
  .band-alt{background:var(--surface-alt);}
  .band-top{border-top:1px solid var(--border);}
  .band-bottom{border-bottom:1px solid var(--border);}
  .grid{display:grid; gap:20px;}
  .grid-2{grid-template-columns:1fr 1fr;}
  .grid-3{grid-template-columns:repeat(3,1fr);}
  .grid-4{grid-template-columns:repeat(4,1fr);}
  @media (max-width:900px){.grid-3{grid-template-columns:1fr 1fr;} .grid-4{grid-template-columns:1fr 1fr;}}
  @media (max-width:640px){.grid-2,.grid-3,.grid-4{grid-template-columns:1fr;}}

  .card{
    background:var(--surface); border:1px solid var(--border); border-radius:var(--radius-m);
    padding:24px; box-shadow:var(--shadow);
  }

  /* ---------- Founder (homepage) ---------- */
  .founder-mini{display:flex; gap:22px; align-items:flex-start; margin-top:16px;}
  .founder-mini-avatar{flex:none; width:64px; height:64px; border-radius:50%; background:#0F1B2D; color:#F6F9FC; display:flex; align-items:center; justify-content:center; font-weight:700; font-size:1.15rem; letter-spacing:.02em;}
  .founder-mini h2{margin:0;}
  .founder-mini-role{font-size:.9rem; color:var(--ink-muted); margin:4px 0 12px;}
  .founder-mini-bio{max-width:62ch; color:var(--ink-muted); line-height:1.6; margin:0;}
  @media (max-width:520px){.founder-mini{gap:16px;} .founder-mini-avatar{width:52px; height:52px; font-size:1rem;}}

  /* ---------- Hero ---------- */
  .hero{padding-top:48px; padding-bottom:40px; display:grid; grid-template-columns:3fr 2fr; gap:48px; align-items:center; position:relative;}
  .hero > *{min-width:0;}
  @media (max-width:920px){.hero{grid-template-columns:1fr;}}
  .hero p.lede{font-size:1.12rem; color:var(--ink-muted); max-width:52ch;}

  .badge-pill{
    display:inline-flex; align-items:center; gap:6px; background:var(--accent-tint); color:var(--accent-dark);
    font-size:.76rem; font-weight:600; letter-spacing:.02em; padding:6px 13px; border-radius:20px; margin-bottom:14px;
  }
  .hero-glow{
    position:absolute; width:420px; height:420px; border-radius:50%;
    background:radial-gradient(circle, rgba(22,99,214,.18), rgba(22,99,214,0) 70%);
    top:-70px; right:-50px; z-index:0; pointer-events:none;
  }
  /* Keep the glow inside the column on narrow screens so the page never scrolls sideways. */
  @media (max-width:920px){.hero-glow{right:0; width:min(420px,100%);}}
  /* Phones: tighten the hero so the form's button sits on the first screen. */
  @media (max-width:600px){
    .hero{padding-top:24px;}
    .hero p.lede{font-size:1rem; line-height:1.55;}
    body[data-page="home"] .hero .eyebrow{display:none !important;}
    body[data-page="home"] .hero h1{font-size:min(1.9rem, calc((100vw - 48px) / 11.8));}
    .hero-form{margin-top:16px; padding:16px;}
  }
  .hero-form{
    background:var(--surface); border:1px solid var(--border); border-radius:var(--radius-m);
    padding:20px 22px; box-shadow:var(--shadow); margin-top:24px; max-width:420px;
  }
  .hero-form .form-lede{font-size:.9rem; font-weight:600; margin-bottom:12px;}
  .hero-form input{
    width:100%; font-family:var(--font-body); font-size:.92rem; padding:12px 14px; border-radius:10px;
    border:1px solid var(--border); background:var(--bg); color:var(--ink); margin-bottom:10px;
  }
  .hero-form form > .btn{margin-top:2px;}
  .hero-or{
    display:flex; align-items:center; gap:10px; margin:12px 0;
    font-family:var(--font-mono); font-size:.72rem; letter-spacing:.09em; text-transform:uppercase; color:var(--ink-muted);
  }
  .hero-or::before, .hero-or::after{content:""; flex:1; height:1px; background:var(--border);}
  .trust-row{display:flex; align-items:center; gap:12px; margin-top:20px; flex-wrap:wrap;}
  .avatar-stack{display:flex;}
  .avatar-stack span{
    width:34px; height:34px; border-radius:50%; border:2px solid var(--bg); display:flex; align-items:center;
    justify-content:center; font-family:var(--font-mono); font-size:.66rem; font-weight:700; color:#fff; margin-left:-10px;
  }
  .avatar-stack span:first-child{margin-left:0;}
  .trust-row .trust-text{font-size:.85rem; color:var(--ink-muted);}
  .trust-row .trust-text strong{color:var(--ink); font-weight:600;}

  /* ---------- Ledger visual ---------- */
  .ledger{
    background:var(--surface); border:1px solid var(--border); border-radius:var(--radius-l);
    box-shadow:var(--shadow); padding:10px; position:relative;
  }
  .ledger-inner{display:grid; grid-template-columns:1fr; position:relative;}
  .ledger-panel{padding:26px 28px;}
  .ledger-panel + .ledger-panel{border-top:1px dashed var(--border);}
  .ledger-panel h4{
    font-family:var(--font-mono); font-size:.76rem; text-transform:uppercase; letter-spacing:.08em;
    color:var(--ink-muted); margin:0 0 20px; font-weight:600;
  }
  .ledger-row{display:flex; justify-content:space-between; align-items:baseline; gap:10px; padding:13px 0; border-bottom:1px solid var(--border); font-size:.92rem;}
  .ledger-row:last-child{border-bottom:none;}
  .ledger-row span:first-child{color:var(--ink-muted);}
  .ledger-row .val{font-family:var(--font-mono); font-weight:600; font-variant-numeric:tabular-nums; white-space:nowrap;}
  .ledger-footer{
    grid-column:1/-1; border-top:1px solid var(--border); padding:16px 24px; text-align:center;
    font-size:.85rem; color:var(--ink-muted); background:var(--accent-tint); border-radius:0 0 calc(var(--radius-l) - 6px) calc(var(--radius-l) - 6px);
  }
  .ledger-footer strong{color:var(--accent-dark);}
  @media (max-width:520px){.ledger-panel{padding:22px;}}
  .seal{
    position:absolute; left:50%; top:-18px; transform:translateX(-50%) rotate(-4deg);
    background:var(--seal-bg); border:1.5px dashed var(--seal-border); color:var(--seal);
    font-family:var(--font-mono); font-size:.76rem; font-weight:600; letter-spacing:.05em;
    padding:8px 16px; border-radius:20px; white-space:nowrap;
  }

  /* ---------- Stats bar ---------- */
  .stats-bar{display:flex; flex-wrap:wrap; gap:36px; justify-content:center; text-align:center; padding-top:40px; padding-bottom:40px;}
  .stat b{display:block; font-family:var(--font-mono); font-size:1.9rem; color:var(--accent-dark); font-variant-numeric:tabular-nums;}
  .stat span{font-size:.82rem; color:var(--ink-muted);}

  /* ---------- Campaign examples ---------- */
  .campaign-card{background:var(--surface); border:1px solid var(--border); border-radius:var(--radius-m); box-shadow:var(--shadow); padding:26px;}
  .campaign-head{display:flex; justify-content:space-between; align-items:flex-start; gap:14px; flex-wrap:wrap; margin-bottom:4px;}
  .campaign-head h3{margin-bottom:2px;}
  .campaign-sub{font-size:.85rem; color:var(--ink-muted);}
  .campaign-growth{font-family:var(--font-mono); font-size:1.7rem; font-weight:700; color:#1B8A5A; white-space:nowrap;}
  .campaign-meta{display:flex; gap:24px; margin:14px 0 18px; font-size:.82rem; color:var(--ink-muted); flex-wrap:wrap;}
  .campaign-meta b{color:var(--ink); font-family:var(--font-mono); font-weight:600;}
  .campaign-delta{display:flex; gap:16px; margin-top:12px; font-size:.8rem; flex-wrap:wrap;}
  .campaign-delta span{color:#1B8A5A; font-weight:600;}
  .campaign-notes{margin-top:16px; padding-top:16px; border-top:1px solid var(--border); font-size:.85rem; color:var(--ink-muted);}
  .campaign-notes ul{margin:8px 0 0; padding-left:18px;}
  .campaign-notes li{margin-bottom:6px;}

  /* ---------- Proof screenshots ---------- */
  .proof-small{
    max-width:980px; margin:0 auto 18px; padding:16px 20px; border-radius:var(--radius-m);
    background:var(--surface); border:1px solid var(--border); box-shadow:var(--shadow);
    display:flex; align-items:center; justify-content:space-between; gap:12px 20px; flex-wrap:wrap;
  }
  .proof-small > div{flex:1 1 420px;}
  .proof-small p{margin:6px 0 0; font-size:.98rem;}
  .proof-small p b{color:var(--accent-dark); font-weight:600;}
  .proof-small a{color:var(--accent-dark); font-weight:600; font-size:.9rem; white-space:nowrap;}
  .proof-small-links{display:flex; gap:12px; align-items:baseline; font-size:.85rem; color:var(--ink-muted); white-space:nowrap;}
  .proof-total{
    max-width:980px; margin:0 auto 18px; padding:12px 16px; border-radius:var(--radius-s);
    background:var(--accent-tint); color:var(--ink); font-size:.95rem; text-align:center;
  }
  .proof-total b{color:var(--accent-dark); font-weight:600;}
  .proof-grid{display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; max-width:980px; margin:0 auto;}
  @media (max-width:760px){.proof-grid{grid-template-columns:1fr;}}
  .proof-card{margin:0; background:var(--surface); border:1px solid var(--border); border-radius:var(--radius-m); overflow:hidden;}
  .proof-open{display:block; width:100%; padding:10px; border:0; background:#fff; cursor:zoom-in;}
  .proof-open img{display:block; width:100%; height:auto; aspect-ratio:2.9/1; object-fit:contain;}
  .proof-card figcaption{padding:10px 14px; font-size:.85rem; color:var(--ink-muted); border-top:1px solid var(--border);}
  .proof-card figcaption b{color:var(--ink); font-weight:600;}
  .proof-more{display:flex; margin:20px auto 0;}
  .proof-videos{max-width:980px; margin:44px auto 0;}
  .proof-videos h3{margin-bottom:4px;}
  .proof-videos > .micro{margin:0 0 16px;}
  .proof-list{display:grid; gap:12px;}
  .proof-row .proof-open img{aspect-ratio:2000/376;}
  .carousel-hint{
    text-align:center; font-size:.8rem; color:var(--ink-muted); margin-top:12px;
    display:flex; align-items:center; justify-content:center; gap:6px;
  }

  /* ---------- Screenshot lightbox ---------- */
  .lightbox-overlay{
    position:fixed; inset:0; background:rgba(8,12,22,.9); z-index:400;
    display:flex; align-items:center; justify-content:center; padding:16px;
  }
  .lightbox-overlay[hidden]{display:none;}
  .lightbox-box{position:relative; max-width:96vw; display:flex; flex-direction:column; align-items:center; gap:14px;}
  .lightbox-frame{
    max-width:96vw; max-height:78vh; overflow:auto; border-radius:var(--radius-m);
    background:#fff; box-shadow:var(--shadow); -webkit-overflow-scrolling:touch;
  }
  .lightbox-frame img{display:block; width:1400px; max-width:none;}
  .lightbox-close{
    position:absolute; top:-18px; right:-18px; width:36px; height:36px; border-radius:50%; border:1px solid var(--border);
    background:var(--surface); color:var(--ink); cursor:pointer; font-size:1.2rem; line-height:1; box-shadow:var(--shadow); z-index:2;
  }
  .lightbox-controls{display:flex; align-items:center; gap:20px;}
  .lightbox-nav{
    display:flex; align-items:center; justify-content:center; width:40px; height:40px; border-radius:50%;
    background:rgba(255,255,255,.12); border:1px solid rgba(255,255,255,.3); color:#fff; cursor:pointer;
    font-size:1.3rem; line-height:1; padding:0;
  }
  .lightbox-nav:hover{background:rgba(255,255,255,.22);}
  .lightbox-hint{color:rgba(255,255,255,.65); font-size:.8rem;}
  @media (max-width:640px){.lightbox-frame img{width:1100px;}}

  /* ---------- Lead modal ---------- */
  .modal-overlay{
    position:fixed; inset:0; background:rgba(10,15,25,.55); z-index:300;
    display:flex; align-items:center; justify-content:center; padding:20px; backdrop-filter:blur(2px);
  }
  .modal-overlay[hidden]{display:none;}
  .modal-box{
    background:var(--surface); border-radius:var(--radius-l); box-shadow:var(--shadow);
    max-width:460px; width:100%; max-height:92vh; overflow-y:auto; padding:28px; position:relative;
  }
  .modal-close{
    position:absolute; top:16px; right:16px; width:30px; height:30px; border-radius:50%; border:1px solid var(--border);
    background:var(--surface-alt); color:var(--ink-muted); cursor:pointer; font-size:1rem; line-height:1;
  }
  .modal-close:hover{color:var(--ink);}
  .modal-order{
    background:var(--accent-tint); border-radius:var(--radius-s); padding:12px 16px; margin:6px 0 20px;
    display:flex; justify-content:space-between; align-items:center; gap:10px;
  }
  .modal-order .pkg-name{font-weight:600; font-size:.9rem; color:var(--ink);}
  .modal-order .pkg-price{font-family:var(--font-mono); font-weight:700; color:var(--accent-dark); white-space:nowrap;}
  .modal-box form{display:grid; gap:12px;}
  .modal-box label{display:flex; flex-direction:column; gap:5px; font-size:.83rem; font-weight:500; color:var(--ink-muted);}
  .modal-box input, .modal-box select{
    font-family:var(--font-body); font-size:.92rem; padding:11px 13px; border-radius:10px;
    border:1px solid var(--border); background:var(--bg); color:var(--ink);
  }

  /* ---------- Checkout / payment page ---------- */
  .checkout-wrap{display:grid; grid-template-columns:1fr 1fr; gap:32px; align-items:start;}
  @media (max-width:800px){.checkout-wrap{grid-template-columns:1fr;}}
  .order-card{background:var(--surface); border:1px solid var(--border); border-radius:var(--radius-m); box-shadow:var(--shadow); padding:24px;}
  .order-line{display:flex; justify-content:space-between; padding:10px 0; border-bottom:1px solid var(--border); font-size:.9rem;}
  .order-line:last-of-type{border-bottom:none;}
  .order-line.total{font-weight:700; font-size:1.05rem; padding-top:14px;}
  .order-line .val{font-family:var(--font-mono); font-variant-numeric:tabular-nums;}
  .rzp-methods{display:flex; gap:8px; flex-wrap:wrap;}
  .rzp-methods span{
    background:var(--surface-alt); border:1px solid var(--border); border-radius:20px;
    padding:6px 14px; font-size:.78rem; font-weight:600; color:var(--ink-muted);
  }
  .secure-note{display:flex; align-items:center; gap:8px; font-size:.78rem; color:var(--ink-muted); margin-top:16px;}

  /* ---------- Reviews ---------- */
  .review-card{background:var(--surface); border:1px solid var(--border); border-radius:var(--radius-m); box-shadow:var(--shadow); padding:22px;}
  .review-stars{color:#F5A623; font-size:.85rem; letter-spacing:2px; margin-bottom:10px;}
  .review-quote{font-size:.92rem; line-height:1.6; margin-bottom:16px;}
  .review-author{display:flex; justify-content:space-between; align-items:center; font-size:.8rem; color:var(--ink-muted); flex-wrap:wrap; gap:6px;}
  .review-author b{color:var(--ink); font-weight:600;}
  .review-badge{background:var(--accent-tint); color:var(--accent-dark); padding:3px 10px; border-radius:12px; font-size:.7rem; font-weight:600;}
  .review-gallery{display:grid; grid-template-columns:repeat(auto-fill,minmax(230px,1fr)); gap:16px;}
  .review-gallery img{width:100%; display:block; border-radius:var(--radius-m); border:1px solid var(--border); box-shadow:var(--shadow);}

  /* ---------- Dashboard mockup ---------- */
  .mockup-wrap{position:relative; display:flex; justify-content:center; padding:36px 0 20px; margin:0 auto;}
  .laptop{
    width:min(760px,100%); background:var(--surface); border:1px solid var(--border);
    border-radius:16px; box-shadow:var(--shadow); overflow:hidden; text-align:left;
  }
  .laptop-bar{display:flex; align-items:center; gap:7px; padding:11px 16px; background:var(--surface-alt); border-bottom:1px solid var(--border);}
  .laptop-bar .traffic-dot{width:9px; height:9px; border-radius:50%; display:inline-block;}
  .laptop-bar .url{
    margin-left:8px; font-family:var(--font-mono); font-size:.72rem; color:var(--ink-muted);
    background:var(--surface); border:1px solid var(--border); border-radius:6px; padding:4px 12px;
  }
  .laptop-body{padding:22px 26px 26px;}
  .dash-head{display:flex; justify-content:space-between; align-items:baseline; margin-bottom:14px; flex-wrap:wrap; gap:6px;}
  .dash-title{font-family:var(--font-display); font-weight:600; font-size:1.08rem;}
  .dash-range{font-family:var(--font-mono); font-size:.68rem; color:var(--ink-muted); text-transform:uppercase; letter-spacing:.06em;}
  .dash-chart{width:100%; height:auto; display:block; max-height:180px;}
  .dash-kpis{display:grid; grid-template-columns:repeat(4,1fr); gap:12px; margin-top:20px;}
  .dash-kpi{background:var(--surface-alt); border-radius:10px; padding:12px 14px;}
  .dash-kpi .k-label{font-size:.7rem; color:var(--ink-muted); margin-bottom:5px;}
  .dash-kpi .k-val{font-family:var(--font-mono); font-weight:600; font-size:1.1rem; color:var(--accent-dark); font-variant-numeric:tabular-nums; display:block;}
  .dash-kpi .k-delta{font-size:.7rem; color:#1B8A5A; font-weight:600; margin-top:2px; display:block;}
  @media (max-width:640px){.dash-kpis{grid-template-columns:1fr 1fr;}}

  .float-badge{
    position:absolute; z-index:2; background:var(--surface); border:1px solid var(--border);
    border-radius:14px; box-shadow:var(--shadow); padding:10px 15px; font-size:.82rem; font-weight:500;
    display:flex; align-items:center; gap:8px; white-space:nowrap;
  }
  .float-badge.fb-top{top:6px; right:2%; transform:rotate(2deg);}
  .float-badge.fb-bottom{bottom:2px; left:2%; transform:rotate(-2deg);}
  @media (max-width:820px){
    .float-badge{position:static; transform:none; margin:0 auto 10px; white-space:normal; justify-content:center;}
    .mockup-wrap{flex-direction:column; align-items:center; gap:0;}
  }

  /* ---------- Offer / pricing cards ---------- */
  .offer-card{
    background:var(--surface); border:1px solid var(--border); border-radius:var(--radius-m);
    padding:26px; display:flex; flex-direction:column; box-shadow:var(--shadow);
  }
  .offer-card.featured{border-color:var(--accent); box-shadow:0 0 0 2px var(--accent-tint), var(--shadow);}
  .offer-tag{
    align-self:flex-start; background:var(--accent); color:#fff; font-size:.7rem; font-weight:600;
    letter-spacing:.04em; text-transform:uppercase; padding:4px 10px; border-radius:20px; margin-bottom:12px;
  }
  .offer-tag.offer-tag-muted{background:transparent; color:rgba(246,249,252,.55); border:1px solid rgba(246,249,252,.25);}
  .offer-name{font-size:1.05rem; font-weight:600; margin-bottom:4px;}
  .offer-sub{font-size:.85rem; color:var(--ink-muted); margin-bottom:14px;}
  .offer-price{font-family:var(--font-mono); font-size:2.1rem; font-weight:600; color:var(--accent-dark); font-variant-numeric:tabular-nums; line-height:1;}
  .offer-price small{font-size:.9rem; font-weight:500; color:var(--ink-muted); font-family:var(--font-body);}
  .offer-price .price-range{font-size:.68em;}
  .offer-card ul{list-style:none; padding:0; margin:16px 0 20px; font-size:.9rem; flex:1;}
  .offer-card ul li{padding-left:22px; position:relative; margin-bottom:9px; color:var(--ink);}
  .offer-card ul li::before{content:"\2713"; position:absolute; left:0; color:var(--accent);}

  /* Dark package cards - matches the pricing cards on cliporbits.com (Starter/Growth Push, retainer tiers) */
  .offer-card.dark{
    background:#0F1B2D; border-color:rgba(255,255,255,.1); color:#F6F9FC;
    box-shadow:0 1px 2px rgba(0,0,0,.3), 0 10px 28px rgba(0,0,0,.35);
  }
  .offer-card.dark .offer-name{color:#F6F9FC;}
  .offer-card.dark .offer-sub{color:rgba(246,249,252,.65);}
  .offer-card.dark .offer-price{color:#5B9BFF;}
  .offer-card.dark .offer-price small{color:rgba(246,249,252,.6);}
  .offer-card.dark ul li{color:#F6F9FC;}
  .offer-card.dark ul li::before{color:#5B9BFF;}
  .offer-card.dark.featured{border-color:#5B9BFF; box-shadow:0 0 26px rgba(41,129,251,.35), 0 10px 28px rgba(0,0,0,.35);}
  .offer-card.dark .btn-primary{background:#2981FB;}
  .offer-card.dark .btn-primary:hover{background:#1663D6;}
  .offer-card.dark .btn-ghost{background:transparent; color:#F6F9FC; border-color:rgba(255,255,255,.25);}
  .offer-card.dark .btn-ghost:hover{background:rgba(255,255,255,.08);}

  .offer-pills{display:flex; gap:8px; flex-wrap:wrap; justify-content:space-between; margin:14px 0 6px; padding:0 4px;}
  .offer-pill{
    font-size:.71rem; font-weight:600; color:var(--ink-muted); background:var(--surface-alt);
    border:1px solid var(--border); border-radius:8px; padding:5px 9px; white-space:nowrap;
  }
  .offer-card.dark .offer-pill{color:rgba(246,249,252,.75); background:rgba(255,255,255,.06); border-color:rgba(255,255,255,.15);}

  /* ---------- Offer ladder (Diagnose / Test / Scale stages) ---------- */
  .offer-stages{display:grid; grid-template-columns:1fr auto 1fr auto 1fr; gap:16px; margin-top:28px; align-items:end;}
  .offer-stage{display:flex; flex-direction:column; gap:14px;}
  .stage-label{font-family:var(--font-mono); font-size:.72rem; letter-spacing:.08em; text-transform:uppercase; color:var(--accent-dark); font-weight:600;}
  .stage-purpose{font-size:.88rem; color:var(--ink-muted); margin:0 0 4px; min-height:2.6em;}
  .offer-stage .offer-card{margin-bottom:14px;}
  .offer-stage .offer-card:last-child{margin-bottom:0;}
  .stage-arrow{align-self:center; color:var(--ink-muted); font-size:1.5rem; padding-bottom:22px; opacity:.55;}
  .offer-card.stage-mini{padding:22px 24px; gap:2px;}
  .offer-card.stage-mini .offer-name{font-size:1.02rem; margin-bottom:6px;}
  .offer-card.stage-mini .offer-price{font-size:1.7rem;}
  @media (max-width:900px){
    .offer-stages{grid-template-columns:1fr;}
    .stage-arrow{display:none;}
  }

  /* ---------- Pricing grid (all tiers, one row) ---------- */
  .pricing-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:20px; margin-top:28px; align-items:stretch;}
  .pricing-grid .offer-card{height:100%;}
  .pricing-featured{position:relative; overflow:visible;}
  .pricing-badge{
    position:absolute; top:-14px; left:22px; background:var(--ink); color:#fff;
    font-size:.7rem; font-weight:600; letter-spacing:.04em; text-transform:uppercase;
    padding:5px 12px; border-radius:20px; box-shadow:var(--shadow);
  }
  .offer-card.dark.pricing-featured .pricing-badge{background:#5B9BFF; color:#0F1B2D;}
  .offer-card.dark.pricing-featured .pricing-badge.pricing-badge-alt{background:#0F1B2D; color:#F6F9FC; border:1px solid rgba(246,249,252,.35);}
  /* ---------- Launch price (audit, until 31 Dec 2026) ---------- */
  .offer-card.dark.pricing-featured .pricing-badge.pricing-badge-launch{background:#FFC94D; color:#1A1300;}
  .offer-launch-note{font-size:.8rem; color:rgba(246,249,252,.7); margin-top:8px;}
  .offer-launch-note b{color:#FFC94D; font-weight:600;}
  .launch-note{display:flex; align-items:center; gap:8px; flex-wrap:wrap; font-size:.84rem; color:var(--ink-muted); margin-bottom:12px;}
  .launch-tag{background:#FFF1C7; color:#7A5200; font-weight:700; font-size:.68rem; letter-spacing:.05em; text-transform:uppercase; padding:3px 9px; border-radius:20px;}
  .launch-note b{color:var(--ink); font-weight:600;}
  @media (max-width:980px){.pricing-grid{grid-template-columns:1fr 1fr;}}
  @media (max-width:560px){.pricing-grid{grid-template-columns:1fr;}}

  /* ---------- Compare table ---------- */
  .table-wrap{position:relative; overflow-x:auto; border-radius:var(--radius-m); border:1px solid var(--border); box-shadow:var(--shadow);}
  table.compare{width:100%; border-collapse:collapse; min-width:680px; font-size:.87rem; background:var(--surface);}
  table.compare th, table.compare td{padding:12px 14px; text-align:left; border-bottom:1px solid var(--border);}
  table.compare thead th{background:var(--accent-dark); color:#fff; font-weight:600; font-size:.82rem;}
  table.compare td.you{background:var(--accent-tint); font-weight:600;}
  table.compare tbody tr:last-child td{border-bottom:none;}
  .table-scroll-hint{display:none; font-family:var(--font-mono); font-size:.72rem; letter-spacing:.04em; text-transform:uppercase; color:var(--ink-muted); text-align:center; margin-bottom:8px;}
  @media (max-width:820px){
    .table-scroll-hint{display:block;}
    table.compare th:first-child, table.compare td:first-child{
      position:sticky; left:0; z-index:1; background:var(--surface);
      box-shadow:2px 0 6px rgba(17,21,36,.08);
    }
    table.compare thead th:first-child{background:var(--accent-dark);}
  }
  @media (max-width:640px){
    .prose-center{text-align:left; margin-left:0 !important; margin-right:0 !important;}
  }
  .yes{color:var(--accent-dark); font-weight:700;}
  .no{color:var(--ink-muted);}

  /* ---------- FAQ ---------- */
  details.faq{border-bottom:1px solid var(--border); padding:16px 0;}
  details.faq summary{
    cursor:pointer; font-weight:600; list-style:none; display:flex; justify-content:space-between; gap:12px;
    font-size:1rem; align-items:center;
  }
  details.faq summary::-webkit-details-marker{display:none;}
  details.faq summary::after{content:"+"; font-family:var(--font-mono); font-size:1.3rem; color:var(--accent); flex:0 0 auto;}
  details.faq[open] summary::after{content:"\2013";}
  details.faq .a{padding-top:10px; color:var(--ink-muted); max-width:68ch;}

  /* ---------- Verified badge / guarantee ---------- */
  .guarantee-box{
    background:var(--surface); border:1.5px solid var(--seal-border); border-radius:var(--radius-m);
    padding:24px 26px; position:relative; box-shadow:var(--shadow);
  }
  .guarantee-box .eyebrow{color:var(--seal);}

  /* ---------- Qualify list ---------- */
  .qualify{display:grid; grid-template-columns:1fr 1fr; gap:24px;}
  @media (max-width:760px){.qualify{grid-template-columns:1fr;}}
  .qualify-label{
    display:block; text-align:center; font-family:var(--font-mono); font-size:.74rem;
    text-transform:uppercase; letter-spacing:.09em; font-weight:700; margin-bottom:14px;
  }
  .qualify-label.yes{color:var(--accent);}
  .qualify-label.no{color:var(--ink-muted);}
  .qualify ul{list-style:none; padding:0; margin:0;}
  .qualify li{padding-left:26px; position:relative; margin-bottom:10px; font-size:.94rem;}
  .qualify ul.yes li::before{content:"\2713"; position:absolute; left:0; color:var(--accent); font-weight:700;}
  .qualify ul.no li::before{content:"\2715"; position:absolute; left:0; color:var(--ink-muted); font-weight:700;}

  /* ---------- Fit check cards (homepage) ---------- */
  .fit-grid{display:grid; grid-template-columns:3fr 2fr; gap:24px; text-align:left; align-items:center;}
  @media (max-width:760px){.fit-grid{grid-template-columns:1fr;}}
  .fit-card{background:var(--surface); border:1px solid var(--border); border-radius:var(--radius-l); box-shadow:var(--shadow); padding:30px 28px;}
  .fit-card.fit-yes{border-color:var(--accent); border-width:1.5px;}
  .fit-label{
    display:inline-block; font-family:var(--font-mono); font-size:.74rem; font-weight:700;
    text-transform:uppercase; letter-spacing:.08em; margin-bottom:16px;
  }
  .fit-label.yes{color:var(--accent-dark);}
  .fit-label.no{color:var(--ink-muted);}
  .fit-list{list-style:none; padding:0; margin:0; display:flex; flex-direction:column; gap:14px;}
  .fit-list li{padding-left:28px; position:relative; font-size:.96rem; line-height:1.4;}
  .fit-list.yes li::before{content:"\2713"; position:absolute; left:0; top:0; color:var(--accent); font-weight:700;}
  .fit-list.no li::before{content:"\2715"; position:absolute; left:0; top:0; color:var(--ink-muted); font-weight:700;}

  /* ---------- Reviews (homepage) ---------- */
  .review-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:24px; text-align:left;}
  @media (max-width:900px){.review-grid{grid-template-columns:1fr;}}
  .review-grid:not(.show-all) .review-card:nth-child(n+4){display:none;}
  @media (max-width:900px){.review-grid:not(.show-all) .review-card:nth-child(n+3){display:none;}}
  .review-more{display:flex; margin:24px auto 0;}
  /* Featured review (named client with a channel link): full width, 3 more cards under it before "See all". */
  .review-card.review-featured{grid-column:1 / -1;}
  .review-featured .review-text{max-width:80ch;}
  .review-grid:not(.show-all) .review-card:nth-child(4){display:flex;}
  @media (max-width:900px){.review-grid:not(.show-all) .review-card:nth-child(4){display:none;}}
  .review-channel{font-size:.86rem; font-weight:600; color:var(--accent-dark); text-decoration:none; white-space:nowrap;}
  .review-channel:hover{text-decoration:underline;}
  @media (max-width:520px){.review-foot{flex-wrap:wrap;} .review-channel{white-space:normal;}}
  .review-card{
    background:var(--surface); border:1px solid var(--border); border-radius:var(--radius-l);
    box-shadow:var(--shadow); padding:28px 26px; display:flex; flex-direction:column; gap:16px;
  }
  .review-top{display:flex; justify-content:space-between; align-items:flex-start; gap:10px;}
  .review-stars{color:var(--accent); font-size:1.05rem; letter-spacing:2px;}
  .review-quote-mark{font-family:Georgia, 'Times New Roman', serif; font-size:2.6rem; line-height:.6; color:var(--accent-tint); font-weight:700;}
  .review-text{font-size:.96rem; line-height:1.55; color:var(--ink); flex:1;}
  .review-foot{display:flex; justify-content:space-between; align-items:center; gap:12px; padding-top:14px; border-top:1px solid var(--border);}
  .review-name{font-weight:700; font-size:.92rem;}
  .review-location{font-size:.82rem; color:var(--ink-muted); margin-top:2px;}
  .review-badge{
    font-size:.74rem; font-weight:600; color:var(--accent-dark); background:var(--accent-tint);
    border:1px solid var(--border); border-radius:20px; padding:5px 12px; white-space:nowrap; flex:none;
  }

  /* ---------- Blog ---------- */
  .blog-body{max-width:70ch; font-size:1.03rem;}
  .blog-body h2{margin-top:1.6em; font-size:1.5rem;}
  .blog-body h3{margin-top:1.2em; font-size:1.15rem; font-family:var(--font-body); font-weight:600;}
  .blog-meta{font-family:var(--font-mono); font-size:.78rem; color:var(--ink-muted); text-transform:uppercase; letter-spacing:.06em; margin-bottom:18px;}
  .callout{background:var(--accent-tint); border-left:3px solid var(--accent); border-radius:0 var(--radius-s) var(--radius-s) 0; padding:16px 20px; font-size:.95rem; margin:1.4em 0;}

  /* ---------- Form ---------- */
  form.lead{display:grid; gap:14px; max-width:480px;}
  form.lead label{display:flex; flex-direction:column; gap:6px; font-size:.85rem; font-weight:500; color:var(--ink-muted);}
  form.lead input, form.lead select, form.lead textarea{
    font-family:var(--font-body); font-size:.95rem; padding:11px 13px; border-radius:10px;
    border:1px solid var(--border); background:var(--surface); color:var(--ink);
  }
  form.lead textarea{resize:vertical; min-height:90px;}
  .form-note{font-size:.82rem; color:var(--ink-muted); padding:12px 14px; background:var(--surface-alt); border-radius:10px; display:none;}
  .form-note.show{display:block;}
  .modal-box form .micro{margin-top:0;}
  .modal-trust{text-align:center;}
  .modal-success h3{margin-top:4px;}
  .modal-box.is-success .modal-order{margin-top:34px;}
  .modal-success p{color:var(--ink-muted); font-size:.92rem;}
  .btn:disabled{opacity:.6; cursor:wait; transform:none;}

  /* ---------- WhatsApp button (desktop) + sticky CTA bar (phones) ---------- */
  .wa-float{
    position:fixed; right:22px; bottom:22px; z-index:90;
    display:inline-flex; align-items:center; gap:8px; padding:12px 18px 12px 14px; border-radius:999px;
    background:#0E8A45; color:#fff; font-weight:600; font-size:.9rem; text-decoration:none;
    box-shadow:0 10px 24px -8px rgba(14,138,69,.6), 0 2px 6px rgba(17,21,36,.15);
    transition:transform .15s ease, background .15s ease;
  }
  .wa-float:hover{background:#0B7439; transform:translateY(-2px);}
  .wa-float svg, .sticky-cta-wa svg{width:20px; height:20px; fill:none; stroke:currentColor; stroke-width:2; stroke-linecap:round; stroke-linejoin:round; flex-shrink:0;}
  .sticky-cta{display:none;}
  @media (max-width:760px){
    .wa-float{display:none;}
    .sticky-cta{
      display:flex; gap:10px; position:fixed; left:0; right:0; bottom:0; z-index:90;
      padding:10px 16px calc(10px + env(safe-area-inset-bottom)); background:var(--surface);
      border-top:1px solid var(--border); box-shadow:0 -6px 20px rgba(17,21,36,.08);
      transition:transform .2s ease;
    }
    .sticky-cta.is-hidden{transform:translateY(110%);}
    .sticky-cta .btn{padding:13px 16px; font-size:.92rem;}
    .sticky-cta-main{flex:1; min-width:0;}
    .sticky-cta-wa{background:#0E8A45; color:#fff; flex-shrink:0;}
    body.has-sticky-cta{padding-bottom:76px;}
  }
  @media (max-width:360px){.sticky-cta-wa span{display:none;}}

  /* ---------- Footer ---------- */
  footer.site-footer{border-top:1px solid var(--border); padding:52px 0 30px; background:var(--surface-alt);}
  .footer-grid{display:grid; grid-template-columns:1.3fr 1fr 1fr 1fr 1fr; gap:32px;}
  @media (max-width:900px){.footer-grid{grid-template-columns:1fr 1fr 1fr;}}
  @media (max-width:560px){.footer-grid{grid-template-columns:1fr 1fr;}}
  .social-links{display:flex; gap:10px; margin-top:14px; align-items:center;}
  .social-links a, .footer-grid a.social-icon, a.social-icon{
    width:38px; height:38px; border-radius:50%; border:1px solid var(--border); background:var(--surface);
    display:flex !important; align-items:center; justify-content:center; color:var(--ink-muted) !important;
    transition:color .15s ease, border-color .15s ease, background .15s ease;
    overflow:hidden; flex-shrink:0; margin-bottom:0;
  }
  .social-links a:hover{color:var(--accent) !important; border-color:var(--accent); background:var(--accent-tint);}
  .social-links svg{width:18px; height:18px; display:block; fill:none; stroke:currentColor; stroke-width:2; stroke-linecap:round; stroke-linejoin:round;}
  .footer-grid h5{font-family:var(--font-mono); font-size:.72rem; text-transform:uppercase; letter-spacing:.07em; color:var(--ink-muted); margin:0 0 12px;}
  .footer-grid a{display:block; font-size:.88rem; color:var(--ink); text-decoration:none; margin-bottom:9px;}
  .footer-grid a:hover{color:var(--accent-dark);}
  .footer-bottom{margin-top:40px; padding-top:20px; border-top:1px solid var(--border); font-size:.8rem; color:var(--ink-muted); display:flex; justify-content:space-between; flex-wrap:wrap; gap:10px;}
  .preview-note{background:var(--seal-bg); color:var(--seal); border:1px solid var(--seal-border); border-radius:8px; padding:5px 10px; font-family:var(--font-mono); font-size:.7rem;}

  @media (prefers-reduced-motion: reduce){ *{transition:none !important; scroll-behavior:auto !important;} }

  /* ---------- Hero visual: your video running as a YouTube ad ---------- */
  .ad-visual{position:relative; padding:12px 0 44px; max-width:470px; margin:0 auto;}
  .yt-window{
    background:var(--surface); border:1px solid var(--border); border-radius:var(--radius-l);
    box-shadow:0 2px 4px rgba(17,21,36,.05), 0 24px 48px -16px rgba(13,62,158,.28); overflow:hidden; position:relative; z-index:1;
  }
  .yt-top{display:flex; align-items:center; gap:14px; padding:12px 16px; border-bottom:1px solid var(--border);}
  .yt-logo{display:inline-flex; align-items:center; gap:6px; font-weight:700; font-size:.92rem; letter-spacing:-.02em; color:var(--ink);}
  .yt-logo svg{width:26px; height:18px; display:block;}
  .yt-search{flex:1; height:28px; border-radius:999px; background:var(--bg); border:1px solid var(--border); font-size:.72rem; color:var(--ink-muted); display:flex; align-items:center; padding:0 12px;}
  .yt-player{position:relative; aspect-ratio:16/9; background:#111;}
  .yt-player svg.yt-thumb{display:block; width:100%; height:100%;}
  .yt-adtag{
    position:absolute; left:12px; bottom:16px; display:inline-flex; align-items:center; gap:6px;
    background:rgba(17,21,36,.72); color:#fff; font-size:.72rem; font-weight:600; padding:4px 9px 4px 4px; border-radius:6px;
  }
  .yt-adtag b{background:#FFCC00; color:#111; font-weight:800; padding:1px 6px; border-radius:3px; font-size:.7rem;}
  .yt-progress{position:absolute; left:0; right:0; bottom:0; height:4px; background:rgba(255,255,255,.3);}
  .yt-progress span{display:block; width:38%; height:100%; background:#FFCC00;}
  .yt-meta{padding:14px 16px 16px;}
  .yt-title{font-weight:700; font-size:.98rem; line-height:1.35; color:var(--ink); margin-bottom:10px;}
  .yt-channel{display:flex; align-items:center; gap:10px; font-size:.82rem; color:var(--ink-muted);}
  .yt-avatar{width:30px; height:30px; border-radius:50%; background:linear-gradient(135deg,#FF8A5B,#7B5BD6); flex:none;}
  .yt-channel strong{color:var(--ink); font-weight:600; display:block; font-size:.85rem;}
  .yt-sub{margin-left:auto; background:#111; color:#fff; font-weight:600; font-size:.75rem; padding:7px 14px; border-radius:999px;}
  .ad-chips{display:contents;}
  .ad-chip{
    position:absolute; z-index:2; display:flex; align-items:center; gap:10px; background:var(--surface);
    border:1px solid var(--border); border-radius:14px; padding:10px 14px; box-shadow:0 12px 28px -10px rgba(17,21,36,.25);
    font-size:.8rem; color:var(--ink-muted); line-height:1.25; white-space:nowrap;
  }
  .ad-chip strong{display:block; color:var(--ink); font-size:.95rem; font-weight:700;}
  .ad-chip .ico{width:32px; height:32px; border-radius:50%; display:flex; align-items:center; justify-content:center; flex:none;}
  .ad-chip .ico svg{width:18px; height:18px;}
  .chip-gads{left:-36px; top:35%;}
  .chip-gads .ico{background:var(--accent-tint); color:var(--accent-dark);}
  .chip-yta{bottom:0; right:-14px;}
  .chip-yta .ico{background:#FDECEC; color:#D9302C;}
  .ad-tagline{font-size:1.05rem; font-weight:700; line-height:1.4; color:var(--ink); text-align:center; max-width:470px; margin:10px auto 0; text-wrap:balance;}
  .ad-tagline a{display:block; margin-top:6px; font-size:.82rem; color:var(--accent-dark); font-weight:600;}
  @media (max-width:920px){
    .ad-visual{padding:0;}
    .ad-chips{display:grid; gap:8px; margin-top:12px;}
    .ad-chip{position:static; padding:9px 12px; box-shadow:none; white-space:normal;}
    .ad-tagline{margin-top:14px;}
  }

  /* ---------- "What happens next" strip under the promote order form ---------- */
  .next-steps{max-width:420px; margin-top:18px;}
  .next-steps .eyebrow{display:block; margin-bottom:12px;}
  .next-steps ol{list-style:none; margin:0; padding:0; display:grid; gap:14px;}
  .next-steps li{display:grid; grid-template-columns:28px 1fr; gap:12px; align-items:start;}
  .next-num{
    width:28px; height:28px; border-radius:50%; background:var(--accent-tint); color:var(--accent-dark);
    font-family:var(--font-mono); font-weight:600; font-size:.85rem; display:flex; align-items:center; justify-content:center;
  }
  .next-steps h3{font-size:.95rem; margin:3px 0 2px;}
  .next-steps p{font-size:.86rem; line-height:1.5; color:var(--ink-muted); margin:0;}

  /* ---------- Cookie consent bar (shown only to UK/EEA visitors, see main.js) ---------- */
  .consent-bar{
    position:fixed; left:22px; bottom:22px; z-index:95; max-width:390px;
    background:var(--surface); border:1px solid var(--border); border-radius:var(--radius-m); box-shadow:var(--shadow);
    padding:16px 18px; display:flex; flex-direction:column; gap:12px; transition:transform .2s ease, opacity .2s ease;
  }
  .consent-bar.is-hidden{transform:translateY(calc(100% + 30px)); opacity:0; pointer-events:none;}
  .consent-bar p{font-size:.84rem; line-height:1.5; color:var(--ink-muted); margin:0;}
  .consent-bar a{color:var(--accent-dark); font-weight:600;}
  .consent-actions{display:flex; gap:10px;}
  .consent-actions .btn{flex:1;}
  @media (max-width:760px){
    .consent-bar{left:12px; right:12px; bottom:12px; max-width:none; padding:14px 16px;}
    body.has-sticky-cta .consent-bar{bottom:calc(78px + env(safe-area-inset-bottom));}
  }

  /* ---------- 404 page ---------- */
  .notfound{text-align:center; max-width:640px; margin:0 auto; padding-top:72px; padding-bottom:88px;}
  .notfound-code{font-family:var(--font-mono); font-weight:600; font-size:.9rem; letter-spacing:.12em; color:var(--accent-dark); background:var(--accent-tint); border-radius:999px; padding:6px 14px; display:inline-block;}
  .notfound h1{margin:18px auto 14px; text-wrap:balance;}
  .notfound p{color:var(--ink-muted); font-size:1.08rem; max-width:48ch; margin:0 auto;}
  .notfound .cta-row{justify-content:center; margin-top:28px;}
  .notfound .notfound-links{margin-top:28px; font-size:.9rem;}
  .notfound-links a{color:var(--accent-dark); font-weight:600; margin:0 4px;}

  /* ---------- Article byline, "Key takeaways" and "Short answer" boxes (blog and FAQ pages) ---------- */
  .byline{font-size:.9rem; color:var(--ink-muted); margin:-4px 0 26px;}
  .byline a{color:var(--accent-dark); font-weight:600; text-decoration:none;}
  .byline a:hover{text-decoration:underline;}
  .callout-label{display:block; font-family:var(--font-mono); font-size:.72rem; font-weight:600; letter-spacing:.08em; text-transform:uppercase; color:var(--accent-dark); margin-bottom:8px;}
  .callout ul{margin:0; padding-left:1.2em;}
  .callout li + li{margin-top:6px;}
  .short-answer p{margin:0; font-size:1.05rem;}
