:root{--navy:#061b3d;--blue:#0b4fb3;--bright:#1268df;--orange:#ff8b1f;--ink:#10213a;--muted:#5e6d82;--line:#dbe3ee;--soft:#f4f7fb;--white:#fff;--radius:18px;--shadow:0 18px 50px rgba(6,27,61,.1)}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:88px}
body{margin:0;color:var(--ink);font:400 1rem/1.65 system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;background:#fff}
a{color:inherit}
.container{width:min(1120px,calc(100% - 40px));margin-inline:auto}
.narrow{width:min(840px,calc(100% - 40px))}
.skip-link{position:fixed;z-index:100;left:12px;top:12px;transform:translateY(-180%);padding:10px 16px;border-radius:8px;background:#fff;color:#071b3d;font-weight:800}
.skip-link:focus{transform:none}
.site-header{position:sticky;z-index:20;top:0;background:rgba(255,255,255,.96);border-bottom:1px solid rgba(219,227,238,.9);backdrop-filter:blur(12px)}
.nav-wrap{min-height:76px;display:flex;align-items:center;gap:32px}
.brand{text-decoration:none;font-size:1.35rem;font-weight:900;letter-spacing:.02em;color:var(--navy)}
.brand strong{color:var(--orange)}
nav{display:flex;gap:26px;margin-left:auto}
nav a{text-decoration:none;font-weight:700;font-size:.93rem}
nav a:hover,nav a:focus-visible{color:var(--blue)}
.header-call,.button{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:10px 20px;border-radius:12px;text-decoration:none;font-weight:800}
.header-call,.primary{color:#fff;background:var(--blue)}
.header-call:hover,.primary:hover{background:var(--navy)}
.hero{position:relative;overflow:hidden;padding:88px 0;background:linear-gradient(120deg,var(--navy),#0a316c);color:#fff}
.hero:after{content:"";position:absolute;width:520px;height:520px;border-radius:50%;right:-180px;top:-260px;border:75px solid rgba(255,139,31,.16)}
.hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:1.35fr .65fr;align-items:center;gap:70px}
.eyebrow{margin:0 0 12px;color:var(--orange);font-size:.82rem;font-weight:900;letter-spacing:.13em;text-transform:uppercase}
h1,h2,h3{margin-top:0;line-height:1.16}
h1{max-width:760px;margin-bottom:22px;font-size:clamp(2.4rem,5vw,4.5rem);letter-spacing:-.04em}
h2{margin-bottom:16px;font-size:clamp(1.85rem,3.5vw,2.8rem);letter-spacing:-.025em}
h3{font-size:1.15rem}
.lead{max-width:710px;margin:0 0 30px;color:#d9e6f9;font-size:clamp(1.08rem,2vw,1.3rem)}
.actions{display:flex;flex-wrap:wrap;gap:12px}
.secondary{color:#fff;border:1px solid rgba(255,255,255,.55)}
.secondary:hover{background:#fff;color:var(--navy)}
.availability{margin:16px 0 0;color:#b9cae5;font-size:.92rem}
.hero-card{padding:30px;border:1px solid rgba(255,255,255,.15);border-radius:var(--radius);background:rgba(255,255,255,.08);box-shadow:0 24px 70px rgba(0,0,0,.2)}
.hero-card h2{font-size:1.35rem}
.hero-card ul{padding-left:20px;margin-bottom:0}
.hero-icon{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--orange);font-weight:900}
.section{padding:86px 0}
.alt{background:var(--soft)}
.section-intro{max-width:660px;margin:0 0 38px;color:var(--muted);font-size:1.08rem}
.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.service-grid article,.small-grid article{padding:26px;border:1px solid var(--line);border-radius:var(--radius);background:#fff;box-shadow:0 9px 30px rgba(6,27,61,.045)}
.service-grid article>span{display:grid;place-items:center;width:48px;height:48px;margin-bottom:20px;border-radius:13px;background:#eaf2ff;color:var(--blue);font-size:1.5rem;font-weight:900}
.service-grid h3,.small-grid h3{margin-bottom:8px}
.service-grid p,.small-grid p{margin:0;color:var(--muted)}
.small-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.small-grid article a{display:inline-block;margin-top:18px;color:var(--blue);font-weight:800;text-underline-offset:4px}
.address-card{grid-column:1/-1;display:flex;flex-wrap:wrap;align-items:center;gap:12px 32px;padding:22px 26px;border-radius:14px;background:var(--navy);color:#fff}
.address-card address{font-style:normal}
.pricing{background:#fff}
.pricing h2{text-align:center}
.pricing>.container>.eyebrow{text-align:center}
.always{margin:32px 0 26px;padding:24px 28px;border-left:5px solid var(--orange);border-radius:10px;background:#fff7ee}
.always div{display:flex;justify-content:space-between;gap:20px;font-size:1.08rem}
.always strong{color:var(--navy);font-size:1.2rem}
.always p{margin:6px 0 0;color:var(--muted)}
.price-options{display:grid;grid-template-columns:1fr auto 1fr;align-items:stretch;gap:14px}
.price-options article{padding:26px;border:1px solid var(--line);border-radius:var(--radius)}
.price-options .recommended{border:2px solid var(--blue);background:#f6f9ff}
.option-label{margin:0 0 8px;color:var(--blue);font-size:.82rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em}
.calculation{color:var(--muted)}
.or{align-self:center;font-size:.8rem;font-weight:900;text-transform:uppercase;color:var(--muted)}
.notes{margin:26px 0 0;padding-left:22px;color:var(--muted)}
.contact{padding:72px 0;background:linear-gradient(120deg,#0a397d,var(--blue));color:#fff}
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}
.contact-grid h2{margin-bottom:12px}
.contact-grid>div>p:last-child{color:#dbe8fa}
.contact-links{display:grid;gap:12px}
.contact-links a{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:18px 20px;border:1px solid rgba(255,255,255,.25);border-radius:14px;background:rgba(255,255,255,.08);text-decoration:none}
.contact-links a:hover{background:rgba(255,255,255,.16)}
.contact-links span{font-size:.84rem;color:#bcd2f2}
footer{padding:36px 0 90px;background:var(--navy);color:#c4d1e4;font-size:.9rem}
.footer-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
footer p{margin:0}
footer a{color:#fff}
.mobile-call{display:none}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
:focus-visible{outline:3px solid #ffb35d;outline-offset:3px}
@media (max-width:850px){
  nav{display:none}.header-call{margin-left:auto}
  .hero-grid,.contact-grid{grid-template-columns:1fr}.hero-grid{gap:38px}
  .service-grid{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:600px){
  .container,.narrow{width:min(100% - 28px,1120px)}
  .site-header .header-call{display:none}.nav-wrap{min-height:66px}
  .hero,.section{padding:62px 0}.hero h1{font-size:2.45rem}
  .actions{display:grid}.button{width:100%}
  .service-grid,.small-grid,.price-options,.footer-grid{grid-template-columns:1fr}
  .address-card{grid-column:auto;align-items:flex-start;flex-direction:column}
  .or{text-align:center}.always div,.contact-links a{align-items:flex-start;flex-direction:column;gap:4px}
  .contact{padding:56px 0}.contact-grid{gap:28px}
  .mobile-call{position:fixed;z-index:30;display:block;left:12px;right:12px;bottom:10px;padding:14px;border-radius:12px;background:var(--orange);box-shadow:0 10px 30px rgba(6,27,61,.3);color:#1e2430;text-align:center;text-decoration:none;font-weight:900}
  footer{padding-bottom:96px}
}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{scroll-behavior:auto!important}}
@media print{.site-header,.mobile-call,.actions{display:none}.hero,.contact{background:#fff;color:#000}.hero{padding:30px 0}.section{padding:30px 0}}
