/* Service pages share the homepage brand, header and footer. */
.service-hero{height:auto;min-height:640px;background-position:center}
.service-hero .shade{background:linear-gradient(90deg,rgba(1,20,48,.97),rgba(2,27,60,.84) 45%,rgba(4,30,58,.2))}
.service-hero .hero-copy{width:min(760px,90%);padding:135px 0 65px 5%}
.breadcrumb{font-size:12px;line-height:1.8;margin-bottom:30px;color:#d9e3ef}
.breadcrumb a:hover{text-decoration:underline}
.service-hero h1{font-size:clamp(34px,4.2vw,58px);line-height:1.1;margin:18px 0}
.service-hero .service-tagline{font-size:25px;font-weight:700;line-height:1.35}
.service-tagline em{font-style:normal;color:var(--cyan)}
.service-hero .eyebrow{letter-spacing:3px;line-height:1.6}
.service-links{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;padding:24px 20px}
.service-links a{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px;border:1px solid #dce6f0;border-radius:8px;font-size:14px;font-weight:700}
.service-links a:hover,.service-links a[aria-current]{background:var(--navy);color:white;border-color:var(--navy)}
.service-details{padding:55px 20px 65px}
.service-page h2{font-size:clamp(26px,3vw,36px);line-height:1.2;color:var(--ink);margin:14px 0 28px}
.benefit-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.benefit-grid article{padding:28px;border:1px solid #e0e8f2;border-radius:12px;box-shadow:0 5px 18px #05275d0a}
.service-number{font-size:28px;font-weight:800;color:#0086be}
.service-page h3{font-size:19px;line-height:1.4}
.service-details p,.service-process p,.service-cta p{font-size:15px;line-height:1.75;color:#486079}
.service-process{background:linear-gradient(135deg,#061c3b,#03162e);color:#fff;padding:55px 20px}
.service-page .service-process h2,.service-process h3,.service-process p{color:#fff}
.service-process .eyebrow.blue{color:#19b7ff}
.service-process ol{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;padding-left:24px}
.service-process li{padding-left:8px}
.service-process li::marker{color:#19b7ff;font-weight:800;font-size:22px}
.service-cta{padding:65px 20px;display:flex;align-items:center;justify-content:space-between;gap:32px}
.service-cta h2{margin-bottom:12px}.service-cta .primary{flex-shrink:0}
.service-page a:focus-visible{outline:3px solid #19b7ff;outline-offset:5px}
@media(max-width:1100px){.service-page .nav nav{gap:14px;font-size:13px}.service-page .nav{gap:16px}.service-page .quote.top{padding:14px}}
@media(max-width:900px){.service-links{grid-template-columns:repeat(2,1fr)}.service-hero .hero-copy{width:90%}.benefit-grid{gap:14px}.benefit-grid article{padding:20px}.service-cta{align-items:flex-start;flex-direction:column}}
@media(max-width:600px){.service-hero .hero-copy{width:100%;padding:120px 20px 40px}.service-hero .eyebrow{font-size:10px}.service-hero .actions{flex-direction:column;align-items:flex-start}.service-links{grid-template-columns:1fr}.benefit-grid,.service-process ol{grid-template-columns:1fr}.service-process ol{gap:12px}.service-details,.service-process,.service-cta{padding-top:40px;padding-bottom:40px}.service-process .wrap{padding:0}}

/* Match the homepage hero on mobile while allowing longer content to fit. */
@media(max-width:768px){
  .service-hero{
    width:100%;
    height:auto;
    min-height:600px;
    background-size:cover;
    background-position:center;
  }
  .service-hero .hero-copy{
    width:100%;
    padding:115px 5% 85px;
  }
}



/* Direct picture sources avoid CSS-relative image URLs. */
.service-page .service-hero{background-image:none;background-color:var(--navy)}
.service-hero-image{position:absolute;inset:0;display:block}
.service-hero-image img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
@media(max-width:900px){
  .service-hero-image img{object-position:var(--hero-position,center)}
  .service-hero .shade{background:linear-gradient(180deg,rgba(1,20,48,.65) 0%,rgba(1,20,48,.48) 35%,rgba(1,20,48,.80) 100%)}
  .service-hero .hero-copy{text-shadow:0 2px 8px #00132dcc}
  .service-hero .actions{text-shadow:none}
}

/* Mobile portraits sit behind the copy, within the hero. */
@media(max-width:900px){
  .service-page .service-hero{display:block;position:relative;isolation:isolate;height:auto;min-height:600px;background:#061d3a}
  .service-hero .hero-copy{position:relative;z-index:2;width:100%;padding:120px 6% 65px}
  .service-hero .breadcrumb{margin-bottom:22px}
  .service-hero .hero-copy>p{max-width:620px}
  .service-hero .actions{margin-bottom:0}
  .service-hero .shade{display:block;z-index:1;pointer-events:none}
  .service-hero-image{position:absolute;inset:0;z-index:0;display:block;width:100%;height:100%;max-width:none;margin:0;pointer-events:none}
  .service-hero-image img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
}

/* Panoramic desktop artwork places the service subject on the right. */
@media(min-width:901px){
  .service-hero-image img{object-position:right center}
}
