.service-page{background:#f7f8fa;color:#101c32}
.service-page .shell{width:calc(100% - 104px);max-width:1380px}
.service-page h1,.service-page h2,.service-page h3{font-family:var(--display);font-weight:700;text-transform:uppercase}
.service-header{position:absolute;top:0;left:0;right:0;z-index:10;padding:25px 0;border-bottom:1px solid #ffffff38;color:#fff}
.service-header .brand{width:207px;filter:none}
.service-header .brand__mark{height:64px}
.service-header .brand__tagline{font-size:10px}
.service-header nav{gap:32px;font-size:11px;letter-spacing:.12em;text-transform:uppercase}
.service-header nav a{padding:12px 0;position:relative}
.service-header nav a[aria-current=page]::after{content:'';position:absolute;bottom:3px;left:0;width:24px;height:2px;background:#fff}
.service-header nav a:last-child{padding:15px 22px;border:1px solid #ffffff70}
.service-hero{position:relative;isolation:isolate;padding:0;min-height:810px;height:min(960px,100svh);color:white;background:#071630}
.service-hero__grid{position:static;display:flex;align-items:center;height:100%;min-height:810px;padding-top:130px;padding-bottom:135px}
.service-hero__grid>div{position:relative;z-index:2;max-width:760px}
.service-hero__grid>img{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;object-position:60% 56%;filter:saturate(.82)}
.service-hero::after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(4,17,39,.89),rgba(4,17,39,.66) 42%,rgba(4,17,39,.08) 80%),linear-gradient(0deg,rgba(4,17,39,.86),transparent 32%,transparent 70%,rgba(4,17,39,.64))}
.service-hero .eyebrow{font-size:11px;letter-spacing:.2em;margin-bottom:25px;color:#fff}
.service-hero h1{font-size:clamp(78px,8.1vw,124px);line-height:.88;letter-spacing:-.025em;margin:0 0 26px;max-width:750px}
.service-hero h1 span{display:block;color:#fff}
.service-hero .large-copy{max-width:440px;font-size:17px;line-height:1.65;margin:0 0 30px;color:#e5e9ef}
.service-hero .button{background:var(--red);color:white;border-color:var(--red);min-height:56px;padding:18px 25px}
.service-hero .button:hover{background:var(--red-dark)}
.service-hero-actions{display:flex;align-items:center;gap:30px}
.service-hero-actions>a:last-child{font-size:12px;font-weight:600;text-underline-offset:7px;text-decoration-color:#ffffff65}
.service-photo-note{position:absolute;z-index:2;right:52px;bottom:36px;text-align:right;color:#fff;font-size:10px;letter-spacing:.13em;text-transform:uppercase;line-height:1.8}
.service-photo-note strong{display:block;font-size:14px;letter-spacing:.02em;text-transform:none}
.service-scroll{position:absolute;bottom:36px;left:52px;z-index:2;color:#fff;text-decoration:none;font-size:10px;letter-spacing:.15em;text-transform:uppercase;display:flex;align-items:center;gap:18px}
.service-scroll::before{content:'';height:34px;width:1px;background:#ffffff75}
.service-index{background:#0a2a6b;color:white;display:grid;grid-template-columns:1.1fr 1fr 1fr;padding:27px 52px;gap:30px;font-size:11px;letter-spacing:.12em;text-transform:uppercase}
.service-index span{display:flex;align-items:center;gap:18px}.service-index b{color:#adbedc;font-size:10px;font-weight:400}
.service-story{position:relative;padding:120px 0 130px;grid-template-columns:.85fr 1.15fr;gap:90px;align-items:center}
.service-story .eyebrow{font-size:10px;letter-spacing:.16em}
.service-story h2{font-size:clamp(48px,5vw,76px);line-height:.98;letter-spacing:-.015em;margin:25px 0}
.service-story p{font-size:16px;line-height:1.8;color:#526075;max-width:43ch}
.service-story .text-link{margin-top:18px;color:#0a2a6b;font-size:11px}
.service-story figure{position:relative;margin:0;padding:0 0 34px 30px}
.service-story figure::before{content:'';position:absolute;inset:42px 30px 0 0;background:#e6eaf0;z-index:0}
.service-story figure img{position:relative;width:100%;height:610px;object-fit:cover;z-index:1}
.service-story figcaption{position:relative;z-index:2;padding:17px 0 0;font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:#526075}
.service-area{background:#071630;color:#fff;padding:85px 0;position:relative}
.service-area>.shell{display:grid;grid-template-columns:1fr 1fr;column-gap:85px}
.service-area .eyebrow{grid-column:1/-1;color:#b8c8e1;font-size:10px}
.service-area h2{font-size:clamp(45px,4.5vw,66px);margin:22px 0;max-width:560px}
.service-area p{font-size:16px;line-height:1.8;color:#c7d1e0;grid-column:2;grid-row:2;margin-top:20px}
.service-area .text-link{grid-column:2;color:#fff;justify-self:start;font-size:11px}
.service-towns{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:12px 34px;margin-top:45px;padding-top:28px;border-top:1px solid #ffffff25;font-size:12px;letter-spacing:.05em}
.service-towns span::before{content:'+';margin-right:12px;color:#a5b8d6}
.service-questions{max-width:1380px;display:grid;grid-template-columns:.85fr 1.15fr;column-gap:90px;padding:110px 0}
.service-questions>.eyebrow{grid-column:1;font-size:10px}.service-questions>h2{grid-column:1;grid-row:2/5;font-size:clamp(45px,4.7vw,70px);max-width:400px;margin:15px 0}
.service-questions details{grid-column:2;margin:0;padding:25px 0;border-color:#cbd3de}.service-questions details:first-of-type{grid-row:1/3}.service-questions summary{font-size:17px;line-height:1.5;list-style:none;display:flex;justify-content:space-between;gap:24px}.service-questions summary::-webkit-details-marker{display:none}.service-questions summary::after{content:'+';font-size:25px;font-weight:400;color:#0a2a6b}.service-questions details[open] summary::after{content:'−'}.service-questions details p{font-size:15px;color:#526075;line-height:1.8}
.service-related{position:relative;display:block;isolation:isolate;min-height:440px;padding:90px 52px;color:#fff;background:#071630;text-decoration:none;overflow:hidden}
.service-related img{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;transition:transform 600ms ease}.service-related::after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#071630eb,#07163035)}.service-related:hover img{transform:scale(1.025)}.service-related .eyebrow{color:#fff;font-size:10px}.service-related h2{font-size:clamp(50px,6vw,90px);max-width:600px;margin:25px 0}.service-related .text-link{font-size:11px;color:#fff}
.service-contact{background:#0a2a6b;color:#fff;padding:100px 0}.service-contact>.shell{display:grid;grid-template-columns:1.2fr .8fr;column-gap:60px}.service-contact .eyebrow{grid-column:1/-1;font-size:10px;color:#cbd8ed}.service-contact h2{font-size:clamp(64px,7vw,105px);line-height:.95;grid-column:1;grid-row:2/4;margin:20px 0}.service-contact p{font-size:16px;line-height:1.8;grid-column:2;margin-top:25px}.service-contact__links{grid-column:2;display:flex;flex-wrap:wrap;gap:22px;margin-top:12px}.service-contact .button{background:#fff;color:#0a2a6b}.service-contact__links>a:last-child{font-size:13px;text-underline-offset:6px}
.service-page .mobile-actions{display:none}.service-page .footer{background:#061227}.service-page .footer__links{padding-top:35px}
@media(min-width:1700px){.service-scroll{left:calc((100vw - 1380px)/2)}.service-photo-note{right:calc((100vw - 1380px)/2)}}
@media(max-width:1000px){.service-page .shell{width:calc(100% - 64px)}.service-header nav{gap:20px}.service-story,.service-questions{gap:40px}.service-story figure{padding-left:18px}.service-story figure img{height:480px}.service-hero h1{font-size:100px}.service-hero__grid>div{max-width:670px}.service-area>.shell{column-gap:40px}.service-index{padding-inline:32px}.service-scroll{left:32px}.service-photo-note{right:32px}}
@media(max-width:700px){.service-page .shell{width:calc(100% - 40px)}.service-header{flex-direction:row;align-items:center;padding:17px 0;gap:12px}.service-header .brand{width:145px}.service-header .brand__mark{height:45px}.service-header .brand__tagline{font-size:7px;margin-top:4px}.service-header nav{gap:15px;font-size:9px;letter-spacing:.06em}.service-header nav a:last-child{display:none}.service-hero{min-height:760px;height:92svh;max-height:900px}.service-hero__grid{min-height:760px;padding-top:125px;padding-bottom:115px;align-items:center}.service-hero__grid>div{width:100%}.service-hero__grid>img{object-position:62% center;height:100%}.service-hero::after{background:linear-gradient(90deg,#041127c7,#0411273d),linear-gradient(0deg,#041127e0,transparent 70%,#041127a0)}.service-hero h1{font-size:clamp(65px,18vw,100px);max-width:560px;line-height:.93;margin-bottom:25px}.service-hero .eyebrow{font-size:9px;letter-spacing:.14em;max-width:290px;line-height:1.8}.service-hero .large-copy{font-size:15px;line-height:1.7;max-width:310px}.service-hero-actions{gap:20px;flex-wrap:wrap}.service-hero .button{min-height:52px;font-size:10px;padding:16px 18px}.service-hero-actions>a:last-child{font-size:10px}.service-photo-note{bottom:25px;right:20px;font-size:8px;max-width:180px}.service-photo-note strong{font-size:11px}.service-scroll{left:20px;bottom:25px;font-size:8px}.service-index{padding:22px 20px;grid-template-columns:1fr;gap:13px;font-size:9px}.service-index span{gap:13px}.service-story{grid-template-columns:1fr;padding:70px 0;gap:35px}.service-story h2{font-size:52px;max-width:370px}.service-story p{max-width:none;font-size:15px}.service-story figure{padding:0 0 25px 15px}.service-story figure img{height:420px}.service-story figcaption{font-size:8px}.service-area{padding:65px 0}.service-area>.shell{display:block}.service-area h2{font-size:49px}.service-area p{font-size:15px}.service-area .text-link{margin-top:20px}.service-towns{gap:14px 22px;font-size:10px;margin-top:32px}.service-questions{display:block;padding:65px 0}.service-questions>h2{font-size:50px;margin:20px 0 30px}.service-questions summary{font-size:16px}.service-questions details{padding:20px 0}.service-related{padding:65px 20px;min-height:340px}.service-related h2{font-size:56px}.service-contact{padding:70px 0}.service-contact>.shell{display:block}.service-contact h2{font-size:74px}.service-contact p{font-size:15px}.service-contact__links{align-items:flex-start;margin-top:28px}.service-page{padding-bottom:57px}.service-page .mobile-actions{display:flex}.service-page .footer__top{padding-top:45px}}
@media(prefers-reduced-motion:reduce){.service-related img{transition:none}.service-related:hover img{transform:none}}

.service-header .brand__mark{height:auto}.service-header .brand__mark::before{display:none}.service-header .brand img{clip-path:none;mask-image:none;filter:brightness(0) invert(1)}.service-header .brand__tagline{display:none}

@media(max-width:700px){.service-page .mobile-actions{display:grid;opacity:1;transform:none;pointer-events:auto;bottom:0;left:0;right:0;padding:4px 8px}.service-page .mobile-actions a{min-height:48px}}

/* Keep text on photographic and navy service-page surfaces legible even when
   the shared homepage heading rules are loaded first. */
.service-header nav a,
.service-hero h1,
.service-hero h1 span,
.service-area h2,
.service-related h2,
.service-contact h2{color:#fff}
