.education-intro { padding-block: 28px 36px; }
.education-intro h1 { margin-top: 14px; max-width: none; font-size: clamp(2.1rem,4vw,3.4rem); }
.education-intro .guide-lead { margin: 18px 0 22px; max-width: 760px; }
.education-start { display: flex; flex-wrap: wrap; gap: 14px 32px; align-items: center; }
.education-start > span { color: var(--muted); font-size: .875rem; }
.learning-directory { padding-block: 42px; }
.directory-heading { display: flex; justify-content: space-between; align-items: center; gap: 20px; margin-bottom: 24px; }
.directory-heading h2 { font-size: clamp(1.6rem,3vw,2rem); margin: 12px 0; }
.directory-heading p:last-child { color: var(--muted); margin-bottom: 0; }
.directory-button { min-height: 44px; padding: 10px 16px; border: 1px solid #aaa; border-radius: 6px; color: var(--ink); background: white; font: inherit; font-size: .875rem; cursor: pointer; }
.directory-button:hover { background: #f1f1f1; }
.lesson-search { background: var(--surface); border: 1px solid var(--line); border-radius: 8px; padding: 20px 24px; margin-bottom: 24px; }
.lesson-search label { display: block; font-weight: 700; margin-bottom: 10px; }
.search-controls { display: flex; gap: 12px; }
.search-controls input { width: 100%; min-width: 0; min-height: 48px; border: 1px solid #999; border-radius: 4px; padding: 12px; font: inherit; font-size: 1rem; background: white; color: var(--ink); }
.search-controls button { flex-shrink: 0; }
#search-results { font-size: .875rem; color: var(--muted); margin: 12px 0 0; }
.learning-module { border: 1px solid var(--line); border-radius: 8px; margin-bottom: 12px; scroll-margin-top: 24px; overflow: hidden; }
.learning-module > summary { display: flex; align-items: center; gap: 22px; padding: 24px; list-style: none; cursor: pointer; }
.learning-module > summary::-webkit-details-marker { display: none; }
.learning-module > summary:hover { background: #f7f7f7; }
.module-number { font-size: 1.25rem; font-weight: 700; color: #914300; }
.module-copy { flex: 1; }
.module-copy h2 { font-size: 1.25rem; line-height: 1.4; margin: 0; }
.module-description { display: block; margin-top: 6px; font-size: .9375rem; line-height: 1.6; color: var(--muted); }
.module-count { font-size: .8125rem; color: var(--muted); white-space: nowrap; }
.module-chevron { font-size: 1.5rem; width: 24px; text-align: center; color: #914300; }
.learning-module[open] > summary { background: var(--surface); border-bottom: 1px solid var(--line); }
.learning-module[open] .module-chevron { transform: rotate(45deg); }
.module-lessons { list-style: none; padding: 0 24px; margin: 0; }
.lesson-row + .lesson-row { border-top: 1px solid var(--line); }
.lesson-row a { display: flex; align-items: flex-start; gap: 20px; padding: 19px 0; }
.lesson-row a:hover strong { text-decoration: underline; text-underline-offset: 4px; }
.lesson-index { font-size: .8125rem; color: #914300; padding-top: 3px; }
.lesson-row strong { font-size: 1rem; line-height: 1.5; }
.lesson-description { display: block; color: var(--muted); font-size: .875rem; line-height: 1.65; margin-top: 5px; }
.lesson-arrow { margin-left: auto; padding-left: 12px; color: #914300; }
.learning-directory [hidden] { display: none !important; }
.learning-directory :is(summary,button,input,a):focus-visible { outline: 3px solid #914300; outline-offset: 3px; }
.learning-module > summary:focus-visible { outline-offset: -4px; }
@media(max-width:600px) {
 .directory-heading { align-items: flex-start; flex-direction: column; }
 .learning-directory { padding-block: 28px; }
 .lesson-search { padding: 18px; }
 .search-controls { flex-wrap: wrap; }
 .learning-module > summary { gap: 12px; padding: 18px 14px; flex-wrap: wrap; }
 .module-copy { flex-basis: calc(100% - 75px); }
 .module-copy h2 { font-size: 1.125rem; }
 .module-description { font-size: .875rem; }
 .module-count { margin-left: 34px; }
 .module-chevron { margin-left: auto; }
 .module-lessons { padding-inline: 16px; }
 .lesson-row a { gap: 12px; }
 .lesson-arrow { padding-left: 0; }
}
