.service-page { background:var(--white); }
.service-page .site-header { position:sticky; top:0; }
.service-page .page-hero { padding:110px 0 100px; background:var(--navy); color:var(--white); }
.service-page .page-hero-grid { display:grid; grid-template-columns:1fr .75fr; gap:70px; align-items:center; }
.service-page .page-hero h1 { max-width:720px; margin:0 0 25px; }
.service-page .page-hero h1 span { color:var(--sky); }
.service-page .page-hero p:not(.eyebrow) { max-width:620px; color:#bdd0df; font-size:18px; }
.service-page .page-hero-art { width:100%; max-width:470px; justify-self:end; border-radius:12px; overflow:hidden; box-shadow:0 24px 50px rgba(0,0,0,.3); }
.service-page .page-hero-art img { width:100%; height:auto; aspect-ratio:1; object-fit:cover; }
.service-page .page-section { padding:110px 0; }
.service-page .page-section-light { background:var(--pale); }
.service-page .page-section h2 { max-width:760px; margin-bottom:20px; font-size:clamp(36px,4.7vw,62px); line-height:1.06; letter-spacing:-.08em; }
.service-page .page-section h2 span { color:var(--blue); }
.service-page .page-lead { max-width:650px; color:var(--muted); font-size:18px; }
.service-page .benefit-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; margin-top:55px; }
.service-page .benefit-card { min-height:220px; padding:27px; background:#fff; border:1px solid var(--line); border-radius:7px; }
.service-page .benefit-card strong { display:block; margin:28px 0 12px; font-size:20px; letter-spacing:-.05em; }
.service-page .benefit-card p { color:var(--muted); font-size:15px; }
.service-page .number { color:var(--blue); font-size:12px; font-weight:800; letter-spacing:.1em; }
.service-page .page-cta { padding:90px 0; background:var(--navy); color:var(--white); }
.service-page .page-cta-inner { display:flex; align-items:center; justify-content:space-between; gap:40px; }
.service-page .page-cta h2 { max-width:650px; margin:0; }
.service-page .page-cta h2 span { color:var(--sky); }
.service-page .page-cta p { max-width:560px; margin:18px 0 0; color:#bdd0df; }
.service-page .service-contact { padding:108px 0 112px; }
.service-page .service-contact .contact-copy h2 { max-width:620px; }
.service-page .service-contact .contact-copy>p:not(.eyebrow) { max-width:520px; }
.service-page .service-contact .contact-form { max-width:540px; margin-left:auto; }
.service-page .service-contact .contact-note { margin-top:34px; }
@media (max-width:700px) { .service-page .page-hero { padding:76px 0 70px; }.service-page .page-hero-grid { display:block; }.service-page .page-hero h1 { font-size:39px; }.service-page .page-hero p:not(.eyebrow) { font-size:16px; }.service-page .page-hero-art { margin-top:44px; }.service-page .page-section { padding:78px 0; }.service-page .benefit-grid { display:block; margin-top:38px; }.service-page .benefit-card { margin-bottom:14px; }.service-page .page-cta { padding:72px 0; }.service-page .page-cta-inner { display:block; }.service-page .page-cta .button { margin-top:30px; }.service-page .service-contact { padding:78px 0; }.service-page .service-contact .contact-form { max-width:none; margin-top:45px; } }
