.learning-course { background:#f8f6f0; color:#172c3e; padding-bottom:3rem; }
.learning-course .frame { max-width:1180px; }
.course-breadcrumbs { display:flex; flex-wrap:wrap; gap:1.1rem; padding-top:1.5rem; font-size:.9rem; }
.course-hero { padding:3.5rem 0 2.5rem; max-width:1000px; }
.course-hero h1 { font:500 clamp(2.5rem,6vw,5rem)/1.08 Georgia,serif; letter-spacing:-.035em; margin:1rem 0 1.7rem; }
.course-lead { font-size:1.3rem; max-width:760px; line-height:1.7; }
.course-section { border-top:1px solid #b9c7c7; padding:2.8rem 0; }
.course-section h2 { font:500 clamp(1.8rem,3vw,2.5rem)/1.2 Georgia,serif; margin:0 0 1.4rem; }
.course-section h3 { font:600 1.35rem/1.4 Georgia,serif; }
.course-section p,.course-section li { line-height:1.75; }
.course-section>p,.course-section>ul,.course-section>ol { max-width:850px; }
.course-downloads { display:flex; flex-wrap:wrap; gap:.7rem 1.5rem; padding:1.5rem 0 .3rem; }
.course-downloads a,.course-next a,.lesson-list>li>a { text-underline-offset:.3em; font-weight:650; }
.course-cards { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:2.5rem; }
.course-cards article { border-left:3px solid #13786f; padding-left:1.5rem; }
.lesson-list { list-style:none; padding:0; }
.lesson-list li { border-bottom:1px solid #d6d9d4; padding:1.5rem 0; }
.lesson-list h3 { margin:.4rem 0; }
.slide-index { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.5rem 2rem; margin:1.5rem 0 3rem; }
.slide-index a { font-size:.95rem; }
.course-slide { scroll-margin-top:7rem; border:1px solid #b9c7c7; border-top:5px solid #13786f; margin:2rem 0; padding:2rem; background:#fffefa; }
.course-slide h3 { font-size:clamp(1.4rem,3vw,2rem); margin:.5rem 0 1.2rem; }
.slide-number,.eyebrow { text-transform:uppercase; letter-spacing:.12em; font-size:.78rem; font-weight:700; color:#17655f; }
.slide-content { font-size:1.1rem; max-width:900px; }
.slide-narration { border-top:1px solid #d6d9d4; margin-top:1.7rem; padding-top:1.3rem; max-width:950px; }
.slide-narration summary,.course-question summary { cursor:pointer; font-weight:650; line-height:1.6; }
.slide-narration p { color:#3d5060; }
.slide-next { display:inline-block; margin-top:.8rem; }
.course-question { border-bottom:1px solid #d6d9d4; padding:1.2rem 0; max-width:900px; }
.exercise-auth { background:#e7f0ec; padding:1.5rem; margin:2rem 0; }
.course-exercise { padding:2rem 0; border-bottom:1px solid #b9c7c7; max-width:920px; }
.course-exercise fieldset { border:0; margin:0; padding:0; }
.exercise-field { margin:1.25rem 0; max-width:700px; }
.exercise-field label { display:block; font-weight:650; line-height:1.6; margin-bottom:.45rem; }
.exercise-field input,.exercise-field select,.exercise-field textarea { display:block; max-width:100%; width:100%; border:1px solid #70838a; border-radius:3px; padding:.75rem; background:white; color:#172c3e; font:inherit; box-sizing:border-box; }
.exercise-field input[type=number] { max-width:260px; }
.exercise-field small { display:block; margin-top:.5rem; }
.learning-course button { background:#0b4e49; color:white; border:1px solid #0b4e49; border-radius:3px; padding:.8rem 1.2rem; font:600 1rem/1.3 system-ui,sans-serif; cursor:pointer; min-height:44px; }
.learning-course button:disabled { opacity:.6; cursor:wait; }
.learning-course a:focus-visible,.learning-course button:focus-visible,.learning-course input:focus-visible,.learning-course textarea:focus-visible,.learning-course select:focus-visible,.learning-course summary:focus-visible { outline:3px solid #bd6a1b; outline-offset:4px; }
.field-feedback:empty { display:none; }
.field-feedback[data-result=correct] { color:#12614b; }
.field-feedback[data-result=retry] { color:#9b3524; }
.exercise-status { font-size:.95rem; }
.course-next { display:flex; justify-content:space-between; gap:2rem; margin:2.5rem 0; }
.course-copyright { font-size:.85rem; color:#516270; max-width:900px; }
.visually-hidden { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
[hidden] { display:none!important; }
@media(max-width:760px) { .course-cards,.slide-index { grid-template-columns:1fr; } .course-slide { padding:1.25rem; } .course-hero { padding-top:2rem; } .course-next { flex-direction:column; } .course-downloads { flex-direction:column; gap:1rem; } }
@media print { .site-header,.site-footer,.course-downloads,.exercise-auth,.course-next,.slide-next,.course-exercise button { display:none; } .course-slide { break-inside:avoid; } .learning-course { background:white; } }

.course-figure {margin:1.5rem 0;max-width:720px;}
.course-figure img {display:block;width:100%;height:auto;}
.course-figure figcaption {font-size:.9rem;line-height:1.6;color:#3d5060;margin-top:.8rem;}

#lesson-video{display:block;width:100%;height:auto;max-height:85vh;background:#091831;border-radius:12px} .video-chapters ol{display:grid;gap:.5rem;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));padding:1rem 0;list-style:none}.video-chapters button{width:100%;min-height:44px;text-align:left;padding:.75rem 1rem;border:1px solid #176b63;border-radius:6px;background:#fffdf7;color:#091831;font:inherit;cursor:pointer}.video-chapters button:hover{background:#edf7f3}.video-chapters button:focus-visible{outline:3px solid #176b63;outline-offset:3px}.video-status:empty{display:none}

.course-availability { padding:1rem 1.25rem; margin:1.5rem 0 0; border:1px solid currentColor; border-radius:.35rem; font-size:1rem; line-height:1.6; }

/* Large catalogue: bounded cards, compact filters, keyboard-visible controls. */
.catalogue-filters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;align-items:end;margin:1.5rem 0}.catalogue-filters[hidden]{display:none}.catalogue-filters label{display:block;font-weight:600;margin-bottom:.35rem}.catalogue-filters input,.catalogue-filters select{box-sizing:border-box;width:100%;min-height:2.8rem;padding:.6rem;border:1px solid #66778a;border-radius:.3rem;background:#fff;color:#091831}.catalogue-filters button,#catalogue-pagination button{min-height:2.8rem;padding:.6rem 1rem;border:1px solid #66778a;border-radius:.3rem;cursor:pointer}.catalogue-card{min-width:0}.catalogue-card p:first-child{font-size:.8rem;letter-spacing:.04em;color:#47566b}.catalogue-card p{overflow-wrap:anywhere}#catalogue-status:focus{outline:2px solid #3370a0;outline-offset:4px}#catalogue-directory{margin-top:1.5rem}#catalogue-directory summary{cursor:pointer;font-weight:600}#catalogue-directory li{padding:.4rem 0}#learning-pathways article{border-top:1px solid #ccd5de;padding:1.5rem 0}@media(max-width:700px){.catalogue-filters{grid-template-columns:1fr}.catalogue-filters button{width:100%}}
