/* Page navigation and useful editorial labels, version 14. */
.breadcrumbs{margin:0 0 24px;padding:0}
.breadcrumbs ol{display:flex;flex-wrap:wrap;align-items:center;gap:9px;margin:0;padding:0;list-style:none}
.breadcrumbs li{display:flex;align-items:center;gap:9px;min-width:0}
.breadcrumbs a{display:inline-flex;align-items:center;gap:9px;min-height:46px;padding:8px 15px 8px 10px;border:1px solid var(--border);border-radius:15px;background:linear-gradient(145deg,var(--surface2),var(--surface));font-size:12px;font-weight:550;line-height:1.5;color:var(--text);box-shadow:inset 0 1px 0 #ffffff0a;text-decoration:none}
.breadcrumbs a:where(:visited,:hover,:focus-visible,:active){color:var(--text)}
.breadcrumbs a:hover{border-color:var(--accent);background:var(--surface2)}
.breadcrumbs .crumb-art{width:28px;height:28px;flex-shrink:0;object-fit:contain}
.breadcrumb-divider{width:13px;height:13px;color:var(--muted);flex-shrink:0}
.editorial-note{display:flex;align-items:center;justify-content:center;gap:13px;width:fit-content;max-width:100%;margin:26px auto 0;padding:12px 21px 12px 12px;border:1px solid var(--border);border-radius:18px;background:var(--surface);box-shadow:inset 0 1px 0 #ffffff08}
.editorial-note .art{width:37px;height:37px;flex-shrink:0}.editorial-note p{font-size:12px;line-height:1.7;margin:0}
.format-heading .tempo-label{display:inline-flex;align-items:center;gap:11px;margin:0 auto 22px;padding:9px 19px 9px 10px;border:1px solid var(--border);border-radius:17px;background:var(--bg);font-size:13px;line-height:1.5;color:var(--text)}
.tempo-label .art{width:31px;height:31px;object-fit:contain}
#schools.section{padding-bottom:35px}.format-section{margin-top:18px}
@media(max-width:600px){.breadcrumbs{margin-bottom:20px}.breadcrumbs ol{gap:7px}.breadcrumbs li{gap:6px}.breadcrumbs a{min-height:44px;gap:7px;font-size:11px;padding:8px 11px 8px 8px;border-radius:13px}.breadcrumbs .crumb-art{width:24px;height:24px}.breadcrumb-divider{width:10px;height:10px}.editorial-note{align-items:start;padding:13px;gap:10px;margin-top:23px;border-radius:16px}.editorial-note .art{width:32px;height:32px}.editorial-note p{font-size:12px}.format-heading .tempo-label{margin-bottom:20px}#schools.section{padding-bottom:25px}}

/* Context belongs in a designed label, rather than a loose line on the canvas. */
.editorial-label{--label-accent:#b8ef87;display:inline-flex;align-items:center;gap:11px;max-width:100%;min-height:46px;padding:8px 17px 8px 9px;border:1px solid color-mix(in srgb,var(--label-accent) 52%,var(--border));border-radius:17px;background:linear-gradient(135deg,color-mix(in srgb,var(--label-accent) 13%,var(--surface)),var(--surface));box-shadow:inset 0 1px 0 #ffffff16,0 5px 17px #00000009;font-size:13px;font-weight:550;line-height:1.5;color:var(--text);vertical-align:middle;text-align:left;letter-spacing:0}
.editorial-label--amber{--label-accent:#ffd09b}.editorial-label--sky{--label-accent:#a9d9ef}
:root[data-theme=light] .editorial-label{--label-accent:#4b8238}:root[data-theme=light] .editorial-label--amber{--label-accent:#ac6525}:root[data-theme=light] .editorial-label--sky{--label-accent:#417a94}
.editorial-label .editorial-label-art{position:static;inset:auto;float:none;transform:none;display:block;width:36px;height:36px;flex-shrink:0;object-fit:contain;filter:drop-shadow(0 2px 3px #0000001a)}
.editorial-label .editorial-label-text{display:block;min-width:0;color:var(--text);line-height:inherit}
.editorial-label--note{padding:13px 18px 13px 12px;border-radius:21px;gap:14px;font-size:14px;font-weight:450;line-height:1.65;max-width:680px}
.editorial-label--note .editorial-label-art{width:40px;height:40px}
.editorial-label--compact{min-height:38px;padding:5px 13px 5px 7px;font-size:12px;border-radius:13px;gap:8px}.editorial-label--compact .editorial-label-art{width:27px;height:27px}
.section-context{margin:0;color:var(--text)}.section-heading>.section-context{max-width:440px}.section-context>.editorial-label--note{display:flex}
.class-heading>.section-context{margin:0}.format-heading .tempo-label{display:block;width:fit-content;margin:0 auto 22px;padding:0;border:0;background:none;box-shadow:none}
.format-heading>.section-context,.faq-heading>.section-context{width:fit-content;max-width:680px;margin:21px auto 0}
.footer-invitation>div>p:has(.editorial-label){margin-bottom:20px}
.hero .eyebrow{display:inline-flex;max-width:100%;padding:10px 17px;border:1px solid color-mix(in srgb,var(--accent) 45%,var(--border));border-radius:15px;background:color-mix(in srgb,var(--accent) 10%,var(--surface));color:var(--text);gap:11px}
.editorial-note{border-color:color-mix(in srgb,#ffd09b 45%,var(--border));background:linear-gradient(135deg,color-mix(in srgb,#ffd09b 9%,var(--surface)),var(--surface))}.editorial-note p{font-size:13px}
.hero-topics{gap:10px;margin-top:24px}.hero-topics a{--topic-fill:#d8f4a8;--topic-ink:#233c25;display:inline-flex;align-items:center;gap:8px;min-height:48px;padding:8px 13px 8px 8px;border:1px solid color-mix(in srgb,var(--topic-fill) 75%,white);border-radius:16px;background:var(--topic-fill);box-shadow:inset 0 1px 0 #ffffff60,0 4px 13px #0000000c;color:var(--topic-ink);font-size:13px;font-weight:600;line-height:1.4;text-decoration:none}
.hero-topics .topic-oge{--topic-fill:#ffd39b;--topic-ink:#4c301a}.hero-topics .topic-languages{--topic-fill:#bfdeee;--topic-ink:#223a4c}.hero-topics .topic-subjects{--topic-fill:#f1e8ce;--topic-ink:#393629}
.hero-topics a:is(:link,:visited,:hover,:focus-visible,:active){color:var(--topic-ink)}.hero-topics a:hover{background:color-mix(in srgb,var(--topic-fill) 85%,white);border-color:var(--topic-ink)}.hero-topics a:focus-visible{outline:2px solid var(--accent);outline-offset:4px}
.hero-topics a .topic-art{display:block;width:32px;height:32px;flex-shrink:0;object-fit:contain}
@media(max-width:900px){.section-heading>.section-context{max-width:100%}.class-heading>.section-context{max-width:400px}}
@media(max-width:600px){.editorial-label{min-height:44px;padding:8px 13px 8px 8px;font-size:12px;gap:9px;border-radius:15px}.editorial-label .editorial-label-art{width:32px;height:32px}.editorial-label--note{padding:12px;font-size:13px;line-height:1.65;gap:11px;align-items:flex-start;border-radius:18px}.editorial-label--note .editorial-label-art{width:34px;height:34px}.editorial-label--compact{min-height:37px;font-size:12px;gap:7px;padding:5px 10px 5px 6px;border-radius:12px}.editorial-label--compact .editorial-label-art{width:26px;height:26px}.class-heading>.section-context{margin:15px 0 0;max-width:100%}.section-heading>.section-context{margin-top:18px}.format-heading .tempo-label{margin-bottom:22px}.hero .eyebrow{padding:9px 12px;font-size:12px}.hero-topics{gap:9px}.hero-topics a{min-height:47px;font-size:12px;padding:7px 11px 7px 7px;border-radius:14px;gap:7px}.hero-topics a .topic-art{width:30px;height:30px}.editorial-note p{font-size:13px}}

/* Footer signature, version 16. */
.footer-bottom{padding:22px 26px;gap:30px;border-radius:26px;background:radial-gradient(ellipse at 0% 0%,#e9ba6810,transparent 52%),radial-gradient(ellipse at 100% 100%,#87d3ad0c,transparent 48%),var(--bg);box-shadow:inset 0 1px 0 #ffffff07;color:var(--text)}
.footer-domain{display:flex;align-items:center;gap:22px;min-width:0;text-decoration:none}
.footer-copyright{display:flex;align-items:center;justify-content:center;gap:10px;flex-shrink:0;padding:9px 15px 9px 8px;border:1px solid #d7b77845;border-radius:20px;background:linear-gradient(135deg,#cae9ad0e,#edc37d08);box-shadow:inset 0 1px 0 #ffffff0d;color:var(--text)}
.footer-year-art{position:static;display:block;width:56px;height:56px;max-width:none;object-fit:contain;flex-shrink:0;filter:drop-shadow(0 5px 5px #0002)}
.footer-year-text{white-space:nowrap;font-size:14px;line-height:1.4;font-weight:600;font-variant-numeric:tabular-nums;letter-spacing:.015em;color:var(--text)}
.footer-domain-copy{display:block;min-width:0}
.footer-domain .footer-domain-copy strong{font-size:24px;line-height:1.15;letter-spacing:-.04em;font-weight:650;color:var(--text);white-space:nowrap}
.footer-domain-copy strong span{color:#f3ca8c}
.footer-domain-copy strong em{font-size:.86em;font-style:normal;font-weight:500;color:var(--muted);letter-spacing:-.03em}
.footer-domain .footer-domain-copy small{margin-top:9px;font-size:12px;line-height:1.5;letter-spacing:.005em;color:var(--muted)}
a.footer-domain{border-radius:20px;transition:background-color .2s}
a.footer-domain:focus-visible{outline:2px solid var(--ring);outline-offset:7px}
a.footer-domain:hover .footer-copyright{border-color:#f3ca8c99;background-color:#d7b7780a}
.footer-bottom .footer-note{min-width:0;max-width:460px}
.footer-bottom .footer-note p{margin:0;font-size:12px;line-height:1.8}
.footer-bottom .footer-note p span{font-size:11px}
:root[data-theme=light] .footer-bottom{background:radial-gradient(ellipse at 0% 0%,#d9b67518,transparent 55%),var(--surface);box-shadow:inset 0 1px 0 #ffffffb3,0 8px 26px #33472b06}
:root[data-theme=light] .footer-copyright{border-color:#b58c4e55;background:linear-gradient(135deg,#f2ead3,#edf1e5);box-shadow:inset 0 1px 0 #fff9}
:root[data-theme=light] .footer-domain-copy strong span{color:#835725}
@media(max-width:900px){.footer-bottom{gap:22px;padding:20px}.footer-domain{gap:16px}.footer-domain .footer-domain-copy strong{font-size:22px}}
@media(max-width:600px){.footer-bottom{padding:18px;border-radius:24px;gap:18px}.footer-domain{display:grid;grid-template-columns:80px minmax(0,1fr);gap:14px;align-items:center}.footer-copyright{flex-direction:column;padding:8px 5px 9px;gap:2px;border-radius:18px}.footer-year-art{width:48px;height:48px}.footer-year-text{font-size:12px}.footer-domain .footer-domain-copy strong{font-size:20px}.footer-domain .footer-domain-copy small{margin-top:8px;font-size:11px;max-width:180px;line-height:1.55}.footer-bottom .footer-note{padding-top:16px}.footer-bottom .footer-note p{font-size:12px;line-height:1.75}.footer-bottom .footer-note p span{font-size:11px}}
@media(max-width:350px){.footer-bottom{padding:15px}.footer-domain{gap:11px;grid-template-columns:74px minmax(0,1fr)}.footer-domain .footer-domain-copy strong{font-size:18px}.footer-domain .footer-domain-copy small{font-size:10px}}
@media(prefers-reduced-motion:reduce){a.footer-domain{transition:none}}
