:root { --ink:#0b1730; --blue:#176bff; --blue-dark:#0d4ed8; --sky:#eaf2ff; --cream:#f6f4ed; --white:#fff; --muted:#5d6879; --line:#dce2ea; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; color:var(--ink); background:var(--cream); font-family:Arial,Helvetica,sans-serif; }
a { color:inherit; text-decoration:none; }
.site-header { width:min(1180px,calc(100% - 40px)); margin:0 auto; height:90px; display:flex; align-items:center; justify-content:space-between; gap:28px; }
.brand { display:inline-flex; align-items:center; gap:11px; font-weight:800; letter-spacing:-.04em; }
.brand-mark { display:grid; place-items:center; width:36px; height:36px; border-radius:11px; color:#fff; background:var(--blue); font-size:21px; font-style:italic; box-shadow:5px 5px 0 #b7cdf7; }
.brand-name { font-size:20px; }.brand-name span { color:var(--blue); }
nav { display:flex; gap:30px; font-size:14px; font-weight:700; color:#425069; } nav a:hover { color:var(--blue); }
.button { display:inline-flex; align-items:center; justify-content:center; gap:20px; padding:16px 22px; border-radius:9px; color:#fff; background:var(--blue); font-size:14px; font-weight:800; text-transform:uppercase; letter-spacing:.06em; box-shadow:0 9px 24px rgba(23,107,255,.18); transition:transform .2s,background .2s; }
.button:hover { transform:translateY(-2px); background:var(--blue-dark); }.button-small { padding:12px 17px; font-size:12px; }
.hero { width:min(1180px,calc(100% - 40px)); min-height:660px; margin:0 auto; display:grid; grid-template-columns:1.05fr .95fr; align-items:center; gap:60px; padding:64px 0 90px; }
.eyebrow { display:flex; align-items:center; gap:10px; margin:0 0 22px; color:var(--blue); font-size:12px; font-weight:800; letter-spacing:.15em; text-transform:uppercase; }.eyebrow span { width:24px; height:2px; background:currentColor; }
h1,h2,h3,p { margin-top:0; } h1 { max-width:680px; margin-bottom:24px; font-size:clamp(54px,6.2vw,86px); line-height:.96; letter-spacing:-.065em; } h1 em,h2 em { color:var(--blue); font-family:Georgia,serif; font-weight:400; }
.hero-lede { max-width:590px; color:var(--muted); font-size:18px; line-height:1.7; }.hero-actions { display:flex; align-items:center; gap:28px; margin:34px 0 42px; }
.text-link { padding-bottom:4px; border-bottom:1px solid var(--ink); font-size:14px; font-weight:800; }.text-link span { margin-left:9px; color:var(--blue); }
.trust-row { display:flex; flex-wrap:wrap; gap:22px; color:#526078; font-size:12px; font-weight:700; }.trust-row span::before { content:"✓"; display:inline-grid; place-items:center; width:18px; height:18px; margin-right:7px; border-radius:50%; color:var(--blue); background:var(--sky); }
.hero-visual { position:relative; min-height:490px; display:grid; place-items:center; overflow:hidden; border-radius:48% 48% 16% 16% / 36% 36% 16% 16%; background:var(--sky); }.hero-visual::after { content:""; position:absolute; width:190px; height:190px; right:-40px; bottom:-40px; border-radius:50%; background:#ffd95a; }
.orbit { position:absolute; border:1px solid #b9cdf4; border-radius:50%; }.orbit-one { width:430px; height:430px; }.orbit-two { width:320px; height:320px; border-style:dashed; }
.document-card { position:relative; z-index:2; width:285px; height:350px; padding:26px; transform:rotate(-4deg); border:1px solid #cfdbec; border-radius:13px; background:#fff; box-shadow:0 30px 70px rgba(27,55,105,.2); }
.doc-top { display:flex; align-items:center; gap:9px; padding-bottom:24px; border-bottom:1px solid var(--line); font-size:11px; font-weight:800; }.mini-mark { display:grid; place-items:center; width:23px; height:23px; border-radius:7px; color:#fff; background:var(--blue); }
.doc-lines { display:grid; gap:17px; padding:35px 0; }.doc-lines i { display:block; width:100%; height:7px; border-radius:4px; background:#e5ebf2; }.doc-lines i:nth-child(2){width:78%}.doc-lines i:nth-child(4){width:88%}
.signature-line { position:absolute; left:26px; right:26px; bottom:27px; display:flex; align-items:center; justify-content:space-between; padding-top:18px; border-top:2px solid var(--ink); font-size:11px; font-weight:800; }.signature-line b { display:grid; place-items:center; width:34px; height:34px; border-radius:50%; color:#fff; background:#14a26f; font-size:19px; }
.status-pill,.location-pill { position:absolute; z-index:3; padding:13px 16px; border-radius:10px; background:#fff; box-shadow:0 12px 35px rgba(27,55,105,.18); font-size:11px; font-weight:800; }.status-pill { left:18px; bottom:66px; }.status-pill b { margin-right:7px; color:#14a26f; }.location-pill { top:72px; right:15px; color:#fff; background:var(--ink); font-size:18px; }.location-pill span { display:block; margin-top:3px; color:#b9c6d9; font-size:9px; letter-spacing:.07em; text-transform:uppercase; }
.proof-band { padding:25px max(20px,calc((100vw - 1180px)/2)); color:#fff; background:var(--blue); display:flex; justify-content:space-between; align-items:center; }.proof-band p { margin:0; font-size:12px; font-weight:800; letter-spacing:.13em; text-transform:uppercase; }.proof-band div { display:flex; gap:19px; align-items:center; font-family:Georgia,serif; font-size:17px; font-style:italic; }.proof-band i { color:#9fc0ff; font-style:normal; }
.section { padding:110px max(20px,calc((100vw - 1180px)/2)); }.section-heading { display:grid; grid-template-columns:1.2fr .8fr; align-items:end; gap:70px; margin-bottom:50px; } h2 { margin-bottom:0; font-size:clamp(42px,5vw,64px); line-height:1.03; letter-spacing:-.055em; }.section-heading>p,.process-intro>p:last-child,.coverage-copy>p { color:var(--muted); font-size:16px; line-height:1.75; }
.service-grid { display:grid; grid-template-columns:repeat(4,1fr); border-top:1px solid #cfd5df; }.service-card { position:relative; min-height:330px; padding:30px 26px; border-right:1px solid #cfd5df; transition:background .25s,transform .25s; }.service-card:first-child { border-left:1px solid #cfd5df; }.service-card:hover { z-index:2; transform:translateY(-5px); background:#fff; box-shadow:0 20px 50px rgba(27,55,105,.09); }.service-number { color:#8792a2; font-family:Georgia,serif; font-size:14px; }.service-icon { display:grid; place-items:center; width:46px; height:46px; margin:44px 0 38px; border-radius:50%; color:var(--blue); background:var(--sky); font-size:22px; }.service-card h3 { font-size:21px; letter-spacing:-.03em; }.service-card p { color:var(--muted); font-size:14px; line-height:1.7; }
.process { display:grid; grid-template-columns:.9fr 1.1fr; gap:90px; color:#fff; background:var(--ink); }.eyebrow-light { color:#78a9ff; }.process-intro>p:last-child { max-width:480px; margin-top:30px; color:#b8c1d0; }.steps { margin:0; padding:0; list-style:none; border-top:1px solid #39445a; }.steps li { display:grid; grid-template-columns:62px 1fr; gap:15px; padding:28px 0; border-bottom:1px solid #39445a; }.steps>li>span { color:#78a9ff; font-family:Georgia,serif; font-size:15px; font-style:italic; }.steps h3 { margin-bottom:7px; font-size:20px; }.steps p { margin-bottom:0; color:#aeb9c9; font-size:14px; line-height:1.6; }
.coverage { display:grid; grid-template-columns:1fr 1fr; gap:90px; align-items:center; background:#fff; }.coverage-map { position:relative; min-height:430px; overflow:hidden; border-radius:24px; background:#e9f1ff; }.coverage-map::before,.coverage-map::after { content:""; position:absolute; inset:-80px -10px; border:2px solid #fff; transform:rotate(30deg); }.coverage-map::after { inset:-20px 80px; transform:rotate(-24deg); }.route { position:absolute; display:block; width:360px; height:160px; border:3px dashed #94b7ee; border-color:#94b7ee transparent transparent; border-radius:50%; }.route-one { top:115px; left:50px; transform:rotate(18deg); }.route-two { top:240px; left:140px; transform:rotate(-15deg); }.map-pin { position:absolute; z-index:2; width:20px; height:20px; border:6px solid var(--blue); border-radius:50%; background:#fff; box-shadow:0 4px 15px rgba(23,107,255,.25); }.pin-one { left:20%; top:52%; }.pin-two { left:51%; top:37%; }.pin-three { right:18%; top:63%; }.map-label { position:absolute; z-index:2; color:#4c6383; font-size:11px; font-weight:800; text-transform:uppercase; letter-spacing:.08em; }.label-one { left:12%; top:40%; }.label-two { left:46%; top:26%; }.label-three { right:9%; top:51%; }.coverage-copy h2 { margin-bottom:25px; }.city-list { display:grid; grid-template-columns:repeat(3,1fr); gap:10px; margin:30px 0 22px; }.city-list span { padding:12px; border:1px solid var(--line); border-radius:7px; text-align:center; font-size:12px; font-weight:800; }.coverage-note { font-size:12px!important; }
.cta { margin:0; padding:80px max(20px,calc((100vw - 1180px)/2)); display:flex; align-items:flex-end; justify-content:space-between; gap:50px; color:#fff; background:var(--blue); }.cta h2 { margin-bottom:18px; }.cta>div>p:last-child { margin:0; color:#d9e7ff; }
.contact-card { min-width:420px; overflow:hidden; border:1px solid rgba(255,255,255,.35); border-radius:14px; background:rgba(255,255,255,.1); box-shadow:0 18px 50px rgba(8,43,117,.16); }.contact-link { position:relative; display:grid; gap:6px; padding:20px 58px 20px 22px; transition:background .2s; }.contact-link+ .contact-link { border-top:1px solid rgba(255,255,255,.25); }.contact-link:hover { background:rgba(255,255,255,.13); }.contact-label { color:#cfe0ff; font-size:10px; font-weight:800; letter-spacing:.13em; text-transform:uppercase; }.contact-link strong { font-size:17px; letter-spacing:-.02em; }.contact-link i { position:absolute; top:50%; right:22px; transform:translateY(-50%); font-size:20px; font-style:normal; }
footer { width:min(1180px,calc(100% - 40px)); min-height:150px; margin:0 auto; display:flex; align-items:center; justify-content:space-between; gap:30px; color:#657085; font-size:11px; }.brand-footer { color:var(--ink); } footer p { margin:0; }.footer-contact { display:grid; gap:7px; text-align:center; }.footer-contact a:hover { color:var(--blue); }
@media(max-width:900px){ nav{display:none}.hero{grid-template-columns:1fr;padding-top:40px}.hero-visual{min-height:430px}.section-heading,.process,.coverage{grid-template-columns:1fr}.service-grid{grid-template-columns:repeat(2,1fr)}.service-card:nth-child(3){border-left:1px solid #cfd5df}.proof-band{display:block;text-align:center}.proof-band p{margin-bottom:16px}.proof-band div{justify-content:center;flex-wrap:wrap}.process{gap:50px}.cta{align-items:flex-start;flex-direction:column} }
@media(max-width:600px){ .site-header{width:min(100% - 28px,1180px);height:78px}.brand-name{font-size:17px}.button-small{display:none}.hero{width:min(100% - 28px,1180px);min-height:auto;gap:42px;padding:45px 0 70px}h1{font-size:52px}.hero-lede{font-size:16px}.hero-actions{align-items:flex-start;flex-direction:column}.hero-visual{min-height:390px}.document-card{width:235px;height:300px}.location-pill{top:40px}.proof-band div{font-size:14px}.section{padding-top:80px;padding-bottom:80px}.section-heading{gap:25px}.service-grid{grid-template-columns:1fr}.service-card,.service-card:nth-child(3){min-height:285px;border-left:1px solid #cfd5df}.coverage-map{min-height:340px}.city-list{grid-template-columns:repeat(2,1fr)}.contact-card{min-width:0;width:100%}.contact-link strong{font-size:15px}footer{padding:40px 0;align-items:flex-start;flex-direction:column}.footer-contact{text-align:left} }
@media(prefers-reduced-motion:reduce){ html{scroll-behavior:auto}*,*::before,*::after{transition:none!important} }

.error-page { width:min(760px,calc(100% - 40px)); min-height:100vh; margin:0 auto; display:flex; align-items:flex-start; justify-content:center; flex-direction:column; }
.error-page .brand { margin-bottom:70px; }
.error-page h1 { max-width:720px; }
.error-page .hero-lede { margin-bottom:30px; }
