:root{
    --ink:#141B2E;      /* logo navy */
    --deep:#0D1322;     /* darkest band */
    --signal:#3A6CE0;   /* logo blue */
    --bright:#4A7FF0;
    --sky:#7BA4FF;      /* blue on dark */
    --paper:#F4F6FA;
    --steel:#566079;
    --mist:#AFB8CC;     /* body text on dark */
    --line:#DCE2EC;
    --wrap:1180px;
  }
  *{box-sizing:border-box}
  html{scroll-behavior:smooth}
  @media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important;animation:none!important}}
  body{margin:0;font-family:"Public Sans",system-ui,sans-serif;font-size:17px;line-height:1.6;color:var(--ink);background:#fff}
  h1,h2,h3{font-family:Poppins,system-ui,sans-serif;line-height:1.15;margin:0;letter-spacing:-.01em}
  h1{font-size:clamp(2.3rem,4.4vw,3.3rem);font-weight:700}
  h2{font-size:clamp(1.8rem,3.2vw,2.5rem);font-weight:600}
  h3{font-size:1.15rem;font-weight:600}
  p{margin:0}
  a{color:var(--signal)}
  :focus-visible{outline:3px solid var(--bright);outline-offset:2px}
  .wrap{max-width:var(--wrap);margin:0 auto;padding:0 24px}

  .btn{white-space:nowrap;display:inline-flex;align-items:center;justify-content:center;gap:.5em;font:600 1rem/1 Poppins,sans-serif;padding:16px 26px;border-radius:8px;border:2px solid transparent;text-decoration:none;cursor:pointer;transition:background .15s,border-color .15s,color .15s}
  .btn-primary{background:var(--signal);color:#fff}
  .btn-primary:hover{background:#2C5AC8}
  .btn-light{background:#fff;color:var(--ink)}
  .btn-light:hover{background:#E6ECF8}
  .btn-outline-light{border-color:rgba(255,255,255,.35);color:#fff;background:transparent}
  .btn-outline-light:hover{border-color:#fff}

  /* utility bar */
  .topbar{background:var(--deep);color:var(--mist);font-size:.85rem}
  .topbar .wrap{display:flex;justify-content:space-between;gap:16px;height:38px;align-items:center}
  .topbar a{color:#fff;text-decoration:none}
  .topbar a:hover{text-decoration:underline}
  .topbar .items{display:flex;gap:24px;align-items:center}
  .topbar svg{vertical-align:-3px;margin-right:6px}
  @media (max-width:640px){.topbar .hours{display:none}}

  /* header */
  header.site{position:sticky;top:0;z-index:30;background:#fff;border-bottom:1px solid var(--line)}
  header.site .wrap{display:flex;align-items:center;justify-content:space-between;height:78px;gap:24px}
  header.site .logo img{height:54px;width:auto;display:block}
  nav.main{display:flex;align-items:center;gap:6px}
  nav.main > a,nav.main .dd > button{white-space:nowrap;color:var(--ink);text-decoration:none;font:500 .98rem "Public Sans",sans-serif;padding:10px 14px;border-radius:6px;background:none;border:0;cursor:pointer;display:flex;align-items:center;gap:6px}
  nav.main > a:hover,nav.main .dd > button:hover{color:var(--signal)}
  .dd{position:relative}
  .dd > button svg{transition:transform .15s}
  .dd-menu{position:absolute;top:100%;left:0;min-width:270px;background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:0 18px 40px rgba(20,27,46,.14);padding:8px;display:none}
  .dd:hover .dd-menu,.dd:focus-within .dd-menu,.dd.open .dd-menu{display:block}
  .dd:hover > button svg,.dd.open > button svg{transform:rotate(180deg)}
  .dd-menu a{display:block;padding:10px 12px;border-radius:6px;color:var(--ink);text-decoration:none;font-weight:500;font-size:.95rem}
  .dd-menu a span{display:block;font-weight:400;font-size:.83rem;color:var(--steel)}
  .dd-menu a:hover{background:var(--paper)}
  .head-cta{display:flex;align-items:center;gap:18px}
  .head-cta .btn{padding:13px 22px}
  .menu-btn{display:none;background:none;border:1px solid var(--line);border-radius:8px;width:46px;height:46px;cursor:pointer;align-items:center;justify-content:center}
  @media (max-width:1100px){
    .menu-btn{display:flex}
    nav.main{position:absolute;top:78px;left:0;right:0;background:#fff;border-bottom:1px solid var(--line);flex-direction:column;align-items:stretch;padding:12px 24px 20px;display:none;box-shadow:0 18px 30px rgba(20,27,46,.1)}
    nav.main.open{display:flex}
    .dd-menu{position:static;box-shadow:none;border:0;padding:0 0 0 12px;min-width:0}
    .dd:hover .dd-menu{display:none}
    .dd.open .dd-menu{display:block}
  }
  @media (max-width:640px){.head-cta .btn{display:none}}

  /* hero */
  .hero{position:relative;background:var(--ink);color:#fff;overflow:hidden}
  .hero::before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(123,164,255,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(123,164,255,.07) 1px,transparent 1px);background-size:56px 56px;mask-image:radial-gradient(ellipse at 30% 40%,#000 20%,transparent 75%);-webkit-mask-image:radial-gradient(ellipse at 30% 40%,#000 20%,transparent 75%)}
  .hero::after{content:"";position:absolute;width:720px;height:720px;left:-200px;top:-260px;background:radial-gradient(circle,rgba(58,108,224,.35),transparent 65%);pointer-events:none}
  .hero .wrap{position:relative;z-index:1;display:grid;grid-template-columns:1.1fr .9fr;gap:56px;align-items:center;padding-top:72px;padding-bottom:84px}
  .badge{display:inline-flex;align-items:center;gap:8px;border:1px solid rgba(123,164,255,.4);background:rgba(58,108,224,.15);color:#DCE6FF;padding:7px 14px;border-radius:99px;font-size:.88rem;font-weight:500;margin-bottom:24px}
  .hero h1{margin-bottom:22px}
  .hero h1 .hl{color:var(--sky)}
  .hero .lede{font-size:1.15rem;color:#C9D1E2;max-width:34em;margin-bottom:30px}
  .chips{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:34px;padding:0;list-style:none}
  .chips a{display:inline-flex;align-items:center;gap:6px;border:1px solid rgba(255,255,255,.22);color:#DDE3EF;padding:7px 14px;border-radius:99px;font-size:.85rem;text-decoration:none;transition:background .15s,border-color .15s,color .15s}
  .chips a::after{content:"";width:6px;height:6px;border-right:1.5px solid currentColor;border-top:1.5px solid currentColor;transform:rotate(45deg);opacity:.7}
  .chips a:hover,.chips a:focus-visible{background:rgba(58,108,224,.25);border-color:var(--sky);color:#fff}
  .hero-actions{display:flex;gap:14px;flex-wrap:wrap}
  @media (max-width:980px){.hero .wrap{grid-template-columns:1fr;gap:44px;padding-top:52px}}

  /* quick form card */
  .quick{background:#fff;color:var(--ink);border-radius:16px;padding:30px;box-shadow:0 30px 60px rgba(0,0,0,.35)}
  .quick h2{font-size:1.45rem;margin-bottom:4px}
  .quick .sub{color:var(--steel);font-size:.9rem;margin-bottom:20px}
  .row2{display:grid;grid-template-columns:1fr 1fr;gap:14px}
  .f{display:flex;flex-direction:column;gap:6px;margin-bottom:14px}
  .f label{font-weight:600;font-size:.88rem}
  .f .opt{font-weight:400;color:var(--steel)}
  .f input,.f select,.f textarea{font:inherit;font-size:1rem;padding:11px 13px;border:1px solid #C8D0DE;border-radius:8px;background:#fff;color:var(--ink);width:100%}
  .f textarea{min-height:90px;resize:vertical}
  .f input:focus,.f select:focus,.f textarea:focus{outline:none;border-color:var(--signal);box-shadow:0 0 0 3px rgba(58,108,224,.2)}
  .money{position:relative}
  .money::before{content:"$";position:absolute;left:13px;top:50%;transform:translateY(-50%);color:var(--steel)}
  .money input{padding-left:26px}
  .slider{margin-top:2px;width:100%;accent-color:var(--signal)}
  .consent{display:grid;grid-template-columns:18px 1fr;gap:10px;font-size:.8rem;line-height:1.5;color:var(--steel);margin:4px 0 16px}
  .consent input{width:16px;height:16px;margin-top:2px;accent-color:var(--signal)}
  .hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
  .form-msg{display:none;padding:12px 14px;border-radius:8px;margin-bottom:16px;font-size:.92rem;background:#FDECEC;color:#8A1C1C;border:1px solid #F3C2C2}
  .form-msg.show{display:block}
  form .btn[type=submit]{width:100%}
  .fine{font-size:.8rem;color:var(--steel);text-align:center;margin-top:12px}
  @media (max-width:520px){.row2{grid-template-columns:1fr;gap:0}.quick{padding:22px}}

  /* trust strip: scrolls continuously right to left */
  .trust{background:var(--paper);border-bottom:1px solid var(--line);overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}
  .marquee{display:flex;width:max-content;animation:evo-marquee 38s linear infinite}
  .trust:hover .marquee{animation-play-state:paused}
  .track{display:flex;flex:none;list-style:none;margin:0;padding:18px 0}
  .trust li{display:flex;align-items:center;gap:8px;font-size:.95rem;white-space:nowrap;font-weight:500;color:var(--ink);padding-right:64px}
  @keyframes evo-marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}
  @media (prefers-reduced-motion:reduce){
    .trust{-webkit-mask-image:none;mask-image:none}
    .marquee{width:auto;justify-content:center}
    .track[aria-hidden="true"],.track li[aria-hidden="true"]{display:none}
    .track{flex-wrap:wrap;justify-content:center;padding:18px 24px;gap:10px 0}
    .trust li{padding:0 18px}
  }

  /* stat band */
  .stats{background:linear-gradient(180deg,#22345A 0%,#151C2E 100%);color:#fff}
  .stats .wrap{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;padding-top:56px;padding-bottom:56px;text-align:center;max-width:1040px}
  .stat b{display:block;font:400 clamp(3rem,5.4vw,4.4rem)/1 Anton,Impact,"Arial Narrow",sans-serif;letter-spacing:-.01em;font-variant-numeric:tabular-nums;margin-bottom:10px}
  .stat b small{font-size:1.05em;margin-left:2px;letter-spacing:0;vertical-align:.02em}
  .stat span{color:#fff;font-weight:600;font-size:1.02rem}
  @media (max-width:760px){.stats .wrap{grid-template-columns:1fr 1fr;gap:32px 16px}}

  /* sections */
  section.block{padding:96px 0}
  .section-head{max-width:680px;margin:0 auto 52px;text-align:center}
  .section-head.left{margin-left:0;text-align:left}
  .section-head h2{margin-bottom:14px}
  .section-head p{color:var(--steel);font-size:1.08rem}
  .tint{background:var(--paper)}

  /* product cards */
  .products{display:flex;flex-wrap:wrap;justify-content:center;gap:22px}
  .products > .product{flex:0 1 calc((100% - 66px)/4)}
  .product{background:#fff;border:1px solid var(--line);border-radius:14px;padding:28px;display:flex;flex-direction:column;gap:12px;transition:border-color .15s,box-shadow .15s}
  .product:hover{border-color:#B9C8EA;box-shadow:0 14px 30px rgba(20,27,46,.08)}
  .product .ico{width:50px;height:50px;border-radius:12px;background:#EAF0FD;display:grid;place-items:center}
  .product p{color:var(--steel)}
  .product dl{margin:4px 0 0;display:grid;grid-template-columns:auto 1fr;gap:4px 14px;font-size:.88rem}
  .product dt{color:var(--steel)}
  .product dd{margin:0;font-weight:600}
  .product a{margin-top:auto;padding-top:8px;font-weight:600;text-decoration:none}
  .product a:hover{text-decoration:underline}
  @media (max-width:1100px){.products > .product{flex-basis:calc((100% - 44px)/3)}}
  @media (max-width:820px){.products > .product{flex-basis:calc((100% - 22px)/2)}}
  @media (max-width:560px){.products > .product{flex-basis:100%}}

  /* steps */
  .steps{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;counter-reset:step;list-style:none;padding:0;margin:0}
  .steps li{counter-increment:step;background:#fff;border:1px solid var(--line);border-radius:14px;padding:30px}
  .steps .hex{width:54px;height:60px;display:grid;place-items:center;margin-bottom:18px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 56 62'%3E%3Cpath d='M28 3 L52 17 V45 L28 59 L4 45 V17 Z' fill='%23141B2E'/%3E%3C/svg%3E") center/contain no-repeat;font:700 1.15rem Poppins,sans-serif;color:#fff}
  .steps .hex::before{content:counter(step)}
  .steps h3{margin-bottom:8px}
  .steps p{color:var(--steel)}
  .center-cta{text-align:center;margin-top:44px}
  @media (max-width:860px){.steps{grid-template-columns:1fr}}

  /* industries */
  .industries{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;list-style:none;padding:0;margin:0}
  .industries li{display:flex;align-items:center;gap:12px;padding:18px 18px;border:1px solid var(--line);border-radius:12px;font-weight:600;background:#fff}
  .industries li svg{flex:none}
  .ind-note{text-align:center;color:var(--steel);margin-top:26px}
  @media (max-width:900px){.industries{grid-template-columns:repeat(2,minmax(0,1fr))}}
  @media (max-width:440px){.industries li{padding:14px 12px;font-size:.9rem;gap:8px}}

  /* why + estimator */
  .why{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}
  .why-list{display:grid;gap:24px;margin-top:32px}
  .why-item{display:grid;grid-template-columns:44px 1fr;gap:16px}
  .why-item .ico{width:44px;height:44px;border-radius:10px;background:#EAF0FD;display:grid;place-items:center}
  .why-item p{color:var(--steel);margin-top:3px}
  @media (max-width:960px){.why{grid-template-columns:1fr;gap:48px}}

  .estimator{background:var(--ink);color:#fff;border-radius:18px;padding:34px;position:relative;overflow:hidden}
  .estimator h3{font-size:1.4rem;margin-bottom:6px}
  .estimator .sub{color:var(--mist);font-size:.95rem;margin-bottom:24px}
  .est-field{margin-bottom:20px;position:relative;z-index:1}
  .est-field label,.est-field .label{display:flex;justify-content:space-between;font-weight:500;font-size:.95rem;margin-bottom:10px;color:#DDE3EF}
  .est-field output{font-family:Poppins,sans-serif;color:#fff}
  .estimator input[type=range]{width:100%;accent-color:var(--bright);height:28px;margin:0}
  .seg{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}
  .seg.three{grid-template-columns:repeat(3,1fr)}
  .seg input{position:absolute;opacity:0;pointer-events:none}
  .seg label{display:block;text-align:center;margin:0;padding:10px 4px;border:1px solid #33405F;border-radius:7px;font-size:.88rem;cursor:pointer;color:#C9D1E2}
  .seg input:checked+label{background:var(--signal);border-color:var(--signal);color:#fff}
  .seg input:focus-visible+label{outline:3px solid var(--bright);outline-offset:2px}
  .est-result{border-top:1px solid #2B3654;margin-top:6px;padding-top:22px;position:relative;z-index:1}
  .est-result .k{color:var(--mist);font-size:.92rem}
  .est-range{font:700 clamp(1.9rem,3.4vw,2.5rem)/1.2 Poppins,sans-serif;margin:4px 0 6px;font-variant-numeric:tabular-nums}
  .est-note{color:#8F9AB3;font-size:.82rem;margin-bottom:20px}
  .estimator .btn{width:100%}
  @media (max-width:520px){.estimator{padding:24px}.seg label{font-size:.8rem;padding:10px 2px}}

  /* faq */
  .faq{max-width:840px;margin:0 auto}
  details{border-bottom:1px solid var(--line)}
  details:first-of-type{border-top:1px solid var(--line)}
  summary{list-style:none;cursor:pointer;padding:22px 40px 22px 0;font:600 1.05rem/1.4 Poppins,sans-serif;position:relative}
  summary::-webkit-details-marker{display:none}
  summary::after{content:"";position:absolute;right:6px;top:50%;width:12px;height:12px;border-right:2px solid var(--signal);border-bottom:2px solid var(--signal);transform:translateY(-70%) rotate(45deg);transition:transform .2s}
  details[open] summary::after{transform:translateY(-30%) rotate(-135deg)}
  details p{padding:0 0 24px;color:var(--steel);max-width:70ch}

  /* apply */
  .apply-bg{background:var(--ink);color:#fff;position:relative;overflow:hidden}
  .apply-bg::before{content:"";position:absolute;width:700px;height:700px;right:-240px;bottom:-300px;background:radial-gradient(circle,rgba(58,108,224,.3),transparent 65%)}
  .apply{position:relative;display:grid;grid-template-columns:.85fr 1.15fr;gap:64px;align-items:start}
  .apply .section-head p{color:var(--mist)}
  .apply-aside ul{list-style:none;padding:0;margin:28px 0 0;display:grid;gap:14px;color:#C9D1E2}
  .apply-aside li{display:grid;grid-template-columns:22px 1fr;gap:12px}
  .contact-card{margin-top:34px;padding:22px;border:1px solid #2B3654;border-radius:12px}
  .contact-card p{color:var(--mist);font-size:.92rem}
  .contact-card a{color:#fff;font-weight:600;text-decoration:none}
  form.app{background:#fff;color:var(--ink);border-radius:16px;padding:34px}
  .grid2{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}
  .full{grid-column:1/-1}
  .file-drop{border:1.5px dashed #B7C2D6;border-radius:8px;padding:16px;background:var(--paper)}
  .file-drop input{border:0!important;padding:0!important;background:none!important}
  .f .hint{font-size:.82rem;color:var(--steel)}
  @media (max-width:960px){.apply{grid-template-columns:1fr;gap:40px}}
  @media (max-width:560px){.grid2{grid-template-columns:1fr}form.app{padding:22px}}

  /* footer: light, so the logo always appears in its original colors */
  footer{background:var(--paper);color:var(--steel);padding:64px 0 36px;font-size:.92rem;border-top:1px solid var(--line)}
  .foot-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.1fr;gap:40px;padding-bottom:40px;border-bottom:1px solid var(--line)}
  .foot-grid img{height:56px;width:auto;margin-bottom:16px}
  .foot-grid h4{font:600 1rem Poppins,sans-serif;color:var(--ink);margin:0 0 14px}
  .foot-grid ul{list-style:none;padding:0;margin:0;display:grid;gap:9px}
  footer a{color:var(--ink);text-decoration:none}
  footer a:hover{color:var(--signal);text-decoration:underline}
  .disclosure{padding-top:26px;font-size:.8rem;line-height:1.6;color:var(--steel);max-width:960px}
  .disclosure p+p{margin-top:10px}
  .foot-contact{margin-top:16px !important}
  @media (max-width:900px){.foot-grid{grid-template-columns:1fr 1fr}}
  @media (max-width:520px){.foot-grid{grid-template-columns:1fr}}

  /* centered home hero on the original navy-to-blue ombre, with horizontal estimator */
  .hero-clean{position:relative;overflow:hidden;text-align:center;color:#fff;background:linear-gradient(160deg,#0D1322 0%,#141B2E 45%,#1C2D57 100%)}
  .hero-clean::before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(123,164,255,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(123,164,255,.07) 1px,transparent 1px);background-size:56px 56px;mask-image:radial-gradient(ellipse at 50% 35%,#000 15%,transparent 70%);-webkit-mask-image:radial-gradient(ellipse at 50% 35%,#000 15%,transparent 70%)}
  .hero-clean::after{content:"";position:absolute;width:820px;height:820px;left:-260px;top:-320px;background:radial-gradient(circle,rgba(58,108,224,.38),transparent 65%);pointer-events:none}
  .hero-clean .wrap{position:relative;z-index:1;padding-top:60px;padding-bottom:56px}
  .hero-clean .mark-tile{width:112px;height:112px;margin:0 auto 26px;background:#fff;border-radius:24px;display:grid;place-items:center;box-shadow:0 18px 40px rgba(0,0,0,.35),0 0 0 6px rgba(123,164,255,.12)}
  .hero-clean .mark-tile img{width:72px;height:auto;display:block}
  .hero-clean h1{font-size:clamp(2.3rem,4.6vw,3.6rem);max-width:15em;margin:0 auto 18px;color:#fff}
  .hero-clean .lede{font-size:1.15rem;color:#C9D1E2;max-width:38em;margin:0 auto 26px}
  .hero-clean .chips{justify-content:center;margin-bottom:40px}
  /* estimator card on the hero */
  .est-card{max-width:1080px;margin:0 auto;text-align:left;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);border-radius:24px;box-shadow:0 40px 80px rgba(0,0,0,.35);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);overflow:hidden}
  .ec-head{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:18px 28px;border-bottom:1px solid rgba(255,255,255,.1)}
  .ec-head h2{display:flex;align-items:center;gap:10px;font-size:1.08rem;font-weight:600;color:#fff;margin:0}
  .ec-head span{font-size:.85rem;color:var(--mist);background:rgba(255,255,255,.08);padding:5px 12px;border-radius:99px}
  .ec-body{display:grid;grid-template-columns:1.55fr 1fr}
  .ec-inputs{padding:28px;display:grid;gap:28px}
  .ec-row{display:grid;grid-template-columns:1.25fr 1fr;gap:24px}
  .ec-field label,.ec-field .label{display:flex;justify-content:space-between;align-items:baseline;gap:10px;color:#DDE3EF;font-weight:500;font-size:.93rem;margin-bottom:12px}
  .ec-field output{font:600 1.5rem/1 Poppins,sans-serif;color:#fff;font-variant-numeric:tabular-nums}
  .ec-scale{display:flex;justify-content:space-between;font-size:.78rem;color:#8F9AB3;margin-top:8px}
  /* custom slider */
  input.fancy{-webkit-appearance:none;appearance:none;width:100%;height:28px;background:transparent;margin:0;cursor:pointer;--p:10%}
  input.fancy::-webkit-slider-runnable-track{height:8px;border-radius:99px;background:linear-gradient(90deg,#4A7FF0 0,#7BA4FF var(--p),rgba(255,255,255,.14) var(--p))}
  input.fancy::-moz-range-track{height:8px;border-radius:99px;background:rgba(255,255,255,.14)}
  input.fancy::-moz-range-progress{height:8px;border-radius:99px;background:linear-gradient(90deg,#4A7FF0,#7BA4FF)}
  input.fancy::-webkit-slider-thumb{-webkit-appearance:none;width:24px;height:24px;margin-top:-8px;border-radius:50%;background:#fff;border:0;box-shadow:0 0 0 6px rgba(123,164,255,.28),0 4px 10px rgba(0,0,0,.35)}
  input.fancy::-moz-range-thumb{width:24px;height:24px;border-radius:50%;background:#fff;border:0;box-shadow:0 0 0 6px rgba(123,164,255,.28),0 4px 10px rgba(0,0,0,.35)}
  input.fancy:focus-visible{outline:none}
  input.fancy:focus-visible::-webkit-slider-thumb{box-shadow:0 0 0 6px rgba(123,164,255,.6)}
  /* pill toggles */
  .pills{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;padding:4px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.1);border-radius:12px}
  .pills.three{grid-template-columns:repeat(3,1fr)}
  .pills input{position:absolute;opacity:0;pointer-events:none}
  .pills label{display:block;margin:0;text-align:center;padding:9px 4px;border-radius:9px;font-size:.86rem;font-weight:500;color:#C9D1E2;cursor:pointer;transition:background .15s,color .15s;white-space:nowrap}
  .pills label:hover{color:#fff}
  .pills input:checked+label{background:#fff;color:var(--ink);font-weight:600;box-shadow:0 2px 8px rgba(0,0,0,.25)}
  .pills input:focus-visible+label{outline:3px solid var(--bright);outline-offset:1px}
  /* result */
  .ec-result{background:linear-gradient(155deg,#4A7FF0 0%,#2C5AC8 55%,#1F45A8 100%);color:#fff;padding:28px;display:flex;flex-direction:column;justify-content:center;gap:6px}
  .ec-result .k{color:#DCE6FF;font-size:.92rem}
  .ec-result .est-range{font:700 clamp(1.7rem,2.6vw,2.2rem)/1.15 Poppins,sans-serif;font-variant-numeric:tabular-nums;margin:0}
  .ec-result .est-note{color:#C9D8FF;font-size:.78rem;margin:4px 0 16px}
  .ec-result .btn{width:100%}
  @media (max-width:960px){.ec-body{grid-template-columns:1fr}.ec-row{grid-template-columns:1fr}}
  @media (max-width:520px){.ec-head{padding:14px 18px}.ec-head span{display:none}.ec-inputs,.ec-result{padding:22px}.pills label{font-size:.8rem;padding:9px 2px}}
  .trust{border-top:0}

  /* home quick-match section */
  .quick-band{background:var(--ink);color:#fff;position:relative;overflow:hidden}
  .quick-band::before{content:"";position:absolute;width:700px;height:700px;right:-240px;bottom:-300px;background:radial-gradient(circle,rgba(58,108,224,.3),transparent 65%)}
  .quick-band .wrap{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}
  .quick-band h2{margin-bottom:14px}
  .quick-band .intro{color:var(--mist);font-size:1.08rem;max-width:30em}
  .quick-band ul{list-style:none;padding:0;margin:26px 0 0;display:grid;gap:12px;color:#C9D1E2}
  .quick-band li{display:grid;grid-template-columns:22px 1fr;gap:12px}
  @media (max-width:960px){.quick-band .wrap{grid-template-columns:1fr;gap:40px}}

  /* ---- multi-page additions ---- */
  nav.main a.active,nav.main .dd.active > button{color:var(--signal)}
  nav.main a.active{box-shadow:inset 0 -2px 0 var(--signal);border-radius:0}
  .dd-menu a.cur{background:var(--paper);color:var(--signal)}
  .dd-right .dd-menu{left:auto;right:0}
  .page-hero{position:relative;background:var(--ink);color:#fff;overflow:hidden}
  .page-hero::before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(123,164,255,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(123,164,255,.07) 1px,transparent 1px);background-size:56px 56px;mask-image:radial-gradient(ellipse at 25% 50%,#000 15%,transparent 70%);-webkit-mask-image:radial-gradient(ellipse at 25% 50%,#000 15%,transparent 70%)}
  .page-hero::after{content:"";position:absolute;width:600px;height:600px;left:-180px;top:-280px;background:radial-gradient(circle,rgba(58,108,224,.32),transparent 65%);pointer-events:none}
  .page-hero .wrap{position:relative;z-index:1;padding-top:64px;padding-bottom:68px}
  .crumbs{font-size:.88rem;color:var(--mist);margin-bottom:18px}
  .crumbs a{color:var(--sky);text-decoration:none}
  .crumbs a:hover{text-decoration:underline}
  .page-hero h1{font-size:clamp(2.1rem,4vw,3rem);margin-bottom:16px;max-width:18em}
  .page-hero p{font-size:1.12rem;color:#C9D1E2;max-width:40em}
  .page-hero .hero-actions{margin-top:28px}

  .cta-band{background:var(--ink);color:#fff;position:relative;overflow:hidden}
  .cta-band::before{content:"";position:absolute;width:640px;height:640px;right:-200px;top:-320px;background:radial-gradient(circle,rgba(58,108,224,.32),transparent 65%)}
  .cta-band .wrap{position:relative;display:flex;justify-content:space-between;align-items:center;gap:32px;flex-wrap:wrap;padding-top:64px;padding-bottom:64px}
  .cta-band h2{margin-bottom:10px}
  .cta-band p{color:var(--mist);font-size:1.08rem;max-width:36em}
  .cta-band .hero-actions{flex:none}

  .more-link{display:inline-block;margin-top:36px;font-weight:600;text-decoration:none}
  .more-link:hover{text-decoration:underline}
  .center{text-align:center}

  /* solutions detail */
  .sol{display:grid;grid-template-columns:.85fr 1.15fr;gap:56px;padding:56px 0;border-top:1px solid var(--line);scroll-margin-top:100px}
  .sol:first-child{border-top:0;padding-top:0}
  .sol .ico{width:56px;height:56px;border-radius:14px;background:#EAF0FD;display:grid;place-items:center;margin-bottom:18px}
  .sol h2{font-size:clamp(1.6rem,2.6vw,2.1rem);margin-bottom:12px}
  .sol .intro{color:var(--steel);font-size:1.06rem;margin-bottom:22px}
  .sol .facts{display:grid;grid-template-columns:auto 1fr;gap:8px 18px;margin:0 0 24px;font-size:.95rem}
  .sol .facts dt{color:var(--steel)}
  .sol .facts dd{margin:0;font-weight:600}
  .sol-body{display:grid;grid-template-columns:1fr 1fr;gap:28px}
  .sol-body h3{font-size:1.02rem;margin-bottom:10px}
  .sol-body ul{margin:0;padding-left:18px;color:var(--steel);display:grid;gap:6px}
  .sol-body .box{background:var(--paper);border:1px solid var(--line);border-radius:12px;padding:22px}
  .sol-body .box.full{grid-column:1/-1}
  .sol-body .box p{color:var(--steel)}
  .jump{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:56px}
  .jump a{border:1px solid var(--line);border-radius:99px;padding:8px 16px;text-decoration:none;color:var(--ink);font-weight:500;font-size:.92rem}
  .jump a:hover{border-color:var(--signal);color:var(--signal)}
  @media (max-width:900px){.sol{grid-template-columns:1fr;gap:24px}.sol-body{grid-template-columns:1fr}}

  /* industries detail */
  .ind-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}
  .ind-card{border:1px solid var(--line);border-radius:14px;padding:28px;background:#fff;display:grid;grid-template-columns:52px 1fr;gap:18px}
  .ind-card .ico{width:52px;height:52px;border-radius:12px;background:#EAF0FD;display:grid;place-items:center}
  .ind-card h2{font-size:1.25rem;margin-bottom:8px}
  .ind-card p{color:var(--steel);margin-bottom:12px}
  .ind-card .uses{font-size:.9rem}
  .ind-card .uses b{font-weight:600}
  @media (max-width:820px){.ind-cards{grid-template-columns:1fr}}

  /* needs list */
  .needs{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;list-style:none;padding:0;margin:0}
  .needs li{border:1px solid var(--line);border-radius:14px;padding:26px;background:#fff}
  .needs h3{margin:14px 0 6px}
  .needs p{color:var(--steel)}
  @media (max-width:860px){.needs{grid-template-columns:1fr}}
  .why.solo{grid-template-columns:1fr 1fr;align-items:start}
  .why-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px 40px}
  @media (max-width:760px){.why-grid{grid-template-columns:1fr}}

  /* calculator page */
  .calc-layout{display:grid;grid-template-columns:1.1fr .9fr;gap:56px;align-items:start}
  .calc-explain h2{font-size:1.6rem;margin-bottom:14px}
  .calc-explain p{color:var(--steel);margin-bottom:16px}
  .calc-explain ul{color:var(--steel);padding-left:18px;display:grid;gap:8px;margin:0 0 20px}
  @media (max-width:960px){.calc-layout{grid-template-columns:1fr}}

  /* product pages */
  .pp{display:grid;grid-template-columns:1fr 340px;gap:56px;align-items:start}
  .pp-main > section{padding-bottom:48px;margin-bottom:48px;border-bottom:1px solid var(--line);scroll-margin-top:100px}
  .pp-main > section:last-child{border-bottom:0;margin-bottom:0;padding-bottom:0}
  .pp-main h2{font-size:clamp(1.5rem,2.4vw,1.9rem);margin-bottom:16px}
  .pp-main p{color:var(--steel);font-size:1.05rem;margin-bottom:14px;max-width:62ch}
  .pp-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:40px}
  .pp-tabs a{border:1px solid var(--line);border-radius:99px;padding:8px 16px;text-decoration:none;color:var(--ink);font-weight:500;font-size:.92rem}
  .pp-tabs a:hover{border-color:var(--signal);color:var(--signal)}
  .hsteps{list-style:none;counter-reset:hs;padding:0;margin:8px 0 0;display:grid;gap:0}
  .hsteps li{counter-increment:hs;display:grid;grid-template-columns:44px 1fr;gap:18px;position:relative;padding-bottom:26px}
  .hsteps li::before{content:counter(hs);width:44px;height:44px;border-radius:50%;background:var(--ink);color:#fff;display:grid;place-items:center;font:600 1rem Poppins,sans-serif;position:relative;z-index:1}
  .hsteps li:not(:last-child)::after{content:"";position:absolute;left:21px;top:44px;bottom:0;width:2px;background:var(--line)}
  .hsteps h3{font-size:1.08rem;margin:9px 0 4px}
  .hsteps p{margin:0;font-size:1rem}
  .docs{list-style:none;padding:0;margin:0 0 16px;display:grid;gap:10px}
  .docs li{display:grid;grid-template-columns:26px 1fr;gap:12px;padding:14px 16px;border:1px solid var(--line);border-radius:10px;background:#fff;font-weight:500}
  .docs-more{font-size:.95rem!important}
  .fit{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:1fr 1fr;gap:10px 24px}
  .fit li{display:grid;grid-template-columns:22px 1fr;gap:10px;color:var(--ink)}
  .pp-aside{position:sticky;top:100px;display:grid;gap:18px}
  .facts-card{background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:26px}
  .facts-card h3{font-size:1.05rem;margin-bottom:14px}
  .facts-card dl{margin:0;display:grid;gap:12px}
  .facts-card dt{font-size:.85rem;color:var(--steel)}
  .facts-card dd{margin:2px 0 0;font-weight:600}
  .apply-card{background:var(--ink);color:#fff;border-radius:14px;padding:26px}
  .apply-card h3{font-size:1.15rem;margin-bottom:8px}
  .apply-card p{color:var(--mist);font-size:.95rem;margin-bottom:18px}
  .apply-card .btn{width:100%}
  .others{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
  .others a{display:block;border:1px solid var(--line);border-radius:12px;padding:18px;text-decoration:none;color:var(--ink);font-weight:600;background:#fff}
  .others a span{display:block;font-weight:400;font-size:.85rem;color:var(--steel);margin-top:4px}
  .others a:hover{border-color:var(--signal)}
  @media (max-width:1000px){.pp{grid-template-columns:1fr}.pp-aside{position:static}.others{grid-template-columns:1fr 1fr}}
  @media (max-width:560px){.fit{grid-template-columns:1fr}.others{grid-template-columns:1fr}}

  /* compare table on solutions page */
  .compare{width:100%;border-collapse:collapse;font-size:.95rem}
  .compare th,.compare td{text-align:left;padding:14px 16px;border-bottom:1px solid var(--line);vertical-align:top}
  .compare thead th{font:600 .9rem Poppins,sans-serif;color:var(--steel);background:var(--paper)}
  .compare td:first-child a{font-weight:600;text-decoration:none}
  .compare td:first-child a:hover{text-decoration:underline}
  .table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:14px}
  .compare tr:last-child td{border-bottom:0}

  /* partner page */
  .aud-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
  .aud{border:1px solid var(--line);border-radius:14px;padding:28px;background:#fff}
  .aud .ico{width:52px;height:52px;border-radius:12px;background:#EAF0FD;display:grid;place-items:center;margin-bottom:18px}
  .aud h3{margin-bottom:8px}
  .aud p{color:var(--steel)}
  .refer{display:flex;flex-wrap:wrap;gap:10px;list-style:none;padding:0;margin:0}
  .refer a{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line);background:#fff;border-radius:99px;padding:10px 18px;text-decoration:none;color:var(--ink);font-weight:500}
  .refer a::after{content:"";width:6px;height:6px;border-right:1.5px solid currentColor;border-top:1.5px solid currentColor;transform:rotate(45deg);opacity:.6}
  .refer a:hover{border-color:var(--signal);color:var(--signal)}
  .p-why{display:grid;grid-template-columns:repeat(2,1fr);gap:30px 48px}
  @media (max-width:1000px){.aud-grid{grid-template-columns:1fr 1fr}}
  @media (max-width:600px){.aud-grid,.p-why{grid-template-columns:1fr}}

  /* cost calculator */
  .cc{display:grid;grid-template-columns:1.1fr .9fr;border:1px solid var(--line);border-radius:18px 18px 0 0;overflow:hidden;background:#fff}
  .cc-controls{padding:36px;display:grid;gap:26px;align-content:start}
  .cc-field label,.cc-field .label{display:flex;justify-content:space-between;align-items:baseline;font-weight:600;margin-bottom:12px}
  .cc-field output{font:600 1.25rem Poppins,sans-serif;font-variant-numeric:tabular-nums;color:var(--ink)}
  .cc-field input[type=range]{width:100%;accent-color:var(--signal);height:26px;margin:0}
  .cc-range{display:flex;justify-content:space-between;font-size:.82rem;color:var(--steel);margin-top:4px;font-variant-numeric:tabular-nums}
  .cc-seg{display:grid;grid-template-columns:1fr 1fr;border:1px solid #C8D0DE;border-radius:9px;overflow:hidden}
  .cc-seg input{position:absolute;opacity:0;pointer-events:none}
  .cc-seg label{margin:0;justify-content:center;padding:12px;cursor:pointer;font-weight:500;color:var(--steel)}
  .cc-seg input:checked+label{background:var(--ink);color:#fff}
  .cc-seg input:focus-visible+label{outline:3px solid var(--bright);outline-offset:-3px}
  .cc-results{background:var(--ink);color:#fff;padding:36px;display:flex;flex-direction:column;gap:6px}
  .cc-results .k{color:var(--mist);font-size:.92rem}
  .cc-results .big{font:700 clamp(2.4rem,4vw,3.2rem)/1.1 Poppins,sans-serif;font-variant-numeric:tabular-nums}
  .cc-results .mid{font:700 1.9rem/1.2 Poppins,sans-serif;font-variant-numeric:tabular-nums;margin-top:2px}
  .cc-results .calc-line{color:#8F9AB3;font-size:.88rem}
  .cc-pair{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:22px 0 4px;padding-top:22px;border-top:1px solid #2B3654}
  .cc-epo{margin-top:16px;padding:18px;border:1px solid rgba(123,164,255,.35);background:rgba(58,108,224,.16);border-radius:12px}
  .cc-epo .mid{color:var(--sky)}
  .cc-epo .save{color:#DDE3EF;margin-top:4px}
  .cc-epo .save b{color:#fff;font-family:Poppins,sans-serif}
  .cc-results .btn{margin-top:auto;align-self:flex-start}
  .cc-results .cc-pair+.btn,.cc-results .cc-epo+.btn{margin-top:26px}
  .cc-fine{border:1px solid var(--line);border-top:0;border-radius:0 0 18px 18px;background:#fff;padding:18px 36px;font-size:.84rem;color:var(--steel);margin:0}
  @media (max-width:900px){.cc{grid-template-columns:1fr}.cc-controls,.cc-results{padding:26px}.cc-fine{padding:16px 26px}}
  @media (max-width:420px){.cc-pair{grid-template-columns:1fr}}

  /* about page */
  .about-hero{background:var(--paper);text-align:center;border-bottom:1px solid var(--line)}
  .about-hero .wrap{padding-top:72px;padding-bottom:12px}
  .about-hero .crumbs{color:var(--steel)}
  .about-hero .crumbs a{color:var(--signal)}
  .about-hero img{width:84px;height:auto;margin:0 auto 22px;display:block}
  .about-hero h1{font-size:clamp(2.3rem,4.6vw,3.6rem);max-width:15em;margin:0 auto 18px}
  .about-hero .lede{font-size:1.15rem;color:var(--steel);max-width:38em;margin:0 auto 44px}
  .sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
  .prose{max-width:780px;margin:0 auto}
  .prose h2{margin:0 0 18px}
  .prose p{color:var(--steel);font-size:1.08rem;line-height:1.75;margin-bottom:18px}
  .prose section+section{margin-top:64px}
  .prose a{font-weight:600}
  .values{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
  .value{background:#fff;border:1px solid var(--line);border-radius:14px;padding:28px}
  .value .ico{width:50px;height:50px;border-radius:12px;background:#EAF0FD;display:grid;place-items:center;margin-bottom:18px}
  .value h3{margin-bottom:8px}
  .value p{color:var(--steel)}
  .people{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}
  .people-art{background:var(--ink);border-radius:18px;aspect-ratio:4/3;display:grid;place-items:center;position:relative;overflow:hidden}
  .people-art::before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(123,164,255,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(123,164,255,.08) 1px,transparent 1px);background-size:40px 40px}
  .people-art::after{content:"";position:absolute;width:420px;height:420px;left:-120px;top:-160px;background:radial-gradient(circle,rgba(58,108,224,.4),transparent 65%)}
  .people-art .tile{position:relative;z-index:1;background:#fff;border-radius:16px;padding:26px 30px;box-shadow:0 24px 50px rgba(0,0,0,.35)}
  .people-art .tile img{width:230px;height:auto;display:block}
  .people h2{margin-bottom:16px}
  .people p{color:var(--steel);font-size:1.06rem;line-height:1.75;margin-bottom:16px}
  .vs{width:100%;border-collapse:separate;border-spacing:0;font-size:.98rem;background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden}
  .vs th,.vs td{padding:16px 20px;text-align:left;border-bottom:1px solid var(--line);vertical-align:top}
  .vs tr:last-child th,.vs tr:last-child td{border-bottom:0}
  .vs thead th{font:600 .95rem Poppins,sans-serif;background:var(--paper);color:var(--steel)}
  .vs thead th.us{background:var(--ink);color:#fff}
  .vs tbody th{font-weight:600;color:var(--ink);width:24%}
  .vs td{color:var(--steel)}
  .vs td.us{background:#F1F5FE;color:var(--ink);font-weight:600}
  @media (max-width:1000px){.values{grid-template-columns:1fr 1fr}.people{grid-template-columns:1fr;gap:36px}}
  @media (max-width:600px){.values{grid-template-columns:1fr}.vs th,.vs td{padding:12px 12px;font-size:.9rem}.people-art .tile img{width:170px}}

  /* contact page */
  .contact{display:grid;grid-template-columns:.85fr 1.15fr;gap:56px;align-items:start}
  .c-cards{display:grid;gap:16px}
  .c-card{display:grid;grid-template-columns:48px 1fr;gap:16px;align-items:start;background:#fff;border:1px solid var(--line);border-radius:14px;padding:22px}
  .c-card .ico{width:48px;height:48px;border-radius:12px;background:#EAF0FD;display:grid;place-items:center}
  .c-card h2{font-size:1.05rem;margin:2px 0 6px}
  .c-card p{color:var(--steel);font-size:.95rem}
  .c-card .val{min-height:1.6em;font-weight:600;color:var(--ink);font-size:1.02rem}
  .c-card a{font-weight:600}
  .c-emails{list-style:none;margin:12px 0 0;padding:12px 0 0;border-top:1px solid var(--line);display:grid;gap:8px}
  .c-emails li{display:grid;gap:1px}
  .c-emails span{font-size:.8rem;color:var(--steel)}
  .c-emails a{font-size:.95rem}
  .contact form.app{border:1px solid var(--line);box-shadow:0 18px 40px rgba(20,27,46,.06)}
  .contact form.app h2{font-size:1.5rem;margin-bottom:6px}
  .contact form.app .sub{color:var(--steel);margin-bottom:22px}
  @media (max-width:960px){.contact{grid-template-columns:1fr;gap:36px}}

  /* legal pages */
  .legal-doc{max-width:760px}
  .legal-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 26px}
  .legal-tabs a{padding:8px 18px;border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--ink);font-weight:600;font-size:.9rem;text-decoration:none}
  .legal-tabs a:hover{border-color:var(--signal);color:var(--signal)}
  .legal-tabs a.cur{background:var(--ink);border-color:var(--ink);color:#fff}
  .legal-eff{font-size:.85rem;color:var(--steel);letter-spacing:.02em;margin:0 0 6px}
  .legal-doc h2{font:600 1.3rem Poppins,sans-serif;color:var(--ink);margin:34px 0 10px}
  .legal-doc p,.legal-doc li{color:#3A4357;font-size:1rem}
  .legal-doc p+p{margin-top:10px}
  .legal-doc ul{margin:8px 0 0;padding-left:20px;display:grid;gap:6px}
  .legal-doc b{color:var(--ink)}

  /* apply: multi-step application */
  .apply-hero{position:relative;overflow:hidden;text-align:center;color:#fff;padding:52px 0 128px;background:linear-gradient(160deg,#0D1322 0%,#141B2E 45%,#1C2D57 100%)}
  .apply-hero::before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(123,164,255,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(123,164,255,.07) 1px,transparent 1px);background-size:56px 56px;mask-image:radial-gradient(ellipse at 50% 30%,#000 15%,transparent 70%);-webkit-mask-image:radial-gradient(ellipse at 50% 30%,#000 15%,transparent 70%)}
  .apply-hero .wrap{position:relative}
  .apply-hero h1{font-size:clamp(2.2rem,4.4vw,3.2rem);color:#fff;margin:0 0 12px}
  .apply-hero p{color:var(--mist);max-width:600px;margin:0 auto}
  .apply-hero .crumbs{margin-bottom:12px}
  .apply-trust{list-style:none;padding:0;margin:24px 0 0;display:flex;flex-wrap:wrap;justify-content:center;gap:10px 28px;color:#C9D1E2;font-size:.92rem}
  .apply-trust li{display:flex;align-items:center;gap:8px}
  .apply-main{background:var(--paper);padding:0 0 84px}
  .wiz{position:relative;max-width:900px;margin:-90px auto 0;background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:0 30px 70px rgba(20,27,46,.14);color:var(--ink)}
  .stepper{list-style:none;margin:0;padding:0 24px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-bottom:1px solid var(--line)}
  .stepper button{all:unset;box-sizing:border-box;position:relative;width:100%;display:flex;align-items:center;justify-content:center;gap:10px;padding:22px 6px 20px;cursor:pointer;font:500 .94rem "Public Sans",sans-serif;color:#AEB7C8;white-space:nowrap}
  .stepper button:disabled{cursor:default}
  .stepper button:focus-visible{outline:2px solid var(--signal);outline-offset:-4px;border-radius:8px}
  .stepper .num{flex:none;width:26px;height:26px;border-radius:50%;display:grid;place-items:center;font:600 .78rem Poppins,sans-serif;border:1.5px solid currentColor}
  .stepper li.cur button{color:var(--ink);font-weight:600}
  .stepper li.cur .num{background:var(--signal);border-color:var(--signal);color:#fff}
  .stepper li.cur button::after{content:"";position:absolute;left:10%;right:10%;bottom:-1px;height:3px;border-radius:3px 3px 0 0;background:var(--signal)}
  .stepper li.done button{color:var(--steel)}
  .stepper li.done .num{background:#EAF0FD url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M3.5 8.4l2.9 2.9 6.1-6.6' fill='none' stroke='%233A6CE0' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/14px 14px no-repeat;border-color:#EAF0FD;color:transparent}
  .stepper li.done button:hover{color:var(--signal)}
  .stepper .lbl-s{display:none}
  .wiz-body{padding:36px 44px 6px}
  .wiz .step{border:0;margin:0;padding:0;min-width:0}
  .step-k{display:block;font:600 .74rem Poppins,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:var(--signal);margin-bottom:6px}
  .wiz .step h2{font-size:1.65rem;margin:0 0 6px}
  .step-sub{color:var(--steel);margin:0 0 26px}
  .sec-label{display:flex;align-items:center;gap:14px;font:600 .74rem Poppins,sans-serif;letter-spacing:.16em;text-transform:uppercase;color:var(--steel);margin:10px 0 18px}
  .sec-label::after{content:"";flex:1;height:1px;background:var(--line)}
  .grid2+.sec-label{margin-top:18px}
  .row-csz{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr) minmax(0,1fr);gap:0 18px}
  .wiz .f{margin-bottom:18px}
  .wiz .f input::placeholder{color:#9AA5BA}
  .pct{position:relative}
  .pct::after{content:"%";position:absolute;right:13px;top:50%;transform:translateY(-50%);color:var(--steel)}
  .pct input{padding-right:30px}
  .f .err{font-size:.8rem;color:#B42318;min-height:0}
  .f.bad input,.f.bad select{border-color:#D14343;box-shadow:0 0 0 3px rgba(209,67,67,.12)}
  .wiz-nav{display:flex;align-items:center;gap:14px;padding:22px 44px 30px;border-top:1px solid var(--line);margin-top:10px}
  .wiz-nav .wiz-count{flex:1;text-align:center;color:var(--steel);font-size:.88rem}
  .wiz .wiz-nav .btn{width:auto;padding:14px 24px}
  .wiz-nav [data-back]+.wiz-count{text-align:center}
  .btn-back{background:#fff;border:1px solid #C8D0DE!important;color:var(--ink)}
  .btn-back:hover{border-color:var(--ink)!important}
  .wiz [hidden]{display:none!important}
  .wiz-secure{max-width:900px;margin:20px auto 0;display:flex;gap:10px;justify-content:center;align-items:flex-start;color:var(--steel);font-size:.85rem;text-align:left}
  .wiz-secure svg{flex:none;margin-top:3px}
  .wiz-secure a{color:var(--signal);font-weight:600;text-decoration:none}
  /* documents */
  .drop{position:relative;border:1.5px dashed #B7C2D6;border-radius:12px;background:var(--paper);padding:26px 20px;text-align:center;cursor:pointer;transition:border-color .15s,background .15s}
  .drop:hover,.drop.over{border-color:var(--signal);background:#EEF3FE}
  .drop input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}
  .drop p{margin:8px 0 2px;font-size:.98rem}
  .drop .link{color:var(--signal);font-weight:600;text-decoration:underline}
  .drop .hint{display:block}
  .drop-sm{padding:18px 20px}
  .drop-sm p{margin-top:0}
  .f.bad .drop{border-color:#D14343;background:#FEF6F6}
  .file-list{list-style:none;margin:10px 0 0;padding:0;display:grid;gap:8px}
  .file-list:empty{display:none}
  .file-list li{display:flex;align-items:center;gap:12px;border:1px solid var(--line);border-radius:10px;padding:10px 12px;background:#fff;font-size:.9rem}
  .file-list .nm{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600}
  .file-list .sz{margin-left:auto;flex:none;color:var(--steel);font-size:.82rem}
  .file-list button{all:unset;flex:none;cursor:pointer;color:var(--steel);width:26px;height:26px;display:grid;place-items:center;border-radius:6px}
  .file-list button:hover{background:#FDECEC;color:#B42318}
  .consent.later{font-size:.88rem;margin-top:4px}
  .consent a{color:var(--signal)}
  .docs-limit{font-size:.82rem;color:var(--steel);margin:0 0 10px}
  /* review + signature */
  .review{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:26px}
  .review>div{border:1px solid var(--line);border-radius:12px;padding:16px 18px;background:var(--paper)}
  .review h3{display:flex;justify-content:space-between;align-items:center;font:600 .72rem Poppins,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:var(--steel);margin:0 0 10px}
  .review h3 button{all:unset;cursor:pointer;color:var(--signal);font:600 .82rem "Public Sans",sans-serif;letter-spacing:0;text-transform:none}
  .review dl{margin:0;display:grid;gap:8px}
  .review dt{font-size:.74rem;color:var(--steel)}
  .review dd{margin:0;font-size:.9rem;font-weight:600;color:var(--ink);overflow-wrap:anywhere}
  .auth-box{max-height:210px;overflow:auto;border:1px solid var(--line);border-radius:12px;padding:16px 20px;background:var(--paper);font-size:.84rem;line-height:1.6;color:#3A4357;margin-bottom:24px}
  .auth-box p+p,.auth-box ul+p{margin-top:10px}
  .auth-box ul{margin:8px 0 0;padding-left:18px;display:grid;gap:6px}
  .auth-box:focus-visible{outline:2px solid var(--signal)}
  .sig{margin-bottom:18px}
  .sig-tabs{display:inline-flex;background:var(--paper);border:1px solid var(--line);border-radius:999px;padding:4px;margin-bottom:12px}
  .sig-tabs button{all:unset;cursor:pointer;padding:7px 18px;border-radius:999px;font-weight:600;font-size:.86rem;color:var(--steel)}
  .sig-tabs button.on{background:#fff;color:var(--ink);box-shadow:0 1px 4px rgba(20,27,46,.14)}
  .sig-pad{position:relative;height:180px;border:1.5px solid #C8D0DE;border-radius:12px;background:#fff;overflow:hidden}
  .sig-pad canvas{position:absolute;inset:0;width:100%;height:100%;touch-action:none;cursor:crosshair}
  .sig.typing .sig-pad canvas{cursor:default}
  .sig-line{position:absolute;left:28px;right:28px;bottom:46px;border-bottom:1.5px solid #C8D0DE;pointer-events:none}
  .sig-x{position:absolute;left:28px;bottom:52px;color:#9AA5BA;font-size:1rem;pointer-events:none}
  .sig-hint{position:absolute;left:0;right:0;bottom:16px;text-align:center;font-size:.8rem;color:#9AA5BA;pointer-events:none}
  .sig-pad.inked .sig-hint{visibility:hidden}
  .sig-clear{all:unset;position:absolute;top:10px;right:10px;cursor:pointer;font-size:.8rem;font-weight:600;color:var(--steel);padding:5px 10px;border:1px solid var(--line);border-radius:6px;background:#fff}
  .sig-clear:hover{color:var(--ink);border-color:#B7C2D6}
  .sig-typed{margin:12px 0 0}
  .sig.bad .sig-pad{border-color:#D14343;box-shadow:0 0 0 3px rgba(209,67,67,.12)}
  .sig-err{display:block;font-size:.8rem;color:#B42318;margin-top:6px}
  .sign-meta .f{margin-bottom:12px}
  .sign-meta input[readonly]{background:var(--paper);color:var(--steel)}
  @media (max-width:760px){
    .wiz{margin-top:-70px;border-radius:14px}
    .stepper{padding:0 6px}
    .stepper button{flex-direction:column;gap:6px;padding:14px 2px 12px;font-size:.74rem}
    .stepper .lbl{display:none}.stepper .lbl-s{display:inline}
    .wiz-body{padding:26px 20px 4px}
    .wiz-nav{padding:18px 20px 24px;gap:10px}
    .wiz-nav .wiz-count{font-size:.8rem}
    .wiz .wiz-nav .btn{padding:13px 18px}
    .review{grid-template-columns:1fr}
    .row-csz{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
    .row-csz .csz-city{grid-column:1/-1}
    .apply-hero{padding:40px 0 104px}
  }

  form.app{scroll-margin-top:100px}
