.service-page { color:#fff; background:#0a0a0a; }
.service-page .wrap { max-width:1120px; padding:0 2.5rem; }
.service-page .site-header { padding:1rem 0; }
.service-page .service-topnav { display:flex; gap:1.25rem; align-items:center; flex-wrap:wrap; justify-content:flex-end; }
.service-page .service-topnav a { font-size:.84rem; text-decoration:none; color:#fff; }
.service-skip { position:absolute; left:1rem; top:-120px; z-index:25000; background:#fff; color:#212121; padding:.8rem; }
.service-skip:focus { top:1rem; }
.service-hero { padding:1.25rem 0 3.5rem; }
.service-breadcrumb { color:rgba(255,255,255,.82); font-size:.82rem; margin-bottom:2.5rem; }
.service-breadcrumb a { text-underline-offset:3px; }
.service-eyebrow { font-size:.78rem; font-weight:700; text-transform:uppercase; letter-spacing:.13em; border-left:3px solid #D50032; padding-left:.8rem; margin-bottom:1rem; }
.service-hero h1 { max-width:850px; font-size:clamp(2rem,4.5vw,3.3rem); line-height:1.14; letter-spacing:-.025em; margin-bottom:1.25rem; }
.service-lead { max-width:820px; font-size:1.08rem; line-height:1.8; color:rgba(255,255,255,.9); margin-bottom:1.5rem; }
.service-button { display:inline-flex; justify-content:center; align-items:center; background:#D50032; color:#fff!important; border:2px solid #D50032; padding:.85rem 1.2rem; font-weight:700; font-size:.9rem; text-decoration:none; min-height:44px; }
.service-button:hover { background:#a50027; border-color:#a50027; }
.service-chapters { display:flex; gap:.5rem 1.25rem; flex-wrap:wrap; margin-top:1.6rem; font-size:.85rem; }
.service-chapters a { text-underline-offset:4px; }
.service-content { background:#D9D9D6; color:#212121; padding:1rem 0 4rem; }
.service-section { padding:2.25rem 0; border-bottom:1px solid rgba(83,86,90,.3); }
.service-section h2 { font-size:clamp(1.4rem,3vw,1.85rem); line-height:1.3; margin-bottom:1rem; color:#212121; }
.service-section h3 { font-size:1.12rem; line-height:1.4; margin:1.25rem 0 .7rem; color:#212121; }
.service-section p { max-width:850px; font-size:1rem; line-height:1.8; margin-bottom:1rem; }
.service-section p:last-child { margin-bottom:0; }
.service-section a:not(.service-button) { color:#9a0024; text-underline-offset:3px; }
.service-section ul,.service-section ol { padding-left:1.35rem; font-size:.98rem; line-height:1.8; margin:1rem 0; }
.service-section li { margin-bottom:.65rem; }
.service-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1.5rem; margin-top:1.5rem; }
.service-card { padding:1.6rem; background:#fff; border-top:3px solid #D50032; }
.service-card h3 { margin-top:0; }
.service-card p,.service-card li { font-size:.95rem; }
.service-role-label { font-size:.78rem!important; color:#53565A; margin-bottom:.8rem!important; }
.service-table-wrap { overflow:auto; margin:1.5rem 0; }
.service-table { width:100%; min-width:610px; border-collapse:collapse; background:#fff; font-size:.92rem; line-height:1.7; }
.service-table caption { text-align:left; font-size:.94rem; font-weight:700; padding:0 0 .7rem; }
.service-table th,.service-table td { text-align:left; vertical-align:top; padding:1rem; border-bottom:1px solid #D9D9D6; }
.service-table th { background:#53565A; color:#fff; }
.service-steps { list-style:none; padding:0!important; counter-reset:service-step; }
.service-steps li { counter-increment:service-step; display:grid; grid-template-columns:2.4rem 1fr; gap:1rem; padding:1.1rem 0; margin:0; border-bottom:1px solid rgba(83,86,90,.2); }
.service-steps li::before { content:counter(service-step); display:flex; align-items:center; justify-content:center; width:2.4rem; height:2.4rem; background:#53565A; color:#fff; font-weight:700; }
.service-steps strong { display:block; margin-bottom:.3rem; }
.service-steps p { font-size:.98rem; margin:0; }
.service-adviser { display:flex; gap:1.1rem; align-items:center; }
.service-adviser img { width:86px; height:104px; object-fit:cover; object-position:center top; flex-shrink:0; }
.service-adviser h3 { margin:.25rem 0; }
.service-adviser p { margin:0; font-size:.9rem; }
.service-faq details { border-top:1px solid rgba(83,86,90,.3); padding:1rem 0; }
.service-faq summary { font-size:1rem; line-height:1.6; font-weight:700; cursor:pointer; }
.service-faq details p { margin:1rem 0 0; font-size:.96rem; }
.service-cta { padding:2rem; background:#53565A; color:#fff; margin-top:2.5rem; }
.service-cta h2,.service-cta p { color:#fff; }
.service-cta p { max-width:790px; }
.service-page .site-footer { border-top:1px solid rgba(255,255,255,.12); padding:2rem 0; }
.service-page .service-footer-nav { display:flex; flex-wrap:wrap; gap:.7rem 1.25rem; margin:1rem 0; font-size:.82rem; }
.service-page .service-footer-nav a { text-underline-offset:3px; }
.service-page .footer-copy { display:block; color:rgba(255,255,255,.82); line-height:1.7; }
.service-page .site-footer .eo-cookie-settings { color:#fff; font-size:.84rem; }
.service-page section[id] { scroll-margin-top:1.5rem; }
.service-landing-links { margin-top:1rem; font-size:.94rem; line-height:1.8; }
@media(max-width:700px) {
 .service-page .wrap { padding:0 1.25rem; }
 .service-page .site-header .wrap { flex-direction:column; align-items:flex-start; gap:1rem; }
 .service-page .service-topnav { justify-content:flex-start; }
 .service-hero { padding-bottom:2.5rem; }
 .service-breadcrumb { margin-bottom:1.6rem; }
 .service-grid { grid-template-columns:1fr; gap:1rem; }
 .service-section { padding:1.75rem 0; }
 .service-card,.service-cta { padding:1.25rem; }
 .service-steps li { grid-template-columns:2rem 1fr; gap:.8rem; }
 .service-steps li::before { width:2rem; height:2rem; }
}

.service-impact-box { background:#fff; border-left:4px solid #D50032; padding:1.35rem 1.5rem; margin:1.5rem 0; }
.service-impact-box p { margin:0; font-size:1rem; }
.service-impact-box strong { display:block; margin-bottom:.5rem; }
