:root{--brand:#2a4e8a;--brand-deep:#1c3663;--cta:#e15532;--cta-hover:#c94728;--ink:#152033;--muted:#5a6578;--line:#d8e0ec;--paper:#f3f6fb;--white:#fff;--radius:12px;--shadow:0 12px 40px #1a305a1a;--font-sans:var(--font-noto-sans), "Noto Sans TC", "PingFang HK", "Microsoft JhengHei", sans-serif;--font-serif:var(--font-noto-serif), "Noto Serif TC", "Songti TC", serif;--shell:min(1120px, calc(100% - 2rem))}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:var(--font-sans);color:var(--ink);background:var(--paper);-webkit-font-smoothing:antialiased;margin:0;font-size:17px;line-height:1.65}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}.shell{width:var(--shell);margin-inline:auto}.mock-banner{background:var(--brand-deep);color:#d7e3f7;text-align:center;letter-spacing:.02em;padding:.55rem 1rem;font-size:.82rem}.site-header{z-index:40;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--line);background:#f3f6fbeb;position:sticky;top:0}.header-inner{justify-content:space-between;align-items:center;gap:1rem;min-height:4.25rem;display:flex}.brand{align-items:center;gap:.7rem;min-width:0;display:flex}.brand-logo{object-fit:contain;width:auto;max-width:100%;height:2.35rem}@media (min-width:960px){.brand-logo{height:2.75rem}}.nav-desktop{z-index:1;display:none;position:relative}.nav-desktop-list{color:var(--muted);align-items:center;gap:.35rem .95rem;margin:0;padding:0;font-size:.95rem;font-weight:500;list-style:none;display:flex}.nav-top-link{color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;border-radius:.35rem;align-items:center;gap:.35rem;padding:.4rem .15rem;font-weight:500;transition:color .14s;display:inline-flex}.nav-top-link:hover,.nav-top-link.is-active,.nav-top-link[data-active],.nav-mega-trigger[data-state=open]{color:var(--brand)}.nav-mega-caret{border-bottom:1.5px solid;border-right:1.5px solid;width:.4rem;height:.4rem;transition:transform .16s;display:inline-block;transform:rotate(45deg)translateY(-1px)}.nav-mega-trigger[data-state=open] .nav-mega-caret,.nav-mobile-expand[aria-expanded=true] .nav-mega-caret{transform:rotate(225deg)translateY(-1px)}.nav-mega-viewport-wrap{perspective:1200px;justify-content:center;width:min(52rem,100vw - 2rem);margin-top:.65rem;display:flex;position:absolute;top:100%;left:50%;transform:translate(-50%)}.nav-mega-viewport{width:100%;height:var(--radix-navigation-menu-viewport-height);background:var(--white);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);transform-origin:top;transition:height .22s;position:relative;overflow:hidden}.nav-mega-viewport[data-state=open]{animation:.18s mega-viewport-in}.nav-mega-viewport[data-state=closed]{animation:.14s mega-viewport-out}.nav-mega-content{width:100%;animation-duration:.2s;animation-timing-function:ease;position:absolute;top:0;left:0}.nav-mega-content[data-motion=from-start]{animation-name:mega-enter-from-left}.nav-mega-content[data-motion=from-end]{animation-name:mega-enter-from-right}.nav-mega-content[data-motion=to-start]{animation-name:mega-exit-to-left}.nav-mega-content[data-motion=to-end]{animation-name:mega-exit-to-right}.mega-panel{padding:1.15rem 1.25rem 1.25rem}.mega-panel-columns{grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem 1.75rem;display:grid}.mega-panel-heading{letter-spacing:.04em;text-transform:uppercase;color:var(--brand);margin:0 0 .55rem;font-size:.78rem;font-weight:700}.mega-panel-list{gap:.2rem;margin:0;padding:0;list-style:none;display:grid}.mega-panel-link{border-radius:.55rem;align-items:flex-start;gap:.55rem;padding:.55rem .65rem;transition:background .14s;display:flex}.mega-panel-link .site-icon{flex-shrink:0;margin-top:.12rem}.mega-panel-link-copy{flex:1;gap:.1rem;min-width:0;display:grid}.mega-panel-link:hover,.mega-panel-link:focus-visible{background:var(--paper);outline:none}.mega-panel-link-label{color:var(--ink);font-size:.95rem;font-weight:600}.mega-panel-link-desc{color:var(--muted);word-break:keep-all;line-break:strict;font-size:.82rem;line-height:1.4}.mega-panel-featured{background:var(--paper);border:1px solid var(--line);border-radius:.7rem;justify-content:space-between;align-items:center;gap:1rem;margin-top:1rem;padding:.9rem 1rem;display:flex}.mega-panel-featured-title{color:var(--brand-deep);margin:0 0 .2rem;font-size:.95rem;font-weight:700}.mega-panel-featured-desc{color:var(--muted);margin:0;font-size:.85rem;line-height:1.45}.mega-panel-featured-cta{white-space:nowrap;flex-shrink:0}.nav-mobile-group{display:grid}.nav-mobile-row{align-items:stretch;gap:.25rem;display:flex}.nav-mobile-row>a{flex:1}.nav-mobile-expand{width:2.75rem;min-height:44px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:.6rem;place-content:center;display:grid}.nav-mobile-expand:hover,.nav-mobile-expand:focus-visible{background:var(--paper);color:var(--brand);outline:none}.nav-mobile-sub{border-left:2px solid var(--line);gap:.15rem;margin:0 .5rem .35rem .85rem;padding:.15rem 0 .35rem .75rem;display:grid}.nav-mobile-sub[hidden]{display:none}.nav-mobile-column{gap:.1rem;display:grid}.nav-mobile-column+.nav-mobile-column{margin-top:.45rem}.nav-mobile-heading{letter-spacing:.04em;text-transform:uppercase;color:var(--brand);margin:.2rem 0 .15rem;font-size:.72rem;font-weight:700}.nav-mobile-sub a{color:var(--muted);font-size:.92rem}@keyframes mega-viewport-in{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:scale(1)}}@keyframes mega-viewport-out{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.97)}}@keyframes mega-enter-from-right{0%{opacity:0;transform:translate(1.25rem)}to{opacity:1;transform:translate(0)}}@keyframes mega-enter-from-left{0%{opacity:0;transform:translate(-1.25rem)}to{opacity:1;transform:translate(0)}}@keyframes mega-exit-to-right{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(1.25rem)}}@keyframes mega-exit-to-left{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(-1.25rem)}}.nav-mobile-note{color:var(--muted);margin:.5rem .75rem 0;font-size:.85rem}.studio-root{height:100svh;margin:0;padding:0;overflow:auto}.prose-page{max-width:42rem}.prose-page h1{font-family:var(--font-serif);color:var(--brand-deep);margin:.5rem 0 .75rem;font-size:clamp(1.85rem,4vw,2.4rem);line-height:1.25}.prose-page>p,.body-block p{color:var(--muted)}.lead{font-size:1.08rem;color:var(--ink)!important}.guide-section+.guide-section{margin-top:1.75rem}.guide-section h2,.guide-related h2{font-family:var(--font-serif);color:var(--brand-deep);margin:0 0 .75rem;font-size:clamp(1.4rem,3vw,1.65rem)}.guide-section p{color:var(--muted);margin:0 0 .75rem;font-size:1.02rem;line-height:1.85}.guide-archive{background:var(--white)}.guide-archive-shell,.guide-article-shell{max-width:42rem}.guide-archive-head{margin:0 0 .5rem}.guide-archive-title{font-family:var(--font-serif);color:var(--brand-deep);margin:0;font-size:clamp(2rem,5vw,2.75rem);line-height:1.25}.guide-archive-lead{color:var(--muted);margin:.75rem 0 0;font-size:1.05rem;line-height:1.7}.guide-article-list{margin:0;padding:0;list-style:none}.guide-row{border-bottom:1px solid var(--line);padding:1.75rem 0}.guide-row:last-child{border-bottom:none}.guide-row-link{display:block}.guide-cat{letter-spacing:.04em;color:var(--brand);margin:0 0 .5rem;font-size:.78rem;font-weight:600;display:inline-block}.guide-row-title{font-family:var(--font-serif);color:var(--ink);margin:0;font-size:clamp(1.35rem,3vw,1.7rem);line-height:1.3}.guide-row-link:hover .guide-row-title{color:var(--brand)}.guide-row-excerpt{color:var(--muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:.55rem 0 0;font-size:.98rem;line-height:1.6;display:-webkit-box;overflow:hidden}.guide-row-meta,.guide-article-meta{color:var(--muted);flex-wrap:wrap;align-items:center;gap:.4rem;display:flex}.guide-row-meta{margin-top:.85rem;font-size:.85rem}.guide-article{background:var(--white);padding:3rem 0 4rem}.guide-article-head h1{font-family:var(--font-serif);color:var(--brand-deep);margin:.15rem 0 .75rem;font-size:clamp(2rem,5vw,2.6rem);line-height:1.25}.guide-deck{color:var(--muted);margin:0;font-size:1.12rem;line-height:1.7}.guide-article-meta{margin:1.05rem 0 1.5rem;font-size:.88rem}.guide-cover{border-radius:var(--radius);width:100%;margin:0 0 2rem}.guide-related{border-top:1px solid var(--line);margin-top:2.25rem;padding-top:1.75rem}.guide-related ul{gap:.45rem;margin:0;padding:0;list-style:none;display:grid}.guide-related a{color:var(--brand)}.guide-related a:hover{text-decoration:underline}.guide-section p:last-child{margin-bottom:0}.guide-section strong{color:var(--ink);font-weight:700}.guide-bullets{color:var(--muted);gap:.4rem;margin:0 0 .75rem;padding:0 0 0 1.2rem;line-height:1.7;display:grid}.guide-bullets li::marker{color:var(--brand)}.guide-table-wrap{margin:0 0 .75rem;overflow-x:auto}.guide-table{border-collapse:collapse;width:100%;font-size:.92rem}.guide-table th,.guide-table td{border-bottom:1px solid var(--line);text-align:left;color:var(--muted);vertical-align:top;padding:.5rem .4rem;line-height:1.55}.guide-table th{color:var(--brand-deep);font-weight:700}.guide-faq-list{gap:1rem;margin:0;display:grid}.guide-faq-item dt{color:var(--ink);margin:0 0 .35rem;font-weight:700}.guide-faq-item dd{color:var(--muted);margin:0;line-height:1.75}.meta-line{color:var(--cta);font-size:.9rem;font-weight:700}.eyebrow-inline{color:var(--brand);margin:0 0 .75rem;font-weight:600}.teacher-title{font-weight:600;color:var(--brand)!important}.teacher-bullets{color:var(--muted);gap:.35rem;margin:.35rem 0 0;padding:0 0 0 1.1rem;font-size:.9rem;line-height:1.45;display:grid}.teacher-bullets li::marker{color:var(--brand)}.form-ok{color:#1a7a45!important}.form-error{color:#b42318!important}.teacher-card h2,.teacher-card h3{color:var(--brand-deep);margin:0;font-size:1.15rem}.section-head h1{font-family:var(--font-serif);color:var(--brand-deep);margin:0;font-size:clamp(1.85rem,4vw,2.4rem);line-height:1.25}.course-card h2{color:var(--brand-deep);margin:0;font-size:1.15rem}.news-item h2{margin:0;font-size:1.15rem}.news-item h2 a:hover{color:var(--brand)}.contact-intro h1,.contact-copy h1{font-family:var(--font-serif);color:var(--brand-deep);margin:0;font-size:clamp(1.7rem,4vw,2.15rem)}.header-actions{align-items:center;gap:.5rem;display:flex}.header-actions .btn-ghost{display:none}.nav-toggle{border:1px solid var(--line);background:var(--white);cursor:pointer;border-radius:.7rem;place-content:center;gap:5px;width:2.75rem;height:2.75rem;transition:background .14s,border-color .14s;display:grid}.nav-toggle:hover{background:var(--paper)}.nav-toggle span{background:var(--brand-deep);transform-origin:50%;border-radius:2px;width:1.1rem;height:2px;transition:transform .18s,opacity .16s;display:block}.nav-toggle[aria-expanded=true] span:first-child{transform:translateY(7px)rotate(45deg)}.nav-toggle[aria-expanded=true] span:nth-child(2){opacity:0}.nav-toggle[aria-expanded=true] span:nth-child(3){transform:translateY(-7px)rotate(-45deg)}.nav-mobile{opacity:0;visibility:hidden;pointer-events:none;background:var(--white);border-top:1px solid #0000;grid-template-rows:0fr;transition:grid-template-rows .22s,opacity .18s,visibility .18s,border-color .18s;display:grid}.nav-mobile.is-open{opacity:1;visibility:visible;pointer-events:auto;border-top-color:var(--line);grid-template-rows:1fr}.nav-mobile-inner{gap:.25rem;min-height:0;padding:0 1rem;display:grid;overflow:hidden}.nav-mobile.is-open .nav-mobile-inner{max-height:min(70vh,36rem);padding:.5rem 1rem 1rem;overflow-y:auto}.nav-mobile a{border-radius:.6rem;min-height:44px;padding:.85rem .75rem;font-weight:500}.nav-mobile a:hover,.nav-mobile a:focus-visible{background:var(--paper);color:var(--brand)}.btn{border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:.4rem;min-height:44px;padding:.65rem 1.1rem;font-size:.95rem;font-weight:600;transition:background .2s,transform .2s,color .2s,border-color .2s,opacity .2s;display:inline-flex}.btn:hover{transform:translateY(-1px)}.btn:active{transform:translateY(0)scale(.98)}.btn:disabled,.btn[aria-busy=true]{opacity:.72;cursor:wait;pointer-events:none;transform:none}.btn-spinner{border:2px solid #ffffff59;border-top-color:currentColor;border-radius:50%;width:.9rem;height:.9rem;animation:.7s linear infinite btnSpin}@keyframes btnSpin{to{transform:rotate(360deg)}}.btn-lg{min-height:48px;padding-inline:1.35rem;font-size:1rem}.btn-cta{background:var(--cta);color:#fff}.btn-cta:hover{background:var(--cta-hover)}.btn-primary{background:var(--brand);color:#fff;width:100%}.btn-primary:hover{background:var(--brand-deep)}.btn-ghost{color:var(--brand);border-color:var(--line);background:0 0}.btn-on-dark{color:#fff;background:#ffffff1f;border-color:#ffffff59}.btn-on-dark:hover{background:#fff3}.text-link{color:var(--brand);font-size:.95rem;font-weight:600;transition:color .15s}.text-link:hover{color:var(--cta)}:focus-visible{outline-offset:2px;outline:2px solid #2a4e8a73}.btn:focus-visible,.wa-float:focus-visible{outline-offset:3px}.btn-cta:focus-visible,.btn-on-dark:focus-visible,.hero .btn:focus-visible,.wa-float:focus-visible{outline-color:#ffffffd9}.hero{color:#fff;align-items:end;min-height:min(62svh,520px);display:grid;position:relative;overflow:hidden}.preview-banner{background:var(--brand-deep);color:#d7e3f7;text-align:center;letter-spacing:.01em;margin:0;padding:.55rem 1rem;font-size:.82rem;line-height:1.45}.hero-media{background:#1c3663;position:absolute;inset:0}.hero-photo{object-fit:cover;object-position:center}.hero-parallax{position:absolute;inset:0}.js .hero-parallax{top:-16%;bottom:-16%}.parallax-frame{border-radius:var(--radius);overflow:hidden}.hero-media:after{content:"";z-index:1;background:linear-gradient(#11224047 0%,#1122409e 48%,#112240e6 100%);position:absolute;inset:0}.hero-content{z-index:2;max-width:36rem;padding:4.5rem 0 3.25rem;animation:.8s both riseIn;position:relative}@keyframes riseIn{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}.eyebrow{letter-spacing:.06em;color:#c9d8f2;margin:0 0 .75rem;font-size:.9rem;font-weight:600}.hero h1{font-family:var(--font-serif);letter-spacing:.02em;margin:0;font-size:clamp(2.6rem,9vw,4.4rem);font-weight:700;line-height:1.08}.hero-lead{margin:.85rem 0 0;font-size:clamp(1.2rem,3.5vw,1.55rem);font-weight:600}.hero-support{color:#d7e2f4;max-width:28rem;margin:.75rem 0 0;font-size:1.02rem}.hero-ctas{flex-wrap:wrap;gap:.75rem;margin-top:1.6rem;display:flex}.section{padding:4.25rem 0}.trust-strip{background:var(--white);border-bottom:1px solid var(--line)}.trust-strip-inner{grid-template-columns:repeat(3,1fr);gap:.65rem;padding-block:1.1rem;display:grid}.trust-strip-grade{width:100%;color:var(--brand-deep);border-color:var(--line);background:var(--paper);border-radius:.65rem}.trust-strip-grade:hover,.trust-strip-grade:focus-visible{color:var(--brand);border-color:var(--brand);background:var(--white);outline:none}.campus-strip{gap:.9rem;display:grid}.campus-strip figure{margin:0}.campus-strip img{object-fit:cover;border-radius:var(--radius);width:100%;height:13.5rem}.campus-strip figcaption{color:var(--muted);margin-top:.45rem;font-size:.82rem}.image-carousel{outline:none}.image-carousel:focus-visible{box-shadow:0 0 0 3px #2a4e8a47}.image-carousel-viewport{background:var(--white);position:relative;overflow:hidden}.image-carousel-track{will-change:transform;transition:transform .45s cubic-bezier(.22,1,.36,1);display:flex}.image-carousel-slide{flex:0 0 100%;min-width:0;margin:0}.image-carousel-media{aspect-ratio:16/10;background:var(--line);position:relative}.image-carousel-media img{object-fit:cover;width:100%;height:100%}.image-carousel-slide figcaption{color:var(--brand-deep);text-align:center;background:var(--white);margin:0;padding:.75rem 1rem .9rem;font-size:.9rem;font-weight:600}.image-carousel-nav{z-index:2;width:2.5rem;height:2.5rem;color:var(--brand-deep);cursor:pointer;background:#ffffffeb;border:0;border-radius:0;place-items:center;font-size:1.55rem;line-height:1;transition:background .2s,transform .2s;display:grid;position:absolute;top:calc(50% - 1.4rem);box-shadow:0 6px 18px #1a305a29}.image-carousel-nav:hover{background:var(--white);transform:scale(1.04)}.image-carousel-nav:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.image-carousel-prev{left:.75rem}.image-carousel-next{right:.75rem}.image-carousel-dots{justify-content:center;gap:.45rem;margin-top:.9rem;display:flex}.image-carousel-dot{cursor:pointer;background:#2a4e8a38;border:0;border-radius:0;width:1.35rem;height:.28rem;padding:0;transition:background .2s,width .2s}.image-carousel-dot.is-active{background:var(--brand);width:1.85rem}.image-carousel-dot:focus-visible{outline:2px solid var(--brand);outline-offset:2px}@media (min-width:720px){.image-carousel-media{aspect-ratio:16/9}.image-carousel-nav{width:2.75rem;height:2.75rem}}.video-gallery{gap:1.25rem;display:grid}.video-gallery-featured{max-width:48rem}.video-gallery-featured.video-gallery-portrait{max-width:22rem;margin-inline:auto}.video-card{gap:.55rem;margin:0;display:grid}.video-card-portrait{text-align:center;justify-items:center}.video-frame{border-radius:var(--radius);background:var(--brand-deep);aspect-ratio:16/9;width:100%;position:relative;overflow:hidden}.video-frame-portrait{aspect-ratio:9/16;width:min(100%,22rem);max-height:min(78vh,36rem);margin-inline:auto}.video-frame video{object-fit:contain;background:#0b1c33;width:100%;height:100%;display:block}.video-frame-portrait video{object-fit:cover}.video-card figcaption{gap:.15rem;display:grid}.video-card-portrait figcaption{width:min(100%,22rem)}.video-card figcaption strong{color:var(--ink);font-size:.98rem}.video-card figcaption span{color:var(--muted);font-size:.85rem}@media (min-width:720px){.video-gallery:not(.video-gallery-featured){grid-template-columns:repeat(2,1fr);gap:1.35rem 1.15rem}}.section-tint{background:var(--white)}.section-head{max-width:36rem;margin-bottom:1.75rem}.section-head h2{font-family:var(--font-serif);color:var(--brand-deep);margin:0;font-size:clamp(1.7rem,4vw,2.15rem);line-height:1.25}.section-head p{color:var(--muted);margin:.6rem 0 0}.course-grid,.teacher-grid,.quote-grid{gap:1rem;display:grid}.course-card,.teacher-card,.news-item,blockquote{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:1.25rem 1.2rem}.course-card{gap:.55rem;transition:box-shadow .25s,transform .25s;display:grid}.course-card:hover,.course-card:focus-visible{box-shadow:var(--shadow);transform:translateY(-2px)}.course-card h3,.news-item h3,.teacher-card h3{color:var(--brand-deep);margin:0;font-size:1.15rem}.course-card p,.news-item p,.teacher-card p{color:var(--muted);margin:0;font-size:.98rem}.tag{width:fit-content;color:var(--brand);letter-spacing:.04em;background:#2a4e8a1a;border-radius:999px;padding:.2rem .55rem;font-size:.78rem;font-weight:700;display:inline-flex}.tag-with-icon{align-items:center;gap:.35rem}.tag-with-icon .site-icon{width:.95rem;height:.95rem}.site-icon{width:1.35rem;height:1.35rem;color:var(--brand);flex-shrink:0;display:inline-flex}.site-icon svg{pointer-events:none;width:100%;height:100%;display:block}.icon-well{width:2.5rem;height:2.5rem;color:var(--brand);background:#2a4e8a1a;border-radius:.7rem;place-items:center;display:grid}.icon-well .site-icon{width:1.3rem;height:1.3rem}.icon-well-sm{border-radius:.55rem;width:2rem;height:2rem}.icon-well-sm .site-icon{width:1.1rem;height:1.1rem}.site-icon-on-btn{color:currentColor;width:1.15rem;height:1.15rem}.news-list{gap:.85rem;display:grid}.news-item{grid-template-columns:5.5rem 1fr;align-items:start;gap:.85rem;display:grid}.news-item-art{background:#2a4e8a0d;border-radius:8px;width:5.5rem;height:4.15rem;overflow:hidden}.news-item-art svg{width:100%;height:100%;display:block}.news-detail-art{background:#2a4e8a0d;border-radius:12px;margin:1.1rem 0 1.35rem;overflow:hidden}.news-detail-art svg{width:100%;height:auto;display:block}.news-item time{color:var(--cta);letter-spacing:.04em;font-size:.85rem;font-weight:700}.teacher-card{text-align:center;padding:1.5rem 1rem}.avatar{background:linear-gradient(145deg, #4a6fa8, var(--brand-deep));color:#fff;letter-spacing:.04em;border-radius:50%;place-items:center;width:4.25rem;height:4.25rem;margin:0 auto .9rem;font-weight:700;display:grid}.section-quotes blockquote{border-left:4px solid var(--cta);margin:0}.section-quotes blockquote p{margin:0;font-size:1.02rem}.section-quotes footer{color:var(--muted);margin-top:.85rem;font-size:.9rem;font-weight:600}.quote-carousel{outline:none}.quote-carousel:focus-visible{box-shadow:0 0 0 3px #2a4e8a47}.quote-carousel-viewport{position:relative;overflow:hidden}.quote-carousel-track{transition:transform .45s cubic-bezier(.22,1,.36,1);display:flex}.quote-carousel-slide{border-left:4px solid var(--cta);flex:0 0 100%;min-width:0;min-height:11.5rem;margin:0}.quote-carousel-slide p{max-width:40rem;margin:0;font-size:1.15rem;line-height:1.65}.quote-carousel-slide footer{margin-top:1rem}.section-cta-band{background:radial-gradient(circle at 10% 0,#e155321f,#0000 40%),linear-gradient(#e9eef7 0%,#f3f6fb 100%)}.contact-layout{grid-template-areas:"intro""form""details";gap:1.75rem;display:grid}.contact-intro{grid-area:intro}.contact-form{grid-area:form}.contact-details{grid-area:details}.contact-copy h2{font-family:var(--font-serif);color:var(--brand-deep);margin:0;font-size:clamp(1.7rem,4vw,2.15rem)}.contact-intro>p,.contact-copy>p{color:var(--muted);max-width:32rem;margin:.7rem 0 0}.contact-schedule-line{display:block}.contact-schedule-line+.contact-schedule-line{margin-top:.25rem}.contact-meta-value .text-link{margin-top:.35rem;display:inline-block}.contact-map{margin-top:1.25rem}.contact-preview-photo{margin-top:1.15rem}.contact-preview-photo img{object-fit:cover;border-radius:var(--radius);width:100%;height:12rem}.contact-meta{color:var(--ink);gap:.7rem;margin:1.1rem 0 1.25rem;padding:0;font-weight:500;list-style:none;display:grid}.contact-meta li{grid-template-columns:1.35rem 1fr;align-items:start;gap:.7rem;display:grid}.contact-meta .site-icon{margin-top:.15rem}.contact-meta-label{letter-spacing:.02em;color:var(--brand);font-size:.78rem;font-weight:700;display:block}.contact-meta-value a,.fact-list a,.course-local-meta a,.nav-mobile-note a,.site-footer a:not(.footer-quiet-link){color:inherit;text-underline-offset:.18em;text-decoration:underline}.contact-meta li+li{margin-top:0}.trial-form{background:var(--white);border:1px solid var(--line);border-radius:calc(var(--radius) + 4px);box-shadow:var(--shadow);gap:.9rem;padding:1.25rem;display:grid;position:relative}.trial-form-embed{padding:.65rem .65rem .85rem}.trial-embed{background:var(--paper);border:0;border-radius:.7rem;width:100%;height:min(78vh,920px);min-height:640px}.trial-form label{color:var(--brand-deep);gap:.35rem;font-size:.92rem;font-weight:600;display:grid}.trial-form-title{color:var(--brand-deep);margin:0;font-size:1.15rem}.trial-form input,.trial-form select,.trial-form textarea{border:1px solid var(--line);min-height:48px;font:inherit;color:var(--ink);background:var(--paper);border-radius:.7rem;padding:.7rem .85rem;font-weight:400}.trial-form textarea{resize:vertical;min-height:5.5rem}.trial-form input:focus,.trial-form select:focus,.trial-form textarea:focus{border-color:var(--brand);background:#fff;outline:2px solid #2a4e8a59}.trial-honeypot{width:1px;height:1px;position:absolute;left:-9999px;overflow:hidden}.trial-fieldset{border:0;gap:.45rem;margin:0;padding:0;display:grid}.trial-fieldset legend{color:var(--brand-deep);font-size:.92rem;font-weight:600}.trial-subjects{grid-template-columns:repeat(2,minmax(0,1fr));gap:.35rem .75rem;display:grid}.trial-form label.trial-check{color:var(--ink);flex-direction:row;align-items:center;gap:.45rem;font-weight:500;display:flex}.trial-check input{width:1.05rem;height:1.05rem;min-height:0;accent-color:var(--brand);padding:0}.trial-notice{color:var(--muted);gap:.4rem;font-size:.8rem;font-weight:400;line-height:1.5;display:grid}.trial-notice summary{cursor:pointer;color:var(--brand-deep);font-weight:600;list-style-position:outside}.trial-notice summary:hover,.trial-notice summary:focus-visible{color:var(--brand);outline:none}.trial-notice[open] summary{margin-bottom:.15rem}.trial-notice p{margin:0}.trial-consent{font-size:.88rem}.form-row{gap:.9rem;display:grid}.form-note{color:var(--muted);text-align:center;margin:0;font-size:.82rem}.site-footer{border-top:1px solid var(--line);background:var(--white);padding:1.5rem 0 5.5rem}.footer-inner{color:var(--muted);flex-wrap:wrap;justify-content:space-between;gap:.75rem;font-size:.9rem;display:flex}.footer-inner strong{color:var(--brand-deep)}.footer-inner p{margin:.2rem 0 0}.footer-note{flex-wrap:wrap;align-items:center;gap:.35rem .5rem;display:flex}.footer-sep{color:var(--line)}.footer-quiet-link{color:var(--muted)}.footer-quiet-link:hover,.footer-quiet-link:focus-visible{color:var(--brand);text-underline-offset:.18em;text-decoration:underline}.wa-float{z-index:50;color:#fff;background:#1fad5b;border-radius:999px;justify-content:center;align-items:center;gap:.45rem;min-height:48px;padding:.75rem 1.15rem;font-weight:700;transition:filter .15s,transform .15s;animation:.6s .4s both floatIn;display:inline-flex;position:fixed;bottom:1rem;right:1rem;box-shadow:0 10px 28px #1fad5b59}.wa-float .site-icon{color:currentColor;width:1.25rem;height:1.25rem}@media (max-width:719px){.wa-float{border-radius:50%;width:3.25rem;height:3.25rem;min-height:3.25rem;padding:0}.wa-float-label{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.courses-closing-ctas{padding-right:4.25rem}}@keyframes floatIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.wa-float:hover{filter:brightness(1.05);transform:scale(1.03)}.wa-float:active{transform:scale(.98)}@media (min-width:720px){.course-grid{grid-template-columns:repeat(2,1fr)}.teacher-grid,.quote-grid{grid-template-columns:repeat(3,1fr)}.trust-strip-inner{grid-template-columns:repeat(6,1fr);gap:.75rem}.campus-strip{grid-template-columns:repeat(3,1fr);gap:1.15rem}.campus-strip img{height:15rem}.news-item{grid-template-columns:8.5rem 1fr;align-items:start;gap:1.25rem}.news-item-art{width:8.5rem;height:6.4rem}.form-row{grid-template-columns:1fr 1fr}.contact-layout{grid-template-columns:1fr 1.05fr;grid-template-areas:"intro form""details form";align-items:start;gap:2.5rem}.contact-form{position:sticky;top:5.5rem}.hero-content{padding-bottom:4.5rem}}@media (min-width:960px){:root{--shell:min(1120px, calc(100% - 3.5rem))}.nav-desktop{display:block}.nav-toggle,.nav-mobile{display:none!important}.header-actions .btn-ghost{display:inline-flex}.course-grid{grid-template-columns:repeat(4,1fr)}.hero{align-items:center}.hero-content{max-width:40rem;padding-top:6rem}.section{padding:4.5rem 0}.site-footer{padding-bottom:2rem}}.about-page .section-head{max-width:40rem}.about-hero{background:radial-gradient(circle at 90% 10%, #2a4e8a14, transparent 45%), var(--paper);border-bottom:1px solid var(--line);padding:2.5rem 0 2rem}.about-hero-grid{align-items:center;gap:1.5rem;display:grid}.about-hero-copy h1{font-family:var(--font-serif);color:var(--brand-deep);margin:0;font-size:clamp(2rem,6vw,2.85rem);line-height:1.15}.about-subhead{color:var(--ink);margin:.75rem 0 0;font-size:clamp(1.05rem,2.5vw,1.25rem);font-weight:600;line-height:1.45}.about-body{color:var(--muted);max-width:36rem;margin:.85rem 0 0}.trust-chips{flex-wrap:wrap;gap:.5rem;margin:1.35rem 0 0;padding:0;list-style:none;display:flex}.trust-chips li{background:var(--white);border:1px solid var(--line);color:var(--brand-deep);border-radius:999px;padding:.45rem .85rem;font-size:.88rem;font-weight:600}.about-media-panel{min-height:220px}.about-hero-image{object-fit:cover;object-position:center 42%;border-radius:var(--radius);width:100%;height:100%;min-height:220px;display:block}.about-media-placeholder{border-radius:var(--radius);background:linear-gradient(145deg, #2a4e8a14, #e155320f), var(--white);text-align:center;height:100%;min-height:220px;color:var(--brand);border:1px dashed #2a4e8a59;place-content:center;gap:.25rem;font-weight:700;display:grid}.about-media-placeholder small{color:var(--muted);font-size:.82rem;font-weight:500}.about-media-placeholder.compact{min-height:140px}.timeline{gap:1rem;margin:0;padding:0;list-style:none;display:grid;position:relative}.timeline-item{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);border-left:3px solid var(--brand);padding:1.1rem 1.15rem 1.1rem 1.35rem;position:relative}.timeline-item h3{color:var(--brand-deep);margin:0;font-size:1.05rem}.timeline-item p{color:var(--muted);margin:.4rem 0 0;font-size:.98rem}.timeline-dot{display:none}.about-service-grid{gap:1rem;display:grid}.about-service-grid article{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);height:100%;padding:1.25rem 1.15rem}.about-service-grid article h3{color:var(--brand-deep);margin:.7rem 0 0;font-size:1.08rem}.about-service-grid article>p{color:var(--muted);margin:.55rem 0 0;font-size:.98rem}.info-card-grid{gap:1rem;display:grid}.info-card{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);height:100%;padding:1.25rem 1.15rem}.info-card h3{color:var(--brand-deep);margin:0;font-size:1.08rem}.info-card p{color:var(--muted);margin:.55rem 0 0;font-size:.98rem}.about-service-points{gap:.45rem;margin:.9rem 0 0;padding:0;list-style:none;display:grid}.about-service-points li{color:var(--ink);padding-left:1rem;font-size:.92rem;font-weight:500;line-height:1.45;position:relative}.about-service-points li:before{content:"";background:var(--brand);border-radius:50%;width:.4rem;height:.4rem;position:absolute;top:.55rem;left:0}.about-trust-section{padding-bottom:0}.about-trust-section .about-closing{margin-top:2.25rem}.location-grid{gap:1.25rem;display:grid}.fact-list{gap:.65rem;margin:0 0 1.25rem;padding:0;list-style:none;display:grid}.fact-list li{border-bottom:1px solid var(--line);grid-template-columns:1.35rem 1fr;align-items:start;gap:.15rem .7rem;padding-bottom:.65rem;display:grid}.fact-list .site-icon{margin-top:.2rem}.fact-list li>div{gap:.15rem;min-width:0;display:grid}.fact-list strong{color:var(--brand);font-size:.85rem}.fact-list span{color:var(--ink);font-weight:500}#map{scroll-margin-top:5.5rem}.map-frame{border-radius:var(--radius);border:1px solid var(--line);background:var(--white);min-height:260px;overflow:hidden}.map-frame-stack{gap:.75rem;display:grid}.map-frame-stack img{width:100%;height:auto;display:block}.map-frame iframe{border:0;width:100%;height:280px;display:block}.about-transit{margin:1.25rem 0}.about-transit h3{color:var(--brand-deep);margin:0 0 .65rem;font-size:1.05rem}.about-gallery-image{border-radius:var(--radius);object-fit:cover;width:100%;height:auto;display:block}.photo-focus-calligraphy{object-position:72% 28%}.trust-grid{gap:1.25rem;display:grid}.trust-bullets{gap:.7rem;margin:0;padding:0;list-style:none;display:grid}.trust-bullets li{color:var(--ink);padding-left:1.35rem;font-weight:500;position:relative}.trust-bullets li:before{content:"";background:var(--cta);border-radius:50%;width:.55rem;height:.55rem;position:absolute;top:.55rem;left:0}.quote-stack{gap:.85rem;display:grid}.trust-quote{background:var(--white);border:1px solid var(--line);border-left:4px solid var(--cta);border-radius:var(--radius);margin:0;padding:1.1rem 1.15rem}.trust-quote p{color:var(--ink);margin:0}.about-gallery{gap:.85rem;margin-top:.15rem;display:grid}.quote-stack .about-gallery{margin-top:.15rem}.about-closing{background:linear-gradient(135deg, var(--brand-deep), var(--brand));color:#fff;margin-top:.5rem;padding:2.75rem 0}.about-closing-inner{gap:1.5rem;display:grid}.about-closing h2{font-family:var(--font-serif);margin:0;font-size:clamp(1.55rem,4vw,2rem);line-height:1.3}.about-closing p{color:#d7e2f4;max-width:36rem;margin:.7rem 0 0}.micro-copy{opacity:.9;font-size:.9rem!important}.about-closing-ctas .btn-ghost{color:#fff;border-color:#fff6}@media (min-width:720px){.about-hero-grid{grid-template-columns:1.15fr .85fr;gap:2rem}.about-media-panel,.about-media-placeholder{min-height:320px}.timeline{grid-template-columns:repeat(4,1fr);gap:.85rem}.info-card-grid,.about-service-grid{grid-template-columns:repeat(3,1fr)}.location-grid{grid-template-columns:.95fr 1.05fr;align-items:start}.trust-grid{grid-template-columns:1fr 1fr;align-items:start}.about-gallery{grid-template-columns:1fr 1fr}.about-gallery-image:last-child:nth-child(odd){object-position:center 32%;grid-column:1/-1;max-height:16rem}.about-closing-inner{grid-template-columns:1.3fr auto;align-items:center;gap:2rem}}.news-detail-meta{flex-wrap:wrap;align-items:center;gap:.5rem .75rem;margin-bottom:.5rem;display:flex}.news-detail-meta time{color:var(--muted);font-size:.9rem;font-weight:600}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.news-section{padding-top:1.75rem;padding-bottom:3.5rem}.news-shell{max-width:880px}.news-intro{margin-bottom:1.75rem}.news-intro h1{font-family:var(--font-serif);color:var(--brand-deep);margin:0;font-size:clamp(1.85rem,4vw,2.35rem);font-weight:700;line-height:1.15}.news-intro p{color:var(--muted);margin:.4rem 0 0;font-size:.95rem;line-height:1.5}.news-utility{background:var(--white);border:1px solid var(--line);border-radius:10px;gap:.75rem;margin-bottom:2rem;padding:.85rem .9rem;display:grid}.news-tabs{-webkit-overflow-scrolling:touch;scrollbar-width:none;gap:.4rem;display:flex;overflow-x:auto}.news-tabs::-webkit-scrollbar{display:none}.news-tabs button{min-height:36px;color:var(--muted);font:inherit;cursor:pointer;white-space:nowrap;background:0 0;border:1px solid #0000;border-radius:999px;flex:none;padding:.35rem .8rem;font-size:.88rem;font-weight:600;transition:background .15s,color .15s,border-color .15s}.news-tabs button:hover:not(.is-active){color:var(--brand);background:#2a4e8a0f}.news-tabs button.is-active{color:var(--brand-deep);background:#2a4e8a1a}.news-utility-tools{gap:.55rem;display:grid}.news-search input,.news-sort select{border:1px solid var(--line);width:100%;min-height:40px;font:inherit;background:var(--paper);color:var(--ink);border-radius:8px;padding:.45rem .75rem;font-size:.92rem}.news-search input:focus,.news-sort select:focus{border-color:var(--brand);background:#fff;outline:2px solid #2a4e8a40}.news-featured{border:1px solid var(--line);background:linear-gradient(165deg,#fff 0%,#f4f7fc 100%);border-radius:14px;gap:1.15rem;margin-bottom:2.25rem;padding:1.35rem 1.2rem;display:grid;position:relative;box-shadow:0 2px #2a4e8a0a}.news-featured-art{background:#2a4e8a0d;border-radius:10px;order:-1;overflow:hidden}.news-featured-art svg{width:100%;height:auto;display:block}.news-featured-label{letter-spacing:.08em;color:var(--cta);text-transform:none;margin:0 0 .75rem;font-size:.75rem;font-weight:700;display:inline-block}.news-featured h2{font-family:var(--font-serif);color:var(--brand-deep);max-width:22em;margin:0;font-size:clamp(1.45rem,4vw,1.9rem);font-weight:700;line-height:1.3}.news-featured h2 a:hover{color:var(--brand)}.news-featured-excerpt{color:var(--muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;max-width:36em;margin:.85rem 0 0;font-size:.98rem;line-height:1.55;display:-webkit-box;overflow:hidden}.news-featured-foot{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-top:1.35rem;padding-top:1.15rem;display:flex}.news-featured-meta{flex-wrap:wrap;align-items:center;gap:.45rem .65rem;display:flex}.news-featured-meta time{color:var(--muted);font-size:.8rem;font-weight:500}.news-cat{color:var(--muted);letter-spacing:.01em;background:#2a4e8a0f;border-radius:999px;padding:.12rem .45rem;font-size:.72rem;font-weight:600;display:inline-flex}.news-list-block{margin-top:.25rem}.news-list-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:baseline;gap:1rem;margin-bottom:.35rem;padding-bottom:.75rem;display:flex}.news-list-title{color:var(--brand-deep);margin:0;font-size:.95rem;font-weight:700}.news-count{color:var(--muted);margin:0;font-size:.8rem;font-weight:500}.news-article-list{gap:0;margin:0;padding:0;list-style:none;display:grid}.news-row{border-bottom:1px solid var(--line);background:0 0;border-radius:0;grid-template-columns:4.6rem 1fr auto;align-items:center;gap:.75rem;padding:.9rem .15rem;transition:background .15s;display:grid}.news-row-art{background:#2a4e8a0d;border-radius:8px;width:4.6rem;height:3.45rem;overflow:hidden}.news-row-art svg{object-fit:cover;width:100%;height:100%;display:block}.news-row:hover{border-color:var(--line);box-shadow:none;background:#2a4e8a08}.news-row:focus-visible{background:#2a4e8a08}.news-row:hover h3{color:var(--brand)}.news-row:hover .news-row-arrow{color:var(--cta);transform:translate(3px)}.news-row-date{display:none}.news-row-body h3{color:var(--brand-deep);margin:0;font-size:1.08rem;font-weight:700;line-height:1.35;transition:color .15s}.news-row-excerpt{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;margin:.3rem 0 0;font-size:.88rem;line-height:1.4;display:none;overflow:hidden}.news-row-meta{flex-wrap:wrap;align-items:center;gap:.4rem .55rem;margin-top:.4rem;display:flex}.news-row-time{color:var(--muted);opacity:.9;font-size:.75rem;font-weight:500}.news-row-arrow{color:var(--muted);align-self:center;font-size:1.05rem;font-weight:600;transition:transform .15s,color .15s}.news-more,.news-end-note{text-align:center;margin-top:1.5rem}.news-end-note{color:var(--muted);font-size:.85rem}.news-empty{text-align:center;background:var(--white);border:1px solid var(--line);border-radius:12px;margin-top:.5rem;padding:2.5rem 1.25rem}.news-empty-icon{background:#2a4e8a14;border-radius:.75rem;place-items:center;width:3rem;height:3rem;margin:0 auto 1rem;display:grid}.news-empty-icon span{border:2px solid var(--brand);border-radius:.15rem;width:1.05rem;height:1.25rem;position:relative}.news-empty-icon span:after{content:"";background:var(--brand);height:2px;box-shadow:0 .26rem 0 var(--brand), 0 .52rem 0 var(--brand);position:absolute;top:.3rem;left:.18rem;right:.18rem}.news-empty h2{font-family:var(--font-serif);color:var(--brand-deep);margin:0;font-size:1.3rem}.news-empty p{color:var(--muted);max-width:24rem;margin:.5rem auto 1.2rem;font-size:.95rem}.news-empty .hero-ctas{justify-content:center}@media (min-width:720px){.news-utility-tools{grid-template-columns:1.5fr .65fr}.news-featured{grid-template-columns:1.15fr .85fr;align-items:center;gap:1.5rem;padding:1.6rem 1.6rem 1.5rem}.news-featured-art{order:0}.news-featured-foot{margin-top:1.5rem}.news-row{grid-template-columns:5.6rem 3.75rem 1fr auto;align-items:center;gap:1rem;padding:1.05rem .35rem}.news-row-art{width:5.6rem;height:4.2rem}.news-row-date{flex-direction:column;align-items:flex-start;line-height:1.1;display:flex}.news-row-md{color:var(--muted);font-size:.92rem;font-weight:600}.news-row-y{color:var(--muted);opacity:.75;margin-top:.2rem;font-size:.7rem;font-weight:500}.news-row-time{display:none}.news-row-body h3{font-size:1.14rem}.news-row-excerpt{display:block}.news-row-meta{margin-top:.35rem}}@media (prefers-reduced-motion:no-preference){.js [data-reveal]:not(.is-revealed){opacity:0;transform:translateY(1.35rem)}.js [data-reveal].is-revealed{opacity:1}.js [data-reveal].is-revealed:not(.reveal-instant){animation:.72s cubic-bezier(.22,1,.36,1) backwards reveal-up;animation-delay:var(--reveal-delay,0s)}.js [data-reveal].reveal-instant{opacity:1;transform:none}.js .reveal-follow{--reveal-delay:.11s}.js .reveal-stagger>[data-reveal]:nth-child(2){--reveal-delay:80ms}.js .reveal-stagger>[data-reveal]:nth-child(3){--reveal-delay:.16s}.js .reveal-stagger>[data-reveal]:nth-child(4){--reveal-delay:.24s}.js .reveal-stagger>[data-reveal]:nth-child(5){--reveal-delay:.32s}.js .reveal-stagger>[data-reveal]:nth-child(6){--reveal-delay:.4s}.js .reveal-stagger>[data-reveal]:nth-child(7){--reveal-delay:.48s}.js .reveal-stagger>[data-reveal]:nth-child(8){--reveal-delay:.56s}.js .parallax-frame img{transform-origin:50%;transform:scale(1.22)}}@keyframes reveal-up{0%{opacity:0;transform:translateY(1.35rem)}to{opacity:1;transform:translate(0,0)}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hero-parallax,.js .hero-parallax{top:0!important;bottom:0!important;transform:none!important}.parallax-frame img{transform:none!important}*,:before,:after{transition-property:color,background-color,background,border-color,outline-color,box-shadow,opacity,fill,stroke!important;animation:none!important}.btn:hover,.btn:active,.course-card:hover,.course-card:focus-visible,.wa-float:hover,.wa-float:active,.news-row:hover .news-row-arrow,.course-type-card:hover .course-type-cta,.course-type-card:focus-visible .course-type-cta,.specialty-link-list a:hover .specialty-link-action,.specialty-link-list a:focus-visible .specialty-link-action{transform:none!important}}@media print{.js [data-reveal]:not(.is-revealed){opacity:1;transform:none}}.courses-page .section{padding-block:2.35rem}.courses-hero{border-bottom:1px solid var(--line);background:radial-gradient(circle at 100% 0%, #2a4e8a12, transparent 42%), var(--paper);padding:2rem 0 1.75rem}.courses-hero-visual{padding-bottom:2.25rem}.courses-hero-grid{align-items:center;gap:1.35rem;display:grid}.courses-hero-photo img{object-fit:cover;border-radius:var(--radius);width:100%;height:14rem}.visual-split{align-items:center;gap:1.25rem;margin-bottom:1.75rem;display:grid}.visual-split .section-head{margin-bottom:0}.visual-split-photo img{object-fit:cover;border-radius:var(--radius);width:100%;height:13rem}.courses-hero-inner{max-width:38rem}.courses-hero h1{font-family:var(--font-serif);color:var(--brand-deep);margin:0;font-size:clamp(1.9rem,5vw,2.5rem);line-height:1.15}.courses-lead{color:var(--ink);margin:.75rem 0 0;font-size:1.05rem;font-weight:500;line-height:1.55}.courses-support{color:var(--muted);margin:.55rem 0 0;font-size:.95rem}.courses-hero .hero-ctas{margin-top:1.25rem}.courses-types-section{padding-top:2rem}.course-type-grid{gap:.75rem;display:grid}.course-type-grid-4,.course-type-grid-2{gap:.85rem}.grade-picker{gap:1.35rem;display:grid}.grade-picker-band{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);gap:.85rem;padding:1.05rem 1rem 1.1rem;scroll-margin-top:5.5rem;display:grid}.grade-picker-band-junior{background:linear-gradient(180deg, #2a4e8a0f 0%, var(--white) 4.5rem), var(--white)}.grade-picker-band-senior{background:linear-gradient(180deg, #1c366314 0%, var(--white) 4.5rem), var(--white)}.grade-picker-band-head{align-items:center;gap:.7rem;display:flex}.grade-picker-band-head h3{color:var(--brand-deep);margin:0;font-size:1.05rem;line-height:1.2}.grade-picker-band-head p{color:var(--muted);margin:.15rem 0 0;font-size:.82rem}.grade-picker-grid{grid-template-columns:1fr;gap:.65rem;display:grid}.grade-picker-card{background:var(--white);border:1px solid var(--line);min-height:4.75rem;color:inherit;border-radius:10px;grid-template-columns:auto 1fr auto;align-items:center;gap:.85rem;padding:.85rem .95rem;text-decoration:none;transition:border-color .15s,box-shadow .15s,transform .15s;display:grid;position:relative}.grade-picker-card:hover,.grade-picker-card:focus-visible{border-color:#2a4e8a73;transform:translateY(-1px);box-shadow:0 8px 20px #1a305a12}.grade-picker-mark{background:var(--paper);width:2.65rem;height:2.65rem;color:var(--brand-deep);font-family:var(--font-serif);letter-spacing:-.02em;border-radius:10px;place-items:center;font-size:1.45rem;font-weight:700;line-height:1;display:grid}.grade-picker-band-senior .grade-picker-mark{color:var(--brand-deep);background:#1c36631a}.grade-picker-card:hover .grade-picker-mark,.grade-picker-card:focus-visible .grade-picker-mark{background:var(--brand);color:var(--white)}.grade-picker-body{gap:.4rem;min-width:0;display:grid}.grade-picker-label{color:var(--brand-deep);font-size:1.05rem;font-weight:700;line-height:1.2}.grade-picker-tags{flex-wrap:wrap;gap:.3rem;display:flex}.grade-picker-tag{background:var(--paper);color:var(--muted);border-radius:6px;align-items:center;padding:.14rem .42rem;font-size:.72rem;font-weight:600;line-height:1.35;display:inline-flex}.grade-picker-arrow{color:var(--brand);opacity:.45;font-size:1rem;font-weight:700;transition:opacity .15s,transform .15s}.grade-picker-card:hover .grade-picker-arrow,.grade-picker-card:focus-visible .grade-picker-arrow{opacity:1;transform:translate(3px)}@media (min-width:720px){.grade-picker-grid{grid-template-columns:repeat(3,1fr);gap:.75rem}.grade-picker-card{grid-template-rows:auto 1fr auto;grid-template-columns:1fr;align-items:start;gap:.75rem;min-height:10.5rem;padding:1rem .95rem .95rem}.grade-picker-mark{width:3rem;height:3rem;font-size:1.65rem}.grade-picker-arrow{justify-self:end}}.course-type-card{background:var(--white);border:1px solid var(--line);border-radius:12px;align-content:start;gap:.45rem;padding:1.2rem 1.15rem 1.15rem;transition:border-color .15s,box-shadow .15s;display:grid}.course-type-card-media{gap:0;padding:0;overflow:hidden}.course-type-photo{aspect-ratio:16/10;background:var(--paper);display:block;overflow:hidden}.course-type-photo img{object-fit:cover;width:100%;height:100%}.course-type-body{gap:.45rem;padding:1.05rem 1.1rem 1.15rem;display:grid}.course-type-card:hover,.course-type-card:focus-visible{border-color:#2a4e8a66;box-shadow:0 8px 22px #1a305a12}.course-type-suited{letter-spacing:.02em;color:var(--brand);margin:0;font-size:.78rem;font-weight:700}.course-type-card h3{color:var(--brand-deep);margin:0;font-size:1.15rem}.course-type-card p{color:var(--muted);margin:0;font-size:.93rem;line-height:1.5}.course-type-cta{color:var(--brand-deep);margin-top:.35rem;font-size:.9rem;font-weight:700;transition:color .15s,transform .15s;display:inline-block}.course-type-card:hover .course-type-cta,.course-type-card:focus-visible .course-type-cta{color:var(--brand);transform:translate(3px)}.specialty-subject-overview{gap:.55rem;margin-bottom:1rem;display:grid}.specialty-subject-pill{text-align:left;border:1px solid #0000;border-bottom:2px solid var(--line);cursor:pointer;font:inherit;background:0 0;border-radius:0;gap:.12rem;padding:.55rem .15rem .7rem;transition:border-color .15s,color .15s;display:grid}.specialty-subject-pill strong{color:var(--brand-deep);font-size:.98rem}.specialty-subject-pill span{color:var(--muted);font-size:.82rem}.specialty-subject-pill:hover,.specialty-subject-pill.is-active{border-bottom-color:var(--brand)}.specialty-subject-pill:active{opacity:.82}.specialty-subject-pill.is-active strong{color:var(--brand)}.specialty-subject-pill-head{align-items:center;gap:.4rem;display:flex}.specialty-subject-pill-head .site-icon{width:1.15rem;height:1.15rem}.specialty-filters{background:var(--white);border:1px solid var(--line);border-radius:12px;margin-bottom:1.15rem;padding:.9rem 1rem}.specialty-grade-tabs{flex-wrap:wrap;gap:.4rem;margin-bottom:.7rem;display:flex}.specialty-grade-tabs button{border:1px solid var(--line);background:var(--paper);min-height:44px;color:var(--muted);font:inherit;cursor:pointer;white-space:nowrap;border-radius:8px;flex:none;padding:.4rem .85rem;font-size:.88rem;font-weight:600;transition:background .15s,color .15s,border-color .15s}.specialty-grade-tabs button:hover:not(.is-active){border-color:var(--brand);color:var(--brand)}.specialty-grade-tabs button.is-active{background:var(--brand);border-color:var(--brand);color:#fff}.specialty-filter-meta{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.specialty-count{color:var(--muted);margin:0;font-size:.82rem;font-weight:500}.specialty-reset{color:var(--brand);font:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-size:.84rem;font-weight:700}.specialty-reset:hover{text-decoration:underline}.specialty-directory,.specialty-empty{animation:.16s catalogFade}@keyframes catalogFade{0%{opacity:0}to{opacity:1}}.specialty-directory{gap:1rem;display:grid}.specialty-grade-group{background:var(--white);border:1px solid var(--line);border-radius:12px;overflow:hidden}.specialty-grade-group>h3{color:var(--brand-deep);border-bottom:1px solid var(--line);background:#2a4e8a0d;margin:0;padding:.7rem 1rem;font-size:.92rem;font-weight:700}.specialty-link-list{margin:0;padding:0;list-style:none}.specialty-link-list li+li{border-top:1px solid var(--line)}.specialty-link-list a{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.15rem .75rem;padding:.72rem 1rem;transition:background .15s;display:grid}.specialty-directory.is-compact .specialty-link-list a{padding:.55rem 1rem}.specialty-link-list a:hover{background:#2a4e8a0a}.specialty-link-title{color:var(--brand-deep);grid-column:1;font-size:.98rem;font-weight:700}.specialty-link-full{color:var(--muted);font-size:.88rem;font-weight:500;display:none}.specialty-link-blurb{color:var(--muted);-webkit-line-clamp:1;-webkit-box-orient:vertical;grid-column:1;font-size:.86rem;line-height:1.45;display:-webkit-box;overflow:hidden}.specialty-link-action{color:var(--brand);grid-area:1/2/-1;align-self:center;font-size:.84rem;font-weight:700;transition:transform .15s}.specialty-link-list a:hover .specialty-link-action,.specialty-link-list a:focus-visible .specialty-link-action{transform:translate(3px)}.specialty-directory.is-compact .specialty-link-action{grid-row:1/-1}.specialty-empty{text-align:center;background:var(--white);border:1px solid var(--line);border-radius:12px;padding:2rem 1rem}.specialty-empty h3{color:var(--brand-deep);margin:0;font-size:1.1rem}.specialty-empty p{color:var(--muted);margin:.5rem 0 1rem}.course-compare-grid{gap:.85rem;display:grid}.course-compare-card{background:var(--white);border:1px solid var(--line);border-top:3px solid var(--brand);border-radius:12px;align-content:start;gap:.55rem;padding:1.35rem 1.2rem;display:grid}.course-compare-photo{margin:-1.35rem -1.2rem .2rem}.course-compare-photo img{object-fit:cover;width:100%;height:9.5rem}.course-compare-card:nth-child(2){border-top-color:var(--cta)}.course-compare-card h3{font-family:var(--font-serif);color:var(--brand-deep);margin:0;font-size:1.35rem;line-height:1.3}.course-compare-card>p{color:var(--muted);margin:0;font-size:.95rem;line-height:1.55}.course-compare-card .btn{justify-self:start;margin-top:.35rem}.courses-copy-head{max-width:42rem;margin-bottom:1.5rem}.courses-copy-head p{color:var(--muted);margin:.75rem 0 0;font-size:.98rem;line-height:1.65}.service-points{gap:.45rem;margin:1.1rem 0 1.25rem;padding:0;list-style:none;display:grid}.service-points li{color:var(--ink);padding-left:1.15rem;font-size:.92rem;font-weight:500;position:relative}.service-points li:before{content:"";background:var(--cta);border-radius:50%;width:.45rem;height:.45rem;position:absolute;top:.5rem;left:0}.courses-practical-grid{gap:2rem;display:grid}@media (min-width:768px){.courses-practical-grid{grid-template-columns:1fr 1fr;gap:2.5rem}}.courses-fact-list{gap:.85rem;margin:0;display:grid}.courses-fact-list>div{border-bottom:1px solid var(--line);gap:.2rem;padding-bottom:.75rem;display:grid}.courses-fact-list dt{color:var(--brand-deep);margin:0;font-size:.82rem;font-weight:700}.courses-fact-list dd{color:var(--ink);margin:0;font-size:.95rem;line-height:1.45}.courses-fee-note{color:var(--muted);margin:.9rem 0 0;font-size:.85rem;line-height:1.45}.course-extra-block{margin:1rem 0}.course-extra-block h4{color:var(--brand-deep);margin:0 0 .4rem;font-size:.95rem}.course-extra-block p,.course-extra-note{color:var(--muted);margin:0 0 .5rem;font-size:.9rem;line-height:1.45}.course-extra-block ul{color:var(--ink);gap:.3rem;margin:0;padding-left:1.1rem;font-size:.9rem;line-height:1.4;display:grid}.course-mini-steps{gap:.65rem;margin:.75rem 0 1rem;padding:0;list-style:none;display:grid}.course-mini-steps li{border-left:3px solid var(--brand);gap:.15rem;padding-left:.85rem;display:grid}.course-mini-steps strong{color:var(--brand-deep);font-size:.92rem}.course-mini-steps span{color:var(--muted);font-size:.88rem;line-height:1.4}.fee-table-wrap{overflow-x:auto}.fee-table{border-collapse:collapse;width:100%;font-size:.88rem}.fee-table th,.fee-table td{border-bottom:1px solid var(--line);text-align:left;padding:.45rem .35rem}.fee-table th{color:var(--brand-deep);font-weight:700}.contact-transit{margin:1.25rem 0}.contact-transit h2{color:var(--brand-deep);margin:0 0 .5rem;font-family:inherit;font-size:1.05rem}.footer-parent-note{max-width:36rem}.courses-steps{gap:1rem;margin:0;padding:0;list-style:none;display:grid}@media (min-width:768px){.courses-steps{grid-template-columns:repeat(3,1fr);gap:1.25rem}}.courses-steps li{grid-template-columns:auto 1fr;align-items:start;gap:.75rem;display:grid}.courses-step-num{color:#fff;background:var(--brand);border-radius:50%;place-items:center;width:1.75rem;height:1.75rem;font-size:.85rem;font-weight:700;display:grid}.courses-steps h3{color:var(--brand-deep);margin:0 0 .25rem;font-size:1rem}.courses-steps p{color:var(--muted);margin:0;font-size:.9rem;line-height:1.45}.courses-closing{background:linear-gradient(135deg, var(--brand-deep), var(--brand));color:#fff;padding:2.5rem 0}.courses-closing-inner{gap:1.35rem;display:grid}.courses-closing h2{font-family:var(--font-serif);margin:0;font-size:clamp(1.4rem,3.5vw,1.85rem);line-height:1.3}.courses-closing p{color:#d7e2f4;max-width:36rem;margin:.6rem 0 0}.courses-closing-ctas .btn-ghost{color:#fff;border-color:#fff6}.grade-subject-list{gap:1rem;display:grid}.grade-subject-card{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);align-content:start;gap:.55rem;padding:1.2rem 1.15rem 1.15rem;display:grid}.grade-subject-card h3{color:var(--brand-deep);align-items:center;gap:.55rem;margin:0;font-size:1.6rem;line-height:1.2;display:flex}.grade-subject-card p{color:var(--muted);margin:0}.grade-subject-points{color:var(--ink);margin:.15rem 0 .35rem;padding-left:1.15rem}.grade-subject-points li+li{margin-top:.25rem}.grade-jump{flex-wrap:wrap;gap:.45rem;display:flex}.grade-jump a{border:1px solid var(--line);background:var(--white);min-height:36px;color:var(--muted);border-radius:8px;align-items:center;padding:.35rem .85rem;font-size:.88rem;font-weight:600;display:inline-flex}.grade-jump a:hover{border-color:var(--brand);color:var(--brand)}.grade-jump a[aria-current=page]{background:var(--brand);border-color:var(--brand);color:#fff}.course-detail>.courses-hero{padding:1.15rem 0 1.35rem}.grade-offering-section{padding:1.75rem 0 1.5rem}.grade-offering-section .section-head{max-width:none;margin-bottom:.85rem}.grade-subjects-section{padding-top:2.25rem;padding-bottom:2.5rem}.grade-offering-carousel{touch-action:pan-y;outline:none}.grade-offering-carousel:focus-visible{box-shadow:0 0 0 3px #2a4e8a47}.grade-offering-viewport{overflow:hidden}.grade-offering-track{transition:transform .45s cubic-bezier(.22,1,.36,1);display:flex}.grade-offering-slide{flex:0 0 100%;grid-template-columns:minmax(0,1fr);gap:.75rem;min-width:0;display:grid}.grade-offering-card{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);min-width:0;height:100%;min-height:7.5rem;color:inherit;flex-direction:row;align-items:stretch;padding:0;transition:border-color .15s,box-shadow .15s;display:flex;overflow:hidden}.grade-offering-card:hover{border-color:var(--brand);box-shadow:0 10px 24px #1a305a1a}.grade-offering-when{background:#2a4e8a0f;border-right:1px solid #2a4e8a1a;flex:0 0 7.25rem;align-content:center;gap:.12rem;padding:.85rem .75rem;display:grid}.grade-offering-body{flex-direction:column;flex:1;gap:.3rem;min-width:0;padding:.85rem .95rem .9rem;display:flex}.grade-offering-head h3{flex-wrap:wrap;align-items:center;gap:.35rem .45rem;margin:0;display:flex}.grade-offering-subject-name{font-family:var(--font-serif);color:var(--brand-deep);font-size:1.15rem;font-weight:700;line-height:1.25}.grade-offering-tag,.grade-offering-mixed{white-space:nowrap;border-radius:6px;align-items:center;min-height:1.3rem;padding:.05rem .4rem;font-size:.72rem;font-weight:700;line-height:1.3;display:inline-flex}.grade-offering-tag{color:var(--brand);background:#2a4e8a14}.grade-offering-mixed{color:var(--muted);background:var(--paper);border:1px solid var(--line)}.grade-offering-day,.grade-offering-time,.grade-offering-note,.grade-offering-teacher{margin:0}.grade-offering-day{color:var(--brand);letter-spacing:.04em;font-size:.78rem;font-weight:700}.grade-offering-time{color:var(--brand-deep);font-variant-numeric:tabular-nums;letter-spacing:.01em;font-size:1.02rem;font-weight:700;line-height:1.25}.grade-offering-note{color:var(--muted);font-size:.72rem;font-weight:600;line-height:1.3}.grade-offering-teacher{color:var(--muted);font-size:.86rem;font-weight:600}.grade-offering-more{color:var(--brand);margin-top:auto;padding-top:.45rem;font-size:.84rem;font-weight:700}.grade-offering-more:after{content:" →"}.grade-offering-controls{justify-content:center;align-items:center;gap:.65rem;margin-top:.75rem;display:flex}.grade-offering-controls .image-carousel-dots{flex-wrap:wrap;justify-content:center;max-width:min(18rem,100%);margin-top:0}.grade-offering-nav{border:1px solid var(--line);background:var(--white);width:2.5rem;height:2.5rem;color:var(--brand-deep);cursor:pointer;border-radius:999px;flex-shrink:0;place-items:center;padding:0;font-family:inherit;font-size:1.4rem;line-height:1;transition:border-color .15s,color .15s,background-color .15s;display:grid}.grade-offering-nav:hover{border-color:var(--brand);color:var(--brand)}.grade-offering-nav:focus-visible{outline:2px solid var(--brand);outline-offset:2px}@media (min-width:720px){.grade-offering-slide{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.grade-offering-when{flex-basis:8.5rem;padding:1rem .85rem}.grade-offering-time{font-size:1.15rem}.grade-offering-body{padding:1rem 1.1rem .95rem}.grade-offering-subject-name{font-size:1.28rem}.grade-offering-nav{width:2.65rem;height:2.65rem}.grade-subject-list{grid-template-columns:1fr 1fr}}@media (min-width:640px){.specialty-subject-overview{grid-template-columns:repeat(2,1fr)}.specialty-link-full{display:inline}}@media (min-width:720px){.course-type-grid{grid-template-columns:repeat(3,1fr)}.course-type-grid-4,.course-type-grid-2{grid-template-columns:repeat(2,1fr)}.course-compare-grid,.service-points{grid-template-columns:1fr 1fr}.courses-closing-inner{grid-template-columns:1.35fr auto;align-items:center}}@media (min-width:960px){.specialty-subject-overview,.course-type-grid-4{grid-template-columns:repeat(4,1fr)}.course-type-grid-2{grid-template-columns:repeat(2,1fr);max-width:42rem}.courses-hero-grid,.visual-split,.course-detail-hero-grid{grid-template-columns:1.05fr .95fr;gap:2rem}.visual-split-flip .visual-split-photo{order:-1}.courses-hero-photo img,.visual-split-photo img,.course-detail-hero-photo img{height:18rem}}.course-detail{padding-bottom:0}.course-detail-breadcrumb{padding-top:1rem;padding-bottom:.15rem}.course-detail>.courses-hero .courses-lead{margin-top:.55rem}.course-detail-breadcrumb ol{color:var(--muted);flex-wrap:wrap;gap:.35rem .5rem;margin:0;padding:0;font-size:.88rem;list-style:none;display:flex}.course-detail-breadcrumb li:not(:last-child):after{content:"›";color:var(--line);margin-left:.5rem}.course-detail-breadcrumb a{color:var(--brand);font-weight:600;text-decoration:none}.course-detail-breadcrumb a:hover{text-decoration:underline}.course-detail-breadcrumb [aria-current=page]{color:var(--ink);font-weight:600}.course-detail-back{margin:.65rem 0 0;font-size:.92rem;font-weight:600}.course-detail-back a{color:var(--brand);text-decoration:none}.course-detail-back a:hover{text-decoration:underline}.program-stage-nav{flex-wrap:wrap;gap:.5rem;margin:.9rem 0 0;padding:0;list-style:none;display:flex}.program-stage-nav a,.program-stage-nav [aria-current=page]{border-radius:999px;padding:.35rem .75rem;font-size:.88rem;font-weight:600;text-decoration:none;display:inline-block}.program-stage-nav a{color:var(--brand);background:var(--white);border:1px solid var(--line)}.program-stage-nav a:hover{border-color:var(--brand)}.program-stage-nav [aria-current=page]{color:var(--white);background:var(--brand);border:1px solid var(--brand)}.course-detail-hero{background:radial-gradient(ellipse 80% 60% at 100% 0%, #2a4e8a14, transparent 55%), linear-gradient(180deg, #eef3fa 0%, var(--white) 100%);padding:1.25rem 0 2.25rem}.course-detail-hero-grid{align-items:center;gap:1.35rem;display:grid}.course-detail-hero-photo img{object-fit:cover;border-radius:var(--radius);width:100%;height:14rem}.course-detail-hero-inner{max-width:44rem}.course-detail-hero h1{font-family:var(--font-serif);color:var(--brand-deep);margin:.55rem 0 .65rem;font-size:clamp(1.85rem,4vw,2.45rem);line-height:1.25}.course-detail-tagline{color:var(--cta);margin:0 0 .85rem;font-size:1.02rem;font-weight:600;line-height:1.55}.course-detail-opening{color:var(--muted);margin:0 0 1.35rem;font-size:1.02rem;line-height:1.75}.course-detail-facts h2,.course-detail-prose h2{font-family:var(--font-serif);color:var(--brand-deep);margin:0 0 1rem;font-size:clamp(1.35rem,3vw,1.65rem)}.course-facts-grid{gap:.85rem;margin:0;display:grid}.course-fact{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);gap:.2rem;padding:.95rem 1.05rem;display:grid}.course-detail-facts .course-fact{background:var(--paper)}.course-fact dt{letter-spacing:.02em;color:var(--brand);font-size:.8rem;font-weight:700}.course-fact dd{color:var(--ink);margin:0;font-size:.98rem;font-weight:600;line-height:1.45}.course-offerings .section-head{margin-bottom:1.15rem}.course-offering-list{gap:.85rem;margin:0;padding:0;list-style:none;display:grid}.course-offering-list>li{display:flex}.course-offering-list>li:hover,.course-offering-list>li:focus-within{z-index:3}.course-offering-card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);flex-direction:column;flex:1;padding:1rem 1.1rem;transition:border-color .15s,box-shadow .15s;display:flex}.course-offering-card:hover{border-color:var(--brand);box-shadow:0 6px 18px #2a4e8a14}.course-offering-trial{color:#fff;background:#1fad5b;align-self:flex-end;gap:.18rem;width:auto;min-height:0;margin-top:auto;padding:.2rem .42rem;font-size:.72rem;line-height:1.2;position:relative}.course-offering-trial .site-icon{color:currentColor;width:.72rem;height:.72rem}.course-offering-trial:hover{background:#18964e;transform:none}.course-offering-trial-hint{z-index:2;background:var(--brand-deep);color:#fff;text-align:center;white-space:normal;opacity:0;pointer-events:none;border-radius:.55rem;width:max-content;max-width:16rem;padding:.4rem .65rem;font-size:.78rem;font-weight:600;line-height:1.35;transition:opacity .15s,transform .15s;position:absolute;bottom:calc(100% + .45rem);right:0;transform:translateY(4px)}.course-offering-trial-hint:after{content:"";background:var(--brand-deep);width:.55rem;height:.55rem;position:absolute;bottom:-.3rem;right:1.85rem;transform:rotate(45deg)}.course-offering-trial:hover .course-offering-trial-hint,.course-offering-card:focus-visible .course-offering-trial-hint{opacity:1;transform:translateY(0)}.course-offering-card dl{gap:.55rem;margin:0 0 .65rem;display:grid}.course-offering-code{color:var(--muted);font-variant-numeric:tabular-nums;letter-spacing:.01em;flex-wrap:wrap;align-items:baseline;gap:.35rem .5rem;margin:0 0 .85rem;font-size:.82rem;font-weight:600;display:flex}.course-offering-code span{letter-spacing:.02em;color:var(--muted);font-size:.72rem;font-weight:700}.course-offering-card dl div{gap:.1rem;display:grid}.course-offering-card dt{color:var(--brand);font-size:.78rem;font-weight:700}.course-offering-card dd{color:var(--ink);margin:0;font-size:.95rem;font-weight:600;line-height:1.45}.course-offering-mixed{color:var(--brand);background:#2a4e8a14;border-radius:999px;margin-left:.4rem;padding:.05rem .4rem;font-size:.72rem;font-weight:700;display:inline-block}@media (min-width:720px){.course-offering-list{grid-template-columns:repeat(2,1fr)}.course-offering-card dl{grid-template-columns:repeat(3,minmax(0,1fr));gap:.65rem}}@media (min-width:1080px){.course-offering-list{grid-template-columns:repeat(3,1fr)}}.course-detail-prose{max-width:42rem}.course-detail-prose p{color:var(--muted);margin:0 0 1rem;line-height:1.8}.course-detail-prose p:last-child{margin-bottom:0}.course-local-meta{border-top:1px solid var(--line);padding-top:1rem;font-size:.95rem;font-weight:600;color:var(--ink)!important;margin-top:1.1rem!important}.course-learning-list,.course-suited-list{gap:.75rem;margin:0;padding:0;list-style:none;display:grid}.course-learning-list li,.course-suited-list li{background:var(--paper);border-radius:var(--radius);border:1px solid var(--line);color:var(--ink);padding:.95rem 1.05rem .95rem 2.35rem;font-weight:500;line-height:1.55;position:relative}.course-suited-list li{background:var(--white)}.course-learning-list li:before,.course-suited-list li:before{content:"";background:var(--cta);border-radius:50%;width:.5rem;height:.5rem;position:absolute;top:1.2rem;left:1rem}.course-teaching-grid{gap:1rem;display:grid}.course-teaching-item{border-left:3px solid var(--brand);background:var(--paper);border-radius:0 var(--radius) var(--radius) 0;padding:1.15rem 1.2rem}.course-teaching-item h3{color:var(--brand-deep);align-items:center;gap:.55rem;margin:0 0 .4rem;font-size:1.02rem;display:flex}.teacher-group{margin-top:2rem}.teacher-group:first-of-type{margin-top:1.35rem}.teacher-group-head{font-family:var(--font-serif);color:var(--brand-deep);align-items:center;gap:.55rem;margin:0 0 .9rem;font-size:1.28rem;font-weight:700;display:flex}.course-teaching-item p{color:var(--muted);margin:0;font-size:.95rem;line-height:1.7}.course-faq-list{gap:.75rem;display:grid}.course-faq-item{border:1px solid var(--line);border-radius:var(--radius);background:var(--white);padding:0 1.1rem}.course-faq-item summary{cursor:pointer;color:var(--brand-deep);padding:1.05rem 1.5rem 1.05rem 0;font-weight:700;line-height:1.45;list-style:none;position:relative}.course-faq-item summary::-webkit-details-marker{display:none}.course-faq-item summary:after{content:"+";color:var(--brand);font-weight:700;line-height:1;transition:transform .18s;display:block;position:absolute;top:1.05rem;right:0}.course-faq-item[open] summary:after{transform:rotate(45deg)}.course-faq-item p{color:var(--muted);margin:0 0 1.1rem;padding-right:1rem;line-height:1.75}.course-faq-item .course-faq-link{margin-top:-.45rem;font-weight:600}.course-faq-item .course-faq-link a{color:var(--brand);text-decoration:none}.course-faq-item .course-faq-link a:hover{text-decoration:underline}.course-related-grid{gap:1.5rem;display:grid}.course-related-group h3{color:var(--brand-deep);margin:0 0 .75rem;font-size:1.05rem}.course-related-group ul{gap:.65rem;margin:0;padding:0;list-style:none;display:grid}.course-related-group a{border:1px solid var(--line);border-radius:var(--radius);background:var(--white);gap:.2rem;padding:.95rem 1.05rem;text-decoration:none;transition:border-color .15s,box-shadow .15s;display:grid}.course-related-group a:hover{border-color:var(--brand);box-shadow:var(--shadow)}.course-related-title{color:var(--brand);font-weight:700}.course-related-blurb{color:var(--muted);font-size:.88rem;line-height:1.5}.course-detail-cta{background:linear-gradient(135deg, var(--brand-deep), var(--brand));color:#fff;padding:2.5rem 0}.course-detail-cta-inner{max-width:40rem}.course-detail-cta h2{font-family:var(--font-serif);margin:0;font-size:clamp(1.4rem,3.5vw,1.85rem);line-height:1.3}.course-detail-cta p{color:#d7e2f4;margin:.75rem 0 1.35rem;line-height:1.7}@media (min-width:640px){.course-facts-grid{grid-template-columns:repeat(2,1fr)}.course-learning-list,.course-suited-list,.course-teaching-grid,.course-related-grid{grid-template-columns:1fr 1fr}}@media (min-width:900px){.course-facts-grid{grid-template-columns:repeat(3,1fr)}}.careers-doc{padding-top:2.25rem}.careers-shell{max-width:52rem}.careers-masthead h1,.careers-shell h2{font-family:var(--font-serif);color:var(--brand-deep);margin:0;line-height:1.25}.careers-masthead h1{font-size:clamp(1.85rem,4vw,2.35rem)}.careers-lead{color:var(--ink);margin:.85rem 0 0;font-size:1.05rem}.careers-masthead p+p{color:var(--muted);margin:.75rem 0 0}.careers-shell>section,.careers-shell>article{border-top:1px solid var(--line);margin-top:2.25rem;padding-top:1.75rem}.careers-shell h2{font-size:1.35rem}.careers-shell h3{color:var(--brand-deep);margin:1.15rem 0 .45rem;font-size:1rem}.careers-shell p{margin:.7rem 0 0}.careers-shell p a{color:var(--brand);text-underline-offset:.15em;font-weight:600;text-decoration:underline}.careers-shell ul,.careers-ol{gap:.35rem;margin:.45rem 0 0;padding-left:1.2rem;display:grid}.careers-shell li{color:var(--ink)}.vacancy-table-wrap{border:1px solid var(--line);background:var(--white);margin-top:.9rem;overflow-x:auto}.vacancy-table{border-collapse:collapse;width:100%;font-size:.92rem}.vacancy-table th,.vacancy-table td{text-align:left;border-bottom:1px solid var(--line);white-space:nowrap;padding:.7rem .85rem}.vacancy-table th{color:var(--brand-deep);background:var(--paper);font-weight:600}.vacancy-table tbody tr:last-child td{border-bottom:0}.vacancy-table a{color:var(--brand);text-underline-offset:.15em;font-weight:600;text-decoration:underline}.job-post{scroll-margin-top:5.5rem}.job-post-ref{color:var(--muted);margin:.35rem 0 0;font-size:.9rem}.job-post-meta{gap:.65rem 1.25rem;margin:1rem 0 0;display:grid}.job-post-meta div{gap:.1rem;display:grid}.job-post-meta dt{letter-spacing:.04em;color:var(--muted);font-size:.78rem;font-weight:600}.job-post-meta dd{color:var(--brand-deep);margin:0;font-weight:600}.job-post-apply{margin-top:1.1rem}.job-post-apply a{color:var(--brand);text-underline-offset:.15em;margin-left:.35rem;font-weight:600;text-decoration:underline}.careers-notice{color:var(--muted);font-size:.9rem}.careers-notice h2{font-size:1.1rem}.careers-notice li{color:var(--muted)}@media (min-width:720px){.job-post-meta{grid-template-columns:repeat(3,1fr)}}
