.service-detail-hero {
    position: relative;
    min-height: 650px;
    display: flex;
    align-items: flex-end;
    isolation: isolate;
    background-image: linear-gradient(90deg, rgba(3,24,42,.97) 0%, rgba(8,44,75,.72) 58%, rgba(238,33,43,.2) 100%), var(--service-hero-image);
    background-position: center;
    background-size: cover;
}

.service-detail-hero::after { content: ""; position: absolute; inset: auto 0 0; z-index: -1; height: 5px; background: #ee212b; }
.service-detail-hero__content { max-width: 980px; padding-top: 125px; padding-bottom: 82px; color: #fff; }
.service-detail-heading { display: flex; align-items: center; gap: 24px; }
.service-detail-icon { display: grid; flex: 0 0 82px; width: 82px; height: 82px; place-items: center; border-radius: 5px; background: #ee212b; color: #fff; font-size: 2.65rem; }
.service-detail-icon i::before { margin: 0; }
.service-detail-hero h1 { max-width: 900px; margin: 6px 0 0; color: #fff; font-size: clamp(2.7rem, 6vw, 5.3rem); line-height: 1.01; }
.service-detail-lead { max-width: 770px; margin: 25px 0 0; color: rgba(255,255,255,.84); font-size: 1.6rem; line-height: 1.75; }

.service-detail-breadcrumbs { display: flex; flex-wrap: wrap; gap: 8px; margin: 0 0 35px; padding: 0; list-style: none; color: rgba(255,255,255,.7); }
.service-detail-breadcrumbs li + li::before { content: "/"; margin-right: 8px; color: rgba(255,255,255,.45); }
.service-detail-breadcrumbs a { color: #fff; }
.service-detail-breadcrumbs a:hover { color: #ff6269; }

.service-detail-eyebrow { color: #ee212b; font-size: 2rem; font-weight: 800; letter-spacing: .6em; text-transform: uppercase; }
.service-detail-hero .service-detail-eyebrow { color: #ff6269; }
.service-detail-main { padding: 100px 0 115px; background: #f8f6f2; }
.service-detail-layout { display: grid; grid-template-columns: minmax(0, 1.55fr) minmax(310px, .75fr); gap: 78px; align-items: start; }
.service-detail-story > h2 { max-width: 720px; margin: 9px 0 30px; color: #082c4b; font-size: clamp(2.05rem, 3.8vw, 3.35rem); line-height: 1.12; }
.service-detail-copy { color: #4e5d67; font-size: 1.06rem; line-height: 1.9; }
.service-detail-copy h2, .service-detail-copy h3 { margin-top: 38px; color: #082c4b; }
.service-detail-copy ul, .service-detail-copy ol { padding-left: 24px; }
.service-detail-copy li { margin-bottom: 8px; }
    .service-detail-copy p, .service-detail-copy .item-subtitle, .service-detail-copy .more-info .more-info-box .item-content {
        font-size: 1.7rem;
        line-height: 1.6;
    }

.service-capabilities { margin-top: 62px; padding-top: 50px; border-top: 1px solid #dbdfdf; }
.service-capabilities__heading h2 { margin: 8px 0 30px; color: #082c4b; font-size: 2rem; }
.service-capabilities ol { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 14px; margin: 0; padding: 0; list-style: none; }
.service-capabilities li { display: flex; align-items: flex-start; gap: 16px; padding: 22px; border-radius: 4px; background: #fff; box-shadow: 0 8px 25px rgba(10,38,61,.06); }
    .service-capabilities li > span {
        color: #ee212b;
        font-size: 1.1rem;
        font-weight: 800;
    }
.service-capabilities li > p { margin: 0; color: #082c4b; font-weight: 700; line-height: 1.45; }

.service-detail-sidebar { position: sticky; top: 100px; display: flex; flex-direction: column; gap: 24px; }
.service-detail-nav { overflow: hidden; border-radius: 5px; background: #fff; box-shadow: 0 14px 38px rgba(10,38,61,.09); }
.service-detail-nav__heading { padding: 28px 30px 22px; border-bottom: 1px solid #e4e8ea; }
.service-detail-nav__heading h2 { margin: 7px 0 0; color: #082c4b; font-size: 1.45rem; }
.service-detail-nav ul { margin: 0; padding: 0; list-style: none; }
.service-detail-nav li + li { border-top: 1px solid #edf0f2; }
.service-detail-nav li a { display: flex; align-items: center; justify-content: space-between; gap: 15px; padding: 17px 30px; color: #44535e; font-weight: 700; }
.service-detail-nav li a i { color: #ee212b; font-size: .8rem; transition: transform .2s ease; }
.service-detail-nav li a:hover { background: #082c4b; color: #fff; }
.service-detail-nav li a:hover i { transform: translateX(4px); }
.service-detail-nav__all { display: block; padding: 19px 30px; background: #ee212b; color: #fff; font-weight: 800; }
.service-detail-nav__all:hover { background: #082c4b; color: #fff; }

.service-detail-contact { padding: 32px 30px; border-radius: 5px; background: #082c4b; color: rgba(255,255,255,.74); }
.service-detail-contact h2 { margin: 8px 0 13px; color: #fff; font-size: 1.65rem; }
.service-detail-contact p { line-height: 1.65; color: rgba(255,255,255,.74); }
.service-detail-contact > a { color: #ff5961; font-weight: 800; }
.service-detail-contact > a:hover { color: #fff; }
.service-detail-contact > a i { margin-left: 7px; }

.service-resources { margin-top: 110px; padding-top: 65px; border-top: 1px solid #dbdfdf; }
.service-resources__heading { display: grid; grid-template-columns: minmax(0,1fr) minmax(300px,.65fr); align-items: end; gap: 60px; margin-bottom: 35px; }
.service-resources__heading h2 { margin: 8px 0 0; color: #082c4b; font-size: clamp(2rem,3.6vw,3.15rem); }
.service-resources__heading > p { margin: 0; color: #64717a; line-height: 1.75; }
.service-resources__grid { display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); gap: 14px; }
.service-resources__grid a { display: flex; min-height: 190px; padding: 25px 22px; flex-direction: column; border-radius: 4px; background: #fff; color: #082c4b; box-shadow: 0 10px 28px rgba(10,38,61,.07); transition: transform .25s ease, background .25s ease, color .25s ease; }
.service-resources__grid a:nth-child(even) { background: #082c4b; color: #fff; }
.service-resources__grid a:hover { transform: translateY(-6px); background: #ee212b; color: #fff; }
.service-resources__grid i { margin-bottom: 30px; color: #ee212b; font-size: 2rem; }
.service-resources__grid a:hover i, .service-resources__grid a:nth-child(even) i { color: #ff5961; }
    .service-resources__grid span {
        font-size: 1.5rem;
        font-weight: 800;
        line-height: 1.35;
    }
.service-resources__grid small { margin-top: auto; opacity: .68; }

@media (max-width: 1199px) {
    .service-resources__grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
}

@media (max-width: 991px) {
    .service-detail-hero { min-height: 560px; }
    .service-detail-layout { grid-template-columns: 1fr; gap: 58px; }
    .service-detail-sidebar { position: static; }
    .service-resources__heading { grid-template-columns: 1fr; gap: 20px; }
    .service-resources__grid span {
        font-size: 2.3rem;
    }
    .service-detail-lead,.service-detail-copy p, .service-detail-copy .item-subtitle, .service-detail-copy .more-info .more-info-box .item-content {
        font-size: 2.1rem;
        line-height: 1.6;
    }

}

@media (max-width: 767px) {
    .service-resources__grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}

@media (max-width: 575px) {
    .service-detail-hero__content { padding-top: 95px; padding-bottom: 58px; }
    .service-detail-heading { align-items: flex-start; flex-direction: column; }
    .service-detail-icon { width: 64px; height: 64px; flex-basis: 64px; font-size: 2rem; }
    .service-detail-main { padding: 68px 0 78px; }
    .service-capabilities ol, .service-resources__grid { grid-template-columns: 1fr; }
    .service-resources { margin-top: 75px; padding-top: 48px; }
    .service-resources__grid a { min-height: 160px; }

}

@media (prefers-reduced-motion: reduce) {
    .service-detail-nav li a i, .service-resources__grid a { transition: none; }
}
