/* Service pages use the homepage's shared type, palette and components. */
.service-hero{min-height:620px;gap:85px;padding-top:100px;padding-bottom:100px}
.service-hero h1{color:#fff;font-size:clamp(49px,6vw,80px);max-width:650px}
.service-hero .hero-lead{max-width:590px;margin:28px 0 32px}
.service-hero .hero-copy{min-width:0}
.service-summary{position:relative;z-index:1;min-width:0;padding:34px 0 12px;border-top:1px solid #ffffff40}
.summary-label{color:#aebad0;font:10px/1.5 'DM Mono',monospace;text-transform:uppercase;letter-spacing:.12em;margin:0 0 30px}
.training-capacity{display:flex;align-items:center;gap:25px;margin:0 0 36px}
.training-capacity strong{color:#ffbd75;font:500 clamp(80px,9vw,126px)/.9 Manrope,Arial,sans-serif;letter-spacing:-.065em}
.training-capacity span{color:#d9e2ef;font-size:14px;line-height:1.6;max-width:125px}
.summary-details{margin:0}.summary-details>div{display:flex;justify-content:space-between;gap:20px;padding:18px 0;border-top:1px solid #ffffff26}
.summary-details dt{font:10px/1.6 'DM Mono',monospace;color:#aebad0;text-transform:uppercase;letter-spacing:.06em}
.summary-details dd{margin:0;text-align:right;font-size:13px;font-weight:700;color:#fff}
.consultancy-route{list-style:none;padding:0;margin:0;position:relative}
.consultancy-route:before{content:'';position:absolute;left:23px;top:26px;bottom:38px;width:1px;background:#ffffff30}
.consultancy-route li{display:grid;grid-template-columns:48px 1fr;align-items:center;gap:24px;padding:0 0 32px;position:relative}
.consultancy-route li:last-child{padding-bottom:8px}
.route-number{position:relative;width:48px;height:48px;border:1px solid #ffffff40;border-radius:50%;display:grid;place-items:center;background:#0d1930;color:#ffbd75;font:12px 'DM Mono',monospace}
.consultancy-route li:last-child .route-number{border-color:#e26a2c;color:#0d1930;background:#e26a2c}
.consultancy-route strong{display:block;color:#fff;font-size:20px;letter-spacing:-.025em;margin:0 0 5px}
.consultancy-route small{display:block;color:#aebad0;font-size:12px;line-height:1.6}
.service-section{display:grid;grid-template-columns:.82fr 1.18fr;gap:100px}
.service-section .section-intro{position:relative}
.service-section .section-intro h2{font-size:clamp(36px,4vw,58px)}
.service-overview{font:10px 'DM Mono',monospace;color:#60708a;letter-spacing:.08em;text-transform:uppercase;margin-top:28px}
.service-topic{display:grid;grid-template-columns:50px 1fr;gap:22px;padding:28px 0;border-bottom:1px solid #dfe5ed}
.service-topics{border-top:1px solid #dfe5ed}
.topic-number{color:#c5541b;font:11px/1.6 'DM Mono',monospace;margin-top:5px}
.service-topic h3{font-size:21px;line-height:1.3;letter-spacing:-.035em;margin:0 0 8px}
.service-topic p{color:#60708a;font-size:14px;line-height:1.65;margin:0}
.service-callout{background:#e9edf2;padding:75px max(28px,calc((100% - 1240px)/2));display:flex;justify-content:space-between;align-items:center;gap:45px}
.service-callout .callout-copy{max-width:760px}
.service-callout h2{font-size:clamp(32px,4vw,48px);line-height:1.08;letter-spacing:-.05em;margin:0 0 18px;color:#101a2c}
.service-callout p:not(.eyebrow){color:#60708a;font-size:16px;line-height:1.65;margin:0}
.service-callout .button{flex-shrink:0;background:#0d1930;color:#fff;text-decoration:none;white-space:nowrap}
.service-callout .button span{color:#ffbd75}
.service-hero .button-primary:hover{background:#f18b4f}
.service-main section[id]{scroll-margin-top:155px}
@media(max-width:1100px) and (min-width:801px){.service-hero{gap:45px}.service-section{gap:55px}.training-capacity{gap:18px}.summary-details>div{flex-direction:column;gap:6px}.summary-details dd{text-align:left}}
@media(max-width:800px){.service-hero{padding:75px 25px 58px;gap:56px;min-height:0}.service-hero h1{font-size:clamp(40px,12vw,50px)}.service-hero .hero-lead{font-size:16px}.service-summary{padding-top:25px}.training-capacity{margin-bottom:28px}.training-capacity strong{font-size:90px}.summary-label{margin-bottom:25px}.summary-details>div{padding:16px 0}.service-section{grid-template-columns:1fr;gap:35px}.service-topic{gap:15px;grid-template-columns:34px 1fr}.service-callout{padding:58px 25px;align-items:flex-start;flex-direction:column;gap:28px}.service-callout h2{font-size:34px}.service-callout p:not(.eyebrow){font-size:15px}.service-overview{margin-top:20px}}
@media(max-width:360px){.summary-details>div{flex-direction:column;gap:5px}.summary-details dd{text-align:left}}
