/* Final portal layer: quiet surfaces, one accent and consistent section cards. */
:root{--v1:#196c68;--v2:#196c68;--v3:#45978a;--vgrad:linear-gradient(135deg,#196c68,#23897d);--vrain:linear-gradient(90deg,#196c68,#196c68);--primary:#196c68;--primary-hover:#125650;--primary-soft:#eaf5f2;--ink:#193347;--ink-2:#3f5362;--muted:#637581;--line:#e1e9ed;--bg:#f6f8fa}
body{background:#f6f8fa;background-image:none}
body::before,body::after,.hero::before,.page-backdrop{display:none}
.header{background:#ffffffed!important;box-shadow:none;border-bottom:1px solid var(--line)}
.brand strong{letter-spacing:-.04em}.brand small{color:var(--muted)}
.nav a.active,.nav a[aria-current=page]{background:#eaf5f2!important;color:#145f59!important;box-shadow:none}
.hero{background:linear-gradient(130deg,#eef5f3,#f6f8fa 65%);border-bottom:1px solid var(--line)}
.hero-row{padding-block:48px;gap:42px}.hero-copy h1{font-size:clamp(2rem,4.4vw,3.6rem);line-height:1.15;letter-spacing:-.045em}
.hero-copy h1 em{animation:none;color:#196c68;background:none;-webkit-text-fill-color:currentColor}
.hero-description{max-width:560px;color:var(--ink-2)}
.pill{background:#fff!important;border:1px solid #d3e6df!important;box-shadow:none;font-size:.78rem}
.hero-actions .button,.button{border-radius:12px!important;box-shadow:none!important}
.button.primary{background:#196c68!important;border-color:#196c68!important;color:white!important}
.button.primary:hover{background:#125650!important}.hero-art{transform:none;filter:none}
.hero-tile,.art-note,.art-ring{display:none}.lesson-card{transform:none!important;border:1px solid #d9e5df!important;box-shadow:0 18px 45px #19334709!important;background:#fff!important}
.lesson-head,.lesson-title,.lesson-steps{color:#193347}.lesson-bar span{background:#45978a!important}
.lesson-chip{background:#edf6f2!important;color:#196c68!important}.hero-stats{border-color:#dce6e2}
.hero-stats dt{color:#193347!important}.hero-stats dd{color:#637581}
.subjects{padding-top:48px}.section-heading h2{letter-spacing:-.035em}.learning-help{background:#edf5f2;border-color:#dce9e3;color:#196c68}
.filter{border-radius:10px;box-shadow:none!important}.filter.active{background:#196c68!important;border-color:#196c68!important;color:#fff!important}
.ready-grid{gap:22px}.subject-card{border:1px solid #dde6eb!important;border-top:1px solid #dde6eb!important;border-radius:20px!important;box-shadow:0 4px 12px #19334704!important;background:#fff!important;padding:16px!important}
.subject-card::before,.subject-card::after{display:none!important}
.subject-card .subject-cover{display:block!important;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;border-radius:12px;margin:0 0 18px!important;box-shadow:none}
.subject-card .subject-top{padding:0!important;min-height:44px}.subject-card .subject-icon{width:44px;height:44px;box-shadow:none!important;border-radius:12px}.subject-card .subject-icon img{width:40px;height:40px}
.subject-card .subject-body{padding:0!important}.subject-card h3{font-size:1.25rem;letter-spacing:-.025em;margin-top:14px}.subject-card .subject-level span{background:#eef3f5;color:#476171;border-radius:6px}
.subject-card .subject-description{color:#526674;font-size:.94rem;line-height:1.65;margin-bottom:24px}.subject-bottom{border-top:1px solid #e8eef1!important;color:#196c68;padding-top:14px!important;min-height:48px}.subject-bottom>svg{background:#edf5f2!important;color:#196c68}
@media(hover:hover){.subject-card:hover{transform:translateY(-3px);border-color:#a7c9be!important;box-shadow:0 12px 26px #1933470b!important}}
.applicant{background:#edf4f3!important;border:1px solid #dce8e3;box-shadow:none!important;border-radius:24px}.applicant-intro h2,.applicant-intro p,.applicant-points{color:#193347!important}.applicant-link{background:#fff!important;box-shadow:none!important;border:1px solid #dfe8e5!important;border-radius:14px!important}
.how-grid li,.community{box-shadow:none!important;border:1px solid #e0e8ec!important;background:#fff!important;border-radius:20px!important}.how-grid li>span{background:#edf5f2!important;color:#196c68!important;box-shadow:none!important}
.footer{background:#edf2f4!important;color:#3d5565}.footer a,.footer-title{color:#193347!important}
.search input{background:#fff;border-color:#dce5ea}.filter-row{gap:8px}
@media(max-width:700px){.hero-row{padding-block:30px}.hero-art{display:none}.ready-grid{gap:16px}.subject-card{padding:14px!important}.hero-copy h1{font-size:2.15rem}.subjects{padding-top:30px}.hero-stats{margin-top:24px}.section-heading{gap:18px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
.filter-row{max-width:100%;margin-inline:0!important;padding-inline:0!important}.dock{grid-template-columns:repeat(4,minmax(0,1fr))}.dock a,.dock button{min-width:0;overflow-wrap:anywhere}
.header-actions{min-width:0;max-width:100%;flex-wrap:wrap}
/* Override the older optional colour layer without altering its accessibility settings. */
html:root .hero{background:linear-gradient(130deg,#eef5f3,#f6f8fa 65%)!important}
html:root .hero-copy h1 :is(em,span,strong,.accent){color:#196c68!important;background:none!important;-webkit-text-fill-color:currentColor!important}
html:root .nav a.active,html:root .nav a[aria-current=page]{background:#eaf5f2!important;color:#145f59!important}
html:root .button.primary,html:root .hero-actions .button.primary{background:#196c68!important;box-shadow:none!important}
html:root .filter.active,html:root .filter[aria-pressed=true]{background:#196c68!important;box-shadow:none!important}
html:root .subject-card{border:1px solid #dde6eb!important;border-top:1px solid #dde6eb!important;box-shadow:0 4px 12px #19334704!important}
html:root .subject-card .subject-icon.has-art{box-shadow:none!important}
html:root .lesson-card{box-shadow:0 18px 45px #19334709!important}
html:root .lesson-bar>*{background:#45978a!important}
html:root .applicant{background:#edf4f3!important;box-shadow:none!important}
html:root .applicant :is(h2,p,li){color:#193347!important}
html:root .how-grid>li{border:1px solid #e0e8ec!important;box-shadow:none!important}
html:root .community{box-shadow:none!important}
html:root .account-tabs .button.primary{background:#fff!important;color:#196c68!important;box-shadow:0 2px 6px #1933470a!important}
@media(max-width:340px){.header-row{gap:8px}.header-actions{flex-basis:100%;justify-content:flex-end}.header .brand{max-width:100%}.hero-actions .button{padding-inline:8px;font-size:13px}.container{padding-inline:8px}}
