@font-face{font-family:'Public Sans';src:url("/assets/fonts/PublicSans-Regular.woff2") format('woff2');font-weight:400;font-display:swap;}
  @font-face{font-family:'Public Sans';src:url("/assets/fonts/PublicSans-SemiBold.woff2") format('woff2');font-weight:600;font-display:swap;}
  @font-face{font-family:'Public Sans';src:url("/assets/fonts/PublicSans-Bold.woff2") format('woff2');font-weight:700;font-display:swap;}
  @font-face{font-family:'Public Sans';src:url("/assets/fonts/PublicSans-ExtraBold.woff2") format('woff2');font-weight:800;font-display:swap;}

  /* ============================================================
     Get Business Address — federal minimal
     All Helvetica · navy / red / white · maximum whitespace
     ============================================================ */
  :root{
    --navy:#1a4480; --navy-2:#16355e; --navy-deep:#162e51;
    --red:#d83933; --red-dark:#b50909;
    --ink:#1a4480; --gray:#5b616b; --gray-light:#5f6875;
    --bg:#ffffff; --bg-soft:#f0f0f0; --line:#e3e7ee; --line-strong:#1a4480;
    --maxw:1120px;
    --sans:'Public Sans',Helvetica,'Helvetica Neue',Arial,sans-serif;
    --t:.18s cubic-bezier(.4,0,.2,1);
  }
  *{margin:0;padding:0;box-sizing:border-box;}
  html{scroll-behavior:smooth;}
  body{font-family:var(--sans);background:var(--bg);color:var(--ink);line-height:1.55;-webkit-font-smoothing:antialiased;overflow-x:hidden;letter-spacing:0;}
  a{color:inherit;text-decoration:none;}
  .wrap{max-width:var(--maxw);margin:0 auto;padding:0 28px;}
  ::selection{background:var(--navy);color:#fff;}

  /* buttons — flat, square-ish, confident */
  .btn{display:inline-flex;align-items:center;gap:9px;font-weight:700;font-size:13px;letter-spacing:.02em;text-transform:uppercase;padding:15px 28px;border:1.5px solid transparent;cursor:pointer;transition:var(--t);}
  .btn-primary{background:var(--red);color:#fff;}
  .btn-primary:hover{background:var(--red-dark);}
  .btn-navy{background:var(--navy);color:#fff;}
  .btn-navy:hover{background:var(--navy-deep);}
  .btn-ghost{background:transparent;border-color:rgba(255,255,255,.4);color:#fff;}
  .btn-ghost:hover{border-color:#fff;}
  .btn-line{background:transparent;border-color:var(--navy);color:var(--navy);}
  .btn-line:hover{background:var(--navy);color:#fff;}
  .btn-lg{padding:17px 34px;font-size:13.5px;}

  /* utility bar */
  .utility{background:var(--navy-deep);color:#aeb9cc;font-size:12px;letter-spacing:.01em;}
  .utility .wrap{display:flex;align-items:center;gap:10px;height:40px;}
  .utility .usq{display:flex;align-items:center;gap:9px;}
  .utility .flagdot{width:13px;height:9px;flex-shrink:0;background:
    linear-gradient(var(--navy) 0 0) left top / 42% 56% no-repeat,
    repeating-linear-gradient(180deg,var(--red) 0 1.3px,#fff 1.3px 2.6px);}
  .utility b{color:#fff;font-weight:600;}
  .utility .right{margin-left:auto;display:flex;gap:22px;text-transform:uppercase;font-size:11px;letter-spacing:.08em;}
  .utility a:hover{color:#fff;}
  @media(max-width:680px){.utility .right{display:none;}}

  /* nav */
  header.nav{position:sticky;top:0;z-index:60;background:rgba(255,255,255,.92);backdrop-filter:blur(10px);border-bottom:1px solid var(--line);}
  .nav-in{display:flex;align-items:center;gap:14px;height:74px;}
  .brand{display:flex;align-items:center;gap:11px;}
  .brand .seal{width:40px;height:40px;display:flex;align-items:center;justify-content:center;color:var(--navy);flex-shrink:0;background:var(--navy);border-radius:3px;}
  .brand .seal svg{width:26px;height:26px;color:#fff;}
  .brand .bt{line-height:1.15;}
  .brand .bt .n{font-weight:800;font-size:15px;color:var(--navy);letter-spacing:0;text-transform:uppercase;}
  .brand .bt .s{font-size:9.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--gray);font-weight:600;}
  .nav-links{display:flex;gap:22px;margin-left:auto;font-size:12.5px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--navy);}
  .nav-links a,.nav-phone{white-space:nowrap;}
  .nav-links a{position:relative;padding:4px 0;}
  .nav-links a::after{content:"";position:absolute;left:0;bottom:0;width:0;height:2px;background:var(--red);transition:var(--t);}
  .nav-links a:hover::after{width:100%;}
  .nav-cta{margin-left:10px;}
  @media(max-width:980px){.nav-links{display:none;}}

  /* hero — typographic, no photo */
  .hero{background:var(--navy-deep);color:#fff;position:relative;overflow:hidden;padding:0;}
  .hero .flag{position:absolute;top:0;right:0;width:46%;height:100%;
    background:repeating-linear-gradient(180deg,transparent 0,transparent 7.6%,rgba(255,255,255,.025) 7.6%,rgba(255,255,255,.025) 15.2%);
    border-left:1px solid rgba(255,255,255,.06);}
  .hero .star-field{position:absolute;top:0;right:0;width:46%;height:100%;opacity:.05;
    background-image:radial-gradient(circle,#fff 1px,transparent 1.4px);background-size:34px 34px;}
  @media(max-width:760px){.hero .flag,.hero .star-field{display:none;}}
  .hero-in{position:relative;z-index:1;padding:32px 0 30px;max-width:900px;}
  @media(max-width:760px){.hero-in{padding:36px 0 40px;}}
  .badge{display:inline-flex;align-items:center;gap:9px;font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#cdd8ea;border:1px solid rgba(255,255,255,.2);padding:8px 15px;margin-bottom:20px;}
  .badge .sq{width:8px;height:8px;background:var(--red);}
  .hero h1{font-size:60px;font-weight:800;line-height:.98;letter-spacing:0;text-transform:uppercase;}
  .hero h1 em{font-style:normal;color:#fff;position:relative;}
  .hero h1 em::after{content:"";position:absolute;left:0;right:0;bottom:.06em;height:.13em;background:var(--red);}
  .hero .lede{font-size:17px;color:#b9c4d6;max-width:760px;margin:22px 0 26px;letter-spacing:0;line-height:1.55;}
  .hero-cta{display:flex;gap:14px;flex-wrap:wrap;}
  .hero .guarantee{margin-top:16px;font-size:11.5px;color:#aeb9cc;text-transform:uppercase;letter-spacing:.08em;font-weight:600;}
  .hero-trust{display:flex;gap:28px;flex-wrap:wrap;margin-top:42px;font-size:12px;color:#9aa8bf;text-transform:uppercase;letter-spacing:.06em;font-weight:600;}
  .hero-trust span{display:flex;align-items:center;gap:8px;}
  .hero-trust .sq{width:6px;height:6px;background:var(--red);}

  /* sections */
  section{padding:104px 0;}
  .sec-head{max-width:680px;}
  .sec-head.center{margin:0 auto;text-align:center;}
  .eyebrow{display:inline-flex;align-items:center;gap:10px;font-size:11px;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:var(--red);margin-bottom:20px;}
  .eyebrow::before{content:"";width:22px;height:2px;background:var(--red);}
  .sec-head.center .eyebrow{display:inline-flex;}
  h2{font-size:48px;font-weight:800;letter-spacing:0;line-height:1.02;text-transform:uppercase;color:var(--navy);}
  .sec-lede{color:var(--gray);margin-top:20px;font-size:17px;letter-spacing:0;line-height:1.6;}

  /* services — clean list/grid, hairline dividers */
  .svc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin-top:60px;border-top:1px solid var(--line);border-left:1px solid var(--line);}
  @media(max-width:900px){.svc-grid{grid-template-columns:repeat(2,1fr);}}
  @media(max-width:560px){.svc-grid{grid-template-columns:1fr;}}
  .svc{padding:34px 30px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);position:relative;transition:var(--t);background:#fff;}
  .svc:hover{background:var(--bg-soft);}
  .svc .ic{width:40px;height:40px;display:flex;align-items:center;justify-content:center;margin-bottom:20px;}
  .svc .ic svg{width:30px;height:30px;stroke:var(--navy);}
  .svc h3{font-size:16px;font-weight:800;margin-bottom:9px;color:var(--navy);text-transform:uppercase;letter-spacing:0;}
  .svc p{font-size:13.5px;color:var(--gray);margin-bottom:16px;line-height:1.6;}
  .svc .meta{font-size:12px;font-weight:800;color:var(--red);text-transform:uppercase;letter-spacing:.04em;}
  .svc .more{display:inline-flex;margin-top:16px;color:var(--navy);font-size:12px;font-weight:800;border-bottom:1px solid currentColor;}
  .svc .tag{position:absolute;top:30px;right:30px;font-size:9px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--gray-light);}

  /* trust strip */
  .trust{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-top:60px;border-top:2px solid var(--navy);}
  @media(max-width:780px){.trust{grid-template-columns:repeat(2,1fr);}}
  @media(max-width:460px){.trust{grid-template-columns:1fr;}}
  .tcell{padding:38px 28px 34px;border-right:1px solid var(--line);}
  .tcell:last-child{border-right:0;}
  .tcell .ic{width:34px;height:34px;display:flex;align-items:center;justify-content:center;margin-bottom:18px;}
  .tcell .ic svg{width:30px;height:30px;stroke:var(--red);}
  .tcell h3{font-size:15px;font-weight:800;color:var(--navy);margin-bottom:9px;text-transform:uppercase;letter-spacing:0;}
  .tcell p{font-size:13px;color:var(--gray);line-height:1.6;}

  /* stats band */
  .statsband{background:var(--navy);color:#fff;}
  .stats{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;padding:76px 0;}
  @media(max-width:780px){.stats{grid-template-columns:repeat(2,1fr);gap:44px;}}
  .stat{border-left:2px solid var(--red);padding-left:20px;}
  .stat .num{font-size:48px;font-weight:800;letter-spacing:0;line-height:1;overflow-wrap:anywhere;}
  .stat .lbl{font-size:12.5px;color:#aab8cd;margin-top:12px;text-transform:uppercase;letter-spacing:.05em;line-height:1.5;}

  /* pricing */
  .tiers{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin-top:64px;border:1px solid var(--line);}
  @media(max-width:880px){.tiers{grid-template-columns:1fr;}}
  .tier{padding:40px 34px;position:relative;border-right:1px solid var(--line);background:#fff;}
  .tier:last-child{border-right:0;}
  .tier.featured{background:var(--navy);color:#fff;}
  .tier .pop{position:absolute;top:0;left:0;background:var(--red);color:#fff;font-size:10px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;padding:6px 14px;}
  .tier .name{font-size:12px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--gray);margin-bottom:18px;}
  .tier.featured .name{color:#a7b9d3;margin-top:14px;}
  .tier .amt{font-size:52px;font-weight:800;letter-spacing:0;line-height:1;color:var(--navy);}
  .tier.featured .amt{color:#fff;}
  .tier .amt small{font-size:15px;font-weight:600;color:var(--gray);letter-spacing:0;}
  .tier.featured .amt small{color:#a7b9d3;}
  .tier .sub{font-size:13px;color:var(--gray);margin-top:8px;min-height:20px;}
  .tier.featured .sub{color:#a7b9d3;}
  .tier ul{list-style:none;display:flex;flex-direction:column;gap:13px;margin:28px 0 30px;}
  .tier li{display:flex;gap:11px;font-size:14px;color:var(--ink);letter-spacing:0;}
  .tier.featured li{color:#e7edf5;}
  .tier li::before{content:"";width:7px;height:7px;background:var(--red);margin-top:7px;flex-shrink:0;}
  .tier .btn{width:100%;justify-content:center;}

  /* comparison */
  .cmp{margin-top:60px;overflow-x:auto;border:1px solid var(--line);}
  table.compare{width:100%;border-collapse:collapse;font-size:14px;min-width:680px;}
  table.compare th,table.compare td{padding:17px 18px;text-align:center;border-bottom:1px solid var(--line);letter-spacing:0;}
  table.compare thead th{background:#fff;font-size:11px;font-weight:800;color:var(--gray);text-transform:uppercase;letter-spacing:.06em;}
  table.compare thead th.us{background:var(--navy);color:#fff;}
  table.compare td:first-child,table.compare th:first-child{text-align:left;font-weight:600;color:var(--ink);}
  table.compare td.us{background:var(--bg-soft);font-weight:800;color:var(--navy);}
  table.compare .yes{color:var(--navy);font-weight:800;}
  table.compare .no{color:var(--gray-light);}
  table.compare tr:last-child td{border-bottom:0;}

  /* steps */
  .steps{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-top:60px;border-top:1px solid var(--line);}
  @media(max-width:900px){.steps{grid-template-columns:repeat(2,1fr);}}
  @media(max-width:520px){.steps{grid-template-columns:1fr;}}
  .step{padding:34px 26px 30px;border-right:1px solid var(--line);}
  .step:last-child{border-right:0;}
  .step .n{font-size:13px;font-weight:800;color:var(--red);letter-spacing:.1em;margin-bottom:18px;}
  .step h3{font-size:15px;font-weight:800;margin-bottom:9px;color:var(--navy);text-transform:uppercase;letter-spacing:0;}
  .step p{font-size:13.5px;color:var(--gray);line-height:1.6;}

  /* faq */
  .faq{margin-top:50px;max-width:860px;margin-left:auto;margin-right:auto;border-top:1px solid var(--line);}
  details{border-bottom:1px solid var(--line);}
  summary{cursor:pointer;list-style:none;font-weight:700;font-size:16px;padding:24px 4px;display:flex;justify-content:space-between;align-items:center;color:var(--navy);letter-spacing:0;gap:20px;}
  summary::-webkit-details-marker{display:none;}
  summary::after{content:"+";color:var(--red);font-size:26px;font-weight:300;line-height:1;}
  details[open] summary::after{content:"–";}
  details p{color:var(--gray);font-size:15px;padding:0 4px 26px;line-height:1.65;max-width:760px;}

  /* CTA */
  .cta-band{background:var(--navy);color:#fff;text-align:center;padding:84px 40px;position:relative;overflow:hidden;}
  .cta-band::before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--red);}
  .cta-band h2{color:#fff;}
  .cta-band p{color:#b9c4d6;max-width:560px;margin:18px auto 34px;font-size:17px;}

  /* footer */
  footer{background:var(--navy-deep);color:#9aa8bf;}
  footer::before{content:"";display:block;height:4px;background:var(--red);}
  .foot-main{padding:64px 0 34px;display:flex;justify-content:space-between;gap:40px;flex-wrap:wrap;}
  .foot-brand .seal{width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;margin-bottom:16px;color:#fff;}
  .foot-brand .seal svg{width:36px;height:36px;}
  .foot-brand .n{font-weight:800;font-size:15px;color:#fff;text-transform:uppercase;letter-spacing:0;}
  .foot-brand p{font-size:13px;max-width:300px;margin-top:10px;line-height:1.65;}
  .foot-cols{display:flex;gap:64px;flex-wrap:wrap;}
  .foot-cols h2{font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:#7d8aa0;margin-bottom:16px;}
  .foot-cols a{display:block;color:#9aa8bf;margin-bottom:11px;font-size:13.5px;}
  .foot-cols a:hover{color:#fff;}
  .disclaimer{font-size:11.5px;color:#5f6875;max-width:840px;margin-top:8px;line-height:1.7;border-top:1px solid rgba(255,255,255,.08);padding-top:22px;}
  .foot-bottom{padding:20px 0 40px;font-size:12px;color:#5f6875;display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;text-transform:uppercase;letter-spacing:.04em;}

  /* ============================================================
     DEPTH LAYER — texture, microtype, motion
     ============================================================ */

  /* Guilloché engraving: faint diagonal cross-hatch (certificate/currency
     motif). Pre-rendered SVG tile data-URI — cheap to composite (no live mask). */
  .engrave{position:relative;
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14'%3E%3Cpath d='M0 14L14 0M-1 1L1 -1M13 15L15 13' stroke='%230a2240' stroke-opacity='0.045' stroke-width='1'/%3E%3C/svg%3E");
    background-size:14px 14px;}
  .engrave > .wrap{position:relative;z-index:1;}

  /* microtype rails — tiny monospace section marks down the left margin */
  .rail{position:relative;}
  .rail::before{
    content:attr(data-mark);
    position:absolute;left:max(14px,calc((100vw - var(--maxw))/2 - 14px));top:104px;
    writing-mode:vertical-rl;transform:rotate(180deg);
    font-family:'SFMono-Regular',Menlo,Consolas,monospace;font-size:10px;letter-spacing:.32em;
    text-transform:uppercase;color:var(--gray-light);white-space:nowrap;
  }
  @media(max-width:1180px){.rail::before{display:none;}}

  /* large embossed seal watermark (inline svg) */
  .seal-wm{position:absolute;pointer-events:none;width:min(520px,56vw);height:auto;
    top:50%;left:50%;transform:translate(-50%,-50%);z-index:0;}

  /* scroll progress bar */
  .scroll-progress{position:fixed;top:0;left:0;height:3px;width:0;z-index:200;
    background:var(--red);transition:width .08s linear;}

  /* section anchors clear the sticky nav */
  section[id]{scroll-margin-top:90px;}

  /* visible keyboard focus everywhere */
  a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--red);outline-offset:3px;}
  [hidden]{display:none!important;}

  /* sticky mobile CTA bar */
  .mcta{display:none;}
  @media(max-width:680px){
    .mcta{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:150;
      background:#fff;border-top:1px solid var(--line);padding:10px 16px;gap:10px;
      box-shadow:0 -6px 20px rgba(10,34,64,.08);}
    .mcta a{flex:1;justify-content:center;}
    body{padding-bottom:64px;}
  }

  /* ============================================================
     PREMIUM LAYER 2 — booking, estimator, top-btn, copy, print
     ============================================================ */

  /* booking embed */
  .book-wrap{margin-top:56px;border:1px solid var(--line);background:#fff;}
  .book-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:18px 24px;border-bottom:1px solid var(--line);background:var(--bg-soft);}
  .book-bar .bl{font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:var(--navy);display:flex;align-items:center;gap:10px;}
  .book-bar .bl .dot{width:8px;height:8px;border-radius:50%;background:#0c7a3e;box-shadow:0 0 0 3px rgba(26,153,80,.15);}
  .book-frame{width:100%;height:620px;border:0;display:block;background:#fff;}
  @media(max-width:680px){.book-frame{height:560px;}}

  /* instant quote estimator */
  .est{margin-top:56px;border:1px solid var(--line);background:#fff;display:grid;grid-template-columns:1.4fr 1fr;}
  @media(max-width:820px){.est{grid-template-columns:1fr;}}
  .est-opts{padding:34px 30px;border-right:1px solid var(--line);}
  @media(max-width:820px){.est-opts{border-right:0;border-bottom:1px solid var(--line);}}
  .est-opts h3{font-size:16px;font-weight:800;text-transform:uppercase;color:var(--navy);margin-bottom:6px;}
  .est-opts .hint{font-size:13px;color:var(--gray);margin-bottom:22px;}
  .est-row{display:flex;align-items:center;gap:13px;padding:13px 2px;border-bottom:1px solid var(--line);cursor:pointer;transition:var(--t);}
  .est-row:hover{background:var(--bg-soft);}
  .est-row input{width:17px;height:17px;accent-color:var(--red);flex-shrink:0;cursor:pointer;}
  .est-row .t{flex:1;font-size:14px;font-weight:600;color:var(--ink);}
  .est-row .t small{display:block;font-weight:400;color:var(--gray);font-size:12px;margin-top:2px;}
  .est-row .p{font-size:13px;font-weight:800;color:var(--navy);white-space:nowrap;}
  .est-sum{padding:34px 30px;background:var(--navy);color:#fff;display:flex;flex-direction:column;}
  .est-sum .lab{font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:#a7b9d3;}
  .est-sum .big{font-size:50px;font-weight:800;letter-spacing:0;margin:10px 0 2px;transition:opacity .15s;}
  .est-sum .per{font-size:13px;color:#a7b9d3;margin-bottom:6px;}
  .est-sum .mo{font-size:14px;color:#e7edf5;margin-bottom:18px;}
  .est-sum .note{font-size:11.5px;color:#aeb9cc;line-height:1.6;margin-bottom:22px;}
  .est-sum .btn{justify-content:center;}

  /* back to top */
  .top-btn{position:fixed;right:22px;bottom:84px;z-index:140;width:44px;height:44px;border:1.5px solid var(--navy);
    background:#fff;color:var(--navy);font-size:18px;cursor:pointer;display:flex;align-items:center;justify-content:center;
    opacity:0;pointer-events:none;transition:var(--t);}
  .top-btn.show{opacity:1;pointer-events:auto;}
  .top-btn:hover{background:var(--navy);color:#fff;}
  @media(max-width:680px){.top-btn{bottom:130px;right:14px;}}

  /* copy address */
  .addr-copy{margin-top:14px;display:inline-flex;align-items:center;gap:8px;font-size:11px;font-weight:800;
    letter-spacing:.08em;text-transform:uppercase;color:var(--navy);border:1.5px solid var(--navy);
    padding:9px 16px;background:transparent;cursor:pointer;transition:var(--t);font-family:var(--sans);}
  .addr-copy:hover{background:var(--navy);color:#fff;}
  .addr-copy.done{background:#0c7a3e;border-color:#0c7a3e;color:#fff;}

  /* FAQ quick filter */
  .faq-filter{max-width:860px;margin:34px auto 0;}
  .faq-filter input{width:100%;padding:14px 18px;font-size:15px;font-family:var(--sans);
    border:1.5px solid var(--line);color:var(--ink);background:#fff;transition:var(--t);}
  .faq-filter input:focus{outline:none;border-color:var(--navy);}

  /* status chip */
  .status-chip{display:inline-flex;align-items:center;gap:8px;font-size:11px;font-weight:700;
    letter-spacing:.06em;text-transform:uppercase;color:#0c7a3e;}
  .status-chip .dot{width:7px;height:7px;border-radius:50%;background:#0c7a3e;animation:pulse 2.2s infinite;}
  @keyframes pulse{0%,100%{box-shadow:0 0 0 0 rgba(26,153,80,.35);}50%{box-shadow:0 0 0 5px rgba(26,153,80,0);}}
  @media(prefers-reduced-motion:reduce){.status-chip .dot{animation:none;}}

  /* tier hover lift */
  .tier{transition:var(--t);}
  .tier:hover{transform:translateY(-3px);box-shadow:0 18px 40px -22px rgba(10,34,64,.28);z-index:1;}
  @media(prefers-reduced-motion:reduce){.tier:hover{transform:none;}}

  /* print */
  @media print{
    .utility,header.nav,.mcta,.top-btn,.exit,.scroll-progress,.cta-band,iframe{display:none!important;}
    .reveal,.draw-x{opacity:1!important;transform:none!important;transition:none!important;animation:none!important;}
    body{padding-bottom:0;}
    section{padding:24px 0;page-break-inside:avoid;}
    .hero{background:#fff;color:#000;}
    .hero .lede{color:#333;}
    a[href^="http"]::after{content:" (" attr(href) ")";font-size:10px;color:#555;}
  }


  /* ============================================================
     USWDS LAYER — identifier, alerts, steps, form, tasks
     ============================================================ */
  body{font-variant-numeric:tabular-nums;}

  .identifier{background:#0c1c38;color:#a9b4c5;font-size:12.5px;line-height:1.7;}
  .identifier .wrap{padding:26px 28px;}
  .identifier b{color:#fff;font-weight:700;}
  .identifier .id-links{margin-top:10px;display:flex;gap:8px;flex-wrap:wrap;}
  .identifier .id-links a{color:#dfe1e2;text-decoration:underline;}
  .identifier .id-links span{color:#5b6b83;}

  .alert{display:flex;gap:14px;background:#e7f6f8;border-left:6px solid #00bde3;padding:16px 18px;margin:34px 0 0;font-size:14px;line-height:1.6;color:#1b1b1b;}
  .alert.warn{background:#faf3d1;border-left-color:#ffbe2e;}
  .alert b{display:block;font-size:15px;margin-bottom:2px;}

  .steps{counter-reset:step;border-top:0;}
  .step{position:relative;padding-top:16px;}
  .step::before{counter-increment:step;content:counter(step,decimal-leading-zero);
    display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;
    background:var(--navy);color:#fff;font-weight:800;font-size:13px;margin-bottom:14px;}
  .step::after{content:"";position:absolute;top:33px;left:60px;right:14px;height:2px;background:var(--line);}
  .step:last-child::after{display:none;}
  .step .n{display:none;}
  @media(max-width:900px){.step::after{display:none;}}

  .form-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px;flex-wrap:wrap;border-bottom:2px solid var(--navy);padding-bottom:10px;margin-bottom:18px;}
  .form-head .fnum{font-family:'SFMono-Regular',Menlo,Consolas,monospace;font-size:11px;letter-spacing:.08em;color:var(--gray);text-transform:uppercase;}
  .form-head .ftitle{font-size:13px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:var(--navy);}
  .req{color:var(--red);font-weight:700;}
  .hint{font-size:11.5px;color:var(--gray);margin-top:2px;}

  .tasks{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border:1px solid var(--line);margin:0 auto;max-width:var(--maxw);background:#fff;}
  @media(max-width:720px){.tasks{grid-template-columns:1fr;}}
  .task{display:block;padding:20px 24px;border-right:1px solid var(--line);transition:var(--t);}
  .task:last-child{border-right:0;}
  .task:hover{background:#f0f0f0;}
  .task .tl{font-size:10.5px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--gray);margin-bottom:5px;display:block;}
  .task .tt{font-size:15px;font-weight:800;color:var(--navy);}
  .task .tt span{color:var(--red);}


  /* ============================================================
     POLISH LAYER — stamp, ticker, scrollbar, hours, stagger
     ============================================================ */
  @view-transition{navigation:auto;}

  /* thin custom scrollbar */
  ::-webkit-scrollbar{width:10px;}
  ::-webkit-scrollbar-track{background:#f0f0f0;}
  ::-webkit-scrollbar-thumb{background:var(--navy);border:2px solid #f0f0f0;border-radius:6px;}

  /* button press */
  .btn:active{transform:translateY(1px);}

  /* active nav link */
  .nav-links a.active{color:var(--red);}
  .nav-links a.active::after{width:100%;}

  /* RECEIVED stamp */
  .stamp{position:absolute;top:50%;left:50%;pointer-events:none;z-index:5;
    border:4px solid var(--red);color:var(--red);font-weight:800;font-size:26px;letter-spacing:.12em;
    text-transform:uppercase;padding:10px 22px;background:rgba(255,255,255,.88);white-space:nowrap;
    transform:translate(-50%,-50%) rotate(-8deg) scale(2.4);opacity:0;}
  .stamp small{display:block;font-size:10px;letter-spacing:.3em;text-align:center;margin-top:2px;color:var(--navy);}
  .stamp.hit{animation:stampIn .38s cubic-bezier(.2,1.4,.4,1) forwards;}
  @keyframes stampIn{
    0%{transform:translate(-50%,-50%) rotate(-8deg) scale(2.4);opacity:0;}
    60%{transform:translate(-50%,-50%) rotate(-8deg) scale(.96);opacity:1;}
    100%{transform:translate(-50%,-50%) rotate(-8deg) scale(1);opacity:1;}
  }
  @media(prefers-reduced-motion:reduce){.stamp.hit{animation:none;opacity:1;transform:translate(-50%,-50%) rotate(-8deg);}}

  /* office-hours chip */
  .hours-chip{display:inline-flex;align-items:center;gap:8px;font-size:11.5px;font-weight:700;
    letter-spacing:.04em;text-transform:uppercase;margin-top:14px;color:#cdd8ea;}
  .hours-chip .hdot{width:8px;height:8px;border-radius:50%;background:#4caf50;}
  .hours-chip.closed .hdot{background:#9aa8bf;}

  /* booking skeleton shimmer */
  .book-wrap:not(.loaded) .book-frame-area{position:relative;min-height:120px;
    background:linear-gradient(90deg,#f0f0f0 25%,#fafafa 37%,#f0f0f0 63%);
    background-size:400% 100%;animation:shimmer 1.4s ease infinite;}
  @keyframes shimmer{0%{background-position:100% 0;}100%{background-position:0 0;}}

  /* scroll-linked step highlight */
  .step.on::before{background:var(--red);box-shadow:0 0 0 4px rgba(216,57,51,.15);transition:var(--t);}

  /* FAQ copy-link */
  #faqList details{position:relative;}
  #faqList details > .qlink{position:absolute;top:22px;right:46px;z-index:2;opacity:0;font-size:13px;color:var(--gray-light);transition:var(--t);text-decoration:none;padding:0 4px;}
  #faqList details:hover > .qlink,#faqList details > .qlink:focus-visible{opacity:1;}
  #faqList details > .qlink:hover{color:var(--red);}

  /* email suggestion */
  .mailfix{font:700 12px var(--sans);color:var(--red);margin-top:4px;cursor:pointer;display:block;background:transparent;border:0;padding:2px 0;text-decoration:underline;text-align:left;}
  .plan-import{border:1px solid #9bb4d2;border-left:4px solid var(--navy);background:#eef4fb;padding:15px 16px;color:#263f60;}
  .plan-import .plan-lab{display:block;margin-bottom:5px;color:var(--navy);font-size:10px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;}
  .plan-import strong{display:block;color:var(--navy);font-size:14px;line-height:1.4;}
  .plan-import p{margin:6px 0 0;color:#3f536d;font-size:11.5px;line-height:1.55;overflow-wrap:anywhere;}
  .plan-import-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:10px;}
  .plan-import-actions a,.plan-import-actions button{border:0;border-bottom:1px solid currentColor;background:transparent;color:var(--navy);font:700 11.5px var(--sans);padding:1px 0;cursor:pointer;}
  .need-guide{margin-top:7px;padding-left:10px;border-left:3px solid var(--line-strong);color:var(--gray);font-size:11.5px;line-height:1.5;}
  .textarea-meta{display:flex;justify-content:space-between;gap:14px;margin-top:5px;color:var(--gray);font-size:10.5px;}
  .textarea-meta span:last-child{font-variant-numeric:tabular-nums;white-space:nowrap;}
  .form-completion{display:flex;align-items:center;gap:12px;padding:11px 12px;border:1px solid var(--line);background:var(--bg-soft);}
  .form-completion-track{height:5px;flex:1;overflow:hidden;background:#d9dfe8;}
  .form-completion-track span{display:block;width:0;height:100%;background:var(--navy);transition:width var(--t);}
  .form-completion p{margin:0;color:var(--gray);font-size:10.5px;font-weight:700;white-space:nowrap;}
  .submit-note{margin-top:-5px;color:var(--gray);font-size:10.5px;line-height:1.5;text-align:center;}

  /* estimate share row */
  .est-share{display:flex;gap:10px;margin-top:12px;}
  .est-share button{flex:1;background:transparent;border:1.5px solid rgba(255,255,255,.35);color:#fff;
    font:inherit;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:9px 10px;cursor:pointer;transition:var(--t);}
  .est-share button:hover{border-color:#fff;}
  .est-share button.done{background:#0c7a3e;border-color:#0c7a3e;}

  /* print: estimate-only mode */
  body.print-est *{visibility:hidden;}
  body.print-est .est,body.print-est .est *{visibility:visible;}
  body.print-est .est{position:absolute;top:0;left:0;width:100%;}

  /* mobile nav stagger */
  .mnav nav a{opacity:0;transform:translateX(18px);transition:opacity .3s,transform .3s;}
  .mnav.open nav a{opacity:1;transform:none;}
  .mnav.open nav a:nth-child(1){transition-delay:.05s;}
  .mnav.open nav a:nth-child(2){transition-delay:.1s;}
  .mnav.open nav a:nth-child(3){transition-delay:.15s;}
  .mnav.open nav a:nth-child(4){transition-delay:.2s;}
  .mnav.open nav a:nth-child(5){transition-delay:.25s;}
  .mnav.open nav a:nth-child(6){transition-delay:.3s;}
  @media(prefers-reduced-motion:reduce){.mnav nav a{opacity:1;transform:none;transition:none;}}


  /* ============================================================
     MOBILE LAYER — stacking, safe areas, touch, swipe
     ============================================================ */
  .book-cols{display:grid;grid-template-columns:1.2fr 1fr;min-height:300px;}

  @media(max-width:820px){
    .book-cols{grid-template-columns:1fr;}
  }

  @media(max-width:680px){
    /* compact the stacked header bars */
    section{padding:64px 0;}
    .compliance{font-size:11.5px;}
    .compliance .wrap{padding-top:8px;padding-bottom:8px;}

    /* iOS: inputs under 16px trigger zoom-on-focus */
    input[type="text"],input[type="email"],input[type="search"],select,textarea{font-size:16px !important;}

    /* task cards: horizontal swipe row instead of tall stack */
    .tasks{display:flex;overflow-x:auto;-webkit-overflow-scrolling:touch;scroll-snap-type:x mandatory;border-left:0;border-right:0;}
    .tasks::-webkit-scrollbar{display:none;}
    .task{min-width:78%;scroll-snap-align:start;border-right:1px solid var(--line);}

    /* full-width CTAs */
    .hero-cta .btn{width:100%;justify-content:center;}
    .cta-band .btn{width:100%;justify-content:center;margin-left:0 !important;margin-top:10px;}

    /* sticky bottom bar: iPhone home-indicator safe area */
    .mcta{padding-bottom:calc(10px + env(safe-area-inset-bottom));}
    body{padding-bottom:calc(64px + env(safe-area-inset-bottom));}
    .top-btn{bottom:calc(130px + env(safe-area-inset-bottom));}

    /* compare table swipe hint */
    .cmp{position:relative;}
    .cmp::after{content:"swipe \2192";position:absolute;top:8px;right:10px;font-size:10px;font-weight:800;
      letter-spacing:.1em;text-transform:uppercase;color:var(--gray-light);pointer-events:none;}

    /* estimator + booking padding tighter */
    .est-opts,.est-sum{padding:26px 20px;}
    .book-bar{padding:14px 16px;}
    .book-cols > div{padding:28px 20px !important;}

    /* form panel padding */
    .lead form{padding:30px 22px;}

    /* FAQ: bigger tap area, smaller text */
    summary{font-size:15px;padding:20px 2px;}
    #faqList details > .qlink{top:20px;opacity:1;}

    /* proof cards stack with breathing room */
    .proof-grid{grid-template-columns:1fr !important;gap:14px;}
    h2{font-size:30px;}
    .stat .num{font-size:36px;}
    .est-sum .big{font-size:40px;}
    .lead-title{font-size:26px!important;}

    /* stamp scales down */
    .stamp{font-size:19px;padding:8px 16px;border-width:3px;}

    /* footer columns stack cleanly */
    .foot-cols{gap:28px;}
    .foot-main{padding:44px 0 24px;}
  }

  @media(max-width:400px){
    .hero h1{font-size:38px;}
    .brand .bt .s{display:none;}
  }

  /* premium polish */
  .btn-primary{box-shadow:0 1px 0 rgba(0,0,0,.12),0 10px 24px -12px rgba(178,34,52,.55);}
  .svc:hover .ic svg{stroke:var(--red);transition:stroke var(--t);}
  .tcell:hover{background:#fff;transition:var(--t);}
  details summary:hover{color:var(--red);transition:var(--t);}
  table.compare tbody tr:hover td{background:#fbfcfe;}
  table.compare tbody tr:hover td.us{background:#eef2f8;}

  /* ============================================================
     UX COMPONENTS (mobile nav, phone, testimonials, trust,
     lead form, plan picker, timeline, skip link, scrollspy)
     ============================================================ */

  /* skip link */
  .skip{position:absolute;left:-999px;top:0;z-index:300;background:var(--navy);color:#fff;
    padding:10px 16px;font-size:13px;font-weight:700;}
  .skip:focus{left:8px;top:8px;}

  /* phone in utility bar */
  .utility .right a.tel{color:#fff;font-weight:700;}

  /* nav: phone + hamburger */
  .nav-phone{display:flex;align-items:center;gap:7px;margin-left:auto;font-size:13px;font-weight:700;color:var(--navy);}
  .nav-phone svg{width:16px;height:16px;stroke:var(--red);}
  @media(max-width:980px){.nav-phone{display:none;}}
  .hamburger{display:none;margin-left:14px;width:42px;height:42px;border:1.5px solid var(--line);background:#fff;cursor:pointer;align-items:center;justify-content:center;}
  .hamburger span{display:block;width:18px;height:2px;background:var(--navy);position:relative;}
  .hamburger span::before,.hamburger span::after{content:"";position:absolute;left:0;width:18px;height:2px;background:var(--navy);transition:var(--t);}
  .hamburger span::before{top:-6px;} .hamburger span::after{top:6px;}
  @media(max-width:980px){.hamburger{display:flex;} header.nav .btn.nav-cta{display:none;}}
  /* mobile drawer */
  .mnav{position:fixed;inset:0;z-index:120;background:var(--navy-deep);color:#fff;
    transform:translateX(100%);transition:transform .3s cubic-bezier(.4,0,.2,1);display:flex;flex-direction:column;}
  .mnav.open{transform:none;}
  .mnav-head{display:flex;align-items:center;justify-content:space-between;height:74px;padding:0 24px;border-bottom:1px solid rgba(255,255,255,.1);}
  .mnav-close{width:42px;height:42px;border:1px solid rgba(255,255,255,.2);background:transparent;color:#fff;font-size:24px;cursor:pointer;}
  .mnav nav{display:flex;flex-direction:column;padding:24px;gap:2px;}
  .mnav nav a{font-size:22px;font-weight:800;text-transform:uppercase;letter-spacing:0;padding:16px 0;border-bottom:1px solid rgba(255,255,255,.08);}
  .mnav .btn{margin:24px;justify-content:center;}
  .mnav .mphone{margin:0 24px 24px;color:#cdd8ea;font-weight:700;display:flex;align-items:center;gap:9px;}

  /* scrollspy active nav */
  .nav-links a.active{color:var(--red);} .nav-links a.active::after{width:100%;}

  /* proof cards */
  .proof-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin-top:48px;border-top:1px solid var(--line);border-left:1px solid var(--line);}
  @media(max-width:840px){.proof-grid{grid-template-columns:1fr;}}
  .proof-card{padding:32px 28px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);}
  .proof-card .kicker{display:block;color:var(--red);font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.12em;margin-bottom:12px;}
  .proof-card h3{font-size:17px;color:var(--navy);text-transform:uppercase;margin-bottom:9px;}
  .proof-card p{font-size:14px;line-height:1.65;color:var(--gray);}
  .proof-card a,.inline-link{color:var(--red);font-weight:700;border-bottom:1px solid currentColor;}

  /* trust logos / badges strip */
  .badges{display:flex;flex-wrap:wrap;gap:14px;margin-top:40px;}
  .badge-chip{display:flex;align-items:center;gap:9px;border:1px solid var(--line);padding:12px 18px;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--navy);}
  .badge-chip svg{width:18px;height:18px;stroke:var(--red);}

  /* address example card */
  .addr-card{margin-top:40px;border:1px solid var(--line);border-left:3px solid var(--red);padding:26px 30px;background:#fff;max-width:520px;}
  .addr-card .lab{font-size:10.5px;font-weight:800;text-transform:uppercase;letter-spacing:.14em;color:var(--gray);margin-bottom:10px;}
  .addr-card .addr{font-size:18px;font-weight:700;color:var(--navy);line-height:1.5;font-variant-numeric:tabular-nums;}
  .addr-card .note{font-size:12px;color:var(--gray);margin-top:10px;}

  /* guarantee badge */
  .gtee{display:inline-flex;align-items:center;gap:12px;border:1.5px solid var(--navy);padding:16px 22px;margin-top:36px;}
  .gtee svg{width:30px;height:30px;stroke:var(--red);flex-shrink:0;}
  .gtee .gt{font-size:14px;font-weight:800;text-transform:uppercase;letter-spacing:0;color:var(--navy);}
  .gtee .gs{font-size:12.5px;color:var(--gray);}

  /* plan picker */
  .picker{margin-top:50px;border:1px solid var(--line);padding:34px 30px;max-width:680px;margin-left:auto;margin-right:auto;}
  .picker h3{font-size:16px;font-weight:800;text-transform:uppercase;color:var(--navy);margin-bottom:6px;letter-spacing:0;}
  .picker p.q{font-size:14px;color:var(--gray);margin-bottom:18px;}
  .picker .opts{display:flex;flex-direction:column;gap:10px;}
  .picker .opt{display:flex;width:100%;gap:12px;align-items:center;border:1px solid var(--line);padding:14px 18px;cursor:pointer;transition:var(--t);font:600 14px var(--sans);text-align:left;color:var(--ink);background:#fff;}
  .picker .opt:hover{border-color:var(--navy);}
  .picker .result{margin-top:18px;font-size:14px;display:none;}
  .picker .result.show{display:block;}
  .picker .result strong{color:var(--navy);}
  .quiz-reset{display:block;background:transparent;border:0;color:var(--gray);font:700 12px var(--sans);text-decoration:underline;margin-top:12px;padding:4px 0;cursor:pointer;}

  /* lead form */
  .lead{display:grid;grid-template-columns:1.1fr .9fr;gap:0;margin-top:0;border:1px solid var(--line);}
  @media(max-width:820px){.lead{grid-template-columns:1fr;}}
  .lead .lcopy{padding:46px 44px;background:var(--navy);color:#fff;}
  .lead .lcopy h2{color:#fff;}
  .lead .lcopy p{color:#b9c4d6;margin-top:16px;font-size:15px;line-height:1.6;}
  .lead .lcopy ul{list-style:none;margin-top:24px;display:flex;flex-direction:column;gap:12px;}
  .lead .lcopy li{display:flex;gap:11px;font-size:14px;color:#e7edf5;}
  .lead .lcopy li::before{content:"";width:7px;height:7px;background:var(--red);margin-top:6px;flex-shrink:0;}
  .lead form{padding:46px 44px;display:flex;flex-direction:column;gap:16px;}
  .lead label{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:var(--gray);display:block;margin-bottom:7px;}
  .lead input,.lead select,.lead textarea{width:100%;border:1px solid var(--line);padding:13px 14px;font-family:var(--sans);font-size:15px;color:var(--ink);background:#fff;transition:var(--t);}
  .lead input:focus,.lead select:focus,.lead textarea:focus{outline:none;border-color:var(--navy);}
  .lead .row{display:grid;grid-template-columns:1fr 1fr;gap:14px;}
  @media(max-width:480px){.lead .row{grid-template-columns:1fr;}}
  .lead button{margin-top:6px;}
  .lead .fmsg{font-size:13.5px;font-weight:600;display:none;}
  .lead .fmsg.ok{display:block;color:#1a7a34;}
  .lead .fmsg.err{display:block;color:var(--red);}
  .lead-title{font-size:34px!important;}
  .field-error{border-left:4px solid var(--red);background:#fff1f1;color:#8b0a03;padding:10px 12px;font-size:13px;font-weight:700;}
  .lead [aria-invalid="true"]{border-color:var(--red);box-shadow:0 0 0 1px var(--red);}
  .consent-row{display:grid!important;grid-template-columns:18px 1fr;gap:10px;align-items:start;text-transform:none!important;letter-spacing:0!important;font-size:12px!important;line-height:1.5;color:var(--gray)!important;}
  .consent-row input{width:18px!important;height:18px;margin-top:1px;accent-color:var(--navy);}
  .lead-success{border:2px solid #1a7a34;background:#ecf7ed;padding:20px;margin-top:4px;color:#173b22;}
  .lead-success h3{font-size:18px;color:#173b22;margin-bottom:8px;}
  .lead-success p,.lead-success li{font-size:13px;line-height:1.55;}
  .lead-success ul{margin:10px 0 12px 18px;}
  .request-ref{font-family:'SFMono-Regular',Menlo,Consolas,monospace;font-weight:800;overflow-wrap:anywhere;}
  .turnstile-local-note{border:1px dashed var(--line);padding:10px 12px;color:var(--gray);font-size:12px;line-height:1.5;}

  .price-facts{margin:22px 0 18px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);}
  .tier.featured .price-facts{border-color:rgba(255,255,255,.18);}
  .price-fact{display:flex;justify-content:space-between;gap:14px;padding:9px 0;font-size:12px;color:var(--gray);}
  .price-fact + .price-fact{border-top:1px dashed var(--line);}
  .tier.featured .price-fact{color:#cdd8ea;border-color:rgba(255,255,255,.14);}
  .price-fact strong{color:var(--navy);text-align:right;}
  .tier.featured .price-fact strong{color:#fff;}

  /* process timeline */
  .timeline{position:relative;margin-top:60px;padding-left:0;}
  .timeline::before{content:"";position:absolute;left:21px;top:10px;bottom:10px;width:2px;background:var(--line);}
  @media(max-width:520px){.timeline::before{left:21px;}}
  .tl{display:flex;gap:22px;padding:18px 0;position:relative;}
  .tl .dot{width:44px;height:44px;flex-shrink:0;border-radius:50%;background:var(--navy);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:15px;border:3px solid #fff;box-shadow:0 0 0 1px var(--line);z-index:1;}
  .tl h4{font-size:16px;font-weight:800;text-transform:uppercase;color:var(--navy);margin-bottom:5px;letter-spacing:0;}
  .tl p{font-size:14px;color:var(--gray);line-height:1.6;}

  /* body links clearer */
  .sec-lede a,.disclaimer a{border-bottom:1px solid currentColor;}

  /* renewal note in pricing */
  .renew{font-size:11.5px;color:var(--gray);margin-top:6px;}
  .tier.featured .renew{color:#a7b9d3;}

  /* compliance banner */
  .compliance{background:var(--red);color:#fff;font-size:13px;}
  .compliance .wrap{display:flex;align-items:center;gap:12px;min-height:44px;padding-top:8px;padding-bottom:8px;flex-wrap:wrap;}
  .compliance b{font-weight:800;text-transform:uppercase;letter-spacing:.04em;}
  .compliance a{margin-left:auto;color:#fff;font-weight:800;text-transform:uppercase;font-size:12px;letter-spacing:.05em;border-bottom:1px solid rgba(255,255,255,.5);}
  .compliance .x{margin-left:14px;cursor:pointer;opacity:.8;font-size:18px;line-height:1;background:none;border:0;color:#fff;}

  /* featured / as-seen-in strip */
  .seenin{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:26px 0;}
  .seenin .wrap{display:flex;align-items:center;gap:34px;flex-wrap:wrap;justify-content:center;}
  .seenin .lab{font-size:10.5px;font-weight:800;text-transform:uppercase;letter-spacing:.16em;color:var(--gray-light);}
  .seenin .item{font-size:13px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:var(--gray);display:flex;align-items:center;gap:8px;}
  .seenin .item svg{width:16px;height:16px;stroke:var(--gray);}

  /* DIY cost calculator */
  .calc{margin-top:50px;border:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;}
  @media(max-width:760px){.calc{grid-template-columns:1fr;}}
  .calc .side{padding:34px 32px;}
  .calc .side.them{border-right:1px solid var(--line);}
  .calc .side.us{background:var(--navy);color:#fff;}
  @media(max-width:760px){.calc .side.them{border-right:0;border-bottom:1px solid var(--line);}}
  .calc h3{font-size:13px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:var(--gray);margin-bottom:18px;}
  .calc .us h3{color:#a7b9d3;}
  .calc .line{display:flex;justify-content:space-between;font-size:14px;padding:9px 0;border-bottom:1px dashed var(--line);}
  .calc .us .line{border-bottom-color:rgba(255,255,255,.12);}
  .calc .tot{display:flex;justify-content:space-between;font-size:20px;font-weight:800;margin-top:14px;color:var(--navy);}
  .calc .us .tot{color:#fff;}
  .calc .sub{font-size:12px;color:var(--gray);margin-top:8px;}
  .calc .us .sub{color:#a7b9d3;}

  /* footer city links */
  .foot-cities{margin-top:24px;}
  .foot-cities a{display:inline-block;margin:0 14px 8px 0;}

  /* exit-intent modal */
  .exit{position:fixed;inset:0;z-index:250;background:rgba(6,24,47,.6);display:none;align-items:center;justify-content:center;padding:24px;}
  .exit.show{display:flex;}
  .exit-box{background:#fff;max-width:460px;width:100%;border-top:5px solid var(--red);padding:40px 36px;text-align:center;position:relative;}
  .exit-box .xc{position:absolute;top:14px;right:16px;background:none;border:0;font-size:22px;cursor:pointer;color:var(--gray);}
  .exit-box h3{font-size:24px;font-weight:800;text-transform:uppercase;color:var(--navy);letter-spacing:0;}
  .exit-box p{font-size:15px;color:var(--gray);margin:14px 0 22px;}
  .exit-box .btn{width:100%;justify-content:center;}

  /* ---- motion ---- */
  @media (prefers-reduced-motion: no-preference){
    .reveal{opacity:1;transform:none;transition:opacity .7s cubic-bezier(.16,1,.3,1),transform .7s cubic-bezier(.16,1,.3,1);}
    .reveal.in{opacity:1;transform:none;}
    .reveal.d1{transition-delay:.06s;} .reveal.d2{transition-delay:.12s;}
    .reveal.d3{transition-delay:.18s;} .reveal.d4{transition-delay:.24s;}

    /* hero entrance: lines wipe up on load */
    .hero h1 .ln{display:block;overflow:hidden;}
    .hero h1 .ln > span{display:inline-block;transform:translateY(105%);animation:lineUp .9s cubic-bezier(.16,1,.3,1) forwards;}
    .hero h1 .ln:nth-child(1) > span{animation-delay:.1s;}
    .hero h1 .ln:nth-child(2) > span{animation-delay:.22s;}
    .hero h1 .ln:nth-child(3) > span{animation-delay:.34s;}
    @keyframes lineUp{to{transform:translateY(0);}}
    .hero .badge,.hero .lede,.hero-cta,.hero-trust{opacity:0;animation:fadeUp .8s cubic-bezier(.16,1,.3,1) forwards;}
    .hero .badge{animation-delay:.05s;} .hero .lede{animation-delay:.5s;}
    .hero-cta{animation-delay:.62s;} .hero-trust{animation-delay:.74s;}
    @keyframes fadeUp{from{opacity:0;transform:translateY(16px);}to{opacity:1;transform:none;}}

    /* hairline-draw: section grids scale in from the left */
    .svc-grid,.trust,.steps,.tiers,.cmp{transform-origin:left center;}
    .draw-x{position:relative;}
    .draw-x::after{content:"";position:absolute;left:0;top:0;height:2px;width:100%;background:var(--red);transform:scaleX(0);transform-origin:left;transition:transform .9s cubic-bezier(.16,1,.3,1);}
    .draw-x.in::after{transform:scaleX(1);}

    /* magnetic-ish button press */
    .btn{will-change:transform;}
    .btn:active{transform:translateY(1px) scale(.99);}
  }

  /* count-up stat uses tabular figures to avoid width jitter */
  .stat .num{font-variant-numeric:tabular-nums;}
