/* Shared editorial layout. Purchase cards retain the approved black standard. */
.detail-page { --detail-accent: var(--path-colour, #215de9); }
.detail-page .sr-only { position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0; }
.detail-hero h1 { font-size:clamp(34px,4vw,60px);max-width:23ch;overflow-wrap:break-word; }
.detail-hero h1 span { color:var(--ink); }
.detail-hero-panel { background:var(--panel);border-top:6px solid var(--detail-accent);padding:clamp(25px,4vw,52px);display:flex;flex-direction:column;justify-content:center;min-width:0; }
.detail-hero-panel h2 { font-size:clamp(35px,3.6vw,54px);line-height:1.1;letter-spacing:-.03em;margin:22px 0 35px;max-width:16ch; }
.detail-panel-facts > div { padding:18px 0;border-top:1px solid var(--line); }
.detail-panel-facts strong { display:block;font-size:21px;font-weight:550; }
.detail-panel-facts span { display:block;color:var(--muted);font-size:13px;margin-top:6px;line-height:1.5; }
.detail-hero-panel > p:last-child { margin-top:22px;color:var(--muted);line-height:1.6; }
.detail-page .detail-prices { grid-template-columns:repeat(2,minmax(0,1fr));max-width:1000px; }
.detail-page .detail-price-single { grid-template-columns:minmax(0,1fr);max-width:600px; }
.detail-page .detail-prices article:last-child { grid-column:auto; }
.detail-inclusions { margin:0;padding-left:20px;font-size:14px;line-height:1.8;color:#f7f7f7; }
.detail-page .detail-prices .detail-tax { font-size:12px;flex:0 1 auto;margin:18px 0 0; }
.detail-page .detail-prices .course-enrolment-link { margin-top:24px; }
.detail-list { padding-left:22px;line-height:1.8;color:var(--muted); }
.detail-list li + li { margin-top:10px; }
.detail-three, .detail-related { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px; }
.detail-three article, .detail-related article { min-width:0;border-top:2px solid var(--detail-accent);padding-top:22px; }
.detail-related { grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr)); }
.detail-related h3 { font-size:21px; }
.detail-page .detail-related-price { font-size:15px;color:var(--ink);font-weight:550; }
.detail-note { border-left:4px solid var(--detail-accent);background:var(--panel);padding:26px;margin-top:32px; }
.detail-page .detail-note > p { max-width:85ch; }
.detail-page .course-module-list { margin-bottom:35px; }
.detail-page .course-module-list .eyebrow { font-size:11px;margin:0 0 12px; }
.detail-page .course-facts dd { overflow-wrap:anywhere; }
.detail-scenario { background:var(--panel);padding:28px; }
.detail-decisions { display:grid;gap:20px;padding-left:25px;margin-top:28px;line-height:1.8;max-width:82ch;color:var(--muted); }
.detail-decisions li { padding-left:10px; }
.detail-decisions li::marker { font-weight:600;color:var(--ink); }
.detail-reflection { border:1px solid var(--line);padding:22px;margin-top:28px; }
.detail-reflection summary { font-weight:550;cursor:pointer;line-height:1.6; }
.detail-steps { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px; }
.detail-steps article { border-top:1px solid var(--line);padding-top:24px; }
.detail-actions { display:flex;gap:18px;flex-wrap:wrap;align-items:center;margin-top:28px; }
.detail-page .detail-actions p { margin:0; }
/* Service fees and scoped team capability; separate from Academy purchases. */
.service-hero-price { border-top:1px solid var(--line);padding-top:22px; }
.service-hero-price strong { display:block;font-size:clamp(27px,3vw,40px);font-weight:550;line-height:1.15;letter-spacing:-.02em; }
.service-hero-price span { display:block;font-size:13px;color:var(--muted);line-height:1.6;margin:12px 0 20px; }
.service-price-grid { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:start; }
.service-price-grid > :only-child { grid-column:1/-1;max-width:850px; }
.detail-page .service-price-card { background:#0b0b0b;color:#fff;padding:clamp(24px,3vw,34px);min-width:0; }
.detail-page .service-price-card h3 { font-size:23px;color:#fff;margin:0 0 22px; }
.detail-page .service-price-card p,.detail-page .service-price-card .detail-list { color:#e1e1e1;font-size:15px; }
.detail-page .service-price-card .service-price-value { color:#fff;font-size:clamp(26px,2.6vw,38px);font-weight:550;line-height:1.2;letter-spacing:-.025em;margin:0 0 8px; }
.detail-page .service-price-card .service-price-kind { color:#bdbdbd;font-size:12px;margin:0 0 22px; }
.service-package-details { border-block:1px solid #454545;margin:24px 0;padding:16px 0; }
.service-package-details summary { cursor:pointer;font-size:14px;font-weight:550;line-height:1.5; }
.service-package-details h4 { color:#fff;font-size:14px;margin:24px 0 10px; }
.service-package-details .detail-list { padding-left:18px; }
.service-price-card .button { margin:0;max-width:100%;white-space:normal;text-align:center; }
.detail-page .service-card-qualifier { font-size:12px;margin-top:-6px; }
.detail-page .service-tax-note { font-size:13px;margin-top:25px; }
.service-quote-panel { background:var(--panel);border-left:4px solid var(--detail-accent);padding:clamp(24px,3vw,34px);max-width:850px; }
.service-quote-panel .button { margin-top:8px; }
.service-credentials { border-block:1px solid var(--line);padding-block:22px;margin:28px 0; }
.service-credentials h3 { font-size:20px;margin:0 0 18px; }
.service-credentials .detail-list { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 30px;margin:0; }
.service-credentials .detail-list li + li { margin:0; }
@media(max-width:760px) {
 .service-price-grid,.service-credentials .detail-list { grid-template-columns:minmax(0,1fr); }
 .detail-three,.detail-steps,.detail-page .detail-prices { grid-template-columns:minmax(0,1fr); }
 .detail-page .course-section { padding-block:44px; }
 .detail-hero-panel h2 { font-size:38px; }
 .detail-note,.detail-scenario { padding:22px; }
 .detail-page .course-facts > div { grid-template-columns:105px minmax(0,1fr);gap:12px; }
}
