:root{--forest:#173e32;--deep:#102d26;--lime:#d8ed86;--cream:#f7f6f0;--ink:#1d2c27;--muted:#68756f;--line:#e6e9e3;--sans:'DM Sans',sans-serif;--serif:'Playfair Display',serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:88px}body{font-family:var(--sans);color:var(--ink);line-height:1.65}.utility-bar{background:var(--deep);color:#d7e1da;font-size:.75rem;letter-spacing:.02em;padding:.55rem 0}.utility-login{color:#fff;text-decoration:none}.utility-login:hover{color:var(--lime)}.site-header{background:rgba(255,255,255,.97);border-bottom:1px solid rgba(23,62,50,.08);backdrop-filter:blur(12px)}.navbar-brand{text-decoration:none}.brand-mark,.toast-mark{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:var(--forest);color:var(--lime);font-family:var(--serif);font-weight:700;font-size:1.35rem}.brand-name{font-size:.78rem;font-weight:700;letter-spacing:.1em;color:var(--forest);line-height:1.1}.brand-name small{display:block;font-size:.52rem;letter-spacing:.22em;margin-top:.3rem}.navbar .nav-link{color:#3a5147;font-size:.84rem;font-weight:600;padding:.7rem .65rem!important;transition:color .2s}.navbar .nav-link:hover,.navbar .nav-link.active{color:#78913b}.btn{border-radius:3px;font-size:.83rem;font-weight:700;padding:.8rem 1.2rem;transition:all .2s}.btn-green{background:var(--forest);border:1px solid var(--forest);color:white}.btn-green:hover{background:var(--deep);border-color:var(--deep);color:white;transform:translateY(-1px)}.btn-green span,.btn-lime span{padding-left:.45rem}.btn-lime{background:var(--lime);color:var(--deep);border:1px solid var(--lime)}.btn-lime:hover{background:#e4f5a5;border-color:#e4f5a5;color:var(--deep);transform:translateY(-1px)}.hero{position:relative;min-height:610px;background:var(--deep);overflow:hidden;color:#fff;display:flex;align-items:center}.hero-image{position:absolute;inset:0 0 0 35%;background:linear-gradient(90deg,#102d26 0%,rgba(16,45,38,.62) 35%,rgba(16,45,38,.1) 100%),linear-gradient(0deg,rgba(12,35,30,.28),transparent 45%),url('https://images.unsplash.com/photo-1509062522246-3755977927d7?auto=format&fit=crop&w=2000&q=85') center 44%/cover}.hero-content{position:relative;z-index:1}.hero-copy{max-width:590px;padding:5.5rem 0}.eyebrow{display:block;color:#849b5c;font-size:.67rem;font-weight:700;letter-spacing:.2em;margin-bottom:1rem}.eyebrow.light{color:var(--lime)}h1,h2{font-family:var(--serif);font-weight:600;letter-spacing:-.035em;line-height:1.12}h1{font-size:clamp(3.2rem,7vw,5.9rem);margin-bottom:1.25rem}h1 em,h2 em{color:#94ad65;font-weight:600}h1 em{color:var(--lime)}.hero-copy>p{color:#e2e9e4;font-size:1.05rem;max-width:470px;margin-bottom:1.6rem}.hero-note{color:#d8e1da;font-size:.75rem;margin-top:2.6rem}.note-dot,.notice-pulse{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--lime);margin-right:.55rem;box-shadow:0 0 0 4px rgba(216,237,134,.18)}.hero-vertical{position:absolute;right:2.2rem;top:50%;writing-mode:vertical-rl;transform:translateY(-50%);font-size:.61rem;letter-spacing:.28em;color:rgba(255,255,255,.65)}.quick-facts{background:var(--cream);border-bottom:1px solid var(--line)}.fact{padding:1.55rem 1.2rem;display:flex;align-items:baseline;gap:.65rem;border-right:1px solid var(--line)}.fact:last-child{border:0}.fact strong{font-family:var(--serif);font-size:1.8rem;color:var(--forest)}.fact strong span{color:#849b5c}.fact small{font-size:.72rem;color:var(--muted)}.section-pad{padding:6.5rem 0}.about-visual{position:relative;min-height:470px;background:#e4e8da;padding:1.2rem 1.2rem 2rem 2rem}.about-photo{height:430px;background:linear-gradient(180deg,transparent 58%,rgba(16,45,38,.72)),url('https://images.unsplash.com/photo-1562774053-701939374585?auto=format&fit=crop&w=1000&q=85') center/cover}.photo-caption{position:absolute;left:2.5rem;bottom:2.3rem;color:white}.photo-caption span{font-size:.62rem;letter-spacing:.2em;display:block;margin-bottom:.4rem}.photo-caption strong{font-family:var(--serif);font-size:1.45rem;line-height:1.25}.sun-disc{position:absolute;right:-1rem;top:-1rem;width:86px;height:86px;border-radius:50%;background:var(--lime);z-index:-1}h2{font-size:clamp(2.4rem,4vw,3.55rem);margin-bottom:1.2rem;color:var(--forest)}.lead-copy{font-size:1.03rem;color:#42534a;line-height:1.8}.section-pad p:not(.lead-copy){color:var(--muted)}.text-link{display:inline-flex;gap:.65rem;align-items:center;color:var(--forest);font-size:.83rem;font-weight:700;text-decoration:none;border-bottom:1px solid #b6c5a8;padding-bottom:.35rem;margin-top:.8rem}.text-link:hover{color:#718d40;border-color:#718d40}.mini-card{height:100%;background:var(--cream);padding:1.6rem 1.7rem;border-top:2px solid #cad8b5}.mini-icon{color:#829752;font-size:.67rem;letter-spacing:.14em;font-weight:700}.mini-card h3{font-family:var(--serif);font-size:1.35rem;color:var(--forest);margin:.8rem 0 .5rem}.mini-card p{margin-bottom:0;font-size:.87rem}.academics{background:var(--cream)}.section-heading{margin-bottom:.6rem}.section-heading h2{margin-bottom:.4rem}.section-heading>p{color:var(--muted)}.program-card{background:#fff;height:100%;box-shadow:0 12px 35px rgba(26,54,42,.05);transition:transform .25s,box-shadow .25s}.program-card:hover{transform:translateY(-5px);box-shadow:0 18px 38px rgba(26,54,42,.1)}.program-art{height:185px;padding:1.2rem;display:flex;justify-content:space-between;align-items:flex-start;color:#fff}.program-art span{font-size:.62rem;letter-spacing:.18em;font-weight:700}.program-art b{font-family:var(--serif);font-size:5rem;line-height:1;font-weight:400;align-self:center}.art-one{background:linear-gradient(135deg,#94a96f,#395c49)}.art-two{background:linear-gradient(135deg,#c38965,#784f45)}.art-three{background:linear-gradient(135deg,#768d9a,#3c5860)}.program-card h3,.teacher-info h3{font-family:var(--serif);font-size:1.45rem;color:var(--forest)}.program-card p{font-size:.85rem;min-height:4.2rem}.teacher-card{display:grid;grid-template-columns:42% 58%;background:var(--cream);min-height:280px}.teacher-photo{background-position:center;background-size:cover;min-height:280px}.teacher-one{background-image:url('https://images.unsplash.com/photo-1580894732444-8ecded7900cd?auto=format&fit=crop&w=700&q=85')}.teacher-two{background-image:url('https://images.unsplash.com/photo-1560250097-0b93528c311a?auto=format&fit=crop&w=700&q=85')}.teacher-info{padding:1.8rem 1.7rem}.teacher-info .eyebrow{font-size:.58rem}.teacher-info h3{margin:.6rem 0}.teacher-info p{font-size:.76rem}.teacher-info blockquote{font-family:var(--serif);font-style:italic;color:#465a4b;font-size:.95rem;margin-top:1.2rem}.student-section{background:var(--forest);color:#fff}.student-section h2{color:#fff}.student-section h2 em{color:var(--lime)}.carousel-control{width:42px;height:42px;border-radius:50%;border:1px solid rgba(255,255,255,.45);background:transparent;color:white;margin-left:.4rem;font-size:1.1rem;transition:all .2s}.carousel-control:hover{background:var(--lime);color:var(--deep);border-color:var(--lime)}.student-track{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.student-card{position:relative;padding:1.8rem;background:#254c3e;min-height:260px;border-bottom:2px solid #74904d;transition:background .25s,transform .25s}.student-card.active{background:#2c5948;transform:translateY(-5px)}.student-number{position:absolute;right:1.5rem;top:1.2rem;color:rgba(255,255,255,.22);font-family:var(--serif);font-size:2.3rem}.student-card h3{font-family:var(--serif);font-size:1.7rem;margin:1.4rem 0 .4rem}.student-card p{color:#d1dfd5;font-size:.82rem}.student-quote{color:var(--lime);font-family:var(--serif);font-style:italic;margin-top:1.3rem;font-size:.95rem}.student-list{display:flex;align-items:center;justify-content:space-between;gap:2rem;padding-top:2rem;border-top:1px solid rgba(255,255,255,.2)}.student-list h3{font-family:var(--serif);font-size:1.6rem;margin:0}.student-list p{max-width:370px;color:#d1dfd5;font-size:.86rem;margin:0}.results-section{background:#f4f5ef}.result-form{max-width:470px;margin-top:2rem}.form-label{font-size:.76rem;font-weight:700;color:#40564a}.form-control,.form-select{border:1px solid #dce2d9;border-radius:2px;padding:.8rem .9rem;font-size:.85rem;background-color:#fff}.form-control:focus,.form-select:focus{border-color:#8ca564;box-shadow:0 0 0 .2rem rgba(140,165,100,.14)}.input-group>.form-control{min-width:10rem}.input-group>.btn{border-radius:2px}.result-message{min-height:1.5rem;margin-top:.8rem;color:var(--forest);font-size:.82rem}.result-highlight{padding:2.3rem;background:var(--forest);color:#fff;min-height:390px}.result-big{font-family:var(--serif);font-size:6.2rem;line-height:1;color:var(--lime);margin:.7rem 0}.result-big span{font-size:3rem}.result-highlight h3{font-family:var(--serif);font-size:1.5rem;max-width:400px}.result-stats{display:flex;justify-content:space-between;gap:1rem;border-top:1px solid rgba(255,255,255,.23);padding:1.35rem 0;margin-top:1.4rem}.result-stats div{display:flex;flex-direction:column}.result-stats strong{font-size:1.15rem}.result-stats small{font-size:.68rem;color:#c6d4cb}.light-link{color:var(--lime);border-color:#718f7c}.calendar-section{padding:5.5rem 0}.event-row{display:flex;align-items:center;gap:1.4rem;padding:1.2rem 0;border-bottom:1px solid var(--line)}.event-row:first-child{border-top:1px solid var(--line)}.event-row time{width:55px;height:60px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--cream);color:var(--forest)}.event-row time b{font-size:.59rem;letter-spacing:.13em}.event-row time strong{font-family:var(--serif);font-size:1.5rem;line-height:1}.event-row .eyebrow{font-size:.55rem;margin-bottom:.2rem}.event-row h3{font-family:var(--serif);font-size:1.15rem;color:var(--forest);margin:0}.event-row p{font-size:.76rem;margin:.1rem 0 0}.event-arrow{margin-left:auto;color:#728c4b}.notice-section{background:var(--lime);padding:1.2rem 0}.notice-section .container{display:flex;align-items:center;gap:1.5rem}.notice-label{flex:0 0 auto;font-size:.66rem;font-weight:700;letter-spacing:.14em;color:#3d542c}.notice-label .notice-pulse{background:#69833e;box-shadow:0 0 0 4px rgba(105,131,62,.17)}.notice-section p{margin:0;color:#3d542c;font-size:.85rem;flex:1}.notice-section a{color:var(--forest);font-size:1.4rem;text-decoration:none}.login-section{background:#eef1e8;padding:5rem 0}.login-box{box-shadow:0 18px 50px rgba(24,56,43,.1)}.login-aside{background:var(--forest);padding:3rem;color:#fff;display:flex;flex-direction:column;justify-content:center;min-height:420px}.login-aside h2{color:#fff;font-size:2.45rem}.login-aside h2 em{color:var(--lime)}.login-aside>p{color:#d0ddd4;font-size:.9rem;max-width:320px}.login-breadcrumb{margin-top:2.8rem;padding-top:1rem;border-top:1px solid rgba(255,255,255,.2);font-size:.72rem;color:#c9d6ce}.login-breadcrumb span{padding:0 .5rem;color:var(--lime)}.login-breadcrumb b{color:white}.login-form-wrap{background:#fff;padding:3rem}.form-heading h3{font-family:var(--serif);color:var(--forest);font-size:2rem}.form-heading{margin-bottom:1.5rem}.remember-label,.forgot-link{font-size:.75rem;color:var(--muted)}.remember-label input{accent-color:var(--forest);vertical-align:middle}.forgot-link{color:var(--forest);text-decoration:none;font-weight:600}.form-note{display:block;color:#7c8780;font-size:.67rem;line-height:1.5;margin-top:.85rem}.site-footer{background:var(--deep);color:#e5ebe7;padding:3.4rem 0 1rem}.site-footer .brand-name{color:white}.site-footer .brand-mark{background:#2a5143}.footer-about{color:#b5c4bb;max-width:300px;font-size:.82rem;margin-top:1.1rem}.site-footer h4{font-size:.72rem;text-transform:uppercase;letter-spacing:.12em;color:var(--lime);margin-bottom:1rem}.site-footer a:not(.navbar-brand){display:block;color:#d0dbd4;text-decoration:none;font-size:.8rem;margin:.45rem 0}.site-footer p{font-size:.8rem;color:#d0dbd4;line-height:1.8}.footer-bottom{display:flex;justify-content:space-between;gap:1rem;border-top:1px solid rgba(255,255,255,.17);padding-top:1rem;margin-top:2.5rem;color:#aebdb4;font-size:.69rem}.footer-bottom b{color:var(--lime)}.toast{border:0;border-radius:3px;box-shadow:0 10px 35px rgba(0,0,0,.2)}.toast-mark{width:26px;height:26px;font-size:.95rem;margin-right:.55rem}.toast-header{font-size:.78rem}.toast-body{font-size:.82rem}.page-section{scroll-margin-top:84px}
@media(max-width:991.98px){.navbar .navbar-collapse{padding:1rem 0}.navbar .nav-link{padding:.55rem 0!important}.hero{min-height:560px}.hero-image{inset:0;background:linear-gradient(90deg,rgba(16,45,38,.91),rgba(16,45,38,.48)),url('https://images.unsplash.com/photo-1509062522246-3755977927d7?auto=format&fit=crop&w=1500&q=80') center/cover}.hero-vertical{right:1rem}.section-pad{padding:5rem 0}.student-list{flex-wrap:wrap}.student-list p{max-width:100%;flex:1 1 60%}}
@media(max-width:767.98px){.utility-bar .container{font-size:.65rem}.hero{min-height:535px}.hero-copy{padding:4rem 0}.hero-vertical{display:none}.quick-facts .fact{border-bottom:1px solid var(--line)}.quick-facts .fact:nth-child(2){border-right:0}.quick-facts .fact:nth-child(3),.quick-facts .fact:nth-child(4){border-bottom:0}.fact{padding:1rem .6rem;display:block}.fact strong{display:block;font-size:1.55rem}.fact small{font-size:.66rem}.section-pad{padding:4rem 0}.about-visual{min-height:360px}.about-photo{height:330px}.photo-caption{left:2rem;bottom:2rem}.teacher-card{grid-template-columns:38% 62%}.teacher-photo{min-height:300px}.teacher-info{padding:1.35rem 1rem}.teacher-info h3{font-size:1.2rem}.student-track{grid-template-columns:1fr;gap:.8rem}.student-card{min-height:220px;display:none}.student-card.active{display:block}.student-list{align-items:flex-start;flex-direction:column;gap:1rem}.student-list p{flex:auto}.result-highlight{min-height:0}.notice-section .container{gap:.7rem;flex-wrap:wrap}.notice-label{flex:0 0 auto}.notice-section p{flex:1 1 70%;font-size:.76rem}.login-section{padding:3rem 0}.login-aside{min-height:310px;padding:2rem}.login-aside h2{font-size:2rem}.login-breadcrumb{margin-top:1.4rem}.login-form-wrap{padding:2rem}.footer-bottom{flex-direction:column}.event-row{gap:.9rem}.event-row h3{font-size:1rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}

.teacher-three{background-image:url('https://images.unsplash.com/photo-1534528741775-53994a69daeb?auto=format&fit=crop&w=700&q=85')}.admin-card{background:#e9ede4}.admin-monogram{min-height:280px;display:grid;place-items:center;background:#dbe4ce;color:var(--forest);font-family:var(--serif);font-size:5rem}
