:root{
    --ink:#0B1F2A;
    --pine:#0F3D33;
    --pine-light:#175C4D;
    --paper:#F5F1E8;
    --bg:#FAFAF8;
    --steel:#74797E;
    --steel-light:#A7ACB1;
    --stamp:#B7372A;
    --line:#D8D3C5;
    --line-dark:#1C3540;
  }

  *{margin:0;padding:0;box-sizing:border-box;}

  html{scroll-behavior:smooth;}

  body{
    background:var(--bg);
    color:var(--ink);
    font-family:'IBM Plex Sans', sans-serif;
    line-height:1.5;
    -webkit-font-smoothing:antialiased;
  }

  img, svg{display:block;max-width:100%;}

  a{color:inherit;text-decoration:none;}

  .wrap{
    max-width:1240px;
    margin:0 auto;
    padding:0 32px;
  }

  .mono{
    font-family:'IBM Plex Mono', monospace;
    letter-spacing:0.02em;
  }

  .eyebrow{
    font-family:'IBM Plex Mono', monospace;
    font-size:12px;
    letter-spacing:0.16em;
    text-transform:uppercase;
    color:var(--pine);
    font-weight:600;
    display:flex;
    align-items:center;
    gap:10px;
  }
  .eyebrow::before{
    content:"";
    width:18px;
    height:2px;
    background:var(--stamp);
    display:inline-block;
  }

  h1, h2, h3{
    font-family:'Fraunces', serif;
    font-weight:600;
    letter-spacing:-0.01em;
    color:var(--ink);
  }

  /* ===== HEADER ===== */
  header{
    border-bottom:1px solid var(--line);
    background:var(--bg);
    position:sticky;
    top:0;
    z-index:50;
  }
  .header-bar{
    display:flex;
    align-items:center;
    justify-content:space-between;
    padding:10px 0;
  }
  .brand{
    display:flex;
    align-items:center;
    gap:16px;
    text-decoration:none;
    color:inherit;
  }
  header .brand{
    transition:opacity .15s ease;
  }
  header .brand:hover{
    opacity:.85;
  }
  header .brand:focus-visible{
    outline:2px solid var(--pine);
    outline-offset:4px;
  }
  .brand-mark{
    height:80px;
    width:auto;
    display:flex;align-items:center;justify-content:center;
    flex-shrink:0;
  }
  .brand-mark img{height:100%;width:auto;object-fit:contain;display:block;}
  .brand-name{
    font-family:'Fraunces', serif;
    font-weight:700;
    font-size:21px;
    letter-spacing:-0.01em;
    line-height:1.18;
  }
  .brand-name span{
    display:block;
    font-family:'IBM Plex Mono', monospace;
    font-weight:500;
    font-size:10.5px;
    letter-spacing:0.14em;
    color:var(--steel);
    text-transform:uppercase;
    margin-top:3px;
  }
  nav{display:flex;gap:34px;align-items:center;}
  nav a{
    font-size:14px;
    font-weight:600;
    color:var(--ink);
    position:relative;
    padding-bottom:4px;
  }
  nav a:not(.cta-small):hover{color:var(--pine);}
  .header-contact{
    display:flex;
    gap:18px;
    align-items:center;
  }
  .phone-pill{
    font-family:'IBM Plex Mono', monospace;
    font-weight:600;
    font-size:14px;
    border:1.5px solid var(--ink);
    padding:9px 16px;
  }
  .phone-pill:hover{background:var(--ink); color:var(--bg);}
  .admin-link{
    font-family:'IBM Plex Mono', monospace;
    font-size:11px;
    text-transform:uppercase;
    letter-spacing:.06em;
    color:var(--steel-light);
    white-space:nowrap;
  }
  .admin-link:hover{color:var(--steel);}

  /* ===== HERO ===== */
  .hero{
    border-bottom:1px solid var(--line);
    background:
      linear-gradient(180deg, var(--bg) 0%, var(--bg) 100%);
    position:relative;
    overflow:hidden;
  }
  .hero .wrap{
    display:grid;
    grid-template-columns:1.15fr 0.85fr;
    gap:60px;
    padding-top:76px;
    padding-bottom:76px;
    align-items:start;
  }
  .hero h1{
    font-size:clamp(40px, 5.4vw, 68px);
    line-height:1.02;
    margin:18px 0 26px;
  }
  .hero h1 em{
    font-style:normal;
    color:var(--pine);
  }
  .hero-sub{
    font-size:18px;
    color:var(--steel);
    max-width:480px;
    margin-bottom:34px;
  }
  .hero-cta-row{
    display:flex;
    gap:14px;
    margin-bottom:38px;
    flex-wrap:wrap;
  }
  .btn{
    font-family:'IBM Plex Sans', sans-serif;
    font-weight:700;
    font-size:15px;
    padding:16px 26px;
    border:1.5px solid var(--ink);
    cursor:pointer;
    display:inline-flex;
    align-items:center;
    gap:10px;
    transition:transform .12s ease;
  }
  .btn-primary{
    background:var(--ink);
    color:var(--bg);
  }
  .btn-primary:hover{background:var(--pine); border-color:var(--pine); transform:translateY(-1px);}
  .btn-ghost{
    background:transparent;
    color:var(--ink);
  }
  .btn-ghost:hover{background:var(--ink); color:var(--bg);}

  .hero-meta{
    display:flex;
    gap:36px;
    border-top:1px solid var(--line);
    padding-top:22px;
    max-width:520px;
  }
  .hero-meta-item .num{
    font-family:'IBM Plex Mono', monospace;
    font-weight:600;
    font-size:26px;
    color:var(--ink);
    display:block;
  }
  .hero-meta-item .label{
    font-size:12px;
    color:var(--steel);
    text-transform:uppercase;
    letter-spacing:.06em;
  }

  /* Hero document mock */
  .doc-card{
    background:var(--paper);
    border:1.5px solid var(--ink);
    padding:30px 28px 26px;
    position:relative;
    transform:rotate(0.4deg);
  }
  .doc-card::before{
    content:"";
    position:absolute;
    top:8px; left:8px; right:-8px; bottom:-8px;
    border:1.5px solid var(--ink);
    z-index:-1;
    background:var(--bg);
  }
  .doc-letterhead{
    display:flex;
    justify-content:center;
    margin-bottom:18px;
  }
  .doc-letterhead img{
    height:64px;
    width:auto;
    object-fit:contain;
  }
  .doc-head{
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    border-bottom:1px solid var(--ink);
    padding-bottom:14px;
    margin-bottom:18px;
  }
  .doc-head .doc-title{
    font-family:'IBM Plex Mono', monospace;
    font-size:11px;
    text-transform:uppercase;
    letter-spacing:.1em;
    color:var(--steel);
  }
  .doc-head .doc-num{
    font-family:'IBM Plex Mono', monospace;
    font-size:11px;
    color:var(--steel);
  }
  .doc-line{
    display:flex;
    justify-content:space-between;
    padding:10px 0;
    border-bottom:1px dashed var(--line);
    font-size:14px;
  }
  .doc-line span:first-child{color:var(--steel);}
  .doc-line span:last-child{
    font-family:'IBM Plex Mono', monospace;
    font-weight:600;
  }
  .doc-line.total{
    border-bottom:none;
    border-top:1.5px solid var(--ink);
    margin-top:6px;
    padding-top:14px;
    font-size:16px;
  }
  .doc-line.total span:last-child{
    color:var(--pine);
    font-size:20px;
  }
  .stamp{
    position:absolute;
    right:14px;
    bottom:-18px;
    width:128px;
    transform:rotate(-9deg);
    opacity:0.92;
  }

  /* ===== TICKER ===== */
  .ticker{
    background:var(--ink);
    color:var(--bg);
    overflow:hidden;
    white-space:nowrap;
    border-bottom:1px solid var(--line-dark);
  }
  .ticker-inner{
    display:inline-flex;
    animation:scroll 38s linear infinite;
    padding:13px 0;
  }
  .ticker-inner span{
    font-family:'IBM Plex Mono', monospace;
    font-size:13px;
    letter-spacing:.05em;
    padding:0 28px;
    border-right:1px solid rgba(255,255,255,0.25);
    color:#D7DDE0;
  }
  .ticker-inner span b{color:var(--bg); font-weight:600;}
  @keyframes scroll{
    0%{transform:translateX(0);}
    100%{transform:translateX(-50%);}
  }

  /* ===== SECTION SHELL ===== */
  section{padding:88px 0;border-bottom:1px solid var(--line);}
  .section-head{
    display:flex;
    justify-content:space-between;
    align-items:flex-end;
    gap:40px;
    margin-bottom:52px;
  }
  .section-head h2{
    font-size:clamp(30px,3.4vw,44px);
    margin-top:14px;
    max-width:560px;
    line-height:1.08;
  }
  .section-head .desc{
    max-width:320px;
    color:var(--steel);
    font-size:15px;
    padding-bottom:6px;
  }

  /* ===== CASE TYPES (services) ===== */
  .case-grid{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:1px;
    background:var(--line);
    border:1px solid var(--line);
  }
  .case-file{
    background:var(--bg);
    padding:36px 34px;
    position:relative;
  }
  .case-file .file-id{
    font-family:'IBM Plex Mono', monospace;
    font-size:12px;
    color:var(--steel-light);
    margin-bottom:14px;
    display:block;
  }
  .case-file h3{
    font-size:23px;
    margin-bottom:12px;
  }
  .case-file p{
    color:var(--steel);
    font-size:14.5px;
    margin-bottom:18px;
    max-width:400px;
  }
  .file-tag{
    display:inline-block;
    font-family:'IBM Plex Mono', monospace;
    font-size:11px;
    text-transform:uppercase;
    letter-spacing:.06em;
    border:1px solid var(--ink);
    padding:5px 10px;
    color:var(--ink);
  }
  .case-file.feature{
    background:var(--ink);
    color:var(--bg);
  }
  .case-file.feature h3, .case-file.feature .file-id{color:var(--bg);}
  .case-file.feature p{color:#9FB0B8;}
  .case-file.feature .file-tag{border-color:var(--bg); color:var(--bg);}

  /* ===== PROCESS / TIMELINE ===== */
  .timeline{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    border-top:1px solid var(--ink);
    border-bottom:1px solid var(--ink);
  }
  .tl-step{
    padding:30px 28px;
    border-right:1px solid var(--line);
    position:relative;
  }
  .tl-step:last-child{border-right:none;}
  .tl-step .tl-day{
    font-family:'IBM Plex Mono', monospace;
    color:var(--stamp);
    font-size:12px;
    font-weight:600;
    margin-bottom:16px;
    text-transform:uppercase;
    letter-spacing:.06em;
  }
  .tl-step h4{
    font-family:'Fraunces', serif;
    font-weight:600;
    font-size:19px;
    margin-bottom:10px;
  }
  .tl-step p{
    font-size:13.5px;
    color:var(--steel);
  }

  /* ===== COVERAGE MAP ===== */
  .coverage{
    background:var(--ink);
    color:var(--bg);
    border-bottom:1px solid var(--line-dark);
  }
  .coverage .eyebrow{color:#8FCBB6;}
  .coverage .eyebrow::before{background:var(--stamp);}
  .coverage h2{color:var(--bg);}
  .coverage-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:60px;
    align-items:center;
  }
  .coverage-stats{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:1px;
    background:rgba(255,255,255,0.18);
    border:1px solid rgba(255,255,255,0.18);
    margin-top:36px;
  }
  .cov-stat{
    background:var(--ink);
    padding:22px 20px;
  }
  .cov-stat .num{
    font-family:'IBM Plex Mono', monospace;
    font-size:30px;
    font-weight:600;
    color:var(--bg);
  }
  .cov-stat .label{
    font-size:12px;
    color:#9FB0B8;
    text-transform:uppercase;
    letter-spacing:.06em;
    margin-top:4px;
  }
  .us-map-wrap{
    border:1.5px solid rgba(255,255,255,0.3);
    padding:24px;
    background:rgba(255,255,255,0.03);
  }
  .us-grid-map{
    width:100%;
    height:auto;
    display:block;
  }
  .state-tile rect{
    fill:#173B47;
    stroke:rgba(255,255,255,0.35);
    stroke-width:1;
    transition:fill .15s ease;
  }
  .state-tile text{
    fill:#C7D0D3;
    font-family:'IBM Plex Mono', monospace;
    font-weight:600;
    pointer-events:none;
  }
  .state-tile:hover rect{fill:var(--pine-light);}
  .state-tile.is-active rect{fill:var(--stamp);}
  .state-tile.is-active text{fill:#FFFFFF;}
  .map-caption{
    font-family:'IBM Plex Mono', monospace;
    font-size:11.5px;
    color:#7F9098;
    text-align:center;
    margin-top:16px;
    letter-spacing:.04em;
  }

  /* ===== TESTIMONIAL / RECORDS ===== */
  .records{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:1px;
    background:var(--line);
    border:1px solid var(--line);
  }
  .record{
    background:var(--bg);
    padding:32px 30px;
  }
  .record .rec-top{
    display:flex;
    justify-content:space-between;
    font-family:'IBM Plex Mono', monospace;
    font-size:11px;
    color:var(--steel-light);
    margin-bottom:18px;
  }
  .record blockquote{
    font-family:'Fraunces', serif;
    font-size:17px;
    line-height:1.4;
    margin-bottom:18px;
    color:var(--ink);
  }
  .record .rec-meta{
    font-size:13px;
    color:var(--steel);
    border-top:1px solid var(--line);
    padding-top:14px;
  }
  .record .rec-meta b{color:var(--ink); display:block; font-size:14px;}

  /* ===== FAQ ===== */
  .faq-list{border-top:1px solid var(--ink);}
  .faq-item{
    border-bottom:1px solid var(--line);
    padding:24px 0;
    display:grid;
    grid-template-columns:60px 1fr 1.2fr;
    gap:24px;
  }
  .faq-item .q-num{
    font-family:'IBM Plex Mono', monospace;
    color:var(--steel-light);
    font-size:14px;
    padding-top:2px;
  }
  .faq-item h4{
    font-family:'Fraunces', serif;
    font-weight:600;
    font-size:18px;
  }
  .faq-item p{
    color:var(--steel);
    font-size:14.5px;
  }

  /* ===== CTA / CLOSING ===== */
  .closing{
    background:var(--paper);
    border-bottom:1px solid var(--line);
    position:relative;
    overflow:hidden;
  }
  .closing .wrap{
    display:grid;
    grid-template-columns:1.3fr 0.7fr;
    gap:50px;
    align-items:center;
  }
  .closing h2{font-size:clamp(30px,3.6vw,46px); line-height:1.05;}
  .closing p{color:var(--steel); margin-top:16px; max-width:460px; font-size:16px;}
  .closing-panel{
    border:1.5px solid var(--ink);
    padding:30px;
    background:var(--bg);
  }
  .closing-panel .mono-label{
    font-family:'IBM Plex Mono', monospace;
    font-size:11px;
    text-transform:uppercase;
    letter-spacing:.08em;
    color:var(--steel);
    margin-bottom:8px;
  }
  .closing-panel .big-phone{
    font-family:'IBM Plex Mono', monospace;
    font-size:28px;
    font-weight:600;
    color:var(--ink);
    margin-bottom:18px;
    display:block;
  }
  .closing-panel .btn{width:100%; justify-content:center; margin-bottom:10px;}
  .closing-panel .email-line{
    font-size:13px;
    color:var(--steel);
    text-align:center;
    margin-top:8px;
  }

  /* ===== FOOTER ===== */
  footer{
    background:var(--ink);
    color:#9FB0B8;
    padding:56px 0 28px;
  }
  .footer-top{
    display:grid;
    grid-template-columns:1.4fr 1fr 1fr 1fr;
    gap:40px;
    padding-bottom:40px;
    border-bottom:1px solid var(--line-dark);
  }
  footer .brand-name{color:var(--bg);}
  footer .brand-name span{color:#7F9098;}
  footer .brand-mark{background:var(--bg); padding:8px;}
  .footer-desc{
    font-size:14px;
    color:#7F9098;
    margin-top:16px;
    max-width:320px;
  }
  .footer-col h5{
    font-family:'IBM Plex Mono', monospace;
    font-size:12px;
    text-transform:uppercase;
    letter-spacing:.08em;
    color:#7F9098;
    margin-bottom:16px;
  }
  .footer-col a, .footer-col p{
    display:block;
    font-size:14px;
    color:#C7D0D3;
    margin-bottom:10px;
  }
  .footer-col a:hover{color:var(--bg);}
  .footer-bottom{
    display:flex;
    justify-content:space-between;
    padding-top:24px;
    font-family:'IBM Plex Mono', monospace;
    font-size:12px;
    color:#65767D;
  }

  /* ===== BACK TO TOP ===== */
  .back-to-top{
    position:fixed;
    bottom:28px;
    right:28px;
    width:50px;
    height:50px;
    background:var(--ink);
    border:1.5px solid var(--ink);
    color:var(--bg);
    display:flex;
    align-items:center;
    justify-content:center;
    cursor:pointer;
    opacity:0;
    visibility:hidden;
    transform:translateY(8px);
    transition:opacity .2s ease, transform .2s ease, background .15s ease;
    z-index:60;
  }
  .back-to-top.is-visible{
    opacity:1;
    visibility:visible;
    transform:translateY(0);
  }
  .back-to-top:hover{background:var(--pine); border-color:var(--pine);}
  .back-to-top svg{width:18px;height:18px;}

  /* ===== CONTACT PAGE ===== */
  .page-header{
    border-bottom:1px solid var(--line);
    padding:64px 0 56px;
  }
  .page-header h1{
    font-size:clamp(34px,4.4vw,52px);
    margin-top:16px;
    max-width:680px;
    line-height:1.05;
  }
  .page-header p{
    color:var(--steel);
    font-size:16px;
    max-width:520px;
    margin-top:16px;
  }
  .contact-grid{
    display:grid;
    grid-template-columns:0.85fr 1.15fr;
    gap:1px;
    background:var(--line);
    border:1px solid var(--line);
  }
  .contact-col{
    background:var(--bg);
    padding:44px;
  }
  .contact-col.dark{
    background:var(--ink);
    color:var(--bg);
  }
  .contact-col.dark .eyebrow{color:#8FCBB6;}
  .contact-col.dark .eyebrow::before{background:var(--stamp);}
  .contact-method{
    display:flex;
    flex-direction:column;
    gap:4px;
    padding:20px 0;
    border-bottom:1px solid var(--line);
  }
  .contact-col.dark .contact-method{border-bottom:1px solid var(--line-dark);}
  .contact-method:first-of-type{padding-top:28px;}
  .contact-method .cm-label{
    font-family:'IBM Plex Mono', monospace;
    font-size:11px;
    text-transform:uppercase;
    letter-spacing:.08em;
    color:var(--steel);
  }
  .contact-col.dark .contact-method .cm-label{color:#7F9098;}
  .contact-method .cm-value{
    font-family:'IBM Plex Mono', monospace;
    font-size:22px;
    font-weight:600;
  }
  .contact-method .cm-value a{border-bottom:1px solid transparent;}
  .contact-method .cm-value a:hover{border-bottom-color:currentColor;}

  /* ===== SELLER FORM CARD ===== */
  .form-card-wrap{
    width:100%;
  }
  .form-card{
    border:1.5px solid var(--ink);
    background:var(--bg);
    padding:36px;
    position:relative;
  }
  .form-head{
    margin-bottom:26px;
  }
  .form-head h2{
    font-family:'Fraunces', serif;
    font-weight:600;
    font-size:26px;
    margin-top:12px;
    line-height:1.12;
  }
  .form-head p{
    color:var(--steel);
    font-size:14px;
    margin-top:8px;
  }

  .form-fieldset{
    display:flex;
    flex-direction:column;
    gap:18px;
  }
  .form-row{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:16px;
  }
  .form-row.three{
    grid-template-columns:1fr 1fr 1fr;
  }
  .section-divider{
    border:none;
    border-top:1px solid var(--line);
    margin:4px 0;
  }

  .field label{
    display:block;
    font-family:'IBM Plex Mono', monospace;
    font-size:11px;
    text-transform:uppercase;
    letter-spacing:.07em;
    color:var(--steel);
    margin-bottom:8px;
  }
  .field input,
  .field select,
  .field textarea{
    width:100%;
    border:1.5px solid var(--ink);
    background:var(--bg);
    padding:13px 14px;
    font-family:'IBM Plex Sans', sans-serif;
    font-size:14.5px;
    color:var(--ink);
  }
  .field textarea{resize:vertical; min-height:64px;}
  .field input::placeholder,
  .field textarea::placeholder{color:var(--steel-light);}
  .field input:focus,
  .field select:focus,
  .field textarea:focus{
    outline:2px solid var(--pine);
    outline-offset:1px;
  }
  .field select{
    appearance:none;
    -webkit-appearance:none;
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='%230B1F2A'%3E%3Cpath d='M5.5 7.5l4.5 5 4.5-5h-9z'/%3E%3C/svg%3E");
    background-repeat:no-repeat;
    background-position:right 12px center;
    padding-right:34px;
  }

  /* ---- Overall-condition slider: exact match to reference site ---- */
  .condition-wrap{margin-bottom:16px;}
  .condition-wrap label{
    display:block;
    font-family:'IBM Plex Mono', monospace;
    font-size:11.5px;
    letter-spacing:0.05em;
    text-transform:uppercase;
    color:var(--steel);
    margin-bottom:10px;
  }
  .condition-track-wrap{position:relative; padding:6px 2px 0;}
  .condition-sketch{width:100%; height:34px; display:block;}
  .condition-slider{
    width:100%; margin-top:-26px; position:relative; -webkit-appearance:none;
    appearance:none; height:34px; background:transparent; cursor:pointer;
  }
  .condition-slider::-webkit-slider-thumb{
    -webkit-appearance:none; width:26px; height:26px; border-radius:50%;
    background:var(--pine-light); border:3px solid var(--bg); box-shadow:0 0 0 1.5px var(--ink);
    margin-top:0; cursor:grab;
  }
  .condition-slider::-moz-range-thumb{
    width:26px; height:26px; border-radius:50%; background:var(--pine-light);
    border:3px solid var(--bg); box-shadow:0 0 0 1.5px var(--ink); cursor:grab;
  }
  .condition-slider::-moz-range-track{background:transparent;}
  .condition-labels{display:flex; justify-content:space-between; font-size:12px; color:var(--steel); margin-top:2px;}
  .condition-readout{margin-top:8px; font-family:'Fraunces',serif; font-weight:600; font-size:16px; color:var(--pine); min-height:22px;}

  .submit-btn{
    width:100%;
    margin-top:26px;
    font-family:'IBM Plex Sans', sans-serif;
    font-weight:700;
    font-size:15px;
    padding:16px 26px;
    border:1.5px solid var(--ink);
    background:var(--ink);
    color:var(--bg);
    cursor:pointer;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:10px;
    transition:background .15s ease, border-color .15s ease, transform .12s ease;
  }
  .submit-btn:hover{background:var(--pine); border-color:var(--pine); transform:translateY(-1px);}
  .submit-btn:disabled{opacity:.6; cursor:default; transform:none;}
  .form-fine{
    font-size:12px;
    color:var(--steel);
    margin-top:14px;
    text-align:center;
    line-height:1.5;
  }
  .form-error{
    margin-top:16px;
    padding:12px 14px;
    border:1.5px solid var(--stamp);
    color:var(--stamp);
    font-family:'IBM Plex Mono', monospace;
    font-size:12.5px;
  }

  /* ---- Success state: form is swapped out, this is swapped in ---- */
  .form-success{
    display:none;
    text-align:center;
    padding:50px 30px;
  }
  .form-success.is-visible{display:block;}
  .form-success .check{
    width:54px;
    height:54px;
    border:1.5px solid var(--pine);
    display:flex;
    align-items:center;
    justify-content:center;
    margin:0 auto 22px;
  }
  .form-success h3{
    font-family:'Fraunces', serif;
    font-weight:600;
    font-size:24px;
    margin-bottom:12px;
  }
  .form-success p{
    color:var(--steel);
    font-size:14.5px;
    max-width:380px;
    margin:0 auto 22px;
    line-height:1.55;
  }
  .stamp-mini{
    display:inline-block;
    border:1.5px solid var(--stamp);
    color:var(--stamp);
    font-size:11px;
    font-weight:600;
    letter-spacing:.1em;
    padding:6px 14px;
    transform:rotate(-2deg);
  }

  .coverage-mini-map{
    margin-top:24px;
  }
  .state-list{
    display:grid;
    grid-template-columns:repeat(4, 1fr);
    gap:8px;
    margin-top:18px;
    font-family:'IBM Plex Mono', monospace;
    font-size:12.5px;
    color:#C7D0D3;
  }
  .state-list span{
    padding:6px 0;
    border-bottom:1px solid var(--line-dark);
  }

  /* ===== RESPONSIVE ===== */
  @media (max-width: 920px){
    nav{display:none;}
    .hero .wrap{grid-template-columns:1fr; padding-top:48px; padding-bottom:48px;}
    .hero-meta{flex-wrap:wrap; gap:24px;}
    .case-grid{grid-template-columns:1fr;}
    .timeline{grid-template-columns:1fr;}
    .tl-step{border-right:none; border-bottom:1px solid var(--line);}
    .coverage-grid{grid-template-columns:1fr;}
    .records{grid-template-columns:1fr;}
    .faq-item{grid-template-columns:40px 1fr; }
    .faq-item p{grid-column:2/3;}
    .closing .wrap{grid-template-columns:1fr;}
    .footer-top{grid-template-columns:1fr 1fr; gap:30px;}
    .footer-bottom{flex-direction:column; gap:8px;}
    .contact-grid{grid-template-columns:1fr;}
    .form-row,
    .form-row.three{grid-template-columns:1fr;}
    .form-card{padding:26px 22px;}
    .state-list{grid-template-columns:repeat(3,1fr);}
  }
  @media (max-width: 560px){
    .wrap{padding:0 20px;}
    .header-contact .phone-pill span.full{display:none;}
    .admin-link{display:none;}
    .footer-top{grid-template-columns:1fr;}
    .back-to-top{bottom:18px; right:18px; width:44px; height:44px;}
    .contact-col{padding:30px 24px;}
    .state-list{grid-template-columns:repeat(2,1fr);}
    .brand-mark{height:58px;}
    .brand-name{font-size:16px;}
  }

  @media (prefers-reduced-motion: reduce){
    .ticker-inner{animation:none;}
    html{scroll-behavior:auto;}
  }
