.academy-hero .hero-layout{grid-template-columns:minmax(0,1.35fr) minmax(280px,1fr);gap:4rem}.academy-hero h1{font-size:clamp(2.35rem,4.5vw,4.3rem);max-width:780px;line-height:1.13}.academy-actions{display:flex;gap:1.5rem;align-items:center;flex-wrap:wrap}.academy-caption{font-size:.85rem!important;margin-top:1.5rem!important}.academy-path-panel{background:rgba(255,255,255,0.97);color:var(--theme-ink,#002b42);padding:2rem;border-radius:24px;box-shadow:0 24px 50px #002b4233}.academy-path-panel h2{font-size:1.75rem}.academy-path-panel .eyebrow{color:#31566b}.academy-path-panel>a{display:flex;align-items:center;gap:1rem;padding:1.2rem 0;border-bottom:1px solid #d5f3fa;text-decoration:none;font-weight:700}.academy-path-panel>a span:last-child{margin-left:auto}.path-number{font-size:.8rem;color:#31566b}.academy-path-panel p:last-child{color:#31566b;font-size:.9rem}.academy-intro{max-width:800px;text-align:center;margin:4rem auto!important}.academy-intro h2{font-size:clamp(1.8rem,3vw,2.65rem)}.academy-intro>p:last-child{font-size:1.1rem;line-height:1.85}.academy-pillars .card{border-top:4px solid var(--theme-accent,#ff9019);padding:2rem}.academy-course{display:flex;flex-direction:column}.academy-course>a{margin-top:auto}.academy-tag{font-size:.8rem;font-weight:700;color:#31566b;align-self:flex-start;background:#eaf8fc;padding:.35rem .75rem;border-radius:50px}.academy-process{display:grid;grid-template-columns:1fr 1.25fr;gap:3rem;background:#eaf8fc;padding:3rem;border-radius:24px}.academy-process ol{margin:0;padding-left:1.5rem}.academy-process li{padding:.6rem 0 .8rem .5rem;line-height:1.7}.academy-faq details,.content-body details{border-bottom:1px solid #d5f3fa;padding:1rem}.academy-faq summary,.content-body summary{font-weight:700;cursor:pointer}.academy-faq details p,.content-body details p{max-width:850px;line-height:1.8}.academy-closing{text-align:center;background:#eaf8fc;padding:3rem;border-radius:24px}.academy-closing p{max-width:750px;margin:1rem auto 2rem}.academy-closing .hero-secondary{display:inline-block;margin:1rem}.public-site .content-body{max-width:900px}.public-site dl{background:#eaf8fc;border-radius:16px;padding:1.5rem;display:grid;grid-template-columns:120px 1fr;gap:.7rem}.public-site dd{margin:0}.public-site .content-body+section li{line-height:1.8;margin:.5rem 0}@media(max-width:780px){.academy-hero .hero-layout,.academy-process{grid-template-columns:1fr;gap:1.75rem}.academy-path-panel,.academy-process,.academy-closing{padding:1.5rem}.academy-intro{margin:2.5rem auto!important}.academy-hero h1{font-size:2.4rem}.public-site dl{grid-template-columns:1fr}.public-site dt{font-weight:700}}
.public-site .hero .academy-path-panel a:not(.btn){color:var(--ink,#002b42)}.public-site .hero .academy-path-panel p{color:#31566b}.academy-path-panel a:hover{background:#eaf8fc;border-radius:8px}.public-site main>.academy-pillars{grid-template-columns:repeat(3,minmax(0,1fr))}
.hero>.header-background{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}.hero>.header-shade{position:absolute;inset:0;background:linear-gradient(100deg,rgba(0,43,66,0.94),rgba(0,43,66,0.76));z-index:-1}.content-header-image:empty{display:none}.content-header-image .thumb{width:100%;height:clamp(220px,32vw,420px);object-fit:cover;}.embedded-video iframe{width:100%;aspect-ratio:16/9;min-height:200px;border:0;border-radius:12px}.embedded-video>a{display:inline-block;margin:1rem}.page-block.hero>img.thumb{width:100%;height:clamp(200px,30vw,400px);object-fit:cover}
.page-block.hero.has-header-image{min-height:320px;isolation:isolate}.page-block.hero.has-header-image>img.thumb{position:absolute;inset:0;object-fit:cover;width:100%;height:100%;z-index:-2;border-radius:inherit}.page-block.hero.has-header-image:before{content:"";position:absolute;inset:0;border-radius:inherit;background:rgba(0,43,66,0.82);z-index:-1}.embedded-video{padding:clamp(8px,2vw,22px)}
.academy-pillars.four-pillars{grid-template-columns:repeat(4,minmax(0,1fr))}@media(max-width:1000px){.academy-pillars.four-pillars{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.academy-pillars.four-pillars{grid-template-columns:1fr}}

.catalog-card{display:flex;flex-direction:column}.catalog-card>a{margin-top:auto}.catalog-tags{display:flex;flex-wrap:wrap;gap:.5rem;margin:0 0 1rem}.catalog-tags span{font-size:.8rem;background:#eaf8fc;color:#31566b;padding:.35rem .7rem;border-radius:30px}.catalog-help{padding:1.5rem;background:#eaf8fc;border-radius:16px;margin:1.5rem 0}.catalog-help a{display:inline-block;margin:.4rem 0}.filter-bar label{min-width:0}.catalog-tags span{overflow-wrap:anywhere}

.enrollment-guide{background:#eaf8fc;padding:2.5rem;border-radius:24px}.enrollment-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem;padding:0;margin:2rem 0 0;list-style:none}.enrollment-steps li{background:#ffffff;border:1px solid #d5f3fa;border-radius:18px;padding:1.5rem}.step-icon{display:flex;align-items:center;justify-content:center;width:64px;height:64px;background:#eaf8fc;border-radius:18px;color:#004267;margin-bottom:1rem}.step-icon svg{width:38px;height:38px}.home-contact{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);gap:3rem;align-items:start}.contact-form-panel{background:#ffffff;border:1px solid #d5f3fa;padding:2rem;border-radius:20px;max-width:850px}.contact-form-panel fieldset{padding:0;border:0;min-width:0;margin:0}.contact-notice{border-left:3px solid #ff9019;background:#fff4e8;padding:1rem;color:#31566b}.contact-form-panel input:disabled,.contact-form-panel textarea:disabled{background:#eaf8fc}.contact-form-panel fieldset:disabled button{opacity:.55;cursor:not-allowed}.academy-course .thumb,.academy-resources .thumb,.catalog-card .thumb{aspect-ratio:16/9;height:auto;object-fit:cover;margin-bottom:1.2rem}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(max-width:780px){.enrollment-steps,.home-contact{grid-template-columns:1fr}.enrollment-guide,.contact-form-panel{padding:1.25rem}.home-contact{gap:1rem}}

.video-card{display:flex;flex-direction:column;min-width:0}.video-poster{position:relative;overflow:hidden;aspect-ratio:16/9;background:#002b42}.video-poster .thumb{width:100%;height:100%;margin:0;object-fit:cover}.video-cover{display:flex;height:100%;align-items:center;justify-content:center;color:#ffe2bd;background:radial-gradient(circle at 70% 20%,#31566b,#002b42)}.video-cover svg{width:76px;height:76px}.video-provider{position:absolute;left:12px;bottom:12px;background:#ffffff;color:#00334f;border-radius:30px;padding:4px 12px;font-size:.8rem;font-weight:700}.video-card .embedded-video{margin:auto 0 0;padding:16px;border:1px solid #d5f3fa;background:#f5fafc}.video-card .embedded-video>a{display:block;font-size:.85rem;margin:12px 0 0}.video-privacy{font-size:.8rem!important}.video-entry{margin:12px 0}.hero:has(.header-background)>.header-shade{background:linear-gradient(90deg,rgba(0,43,66,0.6),rgba(0,43,66,0.16))}.hero:has(.header-background) .academy-path-panel{background:rgba(255,255,255,0.94)}.hero>.header-background{object-position:center center}.home-videos .grid{align-items:stretch}@media(max-width:600px){.hero:has(.header-background)>.header-shade{background:rgba(0,43,66,0.58)}.video-gallery-grid{grid-template-columns:1fr}}
.public-site #main-content{-webkit-user-select:none;user-select:none}.public-site #main-content input,.public-site #main-content textarea,.public-site #main-content select,.public-site #main-content [contenteditable=true]{-webkit-user-select:text;user-select:text}.public-site #main-content img{-webkit-user-drag:none}.video-player-card .embedded-video{padding:0;border:0;background:transparent;margin:0 0 16px}.video-player-card iframe{display:block;min-height:0;aspect-ratio:16/9}
.featured-video-section{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(24px,4vw,48px);align-items:center;padding:clamp(24px,4vw,44px);border:1px solid #d5f3fa;border-radius:24px;background:linear-gradient(135deg,#eaf8fc,#ffffff)}.featured-video-copy h2{margin:0 0 1rem}.featured-video-copy h3{font-size:1.1rem}.featured-video-note{font-size:.8rem;color:#31566b;margin-top:1rem}.featured-video-player{min-width:0;aspect-ratio:16/9;border-radius:16px;overflow:hidden;background:#002b42;box-shadow:0 12px 30px #002b4218}.featured-video-player iframe{display:block;width:100%;height:100%;border:0}.featured-video-copy .btn{margin-top:.5rem}@media(max-width:780px){.featured-video-section{grid-template-columns:1fr;padding:24px;gap:24px}.featured-video-copy h2{font-size:1.65rem}}
.public-site .academy-footer{background:#002b42;color:#d5f3fa;border-top:4px solid #ff9019;padding:56px 24px 24px;text-align:left}.footer-inner{max-width:1100px;margin:auto}.footer-top{display:grid;grid-template-columns:1.5fr .8fr 1fr 1.1fr;gap:32px;padding-bottom:36px}.footer-logo{display:flex;align-items:center;gap:14px;text-decoration:none;font-size:1.35rem;font-weight:750}.footer-logo img{border-radius:14px;flex-shrink:0}.footer-logo small{display:block;font-size:.75rem;color:#ffe2bd;font-weight:500;margin-top:6px}.footer-brand p,.footer-help p{color:#a9e6f3;font-size:.9rem;line-height:1.8}.footer-purpose{color:#ffe2bd;font-size:.85rem}.academy-footer .footer-column{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:12px;margin:0}.footer-column h2{color:#ffffff;font-size:1rem;margin:0 0 8px}.footer-column a{color:#d5f3fa;font-size:.9rem;text-decoration:none;line-height:1.65}.footer-column a:hover,.footer-bottom a:hover{text-decoration:underline;color:#ffe2bd}.footer-help p{margin:0}.academy-footer .footer-help .btn{background:#ff9019;color:#00334f;padding:11px 16px;border:0;border-radius:10px;font-weight:700}.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;border-top:1px solid #ffffff26;padding-top:24px;font-size:.8rem;color:#a9e6f3}.academy-footer .footer-bottom nav{display:flex;gap:18px;margin:0}.academy-footer .footer-bottom small{color:#a9e6f3}.academy-footer a:focus-visible{outline-color:#ffe2bd}.footer-brand,.footer-column{min-width:0}.footer-brand p{overflow-wrap:anywhere}@media(max-width:950px){.footer-top{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}}@media(max-width:540px){.public-site .academy-footer{padding:36px 24px 24px}.footer-top{grid-template-columns:1fr;gap:28px}.footer-bottom{align-items:flex-start;flex-direction:column;gap:16px}}
.public-site .academy-footer a{color:#d5f3fa}.public-site .academy-footer .footer-logo{color:#ffffff}.public-site .academy-footer a:hover{color:#ffe2bd}.public-site .academy-footer .footer-help a.btn{color:#00334f}
.public-site main .btn,.public-site main .hero-secondary{min-height:44px;padding:11px 20px;border-radius:10px;font-weight:650;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:8px;line-height:1.4;max-width:100%}.public-site main .hero-secondary{border:1px solid #ffffff80;background:transparent;color:#ffffff}.public-site main .card>a:not(.btn),.public-site main .section-heading>a,.public-site main .enrollment-steps li>a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:8px 16px;border:1px solid var(--primary);border-radius:10px;text-decoration:none;font-size:.9rem;font-weight:650;line-height:1.4;background:transparent;color:var(--primary);max-width:100%;width:fit-content}.public-site main .card>a:not(.btn):hover,.public-site main .section-heading>a:hover,.public-site main .enrollment-steps li>a:hover{background:var(--primary);color:#ffffff}.public-site main .hero-secondary:hover{background:#ffffff15}.public-site .academy-footer .developer-link,.public-site .academy-footer .developer-link:hover,.admin-site footer .developer-link,.admin-site footer .developer-link:hover{color:#ffffff;background:var(--primary);padding:4px 8px;border-radius:6px;display:inline-block;text-decoration:underline;text-underline-offset:3px}.public-site .academy-footer .developer-link{background:transparent}.public-site main .section-heading>a{flex-shrink:0}@media(max-width:600px){.public-site .section-heading{flex-wrap:wrap;gap:12px}.academy-actions{flex-wrap:wrap}}
.public-site main .academy-closing .hero-secondary{border-color:var(--primary);color:var(--primary);background:transparent}.public-site main .academy-closing .hero-secondary:hover{background:var(--primary);color:#ffffff}
body.public-site a,body.public-site a:hover,body.public-site a:focus-visible,body.admin-site a,body.admin-site a:hover,body.admin-site a:focus-visible{text-decoration:none!important}.public-site,.admin-site{--panel-shadow:0 4px 10px rgba(0,51,79,0.05),0 16px 36px rgba(0,51,79,0.1)}.public-site main .card,.admin-site main .card,.public-site .academy-path-panel,.public-site .contact-form-panel,.public-site .featured-video-section,.public-site .enrollment-guide,.public-site .enrollment-steps li,.public-site .academy-closing,.public-site main .filter-bar,.public-site main details,.admin-site main .filter-bar,.admin-site main .stat-card,.admin-site main .table-scroll,.admin-site main>form:not(.filter-bar),.admin-site main details{box-shadow:var(--panel-shadow)}.public-site main .hero{box-shadow:0 8px 18px rgba(0,51,79,0.1),0 22px 48px rgba(0,51,79,0.16)}.public-site .academy-pillars{align-items:stretch}.public-site .academy-pillars .card{display:flex;flex-direction:column;height:100%;border-top:3px solid var(--accent)}.public-site .academy-pillars .card h3{min-height:2.5em;margin:8px 0 12px}.public-site .academy-pillars .pathway-summary{flex:1;margin-bottom:24px}.public-site main .academy-pillars .card>a{margin-top:auto;align-self:flex-start;min-width:132px}.public-site main .academy-course{display:flex;flex-direction:column}.public-site main .academy-course>a{margin-top:auto}.public-site .footer-bottom nav:empty{display:none}
.public-site main .card,.public-site .enrollment-steps li{display:flex;flex-direction:column}.public-site main .card>a,.public-site .enrollment-steps li>a{margin-top:auto;align-self:flex-start}.public-site .academy-intro{padding:clamp(24px,4vw,40px);border:1px solid var(--line);border-radius:20px;background:#ffffff;box-shadow:var(--panel-shadow)}
@media(prefers-reduced-motion:no-preference){.motion-panel{opacity:0;transform:translateY(18px);transition:opacity .35s ease,transform .45s cubic-bezier(.2,.65,.3,1);transition-delay:0s}.motion-panel.is-visible{opacity:1;transform:translateY(0)}.motion-panel.is-visible[data-motion-step="1"]{transition-delay:.055s}.motion-panel.is-visible[data-motion-step="2"]{transition-delay:.11s}.motion-panel.is-visible[data-motion-step="3"]{transition-delay:.165s}.motion-panel:focus-within{opacity:1;transform:none;transition-delay:0s}}@media(prefers-reduced-motion:reduce){.motion-panel{opacity:1!important;transform:none!important;transition:none!important}}@media print{.motion-panel{opacity:1!important;transform:none!important;transition:none!important}}
.public-header-tools{display:flex;align-items:center;justify-content:flex-end;gap:14px;min-width:0}.site-search{position:relative;background:transparent!important;border:0!important;padding:0!important;color:#ffffff}.site-search>summary{display:flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:9px 12px;border:1px solid #ffffff60;border-radius:10px;list-style:none;font-size:.9rem}.site-search>summary::-webkit-details-marker{display:none}.site-search svg{width:18px;height:18px}.site-search form{position:absolute;inset-inline-end:0;top:calc(100% + 14px);width:min(390px,calc(100vw - 48px));margin:0;padding:20px;background:#ffffff;color:var(--ink);border:1px solid var(--line);border-radius:14px;box-shadow:var(--panel-shadow);z-index:50}.site-search label{margin:0;font-size:.85rem}.site-search-row{display:flex;gap:8px;align-items:center}.site-search-row input{min-width:0;flex:1;margin:8px 0 0}.site-search-row button{margin-top:8px;padding:11px 14px}.site-search summary:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.search-summary{background:#eaf8fc;border-radius:12px;padding:16px}.search-results .academy-tag{align-self:flex-start}@media(max-width:780px){.public-header-tools{gap:8px}.site-search>summary{padding:8px 10px}.site-search form{position:fixed;top:110px;inset-inline:24px;width:auto}}
.search-results{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch}.search-results>article{min-width:0}.search-results h2{font-size:1.3rem;line-height:1.4}@media(max-width:980px){.search-results{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.search-results{grid-template-columns:1fr}}
.finder-grid,.pricing-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.finder-grid h2{font-size:1.35rem;line-height:1.4}.compare-choice{display:flex;align-items:center;gap:10px;margin:12px 0}.compare-choice input{width:20px;height:20px;margin:0;accent-color:var(--brand)}.course-decisions{padding:1.5rem;border-radius:18px;background:#eaf8fc;margin:2rem 0}.course-decisions dl{display:grid;grid-template-columns:minmax(140px,.5fr) minmax(0,1fr);gap:12px}.course-decisions dd{margin:0}.curriculum-module{margin:14px 0}.curriculum-module summary{line-height:1.5}.price-amount{font-size:1.5rem;font-weight:700;color:var(--brand)}.price-amount small{font-size:.85rem}.revision-json{white-space:pre-wrap;overflow-wrap:anywhere}.course-comparison{min-width:650px}.course-comparison td{max-width:320px;vertical-align:top}@media(max-width:980px){.finder-grid,.pricing-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.finder-grid,.pricing-grid,.course-decisions dl{grid-template-columns:1fr}.course-decisions{padding:1.25rem}}

.academy-examples .example-notice{padding:1rem 1.25rem;border:1px solid var(--primary,#004267);border-radius:12px;background:#eaf8fc;color:#002b42}.academy-examples .example-profile-icon{color:#004267;margin:1rem 0}.academy-examples .grid{margin:1.5rem 0}.academy-examples small{display:block;line-height:1.7}.academy-examples .academy-tag{align-self:flex-start;font-weight:700}

/* Package catalog: at most five columns; additional cards form new rows. */
.public-site .package-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px;align-items:stretch}
.public-site .package-card{min-width:0;padding:22px 16px;border:1px solid #d5f3fa;border-radius:20px;background:linear-gradient(180deg,#ffffff 0%,#f5fafc 100%);display:flex;flex-direction:column;box-shadow:0 8px 22px #002b4210,0 2px 5px #002b4208;overflow-wrap:anywhere}
.public-site .package-card h3{font-size:1.15rem;line-height:1.3;margin:18px 0 8px;min-height:3em;color:var(--theme-ink,#002b42)}
.package-topline{display:flex;justify-content:space-between;align-items:center;gap:6px}.package-badge{font-size:.62rem;letter-spacing:.065em;font-weight:800;color:#004267;background:#eaf8fc;border:1px solid #d5f3fa;padding:6px 7px;border-radius:7px;align-self:flex-start}.package-number{color:#31566b;font-size:.72rem;font-weight:700}.package-focus{font-size:.82rem;line-height:1.5;min-height:3em;margin:0 0 16px;color:#31566b}
.package-price{display:flex;flex-wrap:wrap;gap:6px;align-items:baseline;color:#004267;padding:16px 0 0;border-top:1px solid #d5f3fa}.package-currency{font-size:.75rem;font-weight:700}.package-price strong{font-size:clamp(1.65rem,2.2vw,2.2rem);letter-spacing:-.04em;line-height:1.2}.package-period{flex-basis:100%;font-size:.7rem;color:#31566b}.package-offer{font-size:.72rem;line-height:1.6;min-height:3.4em;color:#31566b}.package-offer s{display:block;color:#31566b}.package-offer span{font-weight:700;color:#004267}
.package-features{list-style:none;padding:16px 0!important;margin:0 0 18px!important;border-top:1px solid #d5f3fa;font-size:.8rem;line-height:1.6}.package-features li{display:flex;gap:7px;margin:10px 0}.package-features li span{color:#004267;font-weight:800;flex-shrink:0}.package-footer{margin-top:auto;padding-top:16px;border-top:1px solid #d5f3fa}.package-demo-label{display:block;padding:10px 6px;text-align:center;background:#eaf8fc;color:#004267;border-radius:9px;font-size:.75rem;font-weight:700}.package-footer small{font-size:.68rem!important;line-height:1.6;margin-top:10px;color:#31566b}.public-site .package-featured{border:2px solid var(--theme-accent,#ff9019);box-shadow:0 12px 28px #002b421a}.package-featured .package-demo-label{background:#004267;color:#ffffff}
@media(max-width:1199px){.public-site .package-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:850px){.public-site .package-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.public-site .package-grid{grid-template-columns:1fr;gap:20px}.public-site .package-card{padding:26px}.public-site .package-card h3,.package-focus{min-height:0}.package-price strong{font-size:2.3rem}.package-features{font-size:.95rem}.package-badge{font-size:.7rem}}
.public-site .package-offer{font-size:.72rem;line-height:1.6;min-height:5.4em}.public-site .package-focus{font-size:.82rem;line-height:1.5}.public-site .package-footer small{font-size:.68rem;line-height:1.6}
@media(max-width:520px){.public-site .package-offer{min-height:0;margin:12px 0 18px}}

.public-site .teacher-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;align-items:stretch}.public-site .teacher-card{padding:0;border:1px solid #d5f3fa;border-radius:22px;overflow:hidden;background:#ffffff;box-shadow:0 14px 32px #002b4212;display:flex;flex-direction:column;min-width:0}.teacher-photo-slot{position:relative;aspect-ratio:4/3;background:linear-gradient(135deg,#eaf8fc,#fff4e8);overflow:hidden}.public-site .teacher-photo-slot img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 35%;aspect-ratio:4/3;margin:0}.teacher-photo-slot picture{display:block;width:100%;height:100%}.teacher-photo-label{position:absolute;bottom:14px;left:14px;background:#004267ed;color:#ffffff;padding:6px 10px;border-radius:7px;font-size:.65rem;letter-spacing:.055em;font-weight:700}.teacher-card-body{padding:24px;display:flex;flex-direction:column;gap:12px;flex:1}.teacher-specialty{color:#004267;background:#eaf8fc;border-radius:7px;padding:6px 10px;font-size:.76rem;font-weight:700;align-self:flex-start}.public-site .teacher-card-body h3{font-size:1.4rem;line-height:1.35;margin:0;color:#002b42}.public-site .teacher-card-body p{font-size:.94rem;line-height:1.75;margin:0}.teacher-profile-note{padding-top:14px;border-top:1px solid #d5f3fa;display:flex;flex-direction:column;gap:10px;margin-top:auto}.teacher-profile-note small{font-size:.74rem;color:#31566b;line-height:1.65}.teacher-course-link{display:flex!important;align-items:center;justify-content:space-between;gap:12px;width:100%;margin-top:10px!important}.teacher-photo-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:12px;color:#31566b;font-size:.82rem}
.public-site .package-course-link{display:block;font-size:.74rem;line-height:1.5;min-height:4em;margin:0 0 10px;padding:8px 10px;width:100%;background:#eaf8fc;border-color:#d5f3fa;color:#004267}.public-site .package-request-link{display:flex;justify-content:center;align-items:center;gap:5px;min-height:44px;padding:10px 8px;font-size:.74rem;line-height:1.5;width:100%;background:#004267;color:#ffffff;border:1px solid #004267;border-radius:10px;font-weight:700}.public-site .package-request-link:hover{background:#002b42;color:#ffffff}
@media(max-width:980px){.public-site .teacher-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.public-site .teacher-grid{grid-template-columns:1fr}.teacher-card-body{padding:22px}.public-site .package-course-link{min-height:0}}
.public-site main .package-card .package-footer a.package-request-link,.public-site main .package-card a.package-request-link:visited,.public-site main .package-card a.package-request-link:hover{color:#ffffff;background:#004267;border-color:#004267}

.public-site .teacher-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:16px}.teacher-grid .teacher-card-body{padding:16px;gap:10px}.public-site .teacher-grid .teacher-card-body h3{font-size:1.12rem}.public-site .teacher-grid .teacher-card-body p{font-size:.82rem}.teacher-grid .teacher-photo-label{left:8px;bottom:8px;font-size:.55rem;padding:5px 6px}.teacher-grid .teacher-specialty{font-size:.66rem;padding:5px 6px}.teacher-grid .teacher-profile-note small{font-size:.66rem}.teacher-grid .teacher-course-link{font-size:.78rem}.teacher-filter{display:flex;flex-wrap:wrap;gap:10px;margin:20px 0}.public-site main .teacher-filter a[aria-current="true"]{background:#004267;color:#ffffff}.section-more{text-align:center;margin:24px 0}.package-plan-details{font-size:.78rem;margin:0 0 20px;padding:0!important}.package-plan-details summary{font-weight:700;color:#004267;cursor:pointer;padding:10px 0}.public-site .package-plan-details p{font-size:.78rem;line-height:1.7}.price-readable{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
@media(max-width:1199px){.public-site .teacher-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:850px){.public-site .teacher-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.public-site .teacher-grid{grid-template-columns:1fr}.teacher-grid .teacher-card-body{padding:22px}.public-site .teacher-grid .teacher-card-body h3{font-size:1.35rem}.public-site .teacher-grid .teacher-card-body p{font-size:.95rem}}
.public-site main .teacher-filter a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:9px 15px;border:1px solid #d5f3fa;border-radius:10px;background:#ffffff;color:#004267;font-weight:600;font-size:.88rem}.public-site main .teacher-filter a[aria-current="true"]{background:#004267;color:#ffffff;border-color:#004267}

.course-hero-copy{padding:clamp(1.5rem,4vw,3rem);border-radius:24px;background:linear-gradient(135deg,#eaf8fc,#fff4e8);box-shadow:0 12px 36px #002b4220;margin-bottom:1.5rem}.course-hero-copy h1{margin:.75rem 0}.course-hero-copy p{max-width:65ch}.course-hero-copy .btn{margin-top:.5rem}.course-plans{scroll-margin-top:100px}.course-decisions,.course-content-panel{padding:1.5rem;border-radius:20px;background:#ffffff;box-shadow:0 8px 28px #002b4212;margin:1.5rem 0}.curriculum-module{padding:1rem;border:1px solid #d5f3fa;border-radius:14px;margin:.75rem 0}.curriculum-module summary{cursor:pointer;font-weight:600}

.contact-share-consent{display:flex;align-items:flex-start;gap:.75rem}.contact-share-consent input{width:auto!important;margin-top:.3rem}.contact-form-panel [data-contact-send][hidden]{display:none}

.job-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.job-form-grid label{min-width:0}[data-job-preview]{white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;padding:1rem;background:#f5fafc;border-radius:12px}[data-job-review][hidden]{display:none}@media(max-width:640px){.job-form-grid{grid-template-columns:1fr}}

.article-topic-card{display:flex;flex-direction:column}.article-topic-card p{flex:1}.article-topic-card .btn{align-self:flex-start}.article-catalog-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.article-catalog-grid .catalog-card{display:flex;flex-direction:column;min-width:0}.article-catalog-grid .catalog-card h2{font-size:1.3rem}.article-catalog-grid .catalog-card p{flex:1}.article-catalog-grid .catalog-card>a{align-self:flex-start;margin-top:.75rem;padding:.65rem 1rem;border-radius:10px;background:var(--primary);color:#ffffff;min-height:44px}.article-list-section{scroll-margin-top:24px}.article-list-section .filter-bar{margin-bottom:1.5rem}@media(max-width:980px){.article-catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.article-catalog-grid{grid-template-columns:1fr}}

#teacher-directory{scroll-margin-top:24px}.teacher-directory-empty{padding:clamp(1.5rem,4vw,3rem);background:linear-gradient(135deg,#eaf8fc,#fff4e8);border-top:3px solid var(--accent)}.teacher-directory-empty h3{margin-top:1rem}.teacher-directory-empty p{max-width:70ch}.teacher-directory-empty .btn{margin-top:.5rem}

.course-catalog-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.course-catalog-grid .catalog-card{display:flex;flex-direction:column;min-width:0}.course-catalog-grid .catalog-card h2{font-size:1.3rem}.course-catalog-grid .catalog-card p{flex:1}.course-catalog-grid .catalog-card>a{align-self:flex-start;margin-top:.75rem;padding:.65rem 1rem;border-radius:10px;background:var(--primary);color:#ffffff;min-height:44px}.course-list-section{scroll-margin-top:24px}.course-catalog-tools{display:flex;gap:.75rem;flex-wrap:wrap}.course-catalog-tools a{padding:.6rem 1rem;border:1px solid var(--line);border-radius:10px;background:#ffffff}.course-list-section .filter-bar{margin-bottom:1.5rem}@media(max-width:980px){.course-catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.course-catalog-grid{grid-template-columns:1fr}}

.faq-answers{scroll-margin-top:24px}.faq-answer-list{display:grid;gap:1rem}.faq-answer-list details{margin:0;padding:0;border-radius:16px;overflow:hidden;border:1px solid var(--line)}.faq-answer-list summary{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1.25rem 1.5rem;list-style:none;line-height:1.5}.faq-answer-list summary::-webkit-details-marker{display:none}.faq-answer-list summary::after{content:'+';flex:0 0 30px;display:grid;place-items:center;width:30px;height:30px;border-radius:9px;background:#eaf8fc;color:var(--primary);font-size:1.3rem}.faq-answer-list details[open]>summary{background:#eaf8fc}.faq-answer-list details[open]>summary::after{content:'−';background:#ffffff}.faq-answer-body{padding:0 1.5rem 1.25rem}.faq-answer-body p{margin:1rem 0 0;max-width:85ch}@media(max-width:600px){.faq-answer-list summary{padding:1rem}.faq-answer-body{padding:0 1rem 1rem}}

.about-story-panel{padding:clamp(1.5rem,4vw,3rem);border-radius:22px;background:#ffffff;border:1px solid var(--line);border-top:3px solid var(--accent);box-shadow:var(--panel-shadow);scroll-margin-top:24px}.about-story-panel h2{margin-top:1rem}.about-story-panel .content-body>p{max-width:85ch}.about-story-panel .content-body>p:last-child{margin-bottom:0}.about-actions{display:flex;gap:.75rem;flex-wrap:wrap}.about-next-step{margin-bottom:0}@media(max-width:600px){.about-actions .btn{flex:1;text-align:center}.about-story-panel{border-radius:16px}}

.video-library{scroll-margin-top:24px}.video-library .filter-bar{margin-bottom:1.5rem}.video-library .video-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem}.video-library .video-player-card{padding:1.25rem;border-radius:20px;overflow:hidden}.video-library .video-player-card .embedded-video{border-radius:12px;overflow:hidden;background:#002b42}.video-library .video-player-card h3{font-size:1.25rem;margin-bottom:.75rem}.video-library .video-player-card p{margin-bottom:0;color:var(--muted)}.video-library .video-player-card:only-child{grid-column:1/-1;max-width:850px;width:100%;justify-self:center}@media(max-width:780px){.video-library .video-gallery-grid{grid-template-columns:1fr}.video-library .video-player-card{padding:1rem}}

.package-plans-section{scroll-margin-top:24px}.package-plans-section>p{max-width:75ch;color:var(--muted);margin-bottom:1.5rem}.package-plans-section .package-card{border-top:3px solid var(--accent)}

/* Home follows the shared page hero and card language. */
.public-site .home-unified-hero{background:linear-gradient(135deg,#eaf8fc,#fff4e8);color:var(--ink);border:1px solid var(--line);border-top:3px solid var(--accent);border-radius:24px;padding:clamp(1.5rem,4vw,3rem);box-shadow:var(--panel-shadow)}
.public-site .home-unified-hero:has(.header-background)>.header-shade{background:linear-gradient(100deg,rgba(234,248,252,0.95),rgba(255,244,232,0.82))}
.public-site .home-unified-hero h1{font-size:clamp(2rem,4vw,3.3rem);color:var(--ink);line-height:1.2}
.public-site .home-unified-hero .hero-layout{gap:2rem}
.public-site .home-unified-hero .hero-layout>div>p{color:var(--ink)}
.public-site .home-unified-hero .package-badge{display:inline-block;color:var(--primary);font-size:.7rem;letter-spacing:.065em}
.public-site .home-unified-hero .hero-secondary,.public-site .home-unified-closing .hero-secondary{background:#ffffff;color:var(--primary);border:1px solid var(--line);padding:.75rem 1.25rem;border-radius:10px;min-height:44px}
.public-site .home-unified-hero .academy-path-panel{border:1px solid var(--line);border-top:3px solid var(--accent);border-radius:20px;padding:1.5rem;box-shadow:var(--panel-shadow)}
.public-site .academy-intro.about-story-panel{max-width:none;text-align:start;margin:3rem 0!important}
.public-site .academy-intro.about-story-panel h2{font-size:clamp(1.4rem,2.6vw,2rem)}
.public-site .academy-intro.about-story-panel p{max-width:85ch}
.public-site .academy-audiences .card{border-top:3px solid var(--accent)}
.public-site .home-unified-closing{background:linear-gradient(135deg,#eaf8fc,#fff4e8);border:1px solid var(--line);border-top:3px solid var(--accent);box-shadow:var(--panel-shadow)}
.public-site .home-unified-faq details{padding:0;border:1px solid var(--line);margin-top:1rem;border-radius:16px;overflow:hidden}
.public-site .home-unified-faq summary{padding:1.25rem 1.5rem}
.public-site .home-unified-faq details[open]>summary{background:#eaf8fc}
.public-site .home-unified-faq details p{padding:0 1.5rem 1.25rem;margin-bottom:0}
@media(max-width:780px){.public-site .home-unified-hero .hero-layout{grid-template-columns:1fr}.public-site .home-unified-hero:has(.header-background)>.header-shade{background:rgba(234,248,252,0.93)}.public-site .home-unified-hero .academy-path-panel{padding:1.25rem}}

.public-site .hero.home-unified-hero a.hero-secondary:not(.btn){color:var(--primary)}

/* Unified public actions use the academy emerald and white palette. */
body.public-site main a.btn,body.public-site main button,body.public-site main .package-request-link,body.public-site main .course-catalog-grid .catalog-card>a,body.public-site main .article-catalog-grid .catalog-card>a{background:var(--primary,#00334f);color:#ffffff;border:1px solid var(--primary,#00334f);border-radius:10px;min-height:44px;text-align:center;transition:background-color .15s,border-color .15s,box-shadow .15s}
body.public-site main a.btn:hover,body.public-site main button:hover,body.public-site main .package-request-link:hover,body.public-site main .course-catalog-grid .catalog-card>a:hover,body.public-site main .article-catalog-grid .catalog-card>a:hover{background:#00334f;color:#ffffff;border-color:#00334f;filter:none;box-shadow:0 4px 12px #00334f20}
body.public-site main a.hero-secondary,body.public-site main .course-catalog-tools a,body.public-site main .filter-bar>a{background:#ffffff;color:var(--primary,#00334f);border:1px solid var(--primary,#00334f);border-radius:10px;min-height:44px;padding:.65rem 1rem;display:inline-flex;align-items:center;justify-content:center}
body.public-site main a.hero-secondary:hover,body.public-site main .course-catalog-tools a:hover,body.public-site main .filter-bar>a:hover{background:#eaf8fc;color:#00334f;border-color:#00334f}
body.public-site main a.btn:focus-visible,body.public-site main button:focus-visible{outline:3px solid var(--accent,#ff9019);outline-offset:3px}
body.public-site main button:disabled{opacity:.55;cursor:not-allowed;box-shadow:none}
@media(prefers-reduced-motion:reduce){body.public-site main a.btn,body.public-site main button{transition:none}}

.public-site .home-unified-hero:has(.header-background)>.header-shade{background:linear-gradient(100deg,rgba(234,248,252,0.86),rgba(255,244,232,0.58))}
@media(max-width:780px){.public-site .home-unified-hero:has(.header-background)>.header-shade{background:linear-gradient(180deg,rgba(234,248,252,0.86),rgba(234,248,252,0.72))}}

.public-site .content-body.faq-answer-list{max-width:none;width:100%;gap:1rem}
.public-site .faq-answer-list details{padding:0;background:#ffffff;border:1px solid #d5f3fa;box-shadow:0 4px 16px #00334f0a;border-radius:16px}
.public-site .faq-answer-list summary{padding:1.25rem 1.5rem;gap:1rem;min-height:78px;font-size:1.05rem;font-weight:650;line-height:1.55;color:var(--ink)}
.faq-question-number{display:grid;place-items:center;flex:0 0 38px;height:38px;border-radius:10px;background:#eaf8fc;color:var(--primary);font-size:.8rem;font-weight:750}
.faq-question-text{flex:1;min-width:0;overflow-wrap:anywhere}
.public-site .faq-answer-list summary::after{margin-inline-start:auto;flex:0 0 32px;height:32px;width:32px}
.public-site .faq-answer-list details[open]{border-color:#a9e6f3;border-inline-start:3px solid var(--primary)}
.public-site .faq-answer-list details[open]>summary{background:#eaf8fc;border-bottom:1px solid #d5f3fa}
.public-site .faq-answer-body{padding:1.25rem 1.5rem 1.5rem;padding-inline-start:calc(1.5rem + 54px);color:var(--ink);line-height:1.85}
.public-site .faq-answer-body p{margin:0;max-width:85ch;font-size:1rem}
@media(max-width:600px){.public-site .faq-answer-list summary{padding:1rem;gap:.75rem;font-size:1rem;min-height:72px}.faq-question-number{flex-basis:30px;height:30px;font-size:.72rem}.public-site .faq-answer-body{padding:1rem;font-size:.95rem}.public-site .faq-answer-list summary::after{flex-basis:28px;width:28px;height:28px}}

.about-story-layout{display:grid;grid-template-columns:220px minmax(0,1fr);gap:2.5rem;align-items:center}.about-story-logo{padding:1.25rem;background:#f5fafc;border:1px solid var(--line);border-radius:20px}.about-story-logo img{display:block;width:100%;height:auto;object-fit:contain}.about-story-copy{min-width:0}@media(max-width:640px){.about-story-layout{grid-template-columns:1fr;gap:1.5rem}.about-story-logo{width:160px;justify-self:center}}

.page-brand-mark{float:right;margin:0 0 1rem 1.5rem;width:88px;height:88px;padding:8px;background:#ffffff;border:1px solid var(--line);border-radius:16px;box-shadow:0 4px 14px #00334f0c}.page-brand-mark img{display:block;width:100%;height:100%;object-fit:contain}.course-hero-copy{display:flow-root}.home-unified-hero .page-brand-mark{width:76px;height:76px;margin-bottom:.75rem}.auth-site main>form .page-brand-mark{float:none;margin:0 auto 1.5rem;width:100px;height:100px}@media(max-width:600px){.page-brand-mark,.home-unified-hero .page-brand-mark{width:64px;height:64px;padding:6px;margin:0 0 .75rem .75rem;border-radius:12px}.course-hero-copy>h1{clear:both;padding-top:.5rem}}

.landing-section-image{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;border:1px solid var(--line)}.landing-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:2rem;align-items:center}.landing-split>div{min-width:0}.public-site .academy-pillars .pathway-image-card .thumb{width:100%;aspect-ratio:3/2;height:auto;object-fit:cover;margin-bottom:1.5rem}.public-site .academy-audiences .landing-section-image{margin-bottom:1.5rem}.public-site .academy-audiences .card{display:flex;flex-direction:column}.public-site .academy-audiences .card>p:not(.eyebrow){flex:1}.public-site .academy-audiences .card>a{align-self:flex-start}.home-contact .landing-section-image{margin-top:1.5rem}.home-unified-closing .landing-split{text-align:start}.home-unified-closing .landing-split p{margin:1rem 0 1.5rem}.home-unified-faq .landing-split{align-items:start}.home-unified-faq .landing-section-image{position:sticky;top:24px}@media(max-width:780px){.landing-split{grid-template-columns:1fr;gap:1.5rem}.landing-section-image{max-height:340px}.home-unified-faq .landing-section-image{position:static}.home-unified-closing .landing-split{text-align:start}}

.public-site .academy-pillars .pathway-image-card .landing-section-image{margin-bottom:1.5rem;}

.public-site .course-catalog-hero{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:2rem;align-items:center}.course-catalog-hero-copy,.course-catalog-hero-image{min-width:0}.course-catalog-hero-copy .page-brand-mark{width:64px;height:64px}.course-catalog-hero-image .landing-section-image{box-shadow:var(--panel-shadow)}@media(max-width:780px){.public-site .course-catalog-hero{grid-template-columns:1fr;gap:1.5rem}.course-catalog-hero-image .landing-section-image{max-height:320px}}

.teacher-hero-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;align-items:start}.teacher-hero-pair figure{margin:0;background:#ffffff;border:1px solid var(--line);border-top:3px solid var(--accent);overflow:hidden;box-shadow:var(--panel-shadow)}.teacher-hero-pair img{display:block;width:100%;height:auto;aspect-ratio:3/4;object-fit:cover;object-position:45% 30%}.teacher-hero-pair figcaption{padding:.75rem;font-size:.75rem;color:var(--muted);text-align:center}.teacher-illustration-note{font-size:.75rem;margin:1rem 0 0;color:var(--muted)}@media(max-width:600px){.teacher-hero-pair{gap:.75rem}.teacher-hero-pair figcaption{font-size:.65rem;padding:.6rem}}

.teacher-source-notice{padding:1rem 1.25rem;background:#eaf8fc;border-inline-start:3px solid var(--accent);border-radius:12px;font-size:.9rem;line-height:1.7}.teacher-illustration-label{position:absolute;bottom:8px;inset-inline-start:8px;padding:.3rem .6rem;background:#ffffff;color:var(--primary);font-size:.65rem;border-radius:6px}.supplied-teacher-grid .teacher-card-body h3{min-height:3em}.supplied-teacher-specialty{font-weight:600;color:var(--primary);min-height:7em}.public-site .supplied-teacher-grid .teacher-facts{display:block;margin:0;padding:.75rem;background:#eaf8fc;border-radius:10px}.teacher-facts dt{font-size:.65rem}.teacher-facts dd{font-size:.75rem;margin:0 0 .5rem}.teacher-facts dd:last-child{margin:0}.supplied-teacher-bio{padding:.75rem!important;margin-top:auto;font-size:.8rem}.supplied-teacher-bio-text{max-height:340px;overflow:auto;margin-top:1rem;padding-inline-end:.5rem}.supplied-teacher-bio-text p{margin-bottom:1rem!important}.supplied-teacher-grid .teacher-course-link{padding:.65rem .75rem;border:1px solid var(--primary);border-radius:10px;font-size:.75rem}.supplied-teacher-grid .teacher-course-link:hover{background:#eaf8fc}@media(max-width:600px){.supplied-teacher-grid .teacher-card-body h3,.supplied-teacher-specialty{min-height:0}.teacher-facts dt{font-size:.75rem}.teacher-facts dd{font-size:.9rem}}

.public-site .supplied-teacher-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.teacher-directory-pagination{display:flex;justify-content:center;align-items:center;gap:.75rem;flex-wrap:wrap;margin-top:2rem}.teacher-directory-pagination>a{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:.65rem 1rem;border:1px solid var(--line);background:#ffffff;border-radius:10px}.teacher-directory-pagination>a[aria-current]{background:var(--primary);color:#ffffff;border-color:var(--primary)}@media(max-width:980px){.public-site .supplied-teacher-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.public-site .supplied-teacher-grid{grid-template-columns:1fr}}

.supplied-teacher-grid .teacher-photo-slot{aspect-ratio:1/1;padding:1.25rem;background:#eaf8fc}.public-site .supplied-teacher-grid .teacher-photo-slot img{aspect-ratio:1/1;object-fit:contain;width:100%;height:100%;}.teacher-hero-pair img{aspect-ratio:1/1;object-fit:contain;padding:.75rem;background:#eaf8fc}.teacher-profile-hero{display:grid;grid-template-columns:200px minmax(0,1fr);gap:2rem;align-items:center}.teacher-profile-icon{width:100%;height:auto;}.teacher-profile-facts dl{margin:0}.teacher-profile-hero h1{font-size:clamp(1.8rem,3.5vw,3rem)}@media(max-width:640px){.teacher-profile-hero{grid-template-columns:1fr;gap:1rem}.teacher-profile-icon{width:150px;justify-self:center}}

/* Keep pagination labels readable despite general theme link colors. */
body.public-site main .teacher-directory-pagination>a:not(.btn){color:var(--primary,#00334f);background:#ffffff;border-color:#a9e6f3;font-weight:700}
body.public-site main .teacher-directory-pagination>a[aria-current="page"]:not(.btn){color:#ffffff;background:var(--primary,#00334f);border-color:var(--primary,#00334f)}
body.public-site main .teacher-directory-pagination>a.btn{color:#ffffff;background:var(--primary,#00334f);border-color:var(--primary,#00334f)}
body.public-site main .teacher-directory-pagination>a:hover:not([aria-current="page"]):not(.btn){color:#00334f;background:#eaf8fc;border-color:#00334f}
body.public-site main .teacher-directory-pagination>a:focus-visible{outline:3px solid var(--accent,#ff9019);outline-offset:3px}

.course-student-choice{margin-bottom:1rem}.course-student-choice label{font-size:.8rem;margin:0}.course-student-choice select{min-height:44px;margin:.4rem 0 .75rem;padding:.65rem .5rem;font-size:.8rem}.course-student-choice p{font-size:.85rem;font-weight:700;color:var(--primary);margin:0 0 .5rem}.course-student-choice small{display:block;line-height:1.5}.package-card:has([data-course-students]) .package-period::after{content:' per separate plan'}
.article-hero .course-catalog-hero-image .thumb{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;box-shadow:var(--panel-shadow);margin:0}.public-site .article-content-panel{padding:clamp(24px,4vw,40px);border:1px solid var(--line);border-radius:20px;background:#ffffff;box-shadow:var(--panel-shadow);line-height:1.85;margin:1.5rem 0;overflow-wrap:anywhere;scroll-margin-top:24px}.article-content-panel h2,.article-content-panel h3{color:var(--primary)}.article-content-panel p,.article-content-panel li{max-width:80ch}
.public-site main>.article-content-panel{width:100%;max-width:none;box-sizing:border-box;min-width:0}.public-site .article-related-content .grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:24px}.article-related-content .card{min-width:0}.article-related-content .card h3{overflow-wrap:anywhere}@media(max-width:980px){.public-site .article-related-content .grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.public-site .article-related-content .grid{grid-template-columns:1fr;gap:18px}.public-site main>.article-content-panel{padding:24px 20px}}
.course-detail-hero .course-catalog-hero-image .thumb{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;box-shadow:var(--panel-shadow);margin:0}
.duration-tabs{display:flex;gap:12px;flex-wrap:wrap;margin:1.5rem 0}.duration-tabs [role="tab"]{display:flex;align-items:center;gap:10px;min-height:48px;border:1px solid #00334f;border-radius:12px;background:#ffffff;color:#00334f;padding:12px 20px;font-weight:700}.duration-tabs [role="tab"] span{font-size:.78rem;font-weight:400;opacity:.85}.duration-tabs [aria-selected="true"]{background:#00334f;color:#ffffff;box-shadow:0 6px 16px #00334f20}.duration-tabs [role="tab"]:focus-visible{outline:3px solid #ff9019;outline-offset:3px}.course-plan-tab-panel{margin:0;padding:0;border:0;background:transparent}.course-plan-tab-panel>h3{margin:0 0 1rem}.course-plan-tabs .package-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}.course-plan-tabs .package-grid:has(.package-card:nth-child(2):last-child){grid-template-columns:repeat(2,minmax(0,1fr));max-width:calc(50% - 12px);margin-inline:auto}.course-plan-tabs [hidden]{display:none!important}@media(max-width:980px){.course-plan-tabs .package-grid,.course-plan-tabs .package-grid:has(.package-card:nth-child(2):last-child){grid-template-columns:repeat(2,minmax(0,1fr));max-width:none}}@media(max-width:600px){.duration-tabs{gap:8px}.duration-tabs [role="tab"]{flex:1;justify-content:center;padding:12px 10px;flex-direction:column;gap:3px}.course-plan-tabs .package-grid,.course-plan-tabs .package-grid:has(.package-card:nth-child(2):last-child){grid-template-columns:1fr;gap:18px}}
.public-site .article-hero,.public-site main>.article-content-panel,.public-site .article-related-content{box-sizing:border-box;width:100%;max-width:none;min-width:0;padding:clamp(24px,4vw,40px)}.public-site .article-meta-panel{display:flex;align-items:center;flex-wrap:wrap;gap:12px 24px;width:100%;box-sizing:border-box;margin:1.5rem 0;padding:18px clamp(24px,4vw,40px);border:1px solid var(--line);border-radius:14px;background:#eaf8fc;color:#31566b}.article-meta-panel p{margin:0}.public-site .article-related-content{border:1px solid var(--line);border-radius:20px;background:#ffffff;box-shadow:var(--panel-shadow);margin:1.5rem 0}.article-related-content>h2{margin-top:0}.public-site .article-related-content .card:only-child{grid-column:1/-1}.article-content-panel :where(img,video,iframe,figure){max-width:100%}.article-content-panel table{display:block;max-width:100%;overflow-x:auto}@media(max-width:600px){.public-site .article-hero,.public-site main>.article-content-panel,.public-site .article-related-content{padding:24px 20px}.public-site .article-meta-panel{padding:16px 20px;gap:8px 16px}}
/* One reading surface: metadata and article text share a single container. */
.public-site .article-reading-layout{box-sizing:border-box;width:100%;min-width:0;margin:28px 0;padding:clamp(24px,4vw,48px);background:#ffffff;border:1px solid var(--line);border-radius:20px;box-shadow:var(--panel-shadow);scroll-margin-top:24px}
.public-site .article-reading-layout .article-meta-panel{margin:0 0 28px;padding:0 0 20px;background:transparent;border:0;border-bottom:1px solid var(--line);border-radius:0;font-size:.9rem;color:var(--muted,#31566b)}
.public-site .article-reading-layout .article-content-panel{width:100%;max-width:none;margin:0;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;line-height:1.9}
.article-reading-layout .article-content-panel>:first-child{margin-top:0}.article-reading-layout .article-content-panel>:last-child{margin-bottom:0}.article-reading-layout .article-content-panel h2{margin:1.8em 0 .65em;font-size:clamp(1.3rem,2.2vw,1.75rem);line-height:1.35}.article-reading-layout .article-content-panel li{padding:.2em 0}.article-reading-layout .article-content-panel p{max-width:85ch}
.public-site .article-related-content{margin:32px 0 0;padding:24px 0 0;border:0;border-top:1px solid var(--line);border-radius:0;background:transparent;box-shadow:none}.article-related-content .card{box-shadow:none}.article-related-content .card h3{margin-top:0}
@media(max-width:600px){.public-site .article-reading-layout{padding:24px 20px;margin:20px 0}.public-site .article-reading-layout .article-meta-panel{padding:0 0 16px;margin-bottom:22px}.public-site .article-related-content{padding:24px 0 0}}
.public-site .article-related-content .related-course-action{display:inline-flex;align-items:center;justify-content:center;gap:16px;min-height:48px;padding:12px 24px;background:var(--primary,#00334f);color:#ffffff!important;border:2px solid var(--primary,#00334f);border-radius:10px;font-weight:700;text-decoration:none;margin-top:12px}.public-site .article-related-content .related-course-action:hover{background:#00334f;border-color:#00334f;color:#ffffff!important}.related-course-action:focus-visible{outline:3px solid var(--accent,#ff9019);outline-offset:4px}@media(max-width:600px){.article-related-content .related-course-action{width:100%;box-sizing:border-box}}
.public-site .related-content-section .related-course-action{display:inline-flex;align-items:center;justify-content:center;gap:16px;min-height:48px;padding:12px 24px;background:var(--primary,#00334f);color:#ffffff!important;border:2px solid var(--primary,#00334f);border-radius:10px;font-weight:700;text-decoration:none;margin-top:12px}.public-site .related-content-section .related-course-action:hover{background:#00334f;border-color:#00334f;color:#ffffff!important}.related-content-section .card{display:flex;flex-direction:column;align-items:flex-start}.related-content-section .card .related-course-action{margin-top:auto}.related-content-section .card>p{margin-bottom:24px}@media(max-width:600px){.related-content-section .related-course-action{width:100%;box-sizing:border-box}}
.home-testimonials{padding:clamp(24px,4vw,44px);background:#eaf8fc;border:1px solid var(--line);border-radius:24px}.home-testimonials .section-heading{align-items:center;gap:24px}.home-testimonials .section-heading h2{margin:8px 0}.home-testimonials .section-heading p:last-child{color:var(--muted,#31566b)}.testimonial-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.testimonial-card{margin:0;padding:28px;background:#ffffff;border:1px solid var(--line);border-radius:18px;box-shadow:var(--panel-shadow);display:flex;flex-direction:column;min-width:0;overflow-wrap:anywhere}.testimonial-quote-mark{font-family:Georgia,serif;font-size:4rem;line-height:1;color:var(--accent,#ff9019);height:48px}.testimonial-card blockquote{margin:12px 0 28px;padding:0;border:0;background:transparent;line-height:1.85}.testimonial-card blockquote p{margin:0}.testimonial-card figcaption{display:flex;align-items:center;gap:12px;margin-top:auto;font-weight:700;color:var(--primary)}.testimonial-avatar{display:inline-flex;align-items:center;justify-content:center;flex:0 0 42px;height:42px;border-radius:50%;background:#eaf8fc;color:var(--primary)}.testimonial-invitation{padding:24px;border-radius:16px;background:#ffffff}.testimonial-invitation h3{margin-top:0}.testimonial-invitation p{margin-bottom:0;line-height:1.8}@media(max-width:980px){.testimonial-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.testimonial-grid{grid-template-columns:1fr}.home-testimonials .section-heading{align-items:flex-start;flex-direction:column}.testimonial-card{padding:24px}}
.feedback-page-layout{display:grid;grid-template-columns:minmax(240px,.75fr) minmax(0,1.5fr);gap:32px;margin-top:32px;align-items:start}.feedback-guidance{padding:28px;background:#eaf8fc;border:1px solid var(--line);border-radius:18px;line-height:1.85}.feedback-guidance h2{margin-top:0}.feedback-page-layout .contact-form-panel{min-width:0}.feedback-page-layout textarea{box-sizing:border-box;width:100%}.testimonial-examples{margin-top:28px;border-top:1px solid var(--line);padding-top:24px}.testimonial-examples summary{cursor:pointer;font-weight:700;color:var(--primary);padding:8px 0}.testimonial-example-notice{padding:16px 20px;background:#ffffff;border-inline-start:4px solid var(--accent);border-radius:8px;line-height:1.7}.testimonial-example-track{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 48px)/3);gap:24px;overflow-x:auto;scroll-snap-type:x mandatory;padding:8px 4px 24px;overscroll-behavior-x:contain}.testimonial-example-track .testimonial-card{scroll-snap-align:start;box-shadow:none}.testimonial-example-track .package-badge{align-self:flex-start;font-size:.7rem}.testimonial-example-track blockquote{font-size:.95rem}@media(max-width:980px){.testimonial-example-track{grid-auto-columns:calc((100% - 24px)/2)}}@media(max-width:780px){.feedback-page-layout{grid-template-columns:1fr;gap:20px}}@media(max-width:600px){.testimonial-example-track{grid-auto-columns:90%;gap:16px}.feedback-guidance{padding:22px}}
.public-site .home-testimonials.reviews-redesign{background:linear-gradient(145deg,#eaf8fc,#f5fafc);border-radius:24px;border:1px solid #d5f3fa;padding:clamp(24px,4vw,48px)}.reviews-redesign .section-heading{margin-bottom:32px}.reviews-redesign .section-heading h2{font-size:clamp(1.8rem,3vw,2.5rem);line-height:1.2;max-width:560px}.reviews-redesign .testimonial-grid{gap:22px;align-items:stretch}.reviews-redesign .testimonial-card{padding:28px;border:1px solid #d5f3fa;border-top:3px solid var(--accent,#ff9019);border-radius:18px;box-shadow:0 8px 24px #00334f0a;transition:transform .2s,box-shadow .2s}.reviews-redesign .testimonial-card:hover{transform:translateY(-3px);box-shadow:0 14px 30px #00334f12}.review-card-top{display:flex;align-items:center;gap:10px}.review-person-icon{display:inline-flex;width:38px;height:38px;align-items:center;justify-content:center;border-radius:12px;background:#eaf8fc;color:var(--primary);font-weight:700;flex-shrink:0}.review-perspective{font-size:.78rem;letter-spacing:.03em;color:#31566b;font-weight:600}.reviews-redesign .testimonial-quote-mark{margin-left:auto;font-size:3rem;height:32px}.reviews-redesign .testimonial-card blockquote{margin:24px 0 30px;font-size:1rem;line-height:1.9}.reviews-redesign .testimonial-card figcaption{padding-top:18px;border-top:1px solid #eaf8fc;font-size:.9rem;justify-content:space-between;gap:16px}.review-footer-line{height:3px;width:28px;background:var(--accent,#ff9019);border-radius:2px}.public-site .reviews-redesign .review-write-action{display:inline-flex;gap:18px;align-items:center;justify-content:center;background:var(--primary,#00334f);color:white!important;border-color:var(--primary,#00334f);white-space:nowrap}.reviews-closing{margin-top:30px;padding-top:22px;border-top:1px solid #d5f3fa;display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.reviews-closing p{margin:0;color:#31566b}.reviews-closing a{font-weight:700}@media(max-width:600px){.reviews-redesign .testimonial-card{padding:24px}.reviews-closing{align-items:flex-start;flex-direction:column}.review-perspective{font-size:.75rem}}@media(prefers-reduced-motion:reduce){.reviews-redesign .testimonial-card{transition:none}.reviews-redesign .testimonial-card:hover{transform:none}}
.review-sample-badge{margin-left:auto;font-size:.68rem;padding:4px 8px;border:1px solid #ffe2bd;background:#fff4e8;border-radius:6px;color:#31566b;font-weight:700}.review-author-name{display:block;font-weight:700}.review-author-country{display:block;color:#31566b;font-size:.8rem;font-weight:400;margin-top:4px}.review-learning-subject{display:block;color:var(--primary);font-size:.75rem;font-weight:500;margin-top:8px}.more-review-samples{margin-top:24px}.more-review-samples>summary{cursor:pointer;list-style-position:inside;padding:14px 20px;border:1px solid var(--line);background:white;border-radius:10px;color:var(--primary);font-weight:700;width:fit-content}.more-review-samples[open]>.testimonial-grid{margin-top:24px}.document-review-samples{margin-top:24px}
.review-sample-rating{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:-10px 0 20px}.review-sample-rating>span{color:#ff9019;letter-spacing:2px;font-size:1.1rem}.review-sample-rating>small{color:#31566b;font-size:.7rem}
.feedback-rating{margin:0 0 24px;padding:18px 20px;border:1px solid var(--line);border-radius:14px;background:#f5fafc;min-width:0}.feedback-rating legend{font-weight:700;color:var(--primary);padding:0 6px}.feedback-rating legend>span{font-size:.8rem;font-weight:400}.feedback-star-options{display:flex;gap:4px;width:fit-content}.feedback-star-options .feedback-star-option{position:relative;display:flex;align-items:center;justify-content:center;min-width:44px;min-height:48px;margin:0;cursor:pointer;border-radius:8px}.feedback-star-option input,.rating-accessible-label{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.feedback-star-symbol{font-size:2.3rem;line-height:1.2;color:#a9e6f3}.feedback-star-option:has(input:checked) .feedback-star-symbol,.feedback-star-option:has(~ .feedback-star-option input:checked) .feedback-star-symbol{color:#ff9019}.feedback-star-option:hover{background:#fff4e8}.feedback-star-option:has(input:focus-visible){outline:3px solid var(--primary);outline-offset:2px}.feedback-rating p{margin:10px 0 0;font-size:.8rem;color:#31566b;line-height:1.6}
.testimonial-grid [data-review-card][hidden]{display:none!important}.review-rotation-controls{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:22px;flex-wrap:wrap;color:#31566b;font-size:.8rem}.review-rotation-controls>div{display:flex;gap:10px}.public-site .review-rotation-controls button{min-height:40px;padding:8px 16px;border:1px solid var(--line);border-radius:8px;background:#ffffff;color:var(--primary);font-size:.8rem;font-weight:600}.public-site .review-rotation-controls button:hover{background:#eaf8fc}.public-site .review-rotation-controls button[aria-pressed=true]{background:var(--primary);color:#ffffff}
/* Quran pathway: source content, learning areas and published courses. */
.quran-pathway-page{min-width:0}.quran-pathway-page section{scroll-margin-top:24px}.quran-pathway-page .pathway-hero{margin-bottom:0}.pathway-jump-links{display:flex;gap:12px;flex-wrap:wrap;margin:22px 0 42px;padding:0}.public-site .pathway-jump-links a{display:inline-flex;align-items:center;min-height:44px;padding:10px 18px;border:1px solid var(--line);border-radius:999px;background:#ffffff;color:var(--primary);font-size:.88rem;font-weight:650;text-decoration:none}.public-site .pathway-jump-links a:hover{background:#eaf8fc;border-color:#31566b}.pathway-section-heading{margin-bottom:26px}.pathway-eyebrow{display:block;font-size:.75rem;font-weight:750;letter-spacing:.12em;color:#31566b}.pathway-section-heading h2{font-size:clamp(1.65rem,3vw,2.35rem);line-height:1.25;color:var(--primary);margin:10px 0 16px}.pathway-section-heading>p{max-width:800px;color:#31566b;line-height:1.85;margin-bottom:0}.pathway-topic-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px}.pathway-topic-card{position:relative;min-width:0;padding:24px 20px;background:#ffffff;border:1px solid var(--line);border-top:3px solid var(--accent);border-radius:16px;box-shadow:var(--panel-shadow);display:flex;flex-direction:column;align-items:flex-start;gap:20px}.pathway-topic-number{font-size:.75rem;color:#31566b;font-weight:700}.pathway-topic-card svg{width:36px;height:36px;color:var(--primary)}.pathway-topic-card h3{font-size:1.02rem;line-height:1.6;color:var(--primary);margin:0;overflow-wrap:anywhere}.pathway-availability{display:flex;align-items:flex-start;gap:10px;padding:18px 0;margin:16px 0 0;color:#31566b;font-size:.85rem;line-height:1.8}.pathway-availability>span{font-size:1.1rem;flex-shrink:0}.pathway-courses{margin-top:42px}.pathway-courses>.pathway-section-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap}.pathway-courses .pathway-section-heading h2{margin-bottom:0}.pathway-text-link{font-weight:700;color:var(--primary)}.pathway-course-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.pathway-course-card{display:flex;flex-direction:column;min-width:0;padding:0!important;overflow:hidden;border-radius:18px}.pathway-course-copy{padding:24px;display:flex;flex-direction:column;flex:1;align-items:flex-start}.pathway-course-copy h3{font-size:1.2rem;line-height:1.5;margin:16px 0 10px;color:var(--primary)}.pathway-course-copy p{color:#31566b;line-height:1.8;margin:0 0 24px}.pathway-course-copy .btn{margin-top:auto;display:inline-flex;align-items:center;gap:16px}.public-site .quran-pathway-page .btn{background:var(--primary);border-color:var(--primary);color:#ffffff!important}.public-site .quran-pathway-page .btn:hover{background:#00334f;border-color:#00334f}.pathway-next-step{display:flex;align-items:center;justify-content:space-between;gap:32px;margin-top:48px;padding:clamp(24px,4vw,40px);background:#002b42;color:#ffffff;border-radius:22px;box-shadow:var(--panel-shadow)}.pathway-next-step h2{font-size:clamp(1.5rem,2.5vw,2rem);line-height:1.3;margin:10px 0 14px;color:#ffffff}.pathway-next-step p{color:#d5f3fa;line-height:1.8;max-width:650px;margin:0}.pathway-next-step .pathway-eyebrow{color:#ffe2bd}.pathway-next-actions{display:flex;flex-direction:column;gap:14px;align-items:center;flex-shrink:0}.public-site .pathway-next-step .btn{background:#ffe2bd;border-color:#ffe2bd;color:#00334f!important}.public-site .pathway-next-step .btn:hover{background:#ffe2bd;border-color:#ffe2bd}.public-site .pathway-next-step .pathway-secondary{color:#ffffff!important;font-size:.9rem;font-weight:650}.pathway-builder-content{min-width:0;width:100%}@media(max-width:1100px){.pathway-topic-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:780px){.pathway-topic-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pathway-course-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pathway-next-step{align-items:flex-start;flex-direction:column}.pathway-next-actions{align-items:flex-start}.pathway-jump-links{gap:8px;margin-bottom:32px}.pathway-jump-links a{font-size:.8rem!important;padding:8px 14px!important}}@media(max-width:520px){.pathway-topic-grid,.pathway-course-grid{grid-template-columns:1fr}.pathway-topic-card{display:grid;grid-template-columns:36px minmax(0,1fr);gap:10px 16px;align-items:center;padding:20px}.pathway-topic-card svg{grid-column:1;grid-row:1/3}.pathway-topic-number{grid-column:2}.pathway-topic-card h3{grid-column:2}.pathway-course-copy{padding:22px}.pathway-jump-links a{flex-grow:1;justify-content:center}.pathway-courses{margin-top:32px}.pathway-next-step{margin-top:32px}.pathway-next-actions{width:100%}.pathway-next-actions .btn{box-sizing:border-box;width:100%;text-align:center}}

/* Consistent course description panels alongside objectives and plans. */
.public-site .content-body.course-description-panels{max-width:none;width:100%;min-width:0}.course-description-panel{border:1px solid var(--line);border-top:3px solid var(--accent)}.course-description-panel>h2:first-child{margin-top:0;color:var(--primary)}.course-description-panel>p{max-width:85ch;line-height:1.9}.course-description-panel>:last-child{margin-bottom:0}.course-description-panel h2{font-size:clamp(1.35rem,2.3vw,1.8rem);line-height:1.4}.course-description-panel p,.course-description-panel li{overflow-wrap:anywhere}@media(max-width:600px){.course-description-panel{padding:1.25rem}}

/* Unified panels for every course: overview, objectives, syllabus and questions. */
.public-site .course-content-panel{border:1px solid var(--line);border-top:3px solid var(--accent);min-width:0}.public-site .course-content-panel>h2:first-child{margin-top:0;color:var(--primary);font-size:clamp(1.35rem,2.3vw,1.8rem);line-height:1.4}.public-site .course-content-panel li{line-height:1.85;margin:.5rem 0;overflow-wrap:anywhere}.public-site .course-content-panel>:last-child{margin-bottom:0}@media(max-width:600px){.public-site .course-content-panel{padding:1.25rem}}

/* Article sections share the course panel design without nested outer panels. */
.public-site .article-reading-layout{padding:0;background:transparent;border:0;box-shadow:none}.public-site .article-reading-layout .article-meta-panel{padding:18px 24px;background:#eaf8fc;border:1px solid var(--line);border-radius:16px;margin-bottom:24px}.public-site .article-section-panel{margin:24px 0;background:#ffffff;box-shadow:var(--panel-shadow);padding:clamp(24px,3vw,32px)}.public-site .article-section-panel>h2:first-child{margin-top:0;font-size:clamp(1.35rem,2.3vw,1.8rem);color:var(--primary)}.public-site .article-section-panel p{line-height:1.9}.public-site .article-related-content{padding:24px;background:#ffffff;border:1px solid var(--line);border-top:3px solid var(--accent);border-radius:20px;box-shadow:var(--panel-shadow)}@media(max-width:600px){.public-site .article-reading-layout{padding:0}.public-site .article-section-panel,.public-site .article-related-content{padding:20px}.public-site .article-reading-layout .article-meta-panel{padding:16px 20px}}

/* One reading surface per article; headings separate content without extra cards. */
.public-site .article-reading-layout{padding:clamp(24px,4vw,40px);background:#ffffff;border:1px solid var(--line);border-radius:20px;box-shadow:var(--panel-shadow)}.public-site .article-reading-layout .article-meta-panel{padding:0 0 18px;background:transparent;border:0;border-bottom:1px solid var(--line);border-radius:0}.public-site .article-related-content{padding:24px 0 0;background:transparent;border:0;border-top:1px solid var(--line);border-radius:0;box-shadow:none}@media(max-width:600px){.public-site .article-reading-layout{padding:24px 20px}}

/* A single reading panel per course; package controls remain separate. */
.public-site .course-reading-panel{box-sizing:border-box;width:100%;min-width:0;padding:clamp(24px,4vw,40px);margin:24px 0;background:#ffffff;border:1px solid var(--line);border-top:3px solid var(--accent);border-radius:20px;box-shadow:var(--panel-shadow)}.public-site .course-reading-body{width:100%;max-width:none;line-height:1.9}.course-reading-panel h2{color:var(--primary);font-size:clamp(1.35rem,2.3vw,1.8rem);line-height:1.4;margin:1.8em 0 .65em}.course-reading-panel p{max-width:85ch;line-height:1.9}.course-reading-panel .course-content-section{padding:24px 0 0;margin:24px 0 0;border:0;border-top:1px solid var(--line);border-radius:0;background:transparent;box-shadow:none}.course-reading-panel .course-content-section>h2:first-child{margin-top:0}.course-reading-panel li{line-height:1.85;overflow-wrap:anywhere}.course-reading-panel>:last-child{margin-bottom:0}@media(max-width:600px){.public-site .course-reading-panel{padding:24px 20px}}

/* Course packages: match the reading panel spacing and keep actions aligned. */
.public-site .course-plans{box-sizing:border-box;width:100%;min-width:0;margin:24px 0;padding:clamp(24px,4vw,40px);background:#ffffff;border:1px solid var(--line);border-top:3px solid var(--accent);border-radius:20px;box-shadow:var(--panel-shadow)}
.course-plans>h2{margin:0 0 12px;color:var(--primary);font-size:clamp(1.35rem,2.3vw,1.8rem);line-height:1.4}.course-plans>p{max-width:85ch;line-height:1.85;margin:0 0 24px;color:#31566b}
.course-plans .duration-tabs{gap:12px;margin:24px 0}.course-plans .duration-tabs [role="tab"]{flex:1;justify-content:center;min-height:52px;padding:12px 18px;box-sizing:border-box}.course-plans .course-plan-tab-panel>h3{margin:0 0 20px;color:var(--primary);font-size:1.1rem}
.public-site .course-plans .package-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;max-width:none;margin:0;align-items:stretch}.public-site .course-plans .package-grid:has(.package-card:nth-child(2):last-child){grid-template-columns:repeat(2,minmax(0,1fr));max-width:none;margin:0}
.public-site .course-plans .package-card{box-sizing:border-box;padding:24px 18px;border-radius:16px;background:#ffffff;box-shadow:0 6px 18px #002b420d}.public-site .course-plans .package-card h3{margin:20px 0 16px;min-height:3em;font-size:1.08rem;line-height:1.5}.course-plans .package-price{margin:0 0 20px;gap:6px}.course-plans .package-price strong{font-size:2rem}.course-plans .package-features{margin:0 0 24px;padding:0;line-height:1.75}.course-plans .package-features li{margin:0 0 10px;align-items:flex-start}
.course-plans .package-footer{margin-top:auto;padding-top:20px;display:flex;flex-direction:column}.course-plans .course-student-choice{margin:0 0 18px}.course-plans .course-student-choice label{font-size:.85rem;font-weight:650}.course-plans .course-student-choice select{box-sizing:border-box;width:100%;min-height:48px;margin:8px 0 14px;padding:10px 12px;border-radius:10px;font-size:.9rem}.course-plans .course-student-choice p{min-height:3em;line-height:1.6;margin:0 0 10px}.course-plans .course-student-choice small{min-height:4.8em;font-size:.76rem!important;line-height:1.6}
.public-site .course-plans .package-request-link{box-sizing:border-box;width:100%;min-height:48px;margin:0;padding:12px 16px;gap:12px;font-size:.9rem;line-height:1.5;border-radius:10px}.course-plans .package-footer>small{display:block;margin-top:12px;font-size:.74rem!important;line-height:1.65;min-height:3.3em}.course-plans .package-request-link:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
@media(max-width:1100px){.public-site .course-plans .package-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.public-site .course-plans{padding:24px 20px}.public-site .course-plans .package-grid,.public-site .course-plans .package-grid:has(.package-card:nth-child(2):last-child){grid-template-columns:1fr;gap:20px}.course-plans .duration-tabs{gap:8px}.course-plans .duration-tabs [role="tab"]{padding:12px 6px;min-height:68px;font-size:.85rem}.public-site .course-plans .package-card{padding:24px}.public-site .course-plans .package-card h3,.course-plans .course-student-choice p,.course-plans .course-student-choice small,.course-plans .package-footer>small{min-height:0}}

/* A shorter homepage with one clear action per section. */
.home-brief-intro{max-width:850px;margin:24px auto;text-align:center;color:#31566b;line-height:1.85}.home-brief-intro p{margin:0}.home-audience-links{display:flex;flex-wrap:wrap;align-items:center;gap:12px 24px;margin:20px 0 32px;padding:16px 0;border-bottom:1px solid var(--line)}.home-audience-links>span{font-size:.9rem;color:#31566b}.home-audience-links a{font-weight:650;color:var(--primary);display:inline-flex;gap:12px;align-items:center}
.public-site .home-testimonials.reviews-redesign{padding:clamp(24px,3vw,32px)}.reviews-redesign .section-heading{margin-bottom:22px}.reviews-redesign .testimonial-card{padding:22px}.reviews-redesign .testimonial-card blockquote{margin:16px 0 20px;line-height:1.75;font-size:.94rem}.reviews-redesign .testimonial-card figcaption{padding-top:14px}.reviews-redesign .testimonial-grid{gap:20px}.review-rotation-controls{margin-top:18px}
.public-site .enrollment-guide{padding:clamp(24px,3vw,32px)}.enrollment-guide>.section-heading{margin-bottom:0}.enrollment-guide .section-heading h2{margin:8px 0 12px}.enrollment-guide .section-heading p:last-child{margin:0;line-height:1.75;color:#31566b}.enrollment-steps{margin-top:24px;gap:20px}.enrollment-steps li{padding:22px}.enrollment-steps li h3{font-size:1.15rem;margin:8px 0}.enrollment-steps li>p:not(.eyebrow){line-height:1.75;margin:0 0 18px}.enrollment-steps .step-icon{width:48px;height:48px;border-radius:12px;margin-bottom:12px}.enrollment-steps .step-icon svg{width:28px;height:28px}
@media(max-width:600px){.home-audience-links{align-items:flex-start;gap:14px;flex-direction:column}.home-brief-intro{text-align:start}.public-site .home-testimonials.reviews-redesign,.public-site .enrollment-guide{padding:24px 20px}}

/* Children's pathway: learning areas first, one organized parent guide. */
.learning-pathway-page .pathway-areas{padding:clamp(24px,3vw,36px);border:1px solid var(--line);border-radius:22px;background:#ffffff;box-shadow:var(--panel-shadow)}.learning-pathway-page .pathway-topic-grid{gap:14px}.learning-pathway-page .pathway-topic-card{padding:20px 16px;box-shadow:none;background:#f5fafc;gap:14px}.learning-pathway-page .pathway-topic-card h3{font-size:1rem;line-height:1.5}.learning-pathway-page .pathway-topic-number{background:#eaf8fc;padding:4px 8px;border-radius:6px;color:var(--primary)}.children-parent-guide{margin:32px 0 0;padding:28px 0 0;border-top:1px solid var(--line)}.children-guide-heading h2{font-size:clamp(1.4rem,2.5vw,1.85rem);color:var(--primary);margin:10px 0 22px;line-height:1.4}.children-guide-content{max-width:85ch;line-height:1.9;color:#31566b}.children-guide-content h3{color:var(--primary);font-size:1.08rem;line-height:1.55;margin:24px 0 10px}.children-guide-content p{margin:0 0 16px}.children-guide-content>:last-child{margin-bottom:0}.learning-pathway-page .pathway-availability{margin-bottom:0;padding-bottom:0}.learning-pathway-page .pathway-course-grid{gap:20px}.learning-pathway-page .pathway-course-copy{padding:24px}.learning-pathway-page .pathway-course-copy .btn{min-height:48px;box-sizing:border-box;justify-content:center;width:100%}@media(max-width:780px){.learning-pathway-page .pathway-topic-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:520px){.learning-pathway-page .pathway-areas{padding:24px 20px}.learning-pathway-page .pathway-topic-grid{grid-template-columns:1fr}.learning-pathway-page .pathway-topic-card{padding:16px}.children-parent-guide{margin-top:24px;padding-top:24px}}

@media(min-width:1101px){.learning-pathway-page .pathway-topic-grid:has(.pathway-topic-card:nth-child(6):last-child){grid-template-columns:repeat(3,minmax(0,1fr))}}

.public-site .academy-footer .footer-facebook-link{display:inline-flex;align-items:center;gap:12px;margin:0 0 16px;padding:10px 16px;color:#ffffff;border:1px solid #ffffff50;border-radius:9px;text-decoration:none;min-height:44px;box-sizing:border-box;font-weight:650}.public-site .academy-footer .footer-facebook-link:hover{background:#ffffff12;border-color:#ff9019}

.footer-social-links{display:flex;flex-wrap:wrap;gap:8px}.public-site .footer-social-links .footer-facebook-link{margin:0;padding:8px 12px;font-size:.84rem}.social-share-panel{margin:16px 0;background:#ffffff08;border:1px solid #ffffff30;border-radius:12px;padding:12px}.social-share-panel>summary{cursor:pointer;font-size:.88rem;font-weight:650;display:flex;justify-content:space-between;gap:12px}.social-qr-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:16px}.social-qr-card{min-width:0;margin:0;padding:8px;background:white;color:#002b42;border-radius:10px}.social-qr-card img{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:contain;border-radius:0}.social-qr-card figcaption{text-align:center;font-size:.72rem;display:flex;flex-direction:column;gap:8px}.public-site .academy-footer .social-qr-card a{color:#002b42}.social-qr-card figcaption a{display:block;padding:6px 0;font-weight:650;min-height:32px;box-sizing:border-box}@media(max-width:520px){.social-qr-grid{gap:8px}.social-qr-card{padding:6px}.social-qr-card figcaption{font-size:.7rem}}

.builder-grouped-courses{display:block!important;max-height:560px;overflow:auto;padding-inline-end:8px;scrollbar-width:thin}.builder-course-group{padding:16px 0 0!important;border:0!important;border-top:1px solid var(--line)!important;margin:20px 0 0!important;min-width:0}.builder-course-group:first-child{margin-top:0!important}.builder-course-group legend{padding:0 10px 0 0;font-weight:750;color:var(--primary);font-size:1rem}.builder-course-group legend small{display:inline-block;margin-inline-start:8px;padding:3px 8px;background:#eaf8fc;border-radius:6px;font-size:.75rem}.builder-group-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.builder-course-order-note{font-size:.85rem;color:#31566b}.builder-group-options label{margin:0;min-width:0;align-items:start!important;line-height:1.6}.builder-group-options input{flex-shrink:0}@media(max-width:600px){.builder-group-options{grid-template-columns:1fr}.builder-grouped-courses{max-height:460px}}

/* Teacher policy: the same hero and single reading panel as courses. */
.teacher-policy-page{min-width:0}.teacher-policy-reading{margin-top:32px!important}.teacher-policy-reading .course-content-section{scroll-margin-top:100px}.teacher-policy-reading h2{display:flex;align-items:baseline;gap:14px;font-size:clamp(1.15rem,2vw,1.5rem);line-height:1.5}.teacher-policy-reading p{line-height:1.9;color:#31566b;overflow-wrap:anywhere}.policy-section-number{font-size:.8rem;color:var(--primary);background:#eaf8fc;border-radius:8px;padding:5px 9px;flex-shrink:0}.policy-contents{padding-bottom:24px}.policy-contents ol{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 28px;margin:16px 0 0;padding-inline-start:24px}.policy-contents a{color:var(--primary);line-height:1.6;font-weight:600}.policy-contents a:focus-visible{outline:3px solid var(--accent);outline-offset:4px}.teacher-policy-notes{padding:20px;margin:20px 0 24px;border:1px solid #d5f3fa;border-inline-start:4px solid #ff9019;border-radius:12px;background:#f5fafc;min-width:0}.teacher-policy-notes h3{margin:0 0 12px;font-size:1rem;color:#00334f}.teacher-policy-notes details{border:0;border-top:1px solid #d5f3fa;padding:12px 0;background:transparent;box-shadow:none}.teacher-policy-notes summary{cursor:pointer;line-height:1.6;font-weight:600;color:#00334f}.teacher-policy-notes p{line-height:1.8;color:#31566b;overflow-wrap:anywhere}.teacher-policy-notes>a{display:inline-block;margin-top:12px;font-weight:650;color:#00334f}@media(max-width:600px){.policy-contents ol{grid-template-columns:1fr}.teacher-policy-reading{padding:24px 20px!important}.teacher-policy-notes{padding:16px}.teacher-policy-reading h2{gap:10px}}

/* Policy notes reuse the site's white panels, gold edge and emerald actions. */
.policy-note-strip.card{box-sizing:border-box;margin:20px 0;padding:20px 24px;background:#ffffff;border:1px solid var(--line);border-top:3px solid var(--accent);border-radius:16px;box-shadow:var(--panel-shadow,var(--shadow));min-width:0;color:var(--ink);font-family:inherit}
.policy-note-strip .policy-note-heading{display:flex;align-items:center;gap:10px;margin:0 0 14px}.policy-note-strip .policy-note-heading svg{flex-shrink:0;color:var(--primary)}.policy-note-strip .policy-note-heading h3{font-size:1rem;line-height:1.5;font-weight:700;color:var(--primary);margin:0;padding:0}
.policy-note-strip>ul{display:block;list-style:none;margin:0;padding:0}.policy-note-strip>ul>li{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:14px 0;margin:0;border:0;border-top:1px solid var(--line);background:none;box-shadow:none;border-radius:0}.policy-note-strip>ul>li:first-child{border-top:0;padding-top:0}.policy-note-strip>ul>li:last-child{padding-bottom:0}.policy-note-strip li>div{min-width:0}.policy-note-strip li strong{display:block;font-size:.88rem;line-height:1.5;font-weight:650;color:var(--ink)}.policy-note-strip li p{font-size:.88rem;line-height:1.75;color:var(--muted);margin:4px 0 0;overflow-wrap:anywhere}
.public-site .policy-note-strip li>.btn,.admin-site .policy-note-strip li>.btn{flex-shrink:0;min-height:44px;margin:0;padding:10px 16px;border:1px solid var(--primary);border-radius:10px;background:var(--primary);color:#ffffff;font-family:inherit;font-size:.84rem;font-weight:650;line-height:1.4;text-decoration:none;white-space:nowrap;box-shadow:none}.policy-note-strip li>.btn:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.course-plans>.policy-note-strip{margin:18px 0 24px}.package-builder>.policy-note-strip{margin-bottom:0}
@media(max-width:600px){.policy-note-strip.card{padding:18px;margin:16px 0}.policy-note-strip>ul>li{align-items:flex-start;flex-direction:column;gap:10px}.policy-note-strip li>.btn{align-self:flex-start}.policy-note-strip li p{font-size:.85rem}}

/* Compact navigation and integrated search; desktop navigation stays unchanged. */
.compact-menu-panel{display:contents}.compact-menu-search{display:none}.compact-menu-icon{flex-shrink:0}
@media(max-width:1100px){
.public-site .site-header .header-inner{position:relative;flex-wrap:nowrap;gap:16px;padding:16px 24px}.public-site .public-header-tools{margin-inline-start:auto;gap:0}.public-site .public-header-tools>.site-search{display:none}.public-site .public-menu{width:auto;border:0;padding:0;margin:0;background:transparent}.public-site .public-menu>summary{display:flex;align-items:center;justify-content:center;gap:9px;list-style:none;min-height:44px;padding:9px 14px;border:1px solid #ffffff60;border-radius:10px;color:#ffffff;font-size:.9rem;font-weight:650;cursor:pointer}.public-site .public-menu>summary::-webkit-details-marker{display:none}.public-site .public-menu[open]>summary{background:#ffffff18;border-color:var(--accent)}.public-site .public-menu:not([open])>.compact-menu-panel{display:none}.public-site .public-menu[open]>.compact-menu-panel{display:block;position:absolute;inset-inline:24px;top:calc(100% - 2px);z-index:80;padding:22px;background:#ffffff;color:var(--ink);border:1px solid var(--line);border-top:3px solid var(--accent);border-radius:16px;box-shadow:var(--panel-shadow,var(--shadow));max-height:calc(100dvh - 130px);overflow:auto;overscroll-behavior:contain}.public-site .compact-menu-search{display:block;margin:0 0 18px;padding:0 0 18px;border-bottom:1px solid var(--line)}.compact-menu-search label{display:block;color:var(--ink);font-size:.85rem;margin:0 0 8px}.compact-search-row{display:flex;align-items:stretch;gap:8px}.compact-menu-search .compact-search-row input{box-sizing:border-box;min-width:0;width:100%;flex:1;margin:0;min-height:46px;font-size:1rem}.compact-menu-search .compact-search-row button{min-width:46px;min-height:46px;padding:10px;margin:0;background:var(--primary);color:#ffffff;border-radius:9px}.public-site .public-menu .public-navigation{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;width:100%;padding:0;border:0;justify-content:stretch}.public-site .public-menu .public-navigation a{box-sizing:border-box;min-height:46px;margin:0;padding:12px 14px;border:1px solid var(--line);border-radius:10px;background:var(--canvas);color:var(--primary);font-size:.9rem;font-weight:600;line-height:1.4}.public-site .public-menu .public-navigation a:hover,.public-site .public-menu .public-navigation a[aria-current]{background:var(--primary);border-color:var(--primary);color:#ffffff;box-shadow:none}.compact-menu-panel a:focus-visible,.compact-menu-panel button:focus-visible,.compact-menu-panel input:focus-visible{outline:3px solid var(--accent);outline-offset:2px}
}
@media(max-width:600px){.public-site .site-header .header-inner{padding:14px 20px;gap:10px}.public-site .site-header .brand{gap:10px}.public-site .site-header img.logo{width:50px;height:50px}.public-site .site-header .brand strong{font-size:.9rem}.public-site .site-header .brand strong span{font-size:.72rem}.public-site .site-header .brand small{font-size:.58rem;margin-top:4px}.public-site .public-menu>summary{padding:8px 11px}.public-site .public-menu[open]>.compact-menu-panel{inset-inline:16px;padding:16px;max-height:calc(100dvh - 110px)}.public-site .public-menu .public-navigation a{font-size:.85rem;padding:11px 12px}}
@media(max-width:350px){.public-site .site-header .brand small{display:none}.public-site .site-header .header-inner{padding-inline:14px}.public-site .site-header .brand{gap:7px}.public-site .public-menu>summary{gap:6px;padding:8px}}

/* Each language keeps its own text direction without reversing page layout. */
input[data-bidi-field],textarea[data-bidi-field]{text-align:start;unicode-bidi:plaintext}bdi{unicode-bidi:isolate}.rich-body{unicode-bidi:plaintext}.rich-body :is(p,h1,h2,h3,h4,li,blockquote){unicode-bidi:plaintext}.management-record-meta,.security-event-table code,.management-price{unicode-bidi:isolate}.feedback-admin-stars{direction:ltr;unicode-bidi:isolate}
/* Homepage finishing touches reuse the established emerald, gold and white palette. */
.public-site .home-unified-hero:has(.header-background)>.header-shade{background:linear-gradient(100deg,rgba(245,250,252,0.96) 5%,rgba(245,250,252,0.88) 48%,rgba(255,244,232,0.36))}
.public-site .home-unified-hero .academy-path-panel{background:rgba(255,255,255,0.94);box-shadow:0 16px 40px #002b4214}.home-unified-hero .academy-path-panel>a{transition:background .18s ease,transform .18s ease;border-radius:8px;padding-inline:10px}.home-unified-hero .academy-path-panel>a:hover{background:#eaf8fc;transform:translateX(3px)}
.home-learning-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}.home-learning-tags>span{display:inline-flex;align-items:center;gap:7px;padding:7px 10px;border:1px solid #00334f24;border-radius:999px;background:#ffffffba;color:var(--primary);font-size:.72rem;font-weight:650}.home-learning-tags>span:before{content:'';width:5px;height:5px;background:var(--accent);border-radius:50%}
.public-site .home-start-guide{box-sizing:border-box;max-width:none;display:grid;grid-template-columns:1.15fr 1fr;gap:36px;align-items:center;text-align:start;margin:30px 0 52px;padding:26px 0;border-bottom:1px solid var(--line)}.home-start-copy .eyebrow{font-size:.7rem;letter-spacing:.12em;color:var(--primary);font-weight:750}.home-start-copy h2{margin:8px 0 12px;font-size:clamp(1.35rem,2.2vw,1.8rem);line-height:1.25}.home-start-copy>p:last-child{font-size:.92rem;line-height:1.8}.home-path-picker{padding:0;margin:0;background:transparent;border:0;box-shadow:none;min-width:0}.home-path-picker label{display:block;font-size:.88rem;font-weight:700;color:var(--ink);margin:0 0 10px}.home-path-picker-controls{display:flex;gap:10px;align-items:stretch}.home-path-picker select{flex:1;min-width:0;width:100%;margin:0;background:#ffffff;min-height:48px;border:1px solid #a9e6f3;border-radius:10px;padding:10px 12px;font:inherit;font-size:.88rem;color:var(--primary)}.home-path-picker-controls .btn{margin:0;display:inline-flex;gap:12px;align-items:center;justify-content:center;min-height:48px;padding:10px 18px}.home-path-picker>p{font-size:.78rem;margin-top:10px;color:var(--muted);line-height:1.6}
.home-pathways>.section-heading .eyebrow,.home-featured-courses>.section-heading .eyebrow{font-size:.7rem;letter-spacing:.12em;font-weight:750;margin:0 0 8px;color:var(--primary)}.home-pathways .pathway-image-card{overflow:hidden}.home-featured-courses .academy-course{display:flex;flex-direction:column;gap:0}.home-featured-courses .academy-course h3{line-height:1.4;min-height:2.8em}.home-featured-courses .academy-course>p:not(.academy-tag){font-size:.9rem;line-height:1.8}.home-featured-courses .academy-course>a{margin-top:auto;align-self:flex-start}.public-site .enrollment-steps>li{position:relative;border-top:3px solid var(--accent)}.public-site .enrollment-steps .step-icon{background:#eaf8fc;border:1px solid #d5f3fa;border-radius:16px;color:var(--primary)}
@media(max-width:780px){.public-site .home-start-guide{grid-template-columns:1fr;gap:24px;margin:24px 0 36px;padding:20px 0 28px}.public-site .home-unified-hero:has(.header-background)>.header-shade{background:linear-gradient(180deg,rgba(245,250,252,0.95),rgba(245,250,252,0.78))}.home-learning-tags{gap:6px}.home-learning-tags>span{font-size:.68rem;padding:6px 9px}.home-featured-courses .academy-course h3{min-height:0}}
@media(max-width:380px){.home-path-picker-controls{flex-direction:column}.home-path-picker-controls .btn{align-self:flex-start}}
/* Homepage rhythm follows only rendered sections; hidden collections reserve no space. */
.public-site main:has(>.home-start-guide,>.home-pathways,>.home-featured-courses)>:is(section,.home-audience-links){margin-block:0}
.public-site main:has(>.home-start-guide,>.home-pathways,>.home-featured-courses)>:is(section,.home-audience-links)~:is(section,.home-audience-links){margin-block-start:44px}
.public-site main:has(>.home-start-guide,>.home-pathways,>.home-featured-courses)>.home-start-guide{padding-block:24px 30px}
.public-site main:has(>.home-start-guide,>.home-pathways,>.home-featured-courses)>.home-audience-links{padding-block:14px 20px}
.public-site .home-featured-courses>.section-heading,.public-site .home-pathways>.section-heading,.public-site .academy-resources>.section-heading{margin-bottom:24px}
@media(max-width:600px){.public-site main:has(>.home-start-guide,>.home-pathways,>.home-featured-courses)>:is(section,.home-audience-links)~:is(section,.home-audience-links){margin-block-start:30px}.public-site main:has(>.home-start-guide,>.home-pathways,>.home-featured-courses)>.home-start-guide{padding-block:18px 24px}}

.course-subject-grid{grid-template-columns:repeat(4,minmax(0,1fr))}@media(max-width:1000px){.course-subject-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){.course-subject-grid{grid-template-columns:1fr}}
.public-site .floating-whatsapp{position:fixed;inset-inline-end:22px;bottom:calc(20px + env(safe-area-inset-bottom));z-index:35;display:inline-flex;align-items:center;gap:10px;min-height:54px;padding:12px 19px;border:1px solid #ff9019;border-radius:999px;background:#004267;color:#ffffff!important;box-shadow:0 8px 25px #002b4230;text-decoration:none!important;font-weight:700;line-height:1}.floating-whatsapp svg{flex:none}.floating-whatsapp:focus-visible{outline:3px solid #ff9019;outline-offset:4px}.public-site .floating-whatsapp:hover{background:#002b42}.public-site:has(.floating-whatsapp) .academy-footer{padding-bottom:94px}.public-reviews-section{margin-block:36px}.public-review-empty{padding:22px;border:1px solid #d5f3fa;border-radius:12px;background:#f5fafc;color:#002b42}.public-reviews-section .testimonial-grid{margin-block:22px}@media(max-width:600px){.public-site .floating-whatsapp{inset-inline-end:16px;bottom:calc(16px + env(safe-area-inset-bottom));width:54px;height:54px;min-height:54px;padding:0;justify-content:center}.floating-whatsapp span{display:none}.public-reviews-section .section-heading{align-items:flex-start;gap:14px;flex-wrap:wrap}}

.bundle-message-preview{margin-top:18px;border:1px solid #d5f3fa;border-radius:10px;background:#f5fafc;padding:14px}.bundle-message-preview summary{cursor:pointer;font-weight:700;color:#002b42}.bundle-message-preview pre{white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word;font:13px/1.8 system-ui;color:#002b42;text-align:left;direction:ltr;margin:16px 0 0;max-height:460px;overflow:auto}.bundle-request{white-space:normal;text-align:center}



.public-site .floating-whatsapp{width:56px;height:56px;min-height:56px;padding:0;justify-content:center;gap:0;border-radius:50%}

/* Three subject panels; Egyptian Arabic courses remain available in the catalog. */
.course-subject-grid.course-subject-grid--three{grid-template-columns:repeat(3,minmax(0,1fr))}@media(max-width:900px){.course-subject-grid.course-subject-grid--three{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.course-subject-grid.course-subject-grid--three{grid-template-columns:minmax(0,1fr)}}

/* Offers navigation emphasis within the academy brand. */
.public-site a.nav-offers{background:#ff9019;color:#004267!important;border:1px solid #004267;border-radius:10px;padding:9px 17px;box-shadow:0 4px 12px #00426720;font-weight:750;text-decoration:none!important}.public-site a.nav-offers:hover,.public-site a.nav-offers[aria-current="page"]{background:#00aed6;color:#004267!important;border-color:#004267;box-shadow:0 5px 16px #00426735}.public-site a.nav-offers:focus-visible{outline:3px solid #ff9019;outline-offset:3px}

/* Free trial booking uses the saved WhatsApp recipient and academy colors. */
.public-site a.trial-lesson-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:#004267;color:#ffffff!important;border:1px solid #ff9019;border-radius:12px;padding:12px 20px;font-weight:750;line-height:1.4;text-align:center;text-decoration:none!important;box-shadow:0 6px 18px #00426724;transition:background .2s,box-shadow .2s}
.public-site a.trial-lesson-button:hover{background:#00334f;box-shadow:0 8px 22px #00426735}.public-site a.trial-lesson-button:focus-visible{outline:3px solid #ff9019;outline-offset:3px}.public-site .public-navigation a.trial-lesson-button{padding:9px 15px}.trial-lesson-caption{font-size:.95rem;margin:12px 0;color:inherit}@media(max-width:600px){.academy-actions .trial-lesson-button{width:100%;box-sizing:border-box}.public-navigation .trial-lesson-button{margin-top:8px}}
/* Keep Offers gold inside compact navigation, including hover/current states. */
.public-site .public-menu .public-navigation a.nav-offers{background:#ff9019;color:#004267!important;border:1px solid #004267;font-weight:750;box-shadow:0 4px 12px #00426720}.public-site .public-menu .public-navigation a.nav-offers:hover,.public-site .public-menu .public-navigation a.nav-offers[aria-current]{background:#00aed6;color:#004267!important;border-color:#004267}
.public-site .trial-booking{margin:24px 0;padding:24px;border:1px solid #a9e6f3;border-top:3px solid #ff9019;border-radius:18px;background:#ffffff;color:#00334f;box-shadow:0 12px 30px #002b4214;text-align:start;min-width:0;max-width:100%;box-sizing:border-box}.public-site .trial-booking h2{font-size:clamp(1.35rem,2vw,1.8rem);line-height:1.3;color:#00334f;margin:6px 0 10px}.public-site .trial-booking p{font-size:.9rem;line-height:1.6;color:#31566b;margin:8px 0 16px;max-width:none}.trial-booking-badge{color:#00334f;font-size:.72rem;font-weight:750;letter-spacing:.1em}.trial-booking form{padding:0;margin:0;border:0;background:transparent;box-shadow:none}.trial-booking-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.trial-booking label{display:flex;flex-direction:column;gap:6px;margin:0;font-size:.82rem;font-weight:650;color:#00334f;min-width:0}.trial-booking :is(input:not([type=checkbox]),select,textarea){width:100%;min-width:0;box-sizing:border-box;min-height:44px;margin:0;padding:10px 12px;border:1px solid #a9e6f3;border-radius:9px;background:#ffffff;color:#00334f;font:400 .9rem/1.4 system-ui}.trial-booking :is(input,select,textarea,button,a):focus-visible{outline:3px solid #ff9019;outline-offset:2px}.trial-booking-wide{grid-column:1/-1}.trial-booking-extra{margin:16px 0;padding:0;border:0;background:transparent;font-size:.85rem}.trial-booking-extra summary{cursor:pointer;color:#00334f}.trial-booking-extra label{margin-top:10px}.trial-booking label.trial-booking-consent{display:flex;flex-direction:row;align-items:flex-start;gap:10px;font-weight:400;line-height:1.5;margin:16px 0}.trial-booking-consent input[type=checkbox]{width:18px;height:18px;min-width:18px;margin:2px 0 0;accent-color:#004267}.trial-booking-consent a{color:#004267;font-weight:650}.trial-booking-actions{display:flex;flex-wrap:wrap;gap:10px}.trial-booking-actions :is(button,a){min-height:44px;padding:11px 16px;background:#004267;color:#ffffff!important;border:1px solid #ff9019;border-radius:10px;font-size:.9rem;line-height:1.4;box-sizing:border-box;text-align:center;text-decoration:none!important}.trial-booking-actions button:disabled{opacity:.6;cursor:wait}.trial-booking [hidden]{display:none!important}.public-site .trial-booking .trial-booking-status:empty{display:none}.public-site .trial-booking .trial-booking-status{margin:14px 0 0;padding:10px 12px;background:#eaf8fc;border-radius:8px}.public-site .trial-booking .trial-booking-note{font-size:.78rem;margin:10px 0 0}.home-unified-hero .hero-layout{align-items:start}@media(max-width:600px){.public-site .trial-booking{padding:18px;margin:20px 0}.trial-booking-grid{grid-template-columns:minmax(0,1fr)}.trial-booking-actions>*{width:100%}}

/* Full-width, compact trial booking below the homepage introduction. */
.public-site .trial-booking-horizontal{position:relative;width:100%;margin:24px 0 32px;padding:24px 28px}.trial-booking-horizontal .trial-booking-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:20px}.public-site .trial-booking-horizontal .trial-booking-heading h2{margin-bottom:0}.public-site .trial-booking-horizontal .trial-booking-heading>p{max-width:34ch;margin:0}.trial-booking-horizontal .trial-booking-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px 16px}.trial-booking-horizontal .trial-booking-footer{display:flex;align-items:center;gap:20px;flex-wrap:wrap;margin-top:18px;padding-top:16px;border-top:1px solid #d5f3fa}.trial-booking-horizontal .trial-booking-extra{margin:0;flex:0 1 235px}.trial-booking-horizontal label.trial-booking-consent{margin:0;flex:1 1 280px;font-size:.78rem}.trial-booking-horizontal .trial-booking-actions{flex:0 1 auto;margin-inline-start:auto}.trial-booking-horizontal .trial-booking-actions>button{white-space:nowrap}.trial-booking-horizontal .trial-booking-extra[open]{flex:1 1 100%}.public-site .trial-booking-horizontal .trial-booking-note{margin-top:10px}@media(max-width:1000px){.trial-booking-horizontal .trial-booking-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.trial-booking-horizontal .trial-booking-heading{align-items:flex-start}.public-site .trial-booking-horizontal .trial-booking-heading>p{max-width:28ch}}@media(max-width:600px){.public-site .trial-booking-horizontal{padding:20px;margin:20px 0 26px}.trial-booking-horizontal .trial-booking-heading{display:block;margin-bottom:16px}.public-site .trial-booking-horizontal .trial-booking-heading>p{max-width:none;margin-top:10px}.trial-booking-horizontal .trial-booking-grid{grid-template-columns:minmax(0,1fr)}.trial-booking-horizontal .trial-booking-footer{gap:16px}.trial-booking-horizontal .trial-booking-extra,.trial-booking-horizontal label.trial-booking-consent,.trial-booking-horizontal .trial-booking-actions{flex:1 1 100%;margin-inline-start:0}.trial-booking-horizontal .trial-booking-actions>button{white-space:normal}}

/* Homepage support form: full-width with a compact introduction and field rows. */
.public-site .home-contact-horizontal{display:grid;grid-template-columns:minmax(0,1fr);gap:20px;align-items:start}.home-contact-horizontal .home-contact-heading{display:grid;grid-template-columns:minmax(0,1fr) 180px;gap:28px;align-items:center}.home-contact-horizontal .home-contact-heading h2{margin:6px 0 10px}.home-contact-horizontal .home-contact-heading p{max-width:80ch;margin:8px 0}.home-contact-horizontal .home-contact-visual .landing-section-image{width:180px;max-height:125px;margin:0;object-fit:cover;}.public-site .home-contact-horizontal .contact-form-panel{width:100%;max-width:none;box-sizing:border-box;padding:24px 28px}.home-contact-horizontal .contact-form-panel h2{font-size:1.5rem;margin:0 0 16px}.home-contact-horizontal .contact-form-panel form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px 20px;margin:0}.home-contact-horizontal .contact-form-panel form>*{grid-column:1/-1;min-width:0}.home-contact-horizontal .contact-form-panel .form-fields{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px 16px;margin:0}.home-contact-horizontal .contact-form-panel label{font-size:.85rem;margin:0;line-height:1.5}.home-contact-horizontal .contact-form-panel input:not([type=checkbox]){min-height:44px;padding:10px 12px;margin-top:6px}.home-contact-horizontal .contact-form-panel textarea{min-height:90px;height:90px;resize:vertical;margin-top:6px;padding:10px 12px}.home-contact-horizontal .contact-form-panel form>.contact-share-consent{grid-column:1;align-self:center;padding:10px 12px;margin:0;font-size:.82rem}.home-contact-horizontal .contact-form-panel form>[data-job-prepare]{grid-column:2;align-self:center;min-height:44px;margin:0;white-space:nowrap}.home-contact-horizontal .contact-form-panel [data-job-review] pre{max-height:200px;overflow:auto}.home-contact-horizontal .contact-form-panel [data-job-status]:empty{display:none}.home-contact-horizontal .contact-form-panel [data-job-status]:not(:empty){margin:0}@media(max-width:1000px){.home-contact-horizontal .contact-form-panel .form-fields{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.home-contact-horizontal .home-contact-heading{grid-template-columns:minmax(0,1fr);gap:12px}.home-contact-horizontal .home-contact-visual{display:none}.public-site .home-contact-horizontal .contact-form-panel{padding:20px}.home-contact-horizontal .contact-form-panel form{grid-template-columns:minmax(0,1fr)}.home-contact-horizontal .contact-form-panel .form-fields{grid-template-columns:minmax(0,1fr)}.home-contact-horizontal .contact-form-panel form>.contact-share-consent,.home-contact-horizontal .contact-form-panel form>[data-job-prepare]{grid-column:1/-1}.home-contact-horizontal .contact-form-panel form>[data-job-prepare]{width:100%}}

/* Homepage contact: illustration/copy beside a wider, compact support form. */
.public-site .home-contact-side{display:grid;grid-template-columns:minmax(0,.78fr) minmax(0,1.4fr);gap:28px;align-items:start}.home-contact-side>.home-contact-heading,.home-contact-side>.contact-form-panel{min-width:0}.home-contact-side .home-contact-heading{display:flex;flex-direction:column;gap:18px}.home-contact-side .home-contact-heading h2{margin:6px 0 12px}.home-contact-side .home-contact-heading p{max-width:48ch;margin:8px 0;line-height:1.7}.home-contact-side .home-contact-visual{width:100%}.home-contact-side .home-contact-visual .landing-section-image{width:100%;height:auto;max-height:300px;margin:0;aspect-ratio:3/2;object-fit:cover;}.public-site .home-contact-side .contact-form-panel{width:100%;max-width:none;box-sizing:border-box;padding:24px}.home-contact-side .contact-form-panel h2{font-size:1.5rem;margin:0 0 16px}.home-contact-side .contact-form-panel form{margin:0}.home-contact-side .contact-form-panel .form-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 16px;margin-bottom:14px}.home-contact-side .contact-form-panel label{font-size:.84rem;margin:0 0 14px;line-height:1.5}.home-contact-side .contact-form-panel .form-fields label{margin:0}.home-contact-side .contact-form-panel input:not([type=checkbox]){min-height:44px;padding:10px 12px;margin-top:6px}.home-contact-side .contact-form-panel textarea{min-height:90px;height:90px;resize:vertical;margin-top:6px;padding:10px 12px}.home-contact-side .contact-form-panel .contact-share-consent{padding:10px 12px;margin:14px 0;font-size:.8rem}.home-contact-side .contact-form-panel [data-job-prepare]{min-height:44px;margin:0;padding:10px 18px}.home-contact-side .contact-form-panel [data-job-review] pre{max-height:200px;overflow:auto}.home-contact-side .contact-form-panel [data-job-status]:empty{display:none}@media(max-width:860px){.public-site .home-contact-side{grid-template-columns:minmax(0,1fr);gap:20px}.home-contact-side .home-contact-heading{display:grid;grid-template-columns:minmax(0,1fr) 180px;align-items:center}.home-contact-side .home-contact-visual .landing-section-image{max-height:140px}}@media(max-width:600px){.home-contact-side .home-contact-heading{display:flex}.home-contact-side .home-contact-visual{display:none}.public-site .home-contact-side .contact-form-panel{padding:20px}.home-contact-side .contact-form-panel .form-fields{grid-template-columns:minmax(0,1fr)}.home-contact-side .contact-form-panel [data-job-prepare]{width:100%}}

/* Balance the homepage support card with its illustration and text. */
.public-site .home-contact-side{gap:30px;align-items:center}.public-site .home-contact-side .contact-form-panel{padding:22px 24px}.home-contact-side .contact-form-panel form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px 16px}.home-contact-side .contact-form-panel form>*{grid-column:1/-1;min-width:0}.home-contact-side .contact-form-panel .form-fields{gap:12px 16px;margin:0}.home-contact-side .contact-form-panel form>label{margin:0}.home-contact-side .contact-form-panel textarea{height:84px;min-height:84px}.home-contact-side .contact-form-panel h2{margin:0 0 14px}.home-contact-side .home-contact-policy{margin:0;border:1px solid #d5f3fa;border-radius:9px;padding:9px 12px;background:#f5fafc;font-size:.82rem}.home-contact-side .home-contact-policy>summary{cursor:pointer;font-weight:650;color:#00334f;min-height:24px;line-height:1.7}.home-contact-side .home-contact-policy .policy-note-strip{margin:12px 0 0}.home-contact-side .contact-form-panel form>.contact-share-consent{grid-column:1;align-self:center;margin:0;padding:10px 12px;font-size:.78rem;line-height:1.5}.home-contact-side .contact-form-panel form>[data-job-prepare]{grid-column:2;align-self:center;min-height:44px;margin:0;white-space:nowrap}.home-contact-side .contact-form-panel form>[data-job-status]:not(:empty){margin:0}.home-contact-side .home-contact-heading{gap:20px}.home-contact-side .home-contact-heading h2{line-height:1.3}.home-contact-side .home-contact-visual .landing-section-image{max-height:280px}@media(max-width:860px){.public-site .home-contact-side{align-items:start;gap:22px}.home-contact-side .home-contact-heading{gap:20px}}@media(max-width:600px){.public-site .home-contact-side .contact-form-panel{padding:20px 18px}.home-contact-side .contact-form-panel form{grid-template-columns:minmax(0,1fr);gap:14px}.home-contact-side .contact-form-panel form>.contact-share-consent,.home-contact-side .contact-form-panel form>[data-job-prepare]{grid-column:1/-1}.home-contact-side .contact-form-panel form>[data-job-prepare]{width:100%;white-space:normal}.home-contact-side .contact-form-panel input:not([type=checkbox]),.home-contact-side .contact-form-panel textarea{font-size:16px}.home-contact-side .home-contact-heading{display:flex;gap:14px}.home-contact-side .home-contact-visual{display:block;width:100%}.home-contact-side .home-contact-visual .landing-section-image{width:100%;max-height:180px;aspect-ratio:2/1;object-fit:cover}}
/* Homepage groups: three balanced cards, quiet transitions and clear controls. */
.home-content-rotation{scroll-margin-top:24px}.home-content-rotation .section-heading{align-items:center;gap:20px}.home-content-rotation .home-rotation-intro{max-width:65ch;margin:10px 0 0;font-size:.95rem;color:#31566b}.home-content-rotation .home-rotation-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;align-items:stretch}.home-content-rotation [data-content-card][hidden],.home-content-rotation [data-content-controls][hidden]{display:none!important}.public-site .home-content-rotation .home-rotation-card{display:flex;flex-direction:column;min-width:0;padding:0;overflow:hidden;border:1px solid #d5f3fa;border-radius:18px;background:#ffffff;box-shadow:0 8px 24px #002b4210}.home-content-rotation .home-rotation-copy{display:flex;flex:1;flex-direction:column;padding:20px;min-width:0}.home-content-rotation .home-rotation-copy .academy-tag{margin:0 0 10px;font-size:.76rem;align-self:flex-start}.home-content-rotation .home-rotation-copy h3{color:#00334f;font-size:1.12rem;line-height:1.45;min-height:2.9em;margin:0 0 12px}.home-content-rotation .home-rotation-description{font-size:.9rem;line-height:1.7;min-height:5.1em;margin:0 0 20px;color:#31566b}.home-content-rotation .home-rotation-copy>a{margin-top:auto;align-self:flex-start;min-height:44px;padding:10px 16px}.home-content-rotation .home-rotation-controls{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:20px;padding:14px 18px;background:#eaf8fc;border:1px solid #d5f3fa;border-radius:14px}.home-rotation-timing{font-size:.85rem;color:#31566b}.home-rotation-buttons{display:flex;align-items:center;justify-content:center;gap:8px;flex-wrap:wrap}.home-rotation-buttons button{min-height:44px;padding:9px 14px;background:#ffffff;border:1px solid #a9e6f3;border-radius:9px;color:#004267;font-size:.85rem;font-weight:650}.home-rotation-buttons button:hover,.home-rotation-buttons button[aria-pressed=true]{background:#004267;color:#ffffff;border-color:#004267}.home-rotation-buttons button:focus-visible{outline:3px solid #ff9019;outline-offset:2px}.home-rotation-count{min-width:52px;text-align:center;font-size:.8rem;color:#31566b;font-variant-numeric:tabular-nums}.home-rotation-all{white-space:nowrap}@media(max-width:900px){.home-content-rotation .home-rotation-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.home-content-rotation .home-rotation-controls{align-items:flex-start;flex-direction:column;gap:12px}}@media(max-width:600px){.home-content-rotation .home-rotation-grid{grid-template-columns:minmax(0,1fr)}.home-content-rotation .section-heading{align-items:flex-start;flex-direction:column;gap:14px}.home-content-rotation .home-rotation-copy h3,.home-content-rotation .home-rotation-description{min-height:0}.home-content-rotation .home-rotation-controls{padding:14px}.home-rotation-buttons{width:100%;gap:6px}.home-rotation-buttons button{padding:9px 10px}.home-rotation-count{min-width:40px}}

.home-content-rotation .home-rotation-controls{justify-content:flex-end;background:transparent;border:0;padding:0}.home-content-rotation .home-rotation-buttons{margin-inline-start:auto}@media(max-width:900px){.home-content-rotation .home-rotation-controls{align-items:flex-end}.home-content-rotation .home-rotation-buttons{width:auto}}

/* One consistent rhythm for actual homepage sections, including the audience links. */
.public-site main:has(>.home-unified-hero)>:is(section,nav){margin-block:0}.public-site main:has(>.home-unified-hero)>:is(section,nav)~:is(section,nav){margin-block-start:clamp(32px,4vw,52px)}
/* FAQ image follows the natural height of its text column, including opened answers. */
.public-site .home-unified-faq .landing-split{align-items:stretch;gap:28px}.home-unified-faq .home-faq-visual{position:relative;min-height:0;align-self:stretch;overflow:hidden;border-radius:18px}.public-site .home-unified-faq .home-faq-visual .landing-section-image{position:absolute;inset:0;width:100%;height:100%;max-height:none;aspect-ratio:auto;object-fit:cover;object-position:50% 40%;margin:0}.home-unified-faq .home-faq-copy{min-width:0}.home-unified-faq .home-faq-copy .section-heading{margin-top:0}.public-site .home-unified-faq .home-faq-copy details{margin-top:12px}.public-site .home-unified-faq .home-faq-copy summary{padding:18px 20px;line-height:1.55}.public-site .home-unified-faq .home-faq-copy details p{padding:0 20px 18px;line-height:1.75}@media(max-width:780px){.public-site .home-unified-faq .landing-split{gap:20px}.home-unified-faq .home-faq-visual{height:clamp(190px,48vw,280px);align-self:auto}.public-site .home-unified-faq .home-faq-visual .landing-section-image{position:static;height:100%;max-height:none;object-position:50% 35%}.public-site .home-unified-faq .home-faq-copy summary{padding:16px 18px}.public-site .home-unified-faq .home-faq-copy details p{padding:0 18px 16px}}
/* Footer groups follow the public navigation and remain easy to scan on phones. */
.academy-footer .footer-column{gap:7px}.academy-footer .footer-column>a{display:inline-flex;align-items:center;min-height:36px;max-width:100%;overflow-wrap:anywhere}.academy-footer .footer-column a.footer-offers{background:#ff9019;color:#004267!important;border:1px solid #004267;border-radius:9px;padding:5px 13px;font-weight:750}.academy-footer .footer-column a.footer-offers:hover{background:#00aed6}.academy-footer .footer-bottom nav{flex-wrap:wrap;gap:6px 18px;align-items:center}.academy-footer .footer-bottom nav>a{display:inline-flex;align-items:center;min-height:36px;max-width:100%;overflow-wrap:anywhere}.academy-footer .footer-bottom .developer-link{color:#ffffff!important}@media(max-width:600px){.academy-footer .footer-top{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 18px}.academy-footer .footer-brand{grid-column:1/-1}.academy-footer .footer-column>a{min-height:44px;line-height:1.5}.academy-footer .footer-column h2{line-height:1.4}.academy-footer .footer-help{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:8px 18px}.academy-footer .footer-help h2{grid-column:1/-1}.academy-footer .footer-help .btn{justify-self:start;align-self:start}.academy-footer .footer-bottom nav{flex-direction:column;align-items:flex-start;gap:4px}.academy-footer .footer-bottom nav>a{min-height:44px}.academy-footer .footer-logo{font-size:1.1rem;gap:12px}.academy-footer .footer-logo img{width:64px;height:64px}}

/* Public pagination: keep Previous and Next distinct, including home rotations. */
body.public-site main :is(.teacher-directory-pagination,.home-rotation-buttons){display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:14px;margin-block:24px 8px}
body.public-site main :is(.teacher-directory-pagination,.home-rotation-buttons)>:is(a,button){box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-width:116px;min-height:46px;margin:0;padding:11px 20px;border:1px solid var(--primary,#00334f);border-radius:11px;line-height:1.4;white-space:normal;text-align:center}
body.public-site main .teacher-directory-pagination>a:not(.btn){min-width:46px}
body.public-site main :is(.teacher-directory-pagination,.home-rotation-buttons)>:is(a,button):focus-visible{outline:3px solid var(--accent,#ff9019);outline-offset:3px}
@media(max-width:760px){
body.public-site .academy-footer{padding-inline:20px;text-align:start}
body.public-site .academy-footer .footer-inner{width:100%;min-width:0}
body.public-site .academy-footer .footer-top{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 20px}
body.public-site .academy-footer .footer-brand{grid-column:1/-1;min-width:0}
body.public-site .academy-footer .footer-logo{display:flex;align-items:center;max-width:100%;gap:12px}
body.public-site .academy-footer .footer-logo>span{min-width:0;overflow-wrap:anywhere}
body.public-site .academy-footer .footer-column{display:flex;flex-direction:column;align-items:flex-start;min-width:0;gap:8px}
body.public-site .academy-footer .footer-column h2{margin:0 0 8px;font-size:1.05rem}
body.public-site .academy-footer .footer-column>a{margin:0;padding-block:8px;min-height:44px;line-height:1.5;white-space:normal;overflow-wrap:anywhere}
body.public-site .academy-footer .footer-help{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 20px}
body.public-site .academy-footer .footer-help h2{grid-column:1/-1}
body.public-site .academy-footer .footer-bottom{display:flex;flex-direction:column;align-items:flex-start;gap:18px;padding-top:24px;margin-top:28px;min-width:0;text-align:start}
body.public-site .academy-footer .footer-bottom nav{display:flex;flex-wrap:wrap;flex-direction:row;align-items:center;gap:10px 18px;width:100%}
body.public-site .academy-footer .footer-bottom nav>a{margin:0;min-height:44px;line-height:1.5}
body.public-site .academy-footer .footer-bottom>small{display:block;line-height:1.9;overflow-wrap:anywhere;max-width:100%}
body.public-site .academy-footer .footer-social-links{gap:10px}
body.public-site .academy-footer .social-share-panel{max-width:100%;min-width:0}
}
@media(max-width:380px){body.public-site .academy-footer .footer-top{grid-template-columns:minmax(0,1fr)}body.public-site .academy-footer .footer-help{grid-template-columns:minmax(0,1fr)}body.public-site main :is(.teacher-directory-pagination,.home-rotation-buttons){gap:12px}body.public-site main .home-rotation-buttons>button{min-width:110px;padding-inline:14px}}

/* Shared mobile containment without concealing overflowing content. */
@media(max-width:780px){
body.public-site main{min-width:0}
body.public-site main :is(section,article,form,fieldset,.hero-layout,.section-heading){min-width:0}
body.public-site :is(input,select,textarea){max-width:100%;box-sizing:border-box;font-size:16px}
body.public-site main :is(.hero,.section-heading) :is(h1,h2,p){overflow-wrap:anywhere}
body.public-site main :is(.form-actions,.filter-actions){display:flex;flex-wrap:wrap;gap:12px}
body.public-site main :is(.form-actions,.filter-actions)>:is(a,button){margin:0;min-height:44px}
body.public-site main :is(.table-wrap,.table-scroll){max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
body.public-site main :is(iframe,video){max-width:100%}
body.public-site main :is(.grid,.package-grid,.testimonial-grid)>*{min-width:0}
}

/* Footer: policies join the navigation; keep the credit compact on every device. */
body.public-site .academy-footer .footer-top{grid-template-columns:minmax(220px,1.5fr) repeat(4,minmax(0,1fr));gap:28px}
body.public-site .academy-footer .footer-bottom{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:14px 24px}
body.public-site .academy-footer .footer-credit{display:inline-flex;align-items:center;gap:5px;white-space:nowrap;font-size:12px;line-height:1.6;max-width:100%}
body.public-site .academy-footer .footer-credit .developer-link{margin:0;padding:0;background:none;border:0;border-radius:0;font-size:inherit;min-height:0;color:#ffffff!important}
@media(max-width:1100px){body.public-site .academy-footer .footer-top{grid-template-columns:repeat(4,minmax(0,1fr));gap:26px 20px}body.public-site .academy-footer .footer-brand{grid-column:1/-1;max-width:680px}}
@media(max-width:760px){body.public-site .academy-footer .footer-top{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 18px}body.public-site .academy-footer .footer-help{grid-column:auto;display:flex;flex-direction:column;gap:8px}body.public-site .academy-footer .footer-bottom{align-items:flex-start;gap:12px}body.public-site .academy-footer .footer-column h2{margin-bottom:6px}body.public-site .academy-footer .footer-credit{font-size:11px}}
@media(max-width:380px){body.public-site .academy-footer{padding-inline:16px}body.public-site .academy-footer .footer-top{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 14px}body.public-site .academy-footer .footer-column h2{font-size:.94rem}body.public-site .academy-footer .footer-column>a{font-size:.85rem}body.public-site .academy-footer .footer-credit{font-size:10px;gap:4px}}

/* Keep the home contact illustration complete rather than cropping it. */
body.public-site .home-contact-side .home-contact-visual{display:block;width:100%;min-width:0}
body.public-site .home-contact-side .home-contact-visual .landing-section-image{display:block;width:100%;height:auto;max-height:none;aspect-ratio:auto;object-fit:contain;object-position:center;margin:0}

/* Center the two footer credits on mobile/tablet; preserve desktop alignment. */
@media(max-width:1024px){
body.public-site .academy-footer .footer-bottom{flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:10px}
body.public-site .academy-footer .footer-bottom>span{display:block;width:100%;text-align:center}
body.public-site .academy-footer .footer-bottom>.footer-credit{align-self:center;justify-content:center;text-align:center}
}

/* Existing free-trial form: grouped, dynamic fields in the academy palette. */
.public-site .trial-booking-expanded form{display:block;min-width:0}
.public-site .trial-booking-expanded fieldset{min-width:0;margin:20px 0;padding:22px;border:1px solid #d5f3fa;border-radius:14px;background:#ffffff}
.public-site .trial-booking-expanded legend{font-size:1rem;font-weight:750;color:#004267;padding-inline:8px}
.public-site .trial-booking-expanded .trial-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 20px}
.public-site .trial-booking-expanded label{display:block;margin:0;font-size:.9rem;color:#00334f;line-height:1.6}
.public-site .trial-booking-expanded :is(input,select,textarea){width:100%;min-width:0;min-height:46px;margin:7px 0 0;padding:10px 12px;font-size:16px;background:#ffffff;color:#00334f;border:1px solid #a9e6f3;border-radius:9px;box-sizing:border-box}
.public-site .trial-booking-expanded input[type=checkbox]{width:20px;height:20px;min-height:20px;flex:0 0 20px;margin:2px 0 0;accent-color:#004267}
.public-site .trial-booking-expanded .trial-inline{display:flex;align-items:flex-start;gap:10px;flex-wrap:wrap}
.public-site .trial-booking-expanded .trial-inline>span{flex:1;min-width:160px}
.public-site .trial-booking-expanded .trial-student-card,.public-site .trial-booking-expanded .trial-schedule-card{padding:18px;margin-top:16px;border:1px solid #d5f3fa;border-radius:12px;background:#f5fafc;min-width:0}
.public-site .trial-booking-expanded h3{font-size:1rem;margin:0 0 16px;color:#004267}
.public-site .trial-booking-expanded .trial-day-choices{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:12px 20px;margin:0;padding:16px}
.public-site .trial-booking-expanded .trial-day-choices legend{font-size:.9rem}
.public-site .trial-booking-expanded [hidden]{display:none!important}
.public-site .trial-booking-expanded .trial-field-error{display:block;color:#31566b;font-size:.8rem;line-height:1.5;margin-top:5px;flex-basis:100%}
.public-site .trial-booking-expanded .trial-field-error:empty{display:none}
.public-site .trial-booking-expanded [aria-invalid=true]{border-color:#31566b}
.public-site .trial-booking-expanded [data-trial-prepare]{margin-top:18px;min-height:48px;background:#004267;color:#ffffff;white-space:normal;padding:12px 20px}
.public-site .trial-booking-expanded .trial-timezone-note{font-size:.83rem;margin:14px 0 0;color:#31566b}
@media(max-width:600px){.public-site .trial-booking-expanded .trial-fields{grid-template-columns:minmax(0,1fr);gap:16px}.public-site .trial-booking-expanded fieldset{padding:18px 12px}.public-site .trial-booking-expanded .trial-student-card,.public-site .trial-booking-expanded .trial-schedule-card{padding:14px 10px}.public-site .trial-booking-expanded [data-trial-prepare]{width:100%}.public-site .trial-booking-expanded .trial-day-choices{gap:14px}}

/* Mobile/tablet pagination shows directional navigation only. */
@media(max-width:1024px){
body.public-site main .teacher-directory-pagination{display:flex;justify-content:center;align-items:center;gap:14px;width:100%;margin-inline:auto}
body.public-site main .teacher-directory-pagination>a:not([rel=prev]):not([rel=next]),body.public-site main .teacher-directory-pagination>span{display:none}
body.public-site main .home-rotation-controls,body.public-site main .home-rotation-buttons{display:flex;justify-content:center;align-items:center;gap:14px;width:100%}
body.public-site main .home-rotation-controls[hidden]{display:none!important}
}

.public-site .trial-booking-expanded .trial-fields>.trial-notes-wide{grid-column:1/-1;width:100%}
.public-site .trial-booking-expanded .trial-notes-wide textarea{display:block;width:100%;min-height:110px;resize:vertical}

/* Consent stays beside its checkbox; narrow screens wrap text, not the checkbox. */
body.public-site .trial-booking-expanded label.trial-inline:has(>input[name=consent]){display:flex;flex-direction:row;flex-wrap:nowrap;align-items:flex-start;gap:10px;width:100%;font-size:.85rem;font-weight:400;line-height:1.7}
body.public-site .trial-booking-expanded label.trial-inline>input[name=consent]{flex:0 0 18px;width:18px;height:18px;min-height:18px;margin:3px 0 0}
body.public-site .trial-booking-expanded label.trial-inline:has(>input[name=consent])>span{display:block;flex:1 1 auto;min-width:0;max-width:100%;line-height:inherit}
body.public-site .trial-booking-expanded label.trial-inline:has(>input[name=consent])>span a{display:inline;white-space:normal;padding:0;margin:0}
body.public-site .trial-booking-expanded label.trial-inline:has(>input[name=consent])>.trial-field-error{flex:0 0 auto;max-width:180px}
@media(min-width:1200px){body.public-site .trial-booking-expanded label.trial-inline:has(>input[name=consent]){font-size:.78rem}}

body.public-site .trial-page-hero{margin-bottom:28px}
body.public-site .trial-page-hero .course-catalog-hero-image .landing-section-image{display:block;width:100%;height:auto;max-height:none;aspect-ratio:auto;object-fit:contain;margin:0;}
@media(max-width:600px){body.public-site .trial-page-hero{gap:20px;padding:24px 18px}body.public-site .trial-page-hero h1{font-size:clamp(1.6rem,7vw,2.2rem);line-height:1.2}}

/* Homepage trial: balanced form rhythm and aligned primary/secondary actions. */
body.public-site .trial-booking[data-mode=compact]{padding:clamp(22px,3vw,36px)}
body.public-site .trial-booking[data-mode=compact] .trial-booking-heading{margin-bottom:22px;gap:18px;align-items:start}
body.public-site .trial-booking[data-mode=compact] .trial-booking-heading p{margin:0;line-height:1.75}
body.public-site .trial-booking[data-mode=compact] .trial-fields{gap:18px 22px}
body.public-site .trial-booking[data-mode=compact] .trial-fields>label:last-child{grid-column:1/-1}
body.public-site .trial-booking[data-mode=compact] .trial-fields>label{line-height:1.5;font-weight:600}
body.public-site .trial-booking[data-mode=compact] .trial-fields :is(input,select){margin-top:8px;margin-bottom:0;min-height:48px}
body.public-site .trial-booking[data-mode=compact] label.trial-inline:has(>input[name=consent]){margin-top:22px;padding-top:18px;border-top:1px solid #d5f3fa}
body.public-site .trial-booking[data-mode=compact] .form-actions{display:flex;align-items:stretch;justify-content:flex-end;flex-wrap:wrap;gap:12px;margin:20px 0 0;padding:0}
body.public-site .trial-booking[data-mode=compact] .form-actions>:is(button,a){display:inline-flex;justify-content:center;align-items:center;box-sizing:border-box;min-height:48px;min-width:180px;margin:0;padding:12px 20px;font-size:.9rem;font-weight:650;line-height:1.4;text-align:center;border:1px solid #004267;border-radius:10px;text-decoration:none}
body.public-site .trial-booking[data-mode=compact] .form-actions>button{background:#004267;color:#ffffff}
body.public-site .trial-booking[data-mode=compact] .form-actions>a{background:#ffffff;color:#004267}
body.public-site .trial-booking[data-mode=compact] [data-trial-status]{margin:14px 0 0;line-height:1.6;font-size:.88rem}
body.public-site .trial-booking[data-mode=compact] [data-trial-status]:empty{display:none}
@media(max-width:780px){body.public-site .trial-booking[data-mode=compact] .form-actions{justify-content:center}body.public-site .trial-booking[data-mode=compact] .form-actions>:is(button,a){flex:1 1 160px;min-width:0}}
@media(max-width:600px){body.public-site .trial-booking[data-mode=compact]{padding:22px 16px}body.public-site .trial-booking[data-mode=compact] .trial-booking-heading{gap:12px;margin-bottom:20px}body.public-site .trial-booking[data-mode=compact] .trial-fields{gap:16px}body.public-site .trial-booking[data-mode=compact] .form-actions{gap:10px}}
@media(max-width:380px){body.public-site .trial-booking[data-mode=compact] .form-actions{flex-direction:column}body.public-site .trial-booking[data-mode=compact] .form-actions>:is(button,a){flex:auto;width:100%}}

/* Full trial page: concise guidance and consistent form spacing. */
body.public-site .trial-booking[data-mode=full]{padding:clamp(22px,3vw,36px);margin-block:28px}
body.public-site .trial-booking[data-mode=full] .trial-booking-heading{gap:18px;margin-bottom:24px;align-items:start}
.trial-how-to{list-style:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;padding:0;margin:0 0 26px}
.trial-how-to li{display:flex;flex-direction:column;gap:7px;padding:16px;border:1px solid #d5f3fa;border-radius:12px;background:#f5fafc;min-width:0}
.trial-how-to strong{color:#004267;font-size:.9rem}.trial-how-to span{color:#31566b;font-size:.82rem;line-height:1.6}
body.public-site .trial-booking[data-mode=full] fieldset{margin-block:24px;padding:24px}
body.public-site .trial-booking[data-mode=full] .trial-section-help{margin:0 0 20px;font-size:.88rem;line-height:1.7;color:#31566b}
body.public-site .trial-booking[data-mode=full] .trial-inline-note{padding:12px 14px;margin:16px 0;border:1px solid #d5f3fa;border-inline-start:3px solid #ff9019;border-radius:9px;background:#f5fafc;font-size:.83rem;color:#31566b;line-height:1.7}
.trial-level-guide{margin:0 0 20px;border:1px solid #d5f3fa;border-radius:10px;padding:12px 16px;font-size:.85rem;background:#f5fafc}.trial-level-guide summary{cursor:pointer;color:#004267;font-weight:650}.trial-level-guide ul{padding-inline-start:20px;margin-bottom:0}.trial-level-guide li{margin-block:8px}
body.public-site .trial-booking[data-mode=full] .trial-fields{gap:18px 22px}
body.public-site .trial-booking[data-mode=full] .trial-day-choices{margin:0;padding:16px}
body.public-site .trial-booking[data-mode=full] .trial-full-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:stretch;gap:12px;margin-top:22px}
body.public-site .trial-booking[data-mode=full] .trial-full-actions>:is(a,button){display:inline-flex;justify-content:center;align-items:center;margin:0;min-height:48px;padding:12px 20px;font-size:.9rem;line-height:1.4;border:1px solid #004267;border-radius:10px;box-sizing:border-box}
body.public-site .trial-booking[data-mode=full] .trial-full-actions>a{background:#ffffff;color:#004267}
@media(max-width:900px){.trial-how-to{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){body.public-site .trial-booking[data-mode=full]{padding:22px 14px}body.public-site .trial-booking[data-mode=full] fieldset{padding:18px 12px}body.public-site .trial-booking[data-mode=full] .trial-fields{gap:16px}.trial-how-to{gap:10px}.trial-how-to li{padding:12px}.trial-how-to span{font-size:.78rem}body.public-site .trial-booking[data-mode=full] .trial-full-actions>:is(a,button){flex:1 1 150px;min-width:0}}

/* Full trial uses the site's content-panel visual language and readable type. */
body.public-site .trial-booking[data-mode=full]{background:#ffffff;border:1px solid var(--line,#d5f3fa);border-radius:20px;box-shadow:var(--panel-shadow);color:var(--ink,#00334f)}
body.public-site .trial-booking[data-mode=full]>form>fieldset{background:#ffffff;border:1px solid var(--line,#d5f3fa);border-radius:16px;box-shadow:var(--panel-shadow);padding:clamp(20px,3vw,30px);margin-block:24px}
body.public-site .trial-booking[data-mode=full] legend{font-size:1.1rem;line-height:1.6;font-weight:700;color:var(--primary,#00334f)}
body.public-site .trial-booking[data-mode=full] label{font-size:1rem;font-weight:550;line-height:1.7}
body.public-site .trial-booking[data-mode=full] :is(.trial-section-help,.trial-inline-note,.trial-level-guide,.trial-timezone-note){font-size:1rem;line-height:1.8}
body.public-site .trial-booking[data-mode=full] .trial-fields label>small:not(.trial-field-error){display:block;font-size:.94rem;line-height:1.7;margin-top:6px;color:#31566b}
body.public-site .trial-booking[data-mode=full] .trial-how-to{border-block:1px solid var(--line,#d5f3fa);padding-block:18px;gap:20px;background:none}
body.public-site .trial-booking[data-mode=full] .trial-how-to li{border:0;border-radius:0;box-shadow:none;background:none;padding:0}
body.public-site .trial-booking[data-mode=full] .trial-how-to strong{font-size:1rem}
body.public-site .trial-booking[data-mode=full] .trial-how-to span{font-size:.96rem;line-height:1.7}
body.public-site .trial-booking[data-mode=full] :is(.trial-student-card,.trial-schedule-card){background:#ffffff;border:1px solid var(--line,#d5f3fa);border-radius:14px;box-shadow:var(--panel-shadow);padding:22px}
body.public-site .trial-booking[data-mode=full] h3{font-size:1.08rem;line-height:1.6}
body.public-site .trial-booking[data-mode=full] label.trial-inline{display:flex;flex-direction:row;flex-wrap:nowrap;align-items:flex-start;justify-content:flex-start;gap:10px;font-size:1rem;line-height:1.7;min-width:0}
body.public-site .trial-booking[data-mode=full] label.trial-inline>input[type=checkbox]{display:inline-block;flex:0 0 20px;width:20px;height:20px;min-height:20px;margin:4px 0 0;padding:0}
body.public-site .trial-booking[data-mode=full] label.trial-inline>span{flex:1;min-width:0;font-size:inherit;line-height:inherit}
body.public-site .trial-booking[data-mode=full] .trial-day-choices{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;background:#f5fafc;border:1px solid var(--line,#d5f3fa);box-shadow:none}
body.public-site .trial-booking[data-mode=full] .trial-day-choices legend{font-size:1rem}
body.public-site .trial-booking[data-mode=full] [data-trial-individual-wrap]{padding:14px 0;margin-bottom:14px}
body.public-site .trial-booking[data-mode=full] .trial-full-actions>:is(a,button){font-size:1rem;min-height:48px}
body.public-site .trial-booking[data-mode=full] [data-trial-status],body.public-site .trial-booking[data-mode=full] .trial-submit-panel>p{font-size:1rem;line-height:1.8}
@media(max-width:780px){body.public-site .trial-booking[data-mode=full] .trial-day-choices{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){body.public-site .trial-booking[data-mode=full]>form>fieldset{padding:20px 14px}body.public-site .trial-booking[data-mode=full] :is(.trial-student-card,.trial-schedule-card){padding:18px 12px}body.public-site .trial-booking[data-mode=full] .trial-how-to{grid-template-columns:minmax(0,1fr);gap:16px}body.public-site .trial-booking[data-mode=full] .trial-how-to span{font-size:1rem}}

body.public-site .trial-booking[data-mode=full] .trial-student-card>.trial-schedule-card{margin-top:22px;padding-top:22px;border:0;border-top:2px solid var(--accent,#ff9019);border-radius:0;box-shadow:none}

/* One Contact destination, with two clear page views. */
body.public-site .contact-channel-nav{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:12px;padding:8px 0;margin:16px 0 12px}
body.public-site .contact-channel-nav>a.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;min-width:160px;padding:12px 24px;border:1px solid var(--primary,#00334f);border-radius:11px;background:#ffffff;color:var(--primary,#00334f);font-size:1rem;font-weight:650;text-decoration:none;margin:0}
body.public-site .contact-channel-nav>a[aria-current=page]{background:var(--primary,#00334f);color:#ffffff;border-color:var(--primary,#00334f);box-shadow:inset 0 -3px 0 var(--accent,#ff9019)}
body.public-site .contact-channel-nav>a:focus-visible{outline:3px solid var(--accent,#ff9019);outline-offset:3px}
body.public-site .contact-channel-help{text-align:center;font-size:.98rem;line-height:1.7;color:#31566b;max-width:70ch;margin:0 auto 28px}
@media(max-width:600px){body.public-site .contact-channel-nav{gap:10px}body.public-site .contact-channel-nav>a.btn{min-width:0;flex:1 1 120px;padding:12px 16px}body.public-site .contact-channel-help{font-size:.94rem;margin-bottom:22px}}

body.public-site .contact-unified-hero{margin-bottom:24px}
body.public-site .contact-unified-hero+.contact-channel-nav{margin:0 0 26px;padding:0 0 22px;border-bottom:1px solid var(--line,#d5f3fa)}
body.public-site .contact-selected-panel{scroll-margin-top:24px;min-width:0}
body.public-site .contact-selected-panel>.trial-booking[data-mode=full]{margin-top:0}
body.public-site .contact-selected-panel .contact-page-form{margin-top:0}

/* Trial form: one main panel, with sections separated by spacing rather than nested boxes. */
body.public-site .contact-selected-panel .trial-booking[data-mode=full]>form>fieldset{border:0;border-top:1px solid var(--line,#d5f3fa);border-radius:0;box-shadow:none;background:transparent;margin:24px 0 0;padding:24px 0 0}
body.public-site .contact-selected-panel .trial-booking[data-mode=full]>form>fieldset:first-child{border-top:0;margin-top:0;padding-top:0}
body.public-site .contact-selected-panel .trial-booking[data-mode=full] .trial-student-card,body.public-site .contact-selected-panel .trial-booking[data-mode=full] .trial-schedule-card{border:0;border-top:1px solid var(--line,#d5f3fa);border-radius:0;box-shadow:none;background:transparent;padding:22px 0 0;margin-top:22px}
body.public-site .contact-selected-panel .trial-booking[data-mode=full] .trial-student-card:first-child,body.public-site .contact-selected-panel .trial-booking[data-mode=full] [data-trial-shared]>.trial-schedule-card{border-top:0}
body.public-site .contact-selected-panel .trial-booking[data-mode=full] .trial-inline-note{background:none;border:0;border-radius:0;box-shadow:none;padding:0;margin:12px 0 18px}
body.public-site .contact-selected-panel .trial-booking[data-mode=full] .trial-day-choices{background:none;border:0;border-radius:0;box-shadow:none;padding:10px 0;margin:0}
body.public-site .contact-selected-panel .trial-booking[data-mode=full] .trial-level-guide{background:none;border:0;border-radius:0;box-shadow:none;padding:0;margin-bottom:18px}

/* Contact and trial share one form system. */
body.public-site .contact-selected-panel :is(.trial-booking[data-mode=full],.contact-form-panel){box-sizing:border-box;width:100%;max-width:none;padding:clamp(22px,3vw,36px);margin:0;border:1px solid var(--line,#d5f3fa);border-radius:20px;background:#ffffff;box-shadow:var(--panel-shadow);color:var(--ink,#00334f)}
body.public-site .contact-selected-panel .contact-form-panel form{padding:0;margin:0;border:0;background:none;box-shadow:none}
body.public-site .contact-selected-panel :is(.trial-fields,.form-fields){display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 22px}
body.public-site .contact-selected-panel label{font-size:1rem;font-weight:550;line-height:1.7;color:var(--ink,#00334f);margin:0}
body.public-site .contact-selected-panel :is(input:not([type=checkbox]):not([type=hidden]),select,textarea){box-sizing:border-box;width:100%;max-width:100%;min-height:48px;padding:11px 13px;margin:8px 0 0;background:#ffffff;color:var(--ink,#00334f);border:1px solid #a9e6f3;border-radius:9px;font-family:inherit;font-size:16px;line-height:1.5}
body.public-site .contact-selected-panel textarea{min-height:120px;resize:vertical}
body.public-site .contact-selected-panel :is(input,select,textarea):focus-visible{outline:2px solid var(--primary,#00334f);outline-offset:2px}
body.public-site .contact-selected-panel .contact-form-panel .form-fields+label{margin-top:20px}
body.public-site .contact-selected-panel .contact-share-consent{display:flex;flex-direction:row;align-items:flex-start;gap:10px;margin:20px 0;line-height:1.7;background:none;border:0;padding:0}
body.public-site .contact-selected-panel :is(.contact-share-consent,.trial-inline)>input[type=checkbox]{flex:0 0 20px;width:20px;height:20px;min-height:20px;margin:4px 0 0;padding:0;accent-color:var(--primary,#00334f)}
body.public-site .contact-selected-panel :is(button,.trial-full-actions>a,[data-job-restart]){display:inline-flex;justify-content:center;align-items:center;min-height:48px;padding:12px 20px;border:1px solid var(--primary,#00334f);border-radius:10px;font-size:1rem;line-height:1.4;font-weight:650;background:var(--primary,#00334f);color:#ffffff;text-decoration:none}
body.public-site .contact-selected-panel .trial-full-actions>a{color:var(--primary,#00334f);background:#ffffff}
body.public-site .contact-selected-panel .contact-form-panel [data-job-prepare]{margin:0;float:none}
body.public-site .contact-selected-panel :is([data-job-status],[data-trial-status]){font-size:1rem;line-height:1.7;margin-top:16px}
body.public-site .contact-selected-panel :is([data-job-status],[data-trial-status]):empty{display:none}
body.public-site .contact-selected-panel [hidden]{display:none!important}
@media(max-width:600px){body.public-site .contact-selected-panel :is(.trial-booking[data-mode=full],.contact-form-panel){padding:22px 16px}body.public-site .contact-selected-panel :is(.trial-fields,.form-fields){grid-template-columns:minmax(0,1fr);gap:16px}body.public-site .contact-selected-panel .contact-form-panel :is([data-job-prepare],[data-job-send]){width:100%}}

/* Final contact/trial spacing after automatic hidden preferences. */
body.public-site .contact-selected-panel .trial-booking[data-mode=full] .trial-booking-heading{margin-bottom:22px}
body.public-site .contact-selected-panel .trial-booking[data-mode=full] .trial-how-to{margin-bottom:24px}
body.public-site .contact-selected-panel .trial-booking[data-mode=full]>form>fieldset{margin-top:26px;padding-top:24px}
body.public-site .contact-selected-panel .trial-booking[data-mode=full]>form>fieldset:first-child{margin-top:0;padding-top:0}
body.public-site .contact-selected-panel .trial-booking[data-mode=full] .trial-fields{gap:18px 22px;align-items:start}
body.public-site .contact-selected-panel .trial-booking[data-mode=full] label:has(>input[name=students]){max-width:240px;margin-bottom:18px}
body.public-site .contact-selected-panel .trial-booking[data-mode=full] [data-trial-individual-wrap]{margin:4px 0 18px;padding:0}
body.public-site .contact-selected-panel .trial-booking[data-mode=full] .trial-timezone-note{margin:16px 0 0}
body.public-site .contact-selected-panel .trial-booking[data-mode=full] .trial-submit-panel .trial-full-actions{margin-top:20px}
body.public-site .contact-selected-panel :is([data-job-status],[data-trial-status]):empty{margin:0;padding:0}
@media(max-width:600px){body.public-site .contact-selected-panel .trial-booking[data-mode=full] .trial-fields{gap:16px}body.public-site .contact-selected-panel .trial-booking[data-mode=full] label:has(>input[name=students]){max-width:none}body.public-site .contact-selected-panel .trial-booking[data-mode=full]>form>fieldset{margin-top:22px;padding-top:20px}}

.public-site .support-contact-form .support-form-heading{margin-bottom:24px}.support-form-heading h2{margin:0 0 8px;line-height:1.3}.support-form-heading p{margin:0;font-size:1rem;line-height:1.7;color:#31566b}
body.public-site .support-contact-form .form-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 22px}
body.public-site .support-contact-form label{font-size:1rem;line-height:1.7;font-weight:550}
body.public-site .support-contact-form :is(input:not([type=checkbox]),textarea){font-size:16px;min-height:48px;padding:11px 13px;margin:8px 0 0;border-radius:9px}
body.public-site .support-contact-form .form-fields+label{margin-top:20px}
body.public-site .support-contact-form textarea{height:130px;min-height:130px;resize:vertical}
body.public-site .support-contact-form .contact-share-consent{display:flex;gap:10px;align-items:flex-start;margin:20px 0;background:none;border:0;padding:0}
body.public-site .support-contact-form .contact-share-consent>input{width:20px;height:20px;min-height:20px;flex:0 0 20px;margin:4px 0 0;padding:0}
body.public-site .support-contact-form :is([data-job-prepare],[data-job-send]){min-height:48px;padding:12px 22px;margin:0;background:var(--primary,#00334f);color:#ffffff;border:1px solid var(--primary,#00334f);border-radius:10px;font-size:1rem;line-height:1.4}
body.public-site .support-contact-form [data-job-review]{margin-top:22px;padding-top:20px;border-top:1px solid var(--line,#d5f3fa)}
body.public-site .support-contact-form [data-job-status]:empty{display:none}
@media(max-width:600px){body.public-site .support-contact-form .form-fields{grid-template-columns:minmax(0,1fr);gap:16px}body.public-site .support-contact-form :is([data-job-prepare],[data-job-send]){width:100%}}
/* Al Manaarah identity: cyan, orange and lighthouse navy. */
.public-site{--brand-cyan:#00aed6;--brand-orange:#ff9019;--line:#d5f3fa;--muted:#31566b;--shadow:0 12px 36px #00334f0b}
.site-header .brand img.logo{width:164px;height:80px;max-width:42vw;object-fit:contain;background:#ffffff;padding:7px 10px;border-radius:12px;flex-shrink:0}
.public-site .brand strong span{color:#ff9019}
.public-site .site-header{border-bottom:4px solid #00aed6}
.public-site .hero{border-bottom:4px solid #00aed6}
.public-site .card:before{background:#00aed6}
.public-site .footer-logo img{width:150px;height:82px;object-fit:contain;background:white;border-radius:12px;padding:8px}
.public-site .page-brand-mark{width:160px;height:auto;max-width:100%}
.public-site .page-brand-mark img{width:160px;height:82px;object-fit:contain;background:white;padding:8px}
.public-site .about-story-logo img{width:100%;height:auto;object-fit:contain}
.public-site .hero-emblem img{background:#ffffff;padding:10px}
@media(max-width:600px){.site-header .brand img.logo{width:125px;height:64px}.site-header .brand{gap:10px}.site-header .brand strong{font-size:.82rem}.site-header .brand small{font-size:.6rem}.public-site .footer-logo{flex-wrap:wrap}}/* Use the supplied dark artwork on its matching brand background. */
body .site-header,body.public-site .academy-footer{background:#004267;color:#ffffff}
body .site-header .brand img.logo{width:240px;height:104px;max-width:55vw;object-fit:cover;object-position:50% 52%;background:transparent;padding:0;border-radius:0}
body.public-site .site-header .brand>span,body.public-site .academy-footer .footer-logo>span{display:none}
body.public-site .academy-footer .footer-logo img{width:280px;height:125px;max-width:100%;object-fit:cover;object-position:50% 52%;background:transparent;padding:0;border-radius:0}
body.public-site .page-brand-mark img,body.public-site .hero-emblem img,body.public-site .about-story-logo img{background:transparent;padding:0;object-fit:contain}
@media(max-width:600px){body .site-header .brand img.logo{width:195px;height:90px;max-width:58vw}body.public-site .academy-footer .footer-logo img{width:250px;height:116px}}body.public-site .site-header,body.admin-site .site-header,body.public-site footer.academy-footer{background:#004267;color:#ffffff}
/* Al Manaarah: lighthouse navy, clear cyan and a warm call to action. */
body.public-site{--primary:#004267;--accent:#ff9019;--ink:#00334f;--canvas:#f5fafc;--line:#d5f3fa;--muted:#31566b}
body.public-site .home-unified-hero{background:#eaf8fc;border:1px solid #d5f3fa;border-top:4px solid #00aed6;border-bottom:0}
body.public-site .home-unified-hero>.header-shade{background:linear-gradient(110deg,rgba(234,248,252,0.97),rgba(245,250,252,0.91))}
body.public-site .home-unified-hero h1{color:#004267}
body.public-site .home-unified-hero p{color:#31566b}
body.public-site .academy-path-panel{background:#004267;color:#ffffff;border:1px solid #31566b}
body.public-site .academy-path-panel :is(h2,p,a,.eyebrow,.path-number){color:#ffffff}
body.public-site .academy-path-panel a{border-bottom-color:#ffffff35}
body.public-site .academy-path-panel a:hover{color:#00aed6}
body.public-site main :is(.btn,button){background:#ff9019;color:#00334f}
body.public-site .package-badge,body.public-site .home-learning-tags span{background:#eaf8fc;color:#004267;border-color:#a9e6f3}
body.public-site .academy-pillars .card{border-top-color:#00aed6}
body.public-site .enrollment-guide{background:#eaf8fc;border-radius:22px;padding:clamp(20px,4vw,36px)}
body.public-site .home-unified-closing{background:#004267;color:white}
body.public-site .home-unified-closing :is(h2,p,a:not(.btn)){color:#ffffff}
body.public-site .trial-booking{border-top:4px solid #ff9019}
body.public-site .academy-footer{border-top:4px solid #00aed6}/* Related courses, grouped around a concrete learning goal. */
.curriculum-group-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.curriculum-group{border:1px solid #d5f3fa;border-top:3px solid #00aed6;background:#ffffff}
.curriculum-group summary{color:#004267;line-height:1.5;padding-right:12px}
.curriculum-group summary small{display:block;color:#31566b;font-weight:500;margin-top:6px}
.curriculum-group ol{padding-inline-start:24px}
.curriculum-group li{padding:10px 0;border-bottom:1px solid #d5f3fa}
.curriculum-group li:last-child{border:0}
.curriculum-group li small{display:block;color:#31566b}
.public-site .course-subject-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
@media(max-width:850px){.public-site .course-subject-grid,.curriculum-group-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.public-site .course-subject-grid,.curriculum-group-grid{grid-template-columns:1fr}}/* Al Manaarah contact channels and worldwide offices. */
.academy-contact-channels,.academy-office-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.public-site .contact-channel-card{display:flex;flex-direction:column;align-items:flex-start;gap:10px;text-decoration:none;border-top:3px solid #00aed6}
.contact-channel-card h3{margin:4px 0}
.contact-channel-value{font-weight:700;font-size:clamp(.95rem,1.4vw,1.1rem);overflow-wrap:anywhere}
.contact-channel-card small{margin-top:auto;color:#31566b}
.contact-team-note{margin:24px 0}
.academy-office address{font-style:normal;line-height:1.8;color:#31566b;overflow-wrap:anywhere}
.academy-online-panel{display:grid;grid-template-columns:1fr 1.2fr;gap:30px;margin-top:28px;background:#004267;color:#ffffff;border-radius:20px;padding:clamp(24px,4vw,40px);border-bottom:4px solid #ff9019}
.public-site .academy-online-panel :is(h2,p){color:#ffffff}
.academy-online-panel ul{margin:0;padding-inline-start:22px}
.academy-online-panel li{padding:7px 0}
.footer-contact-links{display:flex;flex-direction:column;align-items:flex-start;gap:8px;margin:18px 0;overflow-wrap:anywhere}
.public-site footer .footer-contact-links a{color:#ffffff}
.careers-email{overflow-wrap:anywhere}
@media(max-width:850px){.academy-contact-channels,.academy-office-grid{grid-template-columns:1fr}.academy-online-panel{grid-template-columns:1fr;gap:16px}}@media(min-width:1050px){.public-site .course-subject-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}
.payment-policy-highlights{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.payment-policy-summary{margin-block:28px;border-top:4px solid #ff9019}.payment-policy-highlights h3{color:#004267}.course-student-choice small{display:block}@media(max-width:600px){.payment-policy-highlights{grid-template-columns:1fr}}

.package-card.family-shared-plan .package-period::after{content:' per shared class'}

/* Al Manaarah: expanded monthly plans and social destinations. */
.basic-packages{margin:48px 0}.basic-packages .package-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.basic-packages .package-card:nth-child(3n+2){border-top:4px solid #ff9019}.basic-packages .package-card:nth-child(3n+1){border-top:4px solid #00aed6}.basic-packages .package-card:nth-child(3n){border-top:4px solid #004267}.package-trial-link{display:block;text-align:center;margin-top:12px;color:#004267;font-weight:700}.family-duration-choices{display:flex;flex-wrap:wrap;gap:12px;margin:24px 0}.family-package-panel{padding:28px;background:#eaf8fc;border-radius:20px}.footer-social-links a{display:inline-flex;align-items:center;gap:8px}.contact-social-section{margin:40px 0;padding:28px;background:#004267;color:white;border-radius:22px}.contact-social-section h2,.contact-social-section a{color:white}.contact-social-section .social-qr-card a{color:#004267}.social-qr-grid{grid-template-columns:repeat(2,minmax(0,260px));justify-content:start}.social-qr-card img{max-width:100%;height:auto}
@media(max-width:1000px){.basic-packages .package-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:620px){.basic-packages .package-grid{grid-template-columns:1fr}.social-qr-grid{grid-template-columns:1fr}.duration-tabs{flex-wrap:wrap}}
body.public-site .contact-social-section .footer-social-links .footer-facebook-link{color:#ffffff;display:inline-flex;align-items:center;gap:10px;border:1px solid #ffffff70;border-radius:10px;padding:10px 16px;min-height:44px;text-decoration:none}body.public-site .contact-social-section .footer-social-links .footer-facebook-link:hover{background:#ffffff18;border-color:#ff9019}
.social-qr-grid{grid-template-columns:repeat(3,minmax(0,260px))}@media(max-width:850px){.social-qr-grid{grid-template-columns:repeat(2,minmax(0,260px))}}@media(max-width:620px){.social-qr-grid{grid-template-columns:1fr}}
body.public-site .footer-social-links{display:flex;flex-direction:row;flex-wrap:nowrap;gap:10px}body.public-site .academy-footer .footer-social-links .footer-facebook-link,body.public-site .contact-social-section .footer-social-links .footer-facebook-link{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;min-width:44px;padding:10px;margin:0;box-sizing:border-box;flex:0 0 44px}

/* Keep the three QR cards together, including on phones. */
body.public-site .social-qr-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;max-width:800px}body.public-site .social-qr-card{min-width:0;padding:6px}body.public-site .social-qr-card img{width:100%;height:auto}body.public-site .social-qr-card figcaption{font-size:clamp(.6rem,1vw,.8rem)}

/* Keep the three QR cards together, including on phones. */
body.public-site .social-qr-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;max-width:800px}body.public-site .social-qr-card{min-width:0;padding:6px}body.public-site .social-qr-card img{width:100%;height:auto}body.public-site .social-qr-card figcaption{font-size:clamp(.6rem,1vw,.8rem)}
@media(max-width:620px){body.public-site .contact-social-section{padding:16px}body.public-site .contact-social-section .social-share-panel{padding:8px}body.public-site .social-qr-card figcaption{overflow-wrap:anywhere}}

/* Monthly offer cards: three across, with responsive rows. */
@media(min-width:1101px){.public-site .course-plans .course-plan-tabs .package-grid,.public-site .basic-packages .course-plan-tabs .package-grid{grid-template-columns:repeat(3,minmax(0,1fr));max-width:none;margin:0}}
