.home-intro{padding-top:32px}
.home-intro h1{font-size:clamp(1.6rem,2.6vw,2.1rem);line-height:1.25;letter-spacing:-.025em;max-width:100%;margin:0}
.home-intro p{font-size:1rem;margin:10px 0 0;color:var(--muted);max-width:80ch}
.home-intro+.catalog-hero{padding-top:28px}
a.quick-row{text-decoration:none}
a.quick-row:hover span:first-child{text-decoration:underline;text-underline-offset:4px}
.catalog-full-link{display:inline-block;font-size:.9375rem;font-weight:650;margin-top:20px;text-underline-offset:4px}
.service-landing{padding-top:32px;padding-bottom:56px;font-size:1rem}
.service-landing h1{font-size:clamp(1.8rem,3.3vw,2.75rem);line-height:1.16;max-width:26ch;margin:18px 0 20px}
.service-landing h2{font-size:1.45rem;line-height:1.3;margin:0 0 14px;letter-spacing:-.02em}
.service-landing h3{font-size:1.125rem;line-height:1.4;margin:0 0 10px}
.service-landing p{font-size:1rem;line-height:1.7;max-width:80ch;margin:0 0 16px}
.service-breadcrumbs{display:flex;flex-wrap:wrap;gap:8px 20px;font-size:.875rem;color:var(--muted);margin-bottom:30px}
.service-breadcrumbs a{text-underline-offset:4px}
.service-intro{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:40px;align-items:start;padding-bottom:32px;border-bottom:1px solid var(--line)}
.service-intro .service-owner{color:var(--muted);font-size:.875rem;font-weight:600}
.service-intro .service-lead{font-size:1.125rem;line-height:1.65}
.service-contact{background:var(--wash,#eef3f9);border-top:4px solid var(--accent,#34588e);padding:24px;overflow-wrap:anywhere}
.service-contact .button{width:100%;margin:4px 0 18px;white-space:normal;text-align:center}
.service-contact p{font-size:.9375rem;line-height:1.6;margin-bottom:12px}
.service-section{padding:30px 0;border-bottom:1px solid var(--line);scroll-margin-top:24px}
.service-section ul,.service-section ol{padding-left:24px;line-height:1.7;max-width:85ch;margin:12px 0}
.service-section li+li{margin-top:8px}
.service-two-column{display:grid;grid-template-columns:1fr 1fr;gap:40px}
.service-program-list{list-style:none!important;padding:0!important;max-width:none!important;margin:0!important}
.service-program-list>li{border-top:1px solid var(--line);padding:18px 0;margin:0!important}
.service-program-list>li:first-child{border-top:0}
.service-program-list p{font-size:.9375rem;color:var(--muted);margin:8px 0}
.service-program-list a{font-size:.9375rem;text-underline-offset:4px}
.service-note{padding:18px 22px;background:var(--wash,#eef3f9);margin-top:22px!important;font-size:.9375rem!important}
.service-related{display:flex;flex-wrap:wrap;gap:12px 24px;line-height:1.6}
.service-related a{text-underline-offset:4px}
.training-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 28px;margin:20px 0}
.training-links a{padding:18px 0;border-bottom:1px solid var(--line);font-weight:650;text-underline-offset:4px}
.training-directory details{padding:0;border-bottom:1px solid var(--line);scroll-margin-top:24px}
.training-directory summary{cursor:pointer;padding:22px 0;font-size:1.125rem;font-weight:700;line-height:1.4}
.training-directory details>div{padding:0 0 24px}
.service-brief{background:var(--wash,#eef3f9);padding:22px 26px;margin:24px 0 30px;display:grid;grid-template-columns:1fr 1fr;gap:24px}
.service-brief p{font-size:1rem;margin:8px 0 0;line-height:1.6}
.service-related-section{margin:32px 0;padding-top:24px;border-top:1px solid var(--line)}
.service-related-section h2{font-size:1.4rem;margin:0 0 16px}
@media(max-width:760px){.service-intro,.service-two-column,.service-brief{grid-template-columns:1fr;gap:24px}.training-links{grid-template-columns:1fr 1fr}.service-landing{padding-top:24px}.service-intro h1{max-width:none}.service-contact{padding:20px}.service-breadcrumbs{margin-bottom:22px}.service-brief{padding:20px}.home-intro{padding-top:24px}}
@media(max-width:480px){.training-links{grid-template-columns:1fr}.service-landing .button{max-width:100%;white-space:normal;text-align:center}.service-section{padding:24px 0}}

.service-enquiry-card{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:40px;padding:32px;margin:32px 0;background:#edf3fa;border:1px solid #dbe5f1;border-radius:14px}
.service-enquiry-copy,.service-enquiry-contacts{min-width:0}
.service-enquiry-card h2{font-size:clamp(24px,2.6vw,32px);line-height:1.2;margin:0 0 14px}
.service-enquiry-copy p{font-size:17px;line-height:1.6;margin:0 0 24px;max-width:40ch}
.service-enquiry-copy .button{width:100%;white-space:normal;text-align:center;line-height:1.4;min-height:48px}
.service-enquiry-contacts{border-left:1px solid #cbd9e9;padding-left:32px}
.service-enquiry-contacts h3{font-size:16px;line-height:1.4;margin:0 0 8px;letter-spacing:0}
.service-enquiry-contacts a{display:flex;flex-direction:column;justify-content:center;gap:2px;min-height:64px;padding:8px 0;text-decoration:none}
.service-enquiry-contacts a span{font-size:13px;color:#52657d;line-height:1.4}
.service-enquiry-contacts a strong{font-size:19px;font-weight:650;line-height:1.4;white-space:nowrap}
.service-enquiry-contacts a:hover strong{text-decoration:underline;text-underline-offset:4px}
@media(max-width:700px){.service-enquiry-card{grid-template-columns:1fr;gap:24px;padding:22px 18px}.service-enquiry-contacts{border-left:0;border-top:1px solid #cbd9e9;padding:20px 0 0}.service-enquiry-copy p{font-size:16px}.service-enquiry-copy .button{padding:13px 10px;font-size:15px}}
