:root{--navy:#12233d;--navy-2:#1b3252;--orange:#f26a1b;--orange-d:#c9520c;--ink:#16202e;--muted:#4a5768;--line:#dde3ea;--bg:#ffffff;--alt:#f4f6f9;--radius:12px;--wrap:1120px}
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;font-family:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;color:var(--ink);background:var(--bg);line-height:1.6;font-size:17px}
img,svg{max-width:100%}
a{color:inherit}
h1,h2,h3{line-height:1.15;margin:0 0 .5em;letter-spacing:-.01em}
h1{font-size:clamp(2.1rem,6.2vw,3.6rem);font-weight:800}
h2{font-size:clamp(1.6rem,3.6vw,2.3rem);font-weight:800}
h3{font-size:1.12rem;font-weight:700}
p{margin:0 0 1em}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 20px}
.skip{position:absolute;left:-9999px;top:0;background:var(--orange);color:#fff;padding:10px 14px;z-index:100}
.skip:focus{left:10px;top:10px}
:focus-visible{outline:3px solid var(--orange);outline-offset:3px;border-radius:4px}

.site-header{position:sticky;top:0;z-index:50;background:rgba(18,35,61,.97);backdrop-filter:saturate(1.2) blur(6px);border-bottom:1px solid rgba(255,255,255,.08)}
.header-inner{display:flex;align-items:center;gap:12px;height:64px}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:#fff;margin-right:auto;min-width:0}
.brand-mark{width:32px;height:32px;flex:none}
.brand-text{font-weight:800;font-size:1.25rem;letter-spacing:-.02em;color:#fff}
.brand-nyc{color:var(--orange);margin-left:.28em;font-weight:900}
.nav{display:none;gap:26px}
.nav a{color:#d6deea;text-decoration:none;font-weight:600;font-size:.95rem}
.nav a:hover{color:#fff}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--orange);color:#fff;font-weight:700;text-decoration:none;border:0;border-radius:10px;padding:14px 22px;font-size:1rem;cursor:pointer;transition:background .15s,transform .15s;font-family:inherit}
.btn:hover{background:var(--orange-d)}
.btn:active{transform:translateY(1px)}
.btn-small{padding:9px 14px;font-size:.9rem;white-space:nowrap}
.btn-ghost{background:transparent;color:#fff;box-shadow:inset 0 0 0 2px rgba(255,255,255,.45)}
.btn-ghost:hover{background:rgba(255,255,255,.08)}
.btn-full{width:100%}

.hero{background:var(--navy);color:#fff;position:relative;overflow:hidden;
background-image:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px),radial-gradient(1200px 500px at 85% 0%,#22406a 0%,transparent 60%);
background-size:40px 40px,40px 40px,auto}
.hero::after{content:"";position:absolute;left:0;right:0;bottom:0;height:8px;background:repeating-linear-gradient(-45deg,var(--orange) 0 18px,var(--navy) 18px 36px)}
.hero-inner{padding:64px 20px 72px}
.eyebrow{display:inline-block;color:#ffd2b5;font-weight:700;font-size:.82rem;letter-spacing:.08em;text-transform:uppercase;margin-bottom:18px}
.hero h1{max-width:15ch}
.lead{font-size:clamp(1.08rem,2.2vw,1.3rem);color:#d6deea;max-width:40ch;margin-bottom:28px}
.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:34px}
.hero-points{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:10px;color:#e6ecf4;font-weight:600;font-size:.98rem}
.hero-points li{display:flex;align-items:center;gap:10px}
.hero-points li::before{content:"";width:10px;height:10px;border-radius:2px;background:var(--orange);flex:none}

.section{padding:68px 0}
.section-alt{background:var(--alt)}
.section-dark{background:var(--navy);color:#fff}
.kicker{color:var(--orange-d);font-weight:800;text-transform:uppercase;letter-spacing:.09em;font-size:.8rem;margin-bottom:10px}
.kicker-light{color:#ffb488}
.muted{color:var(--muted)}
.muted-light{color:#c9d3e0}

.cards{display:grid;grid-template-columns:1fr;gap:16px;margin-top:28px}
.card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:24px;box-shadow:0 1px 2px rgba(18,35,61,.04)}
.card p{color:var(--muted);margin:0;font-size:.98rem}
.card-cta{background:var(--navy);border-color:var(--navy);color:#fff;display:flex;flex-direction:column;justify-content:space-between;gap:16px}
.card-cta p{color:#c9d3e0}
.card-cta .btn{align-self:flex-start}
.icon{width:44px;height:44px;border-radius:10px;background:#fff1e8;color:var(--orange-d);display:grid;place-items:center;margin-bottom:14px}
.icon svg{width:24px;height:24px}

.split{display:grid;grid-template-columns:1fr;gap:28px;align-items:start}
.checks{list-style:none;padding:0;margin:0;display:grid;gap:12px}
.checks li{background:#fff;border:1px solid var(--line);border-left:4px solid var(--orange);border-radius:10px;padding:14px 16px;color:var(--muted)}
.checks strong{color:var(--ink)}
.compliance{display:flex;gap:14px;align-items:flex-start;margin-top:32px;background:var(--navy);color:#fff;border-radius:var(--radius);padding:20px 22px}
.compliance svg{width:30px;height:30px;color:var(--orange);flex:none;margin-top:2px}
.compliance p{margin:0;font-weight:600;line-height:1.5}

.steps{list-style:none;padding:0;margin:28px 0 0;display:grid;grid-template-columns:1fr;gap:16px;counter-reset:s}
.steps li{position:relative;background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:22px 22px 20px 78px;min-height:96px}
.steps .num{position:absolute;left:20px;top:20px;width:42px;height:42px;border-radius:50%;background:var(--navy);color:#fff;font-weight:800;display:grid;place-items:center;font-size:1.1rem;box-shadow:0 0 0 4px #ffe1cf}
.steps h3{margin-bottom:.3em}
.steps p{margin:0;color:var(--muted);font-size:.98rem}

.contact-card{font-style:normal;margin-top:22px;border-left:4px solid var(--orange);padding:6px 0 6px 16px}
.contact-card p{margin:0 0 4px;color:#e6ecf4}
.contact-card a{color:#fff;font-weight:600;text-decoration-color:rgba(255,255,255,.4);text-underline-offset:3px}
.contact-name{font-weight:800;font-size:1.1rem;color:#fff!important}
.quote-form{background:#fff;color:var(--ink);border-radius:var(--radius);padding:22px;display:grid;gap:14px;box-shadow:0 10px 30px rgba(0,0,0,.25)}
.quote-form label{display:grid;gap:6px;font-weight:700;font-size:.9rem}
.quote-form input,.quote-form textarea{font:inherit;font-weight:400;font-size:16px;width:100%;padding:12px 13px;border:1.5px solid #c8d1dc;border-radius:9px;background:#fff;color:var(--ink)}
.quote-form input:focus,.quote-form textarea:focus{border-color:var(--orange);outline:none;box-shadow:0 0 0 3px rgba(242,106,27,.2)}
.quote-form textarea{resize:vertical;min-height:110px}
.field-row{display:grid;grid-template-columns:1fr;gap:14px}
.hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.form-status{margin:0;font-weight:600;min-height:0}
.form-status.ok{color:#17773a}
.form-status.err{color:#b4321b}
.form-alt{margin:0;font-size:.9rem;color:var(--muted)}
.form-alt a{color:var(--orange-d);font-weight:700}

.site-footer{background:#0c1829;color:#9fb0c6;padding:26px 0;font-size:.9rem}
.footer-inner{display:flex;flex-wrap:wrap;gap:10px 20px;align-items:center;justify-content:space-between}
.footer-inner p{margin:0}
.brand-text-sm{font-size:1.05rem}

.thanks-page{background:var(--alt)}
.thanks{padding:90px 20px;text-align:center;max-width:620px}

@media (min-width:640px){
  .cards{grid-template-columns:repeat(2,1fr)}
  .field-row{grid-template-columns:1fr 1fr}
  .steps{grid-template-columns:repeat(2,1fr)}
  .hero-points{flex-direction:row;flex-wrap:wrap;gap:12px 26px}
}
@media (min-width:900px){
  body{font-size:18px}
  .nav{display:flex}
  .hero-inner{padding:96px 20px 104px}
  .section{padding:92px 0}
  .cards{grid-template-columns:repeat(3,1fr)}
  .split{grid-template-columns:1fr 1.1fr;gap:56px}
  .contact-split{grid-template-columns:.9fr 1.1fr}
  .steps{grid-template-columns:repeat(4,1fr)}
  .steps li{padding:76px 22px 22px}
  .quote-form{padding:30px}
}
@media (max-width:480px){.btn-small{padding:8px 11px;font-size:.82rem}.brand-text{font-size:1.1rem}.brand-mark{width:28px;height:28px}}
@media (max-width:340px){.btn-small{display:none}}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.btn{transition:none}}
