.detail-hero{background:var(--navy);color:#fff;padding-block:4rem}
.breadcrumbs{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem;font-size:.875rem;line-height:1.8;color:#b7cce3;margin-bottom:2rem}
.breadcrumbs a{text-decoration:underline;text-underline-offset:4px;min-height:2.75rem;display:inline-flex;align-items:center}
.detail-hero h1{font-size:clamp(2.5rem,5vw,4.3rem);font-weight:750;letter-spacing:-.045em;line-height:1.15;margin:1rem 0 1.5rem;max-width:20ch}
.detail-hero .detail-lead{max-width:65ch;font-size:1.125rem;line-height:1.9;color:#cfdeee}
.detail-actions{display:flex;flex-wrap:wrap;gap:.85rem;margin-top:1.75rem}
.detail-hero-grid{display:grid;grid-template-columns:1.1fr 1fr;align-items:center;gap:3rem}
.detail-hero-grid>*{min-width:0}
.detail-visual{border:1px solid #526984;border-radius:.75rem;overflow:hidden;background:#122640}
.detail-visual img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover}
.detail-visual figcaption{font-size:.875rem;line-height:1.7;padding:.85rem 1rem;color:#c7d8e9}
.detail-section{padding-block:4.5rem}
.detail-section.soft{background:var(--surface);border-block:1px solid var(--line)}
.detail-section h2{font-size:clamp(2rem,3.5vw,2.9rem);line-height:1.2;font-weight:750;letter-spacing:-.04em;margin-bottom:1.3rem}
.detail-prose{max-width:75ch;color:var(--muted);font-size:1rem;line-height:1.9}
.detail-prose p+p{margin-top:1rem}
.detail-prose a,.detail-faq a{color:var(--blue);text-decoration:underline;text-underline-offset:4px}
.objective-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-top:2rem}
.info-card{min-width:0;padding:1.6rem;border:1px solid var(--line);border-radius:.75rem;background:#fff}
.info-card>span{font-size:.875rem;font-weight:600;color:#345ca5;line-height:1.6}
.info-card h3{font-size:1.35rem;line-height:1.35;font-weight:750;letter-spacing:-.025em;margin:.65rem 0 .8rem}
.info-card p{font-size:1rem;line-height:1.85;color:var(--muted)}
.detail-section .course-grid{margin-top:2rem}
.detail-status{font-size:.9375rem;color:#506784;line-height:1.9;border-left:3px solid var(--blue);padding-left:1.2rem;margin-top:1.7rem;max-width:75ch}
.detail-faq{max-width:58rem;margin-top:2rem;border-top:1px solid var(--line)}
.detail-faq details{border-bottom:1px solid var(--line);padding-block:1.2rem}
.detail-faq summary{font-size:1.125rem;line-height:1.6;font-weight:600;cursor:pointer;min-height:2.75rem;list-style-position:outside;margin-left:1.25rem}
.detail-faq summary:focus-visible{outline:3px solid #13b9d0;outline-offset:5px;border-radius:.25rem}
.detail-faq details p{font-size:1rem;line-height:1.9;color:var(--muted);margin:.8rem 0 0 1.25rem;max-width:72ch}
.detail-cta{background:#11253e;color:#fff;padding-block:3.5rem}
.detail-cta h2{font-size:clamp(2rem,3vw,2.65rem);letter-spacing:-.04em;margin-bottom:1rem}
.detail-cta p{max-width:65ch;color:#c9d8e9;line-height:1.9;font-size:1rem}
.site-header nav a[aria-current=page]{color:var(--blue);border-color:var(--blue)}
@media(max-width:960px){.detail-hero-grid{grid-template-columns:1fr;gap:2rem}.detail-visual{max-width:42rem}.objective-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.detail-hero{padding-block:2.5rem}.breadcrumbs{margin-bottom:1.3rem}.detail-hero h1{font-size:clamp(2.25rem,9vw,3rem)}.detail-hero .detail-lead{font-size:1rem}.detail-section{padding-block:3rem}.objective-grid{grid-template-columns:1fr}.info-card{padding:1.3rem}.detail-actions .button{flex:1 1 12rem}.detail-cta{padding-block:3rem}.detail-faq summary{font-size:1rem}.detail-faq details p{margin-left:0}}
