/* Course detail pages: shared responsive layout. */
.course-language-options { padding:0 0 28px; }
.course-language-options h2 { font-size:1.6rem; margin:0 0 16px; }
.course-language-options > div { display:flex; flex-wrap:wrap; gap:12px; }
.course-language-options a { display:inline-flex; align-items:center; min-height:44px; padding:10px 20px; border:1px solid #cfddc9; border-radius:30px; background:#fff; color:#1b3b2b; font-size:.9rem; }
.course-language-options a:hover { background:#edf3e8; border-color:#aa884b; }
.course-launch-badge { display:table; margin-top:16px; padding:6px 12px; background:#f8eed5; color:#73501c; border:1px solid #ddc590; border-radius:30px; font-size:12px; font-weight:600; }
.course-concise .course-section { padding:20px 0 40px; }
.course-concise .course-overview h2 { margin:0 0 12px; }
.course-concise .course-overview dl { margin:0; }
.course-concise .course-overview dl div:last-child { border-bottom:0; }
.course-concise .course-topic h3 { margin:0 0 10px; }
.course-concise .course-intro { font-size:1.08rem; line-height:1.8; }
.course-concise .course-cta { display:flex; align-items:center; justify-content:space-between; gap:28px; padding:28px 32px; }
.course-concise .course-cta h2 { margin:0 0 10px; font-size:1.8rem; }
.course-concise .course-cta p { margin:0; }
.course-concise .course-cta .button { flex-shrink:0; }
@media(max-width:640px) { .course-concise .course-cta { flex-direction:column; align-items:stretch; padding:24px; } }
.course-overview dd a,.course-class-details a { overflow-wrap:anywhere; text-decoration:underline; text-underline-offset:3px; }
.course-class-details { margin:24px 0; padding:20px 24px; border:1px solid #dce3da; border-radius:12px; background:#fff; }
.course-class-details dl { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; margin:0; }
.course-class-details dt { font-size:.75rem; color:var(--muted); }
.course-class-details dd { margin:4px 0 0; font-size:.9rem; }
@media(max-width:640px) { .course-class-details dl { grid-template-columns:1fr; } }
.course-main{padding-top:2rem}.course-main .breadcrumbs{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem}.course-main .breadcrumbs span{margin:0}.course-main .breadcrumbs span[aria-current]{color:var(--muted)}
.course-skip{position:absolute;top:-100px;left:20px;z-index:2000;background:var(--green);color:white;padding:12px}.course-skip:focus{top:10px}
.course-hero{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(280px,1fr);gap:64px;padding:36px 0 54px;align-items:center}.course-hero h1{font-size:clamp(2.5rem,5vw,4.8rem);letter-spacing:-.04em;margin:20px 0;overflow-wrap:anywhere}.course-tagline{font:1.4rem/1.5 var(--serif);color:var(--green);max-width:540px}.course-intro{color:var(--muted);max-width:540px}.course-actions{display:flex;align-items:center;flex-wrap:wrap;gap:20px;margin-top:28px}.course-actions .button{text-align:center;white-space:normal;max-width:100%}.course-text-link{font-size:.85rem;font-weight:600;text-decoration:underline;text-underline-offset:5px;text-decoration-color:var(--gold)}
.course-overview{border:1px solid #dce3da;border-top:4px solid var(--gold);background:#fff;padding:32px;border-radius:4px 4px 18px 18px}.course-note{font-size:.7rem;text-transform:uppercase;letter-spacing:.15em;color:var(--muted)}.course-overview h2{font-size:1.7rem;margin:12px 0 22px}.course-overview dl{margin:0 0 24px}.course-overview dl div{border-bottom:1px solid var(--line);padding:14px 0}.course-overview dt{font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.course-overview dd{margin:5px 0 0;font-size:.9rem;color:var(--green)}
.course-jumps{display:flex;flex-wrap:wrap;gap:10px 28px;border-block:1px solid var(--line);padding:20px 0;font-size:.85rem;color:var(--green)}.course-jumps a:hover{text-decoration:underline}.course-section{padding:64px 0;scroll-margin-top:100px}.course-section h2,.course-cta h2{font-size:clamp(1.9rem,3vw,2.65rem);margin:12px 0 20px}.course-section-lede{max-width:680px;color:var(--muted);margin-bottom:30px}.course-topic-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.course-topic{background:#fff;border:1px solid var(--line);padding:28px;border-radius:12px}.course-number{color:var(--gold);font-size:.8rem;letter-spacing:.1em}.course-topic h3{font-size:1.3rem;margin:18px 0 12px}.course-topic p{font-size:.92rem;color:var(--muted);margin:0;line-height:1.8}
.course-practice{display:grid;grid-template-columns:1.1fr 1fr;gap:54px;background:#edf2ed;border-radius:18px;padding:40px}.course-practice p{color:#46584b;line-height:1.9}.course-caption{display:block;font-size:.76rem;color:var(--muted)}.course-method h3{font-size:1.4rem;margin-top:0}.course-method ol{list-style:none;counter-reset:steps;margin:0;padding:0}.course-method li{counter-increment:steps;position:relative;padding:0 0 20px 38px}.course-method li:before{content:counter(steps);position:absolute;left:0;top:2px;width:24px;height:24px;text-align:center;border:1px solid #a4b6a6;border-radius:50%;font-size:.8rem;color:var(--green)}.course-method li strong{display:block;font-size:.9rem}.course-method li span{display:block;color:var(--muted);font-size:.85rem;margin-top:4px}.course-outcomes{list-style:none;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.course-outcomes li{border-left:3px solid var(--gold);padding:10px 20px;font-size:1.05rem;color:var(--green)}
.course-faq{border-top:1px solid var(--line)}.course-faq details{border-bottom:1px solid var(--line);padding:20px 0}.course-faq summary{cursor:pointer;font-weight:600;font-size:.95rem}.course-faq details p{max-width:800px;color:var(--muted);font-size:.95rem}.course-faq details a{text-decoration:underline;color:var(--green)}.course-related{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.course-related a{display:flex;justify-content:space-between;align-items:center;gap:20px;border:1px solid var(--line);background:#fff;border-radius:8px;padding:22px;color:var(--green)}.course-related a:hover{border-color:var(--green)}.course-cta{padding:44px;background:var(--green);color:#fff;border-radius:18px}.course-cta .eyebrow{color:#e3c48b}.course-cta p{color:#e0e8df;max-width:680px}.course-cta .button{background:#fff;color:var(--green);border-color:white}.course-cta .button:hover{background:#edf2ed}.course-cta .course-text-link{color:white}
.course-main a:focus-visible,.course-main summary:focus-visible{outline:3px solid var(--gold);outline-offset:5px}
@media(max-width:900px){.course-hero{gap:30px;grid-template-columns:1fr 1fr}.course-topic-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.course-practice{gap:28px;padding:30px}.course-related{grid-template-columns:1fr}.course-outcomes{gap:16px}}
@media(max-width:640px){.course-main{padding-top:1.5rem}.course-hero{grid-template-columns:1fr;padding-top:20px;gap:26px}.course-hero h1{font-size:2.65rem}.course-topic-grid,.course-practice,.course-outcomes{grid-template-columns:1fr}.course-overview,.course-topic{padding:24px}.course-section{padding:42px 0}.course-practice{padding:26px}.course-cta{padding:28px}.course-actions{align-items:stretch;flex-direction:column}.course-jumps{gap:14px 22px}.course-hero .eyebrow{font-size:.68rem}.course-cta .button{font-size:.8rem}}

/* Subject background illustrations. */
.course-main[data-course] { position:relative; isolation:isolate; background:#f9faf7; }
.course-main[data-course]::before { content:""; position:absolute; inset:0; z-index:-1; pointer-events:none; background-image:var(--course-pattern); background-size:640px 500px; }
.course-main[data-course] .course-hero { position:relative; padding:32px; margin:24px 0 32px; border:1px solid #dce5da; border-radius:20px; background:linear-gradient(110deg,rgba(240,246,237,.94),rgba(249,250,247,.55)); box-shadow:0 12px 36px rgba(27,59,43,.035); }
.course-main[data-course] .course-overview { box-shadow:0 8px 24px rgba(27,59,43,.04); }
.course-main[data-course] .course-jumps { background:rgba(249,250,247,.94); }
.course-main[data-course] .course-faq details { background:rgba(249,250,247,.94); }
@media(max-width:640px) {
 .course-main[data-course]::before { background-size:480px 375px; }
 .course-main[data-course] .course-hero { padding:22px; margin:18px 0 24px; border-radius:14px; }
}
.course-main[data-course="quran-tajweed"] { --course-pattern:url("/images/course-backgrounds/quran-tajweed.svg?v=97b63e2cb1e9"); }
.course-main[data-course="statistics"] { --course-pattern:url("/images/course-backgrounds/statistics.svg?v=198bbaf354ad"); }
.course-main[data-course="accounting"] { --course-pattern:url("/images/course-backgrounds/accounting.svg?v=49b3b1829732"); }
.course-main[data-course="coding"] { --course-pattern:url("/images/course-backgrounds/coding.svg?v=26f78c21ce56"); }
.course-main[data-course="calculus"] { --course-pattern:url("/images/course-backgrounds/calculus.svg?v=9c928e0f2d96"); }
.course-main[data-course="physics"] { --course-pattern:url("/images/course-backgrounds/physics.svg?v=9b844a785e12"); }
.course-main[data-course="chemistry"] { --course-pattern:url("/images/course-backgrounds/chemistry.svg?v=40cc6f724591"); }
.course-main[data-course="biology"] { --course-pattern:url("/images/course-backgrounds/biology.svg?v=71cc44888728"); }
.course-main[data-course="o-a-levels"] { --course-pattern:url("/images/course-backgrounds/o-a-levels.svg?v=768a16862748"); }
.course-main[data-course="languages"] { --course-pattern:url("/images/course-backgrounds/languages.svg?v=47187f06c3b3"); }
.course-main[data-course="communication"] { --course-pattern:url("/images/course-backgrounds/communication.svg?v=616bc36f29f8"); }
.course-main[data-course="youtube-kids"] { --course-pattern:url("/images/course-backgrounds/youtube-kids.svg?v=0ec08bce6fd3"); }
.course-main[data-course="computer-fundamentals"] { --course-pattern:url("/images/course-backgrounds/computer-fundamentals.svg?v=92adc210b2b9"); }
.course-main[data-course="mathematics"] { --course-pattern:url("/images/course-backgrounds/mathematics.svg?v=8a61d3eb2f6c"); }
.course-main[data-course="it"] { --course-pattern:url("/images/course-backgrounds/it.svg?v=5781c33ea101"); }
.course-main[data-course="french"] { --course-pattern:url("/images/course-backgrounds/french.svg?v=4bc38aa112f2"); }
