:root{--ink:#142522;--muted:#697874;--green:#174e3e;--green2:#23654f;--lime:#d7ed88;--cream:#f7f7f1;--line:#e4e8e2;--white:#fff;--serif:Georgia,'Times New Roman',serif;--sans:'DM Sans',Arial,sans-serif;--display:'Manrope',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:#fff;font-family:var(--sans);font-size:15px;line-height:1.65}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}.container{width:min(1160px,calc(100% - 64px));margin-inline:auto}.announcement{background:#173e34;color:#eaf3dd;font-size:12px}.announcement-inner{height:36px;display:flex;align-items:center;justify-content:space-between}.announcement a{color:#d9ec9e;font-weight:700}.announcement a span{padding-left:5px}.site-header{height:82px;background:#fff;position:relative;z-index:10}.nav-wrap{height:100%;display:flex;align-items:center;justify-content:space-between}.brand{display:inline-flex;align-items:center;gap:11px}.brand-mark{display:grid;place-items:center;width:40px;height:40px;background:var(--green);color:#e7f1b1;font-family:var(--serif);font-size:25px;font-weight:700;border-radius:12px 12px 12px 3px}.brand-copy{display:flex;flex-direction:column;line-height:1.45}.brand-copy b{font:800 13px var(--display);letter-spacing:.055em}.brand-copy small{font-size:8px;letter-spacing:.11em;color:#77837d;font-weight:700}.main-nav{display:flex;gap:32px;align-items:center;font-size:13px;font-weight:600;color:#53615d}.main-nav a:hover,.text-link:hover{color:#4e8b54}.btn{border:0;display:inline-flex;align-items:center;justify-content:center;gap:18px;border-radius:4px;padding:13px 20px;font-size:12px;font-weight:700;transition:.2s ease;cursor:pointer}.btn:hover{transform:translateY(-2px)}.btn-primary{background:var(--green);color:#fff}.btn-primary:hover{background:#103e32}.nav-cta{padding:11px 17px}.menu-toggle{display:none;border:0;background:none;font-size:22px}.hero{height:570px;min-height:540px;position:relative;color:#fff;overflow:hidden;background:#24473c}.hero-photo,.hero-wash{position:absolute;inset:0}.hero-photo{background:url('https://images.unsplash.com/photo-1562774053-701939374585?auto=format&fit=crop&w=2200&q=90') center 45%/cover;transform:scale(1.015)}.hero-wash{background:linear-gradient(90deg,rgba(12,37,31,.94) 0%,rgba(16,43,36,.78) 40%,rgba(16,43,36,.12) 100%),linear-gradient(0deg,rgba(14,37,30,.42),transparent 45%)}.hero-content{height:100%;display:flex;align-items:center;position:relative}.hero-copy{max-width:575px;padding-bottom:5px}.eyebrow{font:700 10px var(--display);letter-spacing:.13em;color:#58845f;display:flex;align-items:center;gap:9px}.eyebrow>span{display:inline-block;width:20px;height:1px;background:#85a45c}.eyebrow.light{color:#d5e3c5}.eyebrow.light>span{background:#d5e783}.hero h1{font:600 clamp(52px,6.4vw,80px)/1.04 var(--display);letter-spacing:-.065em;margin:21px 0}.hero h1 em,h2 em,blockquote em,.cta-inner h2 em{font-family:var(--serif);font-weight:400;letter-spacing:-.045em;color:#cde882}.hero-copy>p{font-size:15px;line-height:1.85;color:#d5ded8;max-width:480px;margin-bottom:28px}.hero-actions{display:flex;gap:12px}.btn-white{background:#f7f8f1;color:#194838}.btn-white:hover{background:#e3efc1}.btn-ghost{border:1px solid rgba(255,255,255,.48);color:#fff;background:transparent}.play{width:21px;height:21px;border:1px solid #fff;border-radius:50%;display:grid;place-items:center;font-size:8px}.hero-note{position:absolute;right:0;bottom:68px;display:flex;align-items:center;gap:15px;font-size:11px;color:#e5ebe2}.hero-note>span:first-child{font-size:10px;color:#cad59c}.hero-note i{height:30px;width:1px;background:#a5b2a2}.hero-scroll{position:absolute;bottom:0;left:50%;transform:translateX(-50%);font-size:8px;letter-spacing:.18em;color:#d8dfd6;display:flex;gap:16px;align-items:center;padding:13px 19px;border:1px solid rgba(255,255,255,.2);border-bottom:0}.hero-scroll span{font-size:14px;color:#cde882}.stats{background:#f3f5ee;border-bottom:1px solid #ebeee6}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);padding:25px 0}.stats-grid>div{display:flex;flex-direction:column;padding-left:40px;border-left:1px solid #dfe4d8}.stats-grid>div:first-child{padding-left:0;border:0}.stats-grid strong{font:700 27px var(--display);letter-spacing:-.05em;color:#254e3e}.stats-grid .percent{font-size:17px}.stats-grid span:not(.percent){font-size:11px;color:#758079;margin-top:1px}.section{padding:106px 0}.intro-grid{display:grid;grid-template-columns:1.02fr .98fr;gap:92px;align-items:center}.intro-visual{position:relative;padding:0 22px 24px 0}.intro-visual img{display:block;width:100%;height:430px;object-fit:cover;filter:saturate(.78)}.visual-label{position:absolute;left:-18px;bottom:0;background:#d9ebaa;color:#254838;padding:18px 21px;display:flex;gap:11px;align-items:center;box-shadow:0 8px 25px #203e2015}.visual-label b{font:700 35px var(--display);letter-spacing:-.07em}.visual-label span{font-size:10px;line-height:1.5}.visual-dot{position:absolute;width:43px;height:43px;border-radius:50%;background:#dceba6;right:0;top:20px;border:8px solid #fff}.intro-copy h2,.section-heading h2,.page-main h2{font:600 43px/1.13 var(--display);letter-spacing:-.055em;margin:18px 0}.intro-copy h2 em,.section-heading h2 em,.page-main h2 em{color:#49805a}.intro-copy p{font-size:13px;color:#727d77;line-height:1.9;max-width:465px}.intro-copy .lead,.page-main .lead{color:#3e5149;font-size:16px;line-height:1.7}.text-link{display:inline-flex;gap:17px;align-items:center;font-size:12px;font-weight:700;color:#275c43;margin-top:13px}.signature{display:flex;align-items:center;gap:11px;margin-top:33px}.signature-mark{width:36px;height:36px;background:#e2edcf;border-radius:50%;display:grid;place-items:center;font:italic 22px var(--serif);color:#315b42}.signature b,.signature small{display:block}.signature b{font-size:10px}.signature small{font-size:9px;color:#849088}.programs{padding:90px 0 103px;background:#f6f7f2}.section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:35px}.section-heading h2{margin-bottom:0}.section-heading .text-link{margin-bottom:8px}.program-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}
.program-slider{position:relative}
.program-track{display:flex;gap:15px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;padding:4px 2px 12px;scrollbar-width:thin}
.program-track .program-card{flex:0 0 min(330px,84vw);height:auto;min-height:360px;scroll-snap-align:start}
.program-media{margin:-23px -25px 15px;height:150px;overflow:hidden}
.program-media img{display:block;width:100%;height:100%;object-fit:cover}
.program-link{margin-top:auto;padding-top:12px;font-size:12px;font-weight:800}
.program-dark .program-link{color:#e7f1b1}
.program-nav{position:absolute;top:38%;z-index:2;width:42px;height:42px;border:1px solid var(--line);border-radius:50%;background:#fff;color:var(--green);font-size:22px;line-height:1;cursor:pointer;box-shadow:0 8px 24px #10241922}
.program-nav.prev{left:-8px}
.program-nav.next{right:-8px}
.program-dots{display:flex;justify-content:center;gap:8px;margin-top:6px}
.program-dots button{width:9px;height:9px;border:0;border-radius:50%;background:#cfd8cd;cursor:pointer;padding:0}
.program-dots button.is-active{background:var(--green);width:26px;border-radius:99px}
.program-feature{display:grid;grid-template-columns:1.05fr .95fr;overflow:hidden;border:1px solid #e1e9df;border-radius:24px;background:#fff;box-shadow:0 18px 55px #15382312;margin-bottom:22px}
.program-feature-media{min-height:320px;background:#dce8d5;display:grid;place-items:center;font-size:64px;color:#4a8156}
.program-feature-media img{display:block;width:100%;height:100%;min-height:320px;object-fit:cover}
.program-feature-copy{padding:38px clamp(24px,4vw,52px);display:flex;flex-direction:column;align-items:flex-start;justify-content:center}
.program-feature-copy h2{margin:12px 0 8px;font:800 clamp(26px,3vw,36px)/1.2 var(--display);letter-spacing:-.045em;color:#1d3928}
.program-feature-copy .lead{font-size:15px;color:#4d5c52}
.program-list-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.program-list-grid .program-card{height:auto;min-height:330px}
.program-cta{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:26px;padding:30px 34px;border-radius:20px;background:var(--green);color:#fff}
.program-cta h2{margin:0 0 6px;font:800 clamp(24px,3vw,32px)/1.2 var(--display)}
.program-cta h2 em{font-family:var(--serif);font-weight:400}
.program-cta p{margin:0;opacity:.85;font-size:14px}
@media(max-width:900px){.program-list-grid{grid-template-columns:minmax(0,1fr)}.program-feature{grid-template-columns:minmax(0,1fr)}.program-nav{display:none}}.program-card{height:286px;padding:23px 25px;position:relative;display:flex;flex-direction:column;overflow:hidden}.program-dark{background:#194c3d;color:#f5f5ec}.program-sage{background:#dce8d5;color:#214a3c}.program-yellow{background:#eaf0c5;color:#3c5032}.program-number{font:700 9px var(--display);letter-spacing:.1em;opacity:.7}.program-icon{position:absolute;right:22px;top:26px;font-size:34px;line-height:1}.program-card h3{font:600 22px/1.2 var(--display);letter-spacing:-.035em;margin:auto 0 8px}.program-card p{font-size:11px;line-height:1.7;max-width:285px;opacity:.78;margin:0 0 15px}.program-card>a{position:absolute;right:23px;bottom:19px;font-size:14px}.quote{position:relative;min-height:370px;background:#173f35;color:#fff;overflow:hidden}.quote-bg{position:absolute;inset:0;background:linear-gradient(90deg,#173f35 12%,rgba(23,63,53,.92) 60%,rgba(23,63,53,.55)),url('https://images.unsplash.com/photo-1509062522246-3755977927d7?auto=format&fit=crop&w=1800&q=80') center/cover;opacity:.8}.quote-content{position:relative;padding:69px 0 66px;max-width:800px}.quote-mark{font:100px/.6 var(--serif);color:#cfe587}.quote blockquote{font:400 31px/1.42 var(--display);letter-spacing:-.04em;margin:5px 0 22px;max-width:720px}.quote blockquote em{color:#d6ec91}.quote-by{display:flex;align-items:center;gap:11px;font-size:9px;letter-spacing:.12em;color:#e3ead9}.quote-line{height:1px;width:25px;background:#d9e99d}.video-button{position:absolute;right:2%;bottom:78px;width:55px;height:55px;border-radius:50%;border:1px solid #fff8;display:grid;place-items:center;font-size:13px;color:#e5efcc}.news{padding:96px 0 107px}.news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.news-card{min-width:0}.news-image{height:205px;display:block;position:relative;background:#e7eae5;overflow:hidden}.news-image img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.news-image:hover img{transform:scale(1.04)}.category-pill{position:absolute;top:12px;left:12px;background:#fff;padding:6px 10px;font-size:9px;font-weight:700;color:#365849}.share-button{position:absolute;bottom:12px;right:12px;border:0;background:#fff;width:31px;height:31px;display:grid;place-items:center;cursor:pointer;color:#275840}.news-meta{font-size:9px;letter-spacing:.08em;color:#859088;margin:15px 0 7px}.news-meta span{color:#aac586;padding:0 4px}.news-card h3{font:600 16px/1.45 var(--display);letter-spacing:-.025em;margin:0 0 13px}.news-actions{border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding-top:11px}.news-actions button{border:0;padding:0;background:none;font-size:11px;color:#66806f;cursor:pointer}.news-actions button.liked{color:#d14a4a}.news-actions a{font-size:10px;color:#697770;font-weight:600}.cta-section{background:#204e3d;color:#fff;padding:62px 0}.cta-inner{display:flex;justify-content:space-between;align-items:center}.cta-inner h2{font:600 40px/1.15 var(--display);letter-spacing:-.05em;margin:10px 0}.cta-inner h2 em{color:#d6e99a}.cta-inner p{font-size:12px;color:#dae5db;margin:8px 0 0}.cta-inner .btn{margin-right:4%}.footer{background:#142d27;color:#eef2e9;padding:57px 0 0}.footer-grid{display:grid;grid-template-columns:1.5fr .8fr 1fr .8fr;gap:52px;padding-bottom:46px}.footer-brand .brand-mark{background:#d5e795;color:#234837}.footer-brand .brand-copy small{color:#a9b8ad}.footer-grid p{font-size:11px;line-height:1.8;color:#b9c5bc;max-width:260px;margin-top:17px}.footer-grid>div:not(:first-child){display:flex;flex-direction:column;gap:8px;font-size:10px;color:#bdc8bf}.footer-grid>div>b{font:700 12px var(--display);color:#eff3e8;margin-bottom:7px}.socials{display:flex;gap:8px}.socials a{width:28px;height:28px;border:1px solid #73887a;border-radius:50%;display:grid;place-items:center;font-size:9px}.footer-bottom{border-top:1px solid #ffffff20;padding:15px 0 18px;display:flex;justify-content:space-between;color:#9dad9f;font-size:9px}.welcome{display:none;position:fixed;inset:0;z-index:100;background:#142b2480;place-items:center;padding:20px}.welcome.show{display:grid}.welcome-card{position:relative;width:min(400px,100%);background:#fff;padding:39px 34px;box-shadow:0 25px 90px #10291d44}.welcome-card h3{font:600 29px/1.2 var(--display);letter-spacing:-.05em;margin:13px 0}.welcome-card p{font-size:12px;color:#6a7870;margin:0 0 22px}.welcome-close{position:absolute;right:14px;top:10px;background:none;border:0;font-size:24px;color:#708077;cursor:pointer}.page-hero{padding:86px 0 80px;background:#f4f6ef}.page-hero h1{font:600 55px/1.1 var(--display);letter-spacing:-.06em;margin:15px 0 8px}.page-hero h1 em{font:400 55px var(--serif);color:#4c845e}.page-hero p{font-size:13px;color:#6f7c74}.page-body{padding:76px 0 110px}.page-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(230px,.85fr);gap:75px}.page-main h2{margin-top:0}.page-main>p{font-size:13px;line-height:1.85;color:#6b7871}.page-aside{display:flex;flex-direction:column;gap:14px}.aside-card{padding:25px;background:#194b3c;color:#fff}.aside-card .eyebrow{color:#cce19d}.aside-card h3{font:600 21px/1.3 var(--display);letter-spacing:-.035em}.aside-card p{font-size:11px;color:#dae5dc}.aside-card .text-link{color:#e0eead}.aside-light{background:#f1f5e9;color:#244e3e}.aside-light .eyebrow{color:#59805a}.aside-light p{color:#65786a}.status-pill{display:inline-block;background:#eaf3d5;color:#35623f;border-radius:2px;padding:6px 10px;font-size:9px;font-weight:700;letter-spacing:.05em;margin-bottom:20px}.info-box{padding:21px 23px;background:#f3f6ed;border-left:3px solid #a9cb69;margin:20px 0}.info-box>b{font:700 13px var(--display)}.info-box p{font-size:12px;color:#465c50}.info-box small{font-size:10px;color:#7d8981;line-height:1.7;display:block}.check-list{padding-left:20px;color:#607067;font-size:12px;line-height:2.3;margin-bottom:24px}.contact-form{display:flex;flex-direction:column;gap:15px;margin-top:25px}.contact-form label{display:flex;flex-direction:column;gap:6px;font-size:11px;font-weight:700}.contact-form input,.contact-form textarea,.info-box textarea{border:1px solid #dce3dc;padding:12px 13px;background:#fff;outline-color:#77a37b;font-size:12px;resize:vertical}.contact-form .btn{align-self:flex-start}.form-alert{background:#fff0ed;padding:12px;color:#994638;font-size:11px}.page-news article{padding:22px 0;border-top:1px solid var(--line)}.page-news h3{font:600 19px/1.4 var(--display);margin:9px 0}.page-news p{font-size:12px;color:#6d7973}.page-news .news-actions{margin-top:15px}.info-box textarea{display:block;width:100%;margin:10px 0}.info-box .btn{font-size:10px;padding:9px 13px}.admin-body{background:#f4f6f4;min-height:100vh;display:flex}.admin-sidebar{width:230px;background:#173e34;color:#d9e4db;padding:25px 16px;display:flex;flex-direction:column;flex-shrink:0}.admin-sidebar .brand{margin:0 8px 38px}.admin-sidebar .brand-mark{background:#d5e795;color:#234837}.admin-sidebar .brand-copy small{color:#a6b7ab}.admin-label{font-size:8px;letter-spacing:.13em;color:#8fa69a;margin:0 11px 10px}.admin-sidebar>a:not(.brand){padding:10px 11px;border-radius:3px;font-size:11px;color:#c2d1c7;margin-bottom:3px}.admin-sidebar>a.active,.admin-sidebar>a:not(.brand):hover{background:#295a49;color:#fff}.admin-profile{margin-top:auto;border-top:1px solid #ffffff24;padding:16px 8px 0;display:flex;gap:9px;align-items:center}.avatar{background:#dbe9a8;color:#204938;width:30px;height:30px;display:grid;place-items:center;border-radius:50%;font-size:9px;font-weight:700}.admin-profile b,.admin-profile small{display:block}.admin-profile b{font-size:10px}.admin-profile small{font-size:9px;color:#9fb1a4}.admin-main{flex:1;min-width:0}.admin-top{height:62px;background:#fff;border-bottom:1px solid #e8ece9;display:flex;justify-content:flex-end;align-items:center;gap:25px;padding:0 36px;font-size:10px;color:#76837b}.admin-top .text-link{margin:0}.admin-content{max-width:1250px;margin:auto;padding:34px 36px}.admin-welcome{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.admin-welcome h1{font:700 25px var(--display);letter-spacing:-.04em;margin:8px 0 2px}.admin-welcome p{font-size:11px;color:#7a867f;margin:0}.admin-welcome .btn{font-size:10px}.admin-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:13px;margin-bottom:17px}.admin-metrics>div,.admin-panel{background:#fff;border:1px solid #e9edea;border-radius:4px}.admin-metrics>div{padding:16px}.admin-metrics span,.admin-metrics i{display:block;font-size:9px;color:#7c8880;font-style:normal}.admin-metrics b{display:block;font:700 22px var(--display);margin:10px 0 0}.admin-metrics b small{font:700 9px var(--sans);color:#528954;margin-left:5px}.admin-metrics b small.orange{color:#d0983c}.admin-metrics i{font-size:8px;margin-top:1px}.admin-panels{display:grid;grid-template-columns:1.45fr 1fr;gap:14px;margin-bottom:14px}.admin-panel{padding:18px}.panel-title{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:17px}.panel-title b,.panel-title small{display:block}.panel-title b{font:700 12px var(--display)}.panel-title small{font-size:9px;color:#87918b;margin-top:3px}.panel-title select{border:1px solid #e5eae6;background:white;padding:5px 7px;font-size:9px;color:#748078}.chart{height:180px;display:flex;gap:12px}.chart-labels{display:flex;flex-direction:column;justify-content:space-between;font-size:8px;color:#9aa39e;padding-bottom:17px}.chart-bars{flex:1;display:flex;justify-content:space-around;align-items:stretch;border-bottom:1px solid #e9edeb;background:repeating-linear-gradient(to bottom,transparent 0,transparent 43px,#eef1ee 44px,#eef1ee 45px)}.chart-bars>div{width:8%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:end;gap:5px}.chart-bars i{width:15px;max-height:145px;background:#8bad77;border-radius:3px 3px 0 0}.chart-bars>div:nth-child(6) i{background:#235d47}.chart-bars span{font-size:8px;color:#8a958e;margin-bottom:-17px}.todo{display:flex;align-items:center;gap:10px;border-top:1px solid #eef1ef;padding:13px 0}.todo-dot{width:7px;height:7px;background:#d99070;border-radius:50%;flex-shrink:0}.todo-dot.yellow{background:#d9ad54}.todo-dot.green{background:#70a983}.todo>span:nth-child(2){flex:1}.todo b,.todo small{display:block}.todo b{font-size:9px}.todo small{font-size:8px;color:#87928b;margin-top:3px}.todo>a{color:#64836c}.recent{padding-bottom:5px}.recent .panel-title{margin-bottom:8px}.recent .panel-title .text-link{font-size:9px}.table-row{display:grid;grid-template-columns:2fr 1fr .8fr .65fr;gap:10px;padding:12px 5px;border-top:1px solid #eef1ef;align-items:center;font-size:9px;color:#6f7c74}.table-row>b{font-weight:600;color:#34483c}.table-row.table-head{font-size:8px;letter-spacing:.08em;color:#919d95;border:0;padding-top:7px}.published{color:#51895e;font-size:8px}.footer-grid>div>span{line-height:1.7}
@media(max-width:900px){.container{width:min(100% - 42px,720px)}.main-nav{gap:18px}.main-nav a{font-size:12px}.intro-grid{gap:45px}.intro-visual img{height:370px}.program-card{padding:19px;height:280px}.program-card h3{font-size:19px}.footer-grid{gap:28px;grid-template-columns:1.4fr .8fr 1fr}.footer-grid>div:last-child{display:none}.page-grid{gap:35px}.admin-sidebar{width:200px}.admin-content{padding:26px 20px}.admin-metrics{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.container{width:calc(100% - 38px)}.announcement-inner{height:auto;min-height:36px;gap:8px;font-size:9px}.announcement-inner>a{white-space:nowrap}.site-header{height:69px}.brand-mark{width:36px;height:36px}.brand-copy b{font-size:11px}.menu-toggle{display:block;margin-left:auto;margin-right:13px}.main-nav{display:none;position:absolute;top:69px;left:0;right:0;background:#fff;padding:15px 20px 21px;box-shadow:0 12px 20px #122c2015;flex-direction:column;align-items:stretch;gap:0}.main-nav.open{display:flex}.main-nav a{padding:10px 0;border-bottom:1px solid #f0f2ef}.nav-cta{padding:10px 12px;font-size:10px}.hero{height:570px;min-height:0}.hero-photo{background-position:58% center}.hero-wash{background:linear-gradient(90deg,rgba(12,37,31,.91),rgba(16,43,36,.56)),linear-gradient(0deg,rgba(14,37,30,.38),transparent)}.hero-content{align-items:center}.hero-copy{padding-top:0}.hero h1{font-size:54px;margin:17px 0}.hero-copy>p{font-size:13px;max-width:345px}.hero-note{right:0;bottom:57px}.hero-scroll{left:19px;transform:none;font-size:7px}.stats-grid{grid-template-columns:repeat(2,1fr);row-gap:20px;padding:23px 0}.stats-grid>div{padding-left:18px}.stats-grid>div:nth-child(odd){padding-left:0;border:0}.stats-grid strong{font-size:23px}.stats-grid span:not(.percent){font-size:10px}.section{padding:70px 0}.intro-grid{grid-template-columns:1fr;gap:35px}.intro-visual{padding-left:10px}.intro-visual img{height:310px}.visual-label{left:0}.intro-copy h2,.section-heading h2,.page-main h2{font-size:36px}.programs{padding:70px 0}.section-heading{align-items:flex-start;gap:15px}.section-heading .text-link{font-size:10px;white-space:nowrap;margin-top:28px}.program-grid{grid-template-columns:1fr;gap:11px}.program-card{height:245px;padding:22px 23px}.program-card h3{font-size:22px}.quote{min-height:355px}.quote-content{padding:55px 0}.quote blockquote{font-size:26px}.video-button{right:8px;bottom:28px;width:43px;height:43px}.news{padding:70px 0}.news-grid{grid-template-columns:1fr;gap:28px}.news-image{height:225px}.cta-inner{align-items:flex-start;gap:20px;flex-direction:column}.cta-inner h2{font-size:35px}.cta-inner .btn{margin:0}.footer{padding-top:42px}.footer-grid{grid-template-columns:1fr 1fr;gap:30px 20px;padding-bottom:34px}.footer-grid>div:first-child{grid-column:1/-1}.footer-grid>div:last-child{display:flex}.footer-bottom{gap:8px;flex-direction:column;font-size:8px}.page-hero{padding:64px 0 59px}.page-hero h1{font-size:43px}.page-hero h1 em{font-size:43px}.page-body{padding:53px 0 75px}.page-grid{grid-template-columns:1fr;gap:35px}.aside-card{padding:21px}.admin-sidebar{width:60px;padding:20px 7px}.admin-sidebar .brand{margin:0 auto 32px}.admin-sidebar .brand-copy,.admin-sidebar .admin-label,.admin-sidebar>a:not(.brand){font-size:0}.admin-sidebar>a:not(.brand){text-align:center;padding:12px 4px}.admin-profile{padding:12px 0 0;justify-content:center}.admin-profile>span:last-child{display:none}.admin-top{height:52px;padding:0 14px}.admin-content{padding:23px 13px}.admin-welcome{align-items:flex-start;gap:12px}.admin-welcome h1{font-size:19px}.admin-welcome .btn{font-size:0;padding:10px}.admin-metrics{gap:8px}.admin-metrics>div{padding:11px}.admin-metrics b{font-size:19px}.admin-panels{grid-template-columns:1fr}.table-row{grid-template-columns:1.8fr .9fr .7fr;gap:5px;font-size:8px}.table-row>*:nth-child(2){display:none}.table-row.table-head>*:nth-child(2){display:none}.chart-bars i{width:11px}.welcome-card{padding:34px 25px}}
.theme-picker{position:fixed;right:14px;bottom:14px;z-index:20;background:#fff;box-shadow:0 5px 22px #152f2225;padding:8px 11px;display:flex;gap:9px;align-items:center;font-size:9px}.theme-picker span{font-size:8px;letter-spacing:.1em;color:#89958e;font-weight:700}.theme-picker a{color:#2c6349;font-weight:600}.theme-picker a:hover{text-decoration:underline}
body[data-theme="minimal"]{--green:#303a42;--green2:#495b63;--lime:#e0e5e6}.theme-picker:has(a[href$="minimal"]:hover){outline:1px solid #aab5ba}
body[data-theme="minimal"] .program-dark,body[data-theme="minimal"] .cta-section,body[data-theme="minimal"] .quote,body[data-theme="minimal"] .footer{background:#303a42}body[data-theme="minimal"] .program-sage{background:#e7ebeb}body[data-theme="minimal"] .program-yellow{background:#f0f1ed}body[data-theme="minimal"] .hero-wash{background:linear-gradient(90deg,rgba(29,38,43,.94),rgba(29,38,43,.7),rgba(29,38,43,.12))}body[data-theme="minimal"] .brand-mark{background:#303a42;color:#fff}
body[data-theme="ceria"]{--green:#285a73;--green2:#367c91;--lime:#ffe17f}body[data-theme="ceria"] .program-dark,body[data-theme="ceria"] .cta-section,body[data-theme="ceria"] .quote,body[data-theme="ceria"] .footer{background:#285a73}body[data-theme="ceria"] .program-sage{background:#cce8df}body[data-theme="ceria"] .program-yellow{background:#fff0b7}body[data-theme="ceria"] .hero-wash{background:linear-gradient(90deg,rgba(22,56,75,.92),rgba(28,71,87,.64),rgba(22,56,75,.13))}body[data-theme="ceria"] .brand-mark{background:#285a73;color:#fff}

/* Visual direction inspired by the supplied Benteng reference. */
:root{--green:#087b32;--green2:#00a838;--lime:#73f091;--ink:#10241b}
.announcement{background:#102119;color:#ddf4e2}
.announcement a{color:#79f396}
.site-header{height:auto;padding:14px 0 18px;background:#f5f7f3}
.nav-wrap{min-height:68px;padding:0 22px;border-radius:999px;background:#00bd3f;color:#082415;box-shadow:0 12px 32px #07381920}
.brand-mark{background:#082719;color:#70f391;border-radius:50%;font-family:var(--display);font-size:22px}
.brand-copy b{color:#062512}.brand-copy small{color:#14552a}
.main-nav{gap:clamp(12px,2vw,27px);color:#07371c;font-size:12px}
.main-nav a:hover{color:#fff}
.nav-cta{background:#092c18;color:#fff;border-radius:999px;padding:11px 17px}
.nav-cta:hover{background:#124b27}
.btn{border-radius:999px;padding:14px 22px}
.btn-primary{background:#00b93d;color:#061e0f}
.btn-primary:hover{background:#20d75a;color:#05220f}
.btn-white{background:#00c342;color:#061e0f}
.btn-white:hover{background:#5bec80;color:#061e0f}
.btn-ghost{border-color:#ffffff55}
.hero{height:min(760px,calc(100svh - 115px));min-height:590px;background:#06180e}
.hero-photo{background-image:linear-gradient(110deg,#05170c 0%,#071b0f 45%,#092817 100%),url('https://images.unsplash.com/photo-1562774053-701939374585?auto=format&fit=crop&w=2200&q=90');background-position:center;background-size:cover;opacity:.84}
.hero-wash{background:radial-gradient(ellipse at 85% 22%,#09a83d35 0%,transparent 34%),linear-gradient(90deg,#04140af2 0%,#06170fe8 46%,#06170f65 100%),linear-gradient(0deg,#03110880,transparent 56%)}
.hero::after{content:'SEKOLAH';position:absolute;right:-.035em;top:50%;transform:translateY(-45%);font:800 clamp(110px,22vw,300px)/.8 var(--display);letter-spacing:-.09em;color:#ffffff08;white-space:nowrap;pointer-events:none}
.hero-content{z-index:1}.hero-copy{max-width:730px}
.hero .eyebrow.light{color:#2de65b}.hero .eyebrow.light>span{background:#2de65b}
.hero h1{font-weight:800;font-size:clamp(54px,7.2vw,92px);letter-spacing:-.075em;line-height:.99;max-width:850px;text-wrap:balance}
.hero-copy>p{max-width:590px;font-size:16px}
.hero-note{z-index:1}.hero-note>span:first-child{color:#64f181}
.hero-scroll{z-index:1;border-color:#ffffff24}.hero-scroll span{color:#4ff275}
.stats{background:#f2f6ef}.stats-grid strong{color:#087b32}
.eyebrow>span{background:#00a838}.text-link{color:#087b32}
.program-dark{background:#073820}.quote,.cta-section,.footer{background:#061b10}
.program-card,.news-image,.intro-visual img{border-radius:10px}
.category-pill{border-radius:999px}.share-button{border-radius:50%}
.welcome-card{border-radius:18px}.theme-picker{border-radius:999px;padding:10px 14px;max-width:calc(100vw - 24px);flex-wrap:wrap}
@media(max-width:900px){.nav-wrap{padding-inline:17px}.main-nav{gap:12px}.main-nav a{font-size:11px}.nav-cta{font-size:10px}}
@media(max-width:700px){
 .announcement-inner{min-height:34px}.site-header{padding:12px 0 15px}.nav-wrap{min-height:60px;padding:0 15px}.menu-toggle{display:block;color:#062512;margin-left:auto;margin-right:10px}
 .main-nav{display:none;position:absolute;top:calc(100% - 13px);left:20px;right:20px;background:#fff;padding:12px 19px 17px;box-shadow:0 15px 35px #102b1c25;flex-direction:column;align-items:stretch;gap:0;border-radius:16px;color:#173326}
 .main-nav.open{display:flex}.main-nav a{padding:10px 0;border-bottom:1px solid #edf1ed;font-size:13px}.main-nav a:last-child{border-bottom:0}.nav-cta{font-size:10px;padding:10px 13px}
 .hero{height:min(650px,calc(100svh - 130px));min-height:540px}.hero-photo{background-position:58% center}.hero-wash{background:radial-gradient(ellipse at 90% 18%,#08a63c32,transparent 38%),linear-gradient(90deg,#04140af2,#06170fbd),linear-gradient(0deg,#03110880,transparent 55%)}
 .hero-content{align-items:center}.hero-copy{padding:0}.hero h1{font-size:clamp(49px,11.8vw,72px);line-height:1.02;max-width:570px;margin:19px 0}.hero-copy>p{font-size:14px;line-height:1.75;max-width:440px}.hero-actions{flex-wrap:wrap;gap:10px}.hero-actions .btn{padding:13px 17px;font-size:11px}.hero-note{bottom:56px;left:19px;right:19px;justify-content:flex-start}.hero-note>span:last-child{max-width:240px}.hero-scroll{left:auto;right:19px;transform:none;font-size:7px;padding-inline:10px}.hero::after{font-size:clamp(100px,25vw,180px);right:-.1em}
 .theme-picker{right:10px;bottom:10px;gap:7px;font-size:8px}.theme-picker a{font-size:8px}
}


/* User-configurable colors and cinematic school video hero. */
.nav-wrap{background:var(--primary,#00bd3f)}
.nav-cta{background:var(--ink,#092c18);color:#fff}
.btn-primary{background:var(--primary,#00bd3f);color:#fff}
.btn-primary:hover{background:var(--green2,#00a838);color:#fff}
.btn-white{background:var(--primary,#00bd3f);color:#fff}
.btn-white:hover{background:var(--green2,#00a838);color:#fff}
.text-link,.stats-grid strong{color:var(--green,#087b32)}
.eyebrow>span{background:var(--green2,#00a838)}
.footer,body[data-theme] .footer{background:var(--footer-bg,#061b10)}
.hero-video{position:absolute;z-index:0;inset:0;overflow:hidden;pointer-events:none;background:#06180e}
.hero-video iframe{position:absolute;top:50%;left:50%;width:100vw;height:56.25vw;min-width:177.78vh;min-height:100%;transform:translate(-50%,-50%) scale(1.12);border:0;opacity:.48}
.hero-video~.hero-wash{z-index:1}.hero-video~.hero-content{z-index:2}.hero-video~.hero-scroll{z-index:2}
.page-grid{grid-template-columns:minmax(0,1fr)!important}
.page-aside{display:none!important}
.page-main{max-width:100%;min-width:0}
.contact-location{display:grid;grid-template-columns:minmax(220px,.7fr) minmax(0,1.3fr);align-items:center;gap:34px;margin-top:64px;padding-top:34px;border-top:1px solid var(--line)}
.contact-location h2{margin:9px 0}.contact-location p{color:var(--muted)}
.map-frame{height:340px;overflow:hidden;border-radius:20px;background:#e8eee8;box-shadow:0 18px 50px #10241918}
.map-frame iframe{width:100%;height:100%;border:0}
.map-placeholder{grid-column:1/-1;padding:28px;border-radius:16px;background:#f1f5ef;color:#637269}
.appearance-form{max-width:940px;padding:26px 30px}
.appearance-section{display:grid;grid-template-columns:minmax(200px,.75fr) minmax(0,1.25fr);gap:34px;padding:20px 0 28px;border-bottom:1px solid #e9eeea}
.appearance-section h2{margin:0 0 6px;font:700 16px var(--display);color:#263c30}.appearance-section p,.appearance-section small{font-size:11px;line-height:1.7;color:#79877e}
.appearance-colors{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.color-control{display:flex;align-items:center;gap:10px}.color-control input[type=color]{width:48px;height:42px;padding:4px;border:1px solid #e0e8e1;border-radius:10px;background:#fff;cursor:pointer}.color-control code{font-size:11px;color:#56665b}
@media(max-width:700px){.contact-location{grid-template-columns:1fr;gap:19px;margin-top:46px}.map-frame{height:270px}.appearance-form{padding:18px 16px}.appearance-section{grid-template-columns:1fr;gap:16px;padding:16px 0 23px}.appearance-colors{grid-template-columns:1fr}.color-control input[type=color]{width:56px}.hero-video iframe{width:200vw;height:112.5vw;min-width:0;min-height:112.5vw;transform:translate(-50%,-50%) scale(1.08)}}


/* Subtle morph-in motion shared by all public content blocks. */
.morph-item{opacity:0;filter:blur(7px);transform:translate3d(0,24px,0) scale(.975);clip-path:inset(0 0 8% 0 round 22px);transition:opacity .72s ease,filter .72s ease,transform .72s cubic-bezier(.2,.72,.2,1),clip-path .85s cubic-bezier(.2,.72,.2,1);transition-delay:var(--morph-delay,0ms);will-change:opacity,transform,filter}
.morph-item.morph-visible{opacity:1;filter:none;transform:translate3d(0,0,0) scale(1);clip-path:inset(0 0 0 0 round 0)}
.program-card,.achievement-grid>article,.catalog-grid>article,.news-card{transition:transform .38s cubic-bezier(.2,.72,.2,1),border-radius .45s ease,box-shadow .38s ease}
.program-card:hover,.achievement-grid>article:hover,.catalog-grid>article:hover,.news-card:hover{transform:translateY(-5px);border-radius:20px;box-shadow:0 18px 40px #10241915}
.news-image,.intro-visual img,.catalog-grid img,.article-cover{transition:transform .55s cubic-bezier(.2,.72,.2,1),border-radius .5s ease}
.news-card:hover .news-image img,.catalog-grid>article:hover img{transform:scale(1.045);border-radius:16px}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.morph-item{opacity:1;filter:none;transform:none;clip-path:none;transition:none}.program-card,.achievement-grid>article,.catalog-grid>article,.news-card,.news-image,.intro-visual img,.catalog-grid img,.article-cover{transition:none}.program-card:hover,.achievement-grid>article:hover,.catalog-grid>article:hover,.news-card:hover{transform:none;box-shadow:none}}

/* Higher contrast and larger primary navigation labels. */
.main-nav{font-size:14px;font-weight:700;color:#fff;gap:clamp(13px,1.7vw,23px)}
.main-nav a{color:#fff;text-shadow:0 1px 1px #06251235;transition:color .2s ease,opacity .2s ease}
.main-nav a:hover,.main-nav a:focus-visible{color:#e5ffb8;opacity:1}
.brand-copy b,.brand-copy small{color:#fff}
.brand-copy small{opacity:.88}
.menu-toggle{color:#fff}
.nav-cta{font-size:12px}
@media(max-width:900px){.main-nav{font-size:13px;gap:11px}.main-nav a{font-size:13px}.nav-cta{font-size:11px}}
@media(max-width:700px){.main-nav{font-size:14px}.main-nav a{font-size:14px}.main-nav a:hover,.main-nav a:focus-visible{color:var(--green,#087b32)}.brand-copy b{font-size:12px}.brand-copy small{font-size:8px}.nav-cta{font-size:10px}}

/* Activity based school gallery albums. */
.gallery-albums{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.gallery-album{min-width:0;overflow:hidden;border:1px solid #e6ece6;border-radius:22px;background:#fff;box-shadow:0 14px 40px #1024190c;transition:transform .3s ease,box-shadow .3s ease}
.gallery-album:hover{transform:translateY(-4px);box-shadow:0 22px 52px #10241918}
.gallery-album>summary{display:grid;grid-template-columns:145px minmax(0,1fr) 34px;gap:17px;align-items:center;padding:14px;cursor:pointer;list-style:none}
.gallery-album>summary::-webkit-details-marker{display:none}
.album-cover{height:112px;position:relative;display:grid;place-items:center;overflow:hidden;border-radius:15px;background:linear-gradient(135deg,var(--green,#087b32),#a7c87b)}
.album-cover img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}
.gallery-album:hover .album-cover img{transform:scale(1.06)}
.album-cover-empty{font-size:27px;color:#fff}
.album-count{position:absolute;left:9px;bottom:9px;padding:5px 9px;border-radius:999px;background:#081c11db;color:#fff;font-size:9px;font-weight:700}
.album-summary{display:grid;gap:7px;min-width:0}
.album-summary small{font-size:9px;letter-spacing:.13em;color:var(--green,#087b32);font-weight:800}
.album-summary strong{font:700 17px/1.25 var(--display);color:var(--ink);overflow-wrap:anywhere}
.album-summary>span{font-size:10px;color:#819087}.album-summary>span b{color:var(--green,#087b32);padding-left:4px}
.album-toggle{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:#eff5ed;color:var(--green,#087b32);font-size:19px;transition:transform .25s ease,background .25s ease}
.gallery-album[open] .album-toggle{transform:rotate(45deg);background:var(--green,#087b32);color:white}
.album-media-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:4px 14px 16px;border-top:1px solid #edf1ed}
.album-media{min-width:0;padding-top:12px}.album-media img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:13px}
.album-media h3{font:700 12px/1.4 var(--display);margin:9px 0 3px}.album-media p{font-size:10px;line-height:1.6;color:#77847b;margin:0}
.album-video{aspect-ratio:4/3;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;border-radius:13px;color:#fff;background:radial-gradient(circle at 80% 15%,#64bb71,transparent 38%),linear-gradient(135deg,#173d2b,#07170e)}
.album-video span{display:grid;place-items:center;width:43px;height:43px;border:1px solid #ffffffaa;border-radius:50%;padding-left:3px}.album-video b{font-size:10px}
@media(max-width:760px){.gallery-albums{grid-template-columns:1fr;gap:15px}.gallery-album>summary{grid-template-columns:110px minmax(0,1fr) 32px;gap:13px;padding:11px}.album-cover{height:94px}.album-summary strong{font-size:15px}.album-media-grid{gap:10px;padding-inline:11px}}
@media(max-width:420px){.album-media-grid{grid-template-columns:1fr}.album-media img,.album-video{aspect-ratio:16/10}}


.album-photo{display:block;width:100%;padding:0;border:0;border-radius:13px;overflow:hidden;background:#edf1ed;cursor:zoom-in}
.album-photo img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;transition:transform .45s ease}
.album-photo:hover img,.album-photo:focus-visible img{transform:scale(1.055)}
.album-photo:focus-visible{outline:3px solid var(--green,#087b32);outline-offset:3px}
.gallery-lightbox{width:min(1000px,calc(100vw - 34px));max-width:1000px;max-height:calc(100dvh - 34px);padding:0;border:0;background:transparent;color:#fff;overflow:visible}
.gallery-lightbox::backdrop{background:#07120ddc;backdrop-filter:blur(7px)}
.lightbox-frame{position:relative;display:grid;justify-items:center;gap:10px;padding:14px;border:1px solid #ffffff24;border-radius:18px;background:#0a1710;box-shadow:0 26px 90px #0008}
.lightbox-frame>img{display:block;max-width:100%;max-height:calc(100dvh - 112px);object-fit:contain;border-radius:10px}
.lightbox-frame>p{margin:0;padding:0 38px 2px;text-align:center;font-size:12px;color:#e3eee6}
.lightbox-close{position:absolute;z-index:2;top:-14px;right:-14px;display:grid;place-items:center;width:40px;height:40px;border:1px solid #ffffff45;border-radius:50%;background:#fff;color:#10241b;font-size:27px;line-height:1;cursor:pointer;box-shadow:0 5px 18px #0004}
.lightbox-close:hover{transform:scale(1.06)}
@media(max-width:600px){.gallery-lightbox{width:calc(100vw - 22px)}.lightbox-frame{padding:8px;border-radius:12px}.lightbox-frame>img{max-height:calc(100dvh - 90px)}.lightbox-close{top:-12px;right:-5px;width:36px;height:36px}}
@media(prefers-reduced-motion:reduce){.album-photo img,.lightbox-close{transition:none}}

/* Comfortable, high contrast reading scale for the public site. */
body:not(.admin-body){font-size:16px;line-height:1.75;color:var(--ink,#17251d);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
body:not(.admin-body) p{font-size:16px;line-height:1.8}
body:not(.admin-body) .announcement{font-size:13px;line-height:1.5}
body:not(.admin-body) .main-nav,body:not(.admin-body) .main-nav a{font-size:15px}
body:not(.admin-body) .nav-cta{font-size:13px}
body:not(.admin-body) .eyebrow{font-size:12px;letter-spacing:.14em}
body:not(.admin-body) .hero-copy>p{font-size:18px;line-height:1.75;max-width:60ch}
body:not(.admin-body) .stats-grid span{font-size:13px;color:#526258}
body:not(.admin-body) .intro-copy p,body:not(.admin-body) .section-heading p,body:not(.admin-body) .page-hero p,body:not(.admin-body) .article-content p{font-size:16px;line-height:1.8;color:#46564b}
body:not(.admin-body) .news-meta,body:not(.admin-body) .news-actions,body:not(.admin-body) .category-pill{font-size:13px}
body:not(.admin-body) .news-card p,body:not(.admin-body) .program-card p,body:not(.admin-body) .achievement-grid p{font-size:14px;line-height:1.7;color:#526158}
body:not(.admin-body) .album-count{font-size:12px}
body:not(.admin-body) .album-summary small{font-size:11px}
body:not(.admin-body) .album-summary>span{font-size:13px;color:#59675e}
body:not(.admin-body) .album-media h3{font-size:14px}
body:not(.admin-body) .album-media p,body:not(.admin-body) .album-video b{font-size:13px;color:#56645a}
body:not(.admin-body) .lightbox-frame>p{font-size:14px}
body:not(.admin-body) .footer-grid,body:not(.admin-body) .footer-grid p,body:not(.admin-body) .footer-grid a{font-size:14px;line-height:1.75}
body:not(.admin-body) .footer-bottom{font-size:12px;line-height:1.6}
body:not(.admin-body) .theme-picker{font-size:12px}
body:not(.admin-body) .contact-form label,body:not(.admin-body) .contact-form input,body:not(.admin-body) .contact-form textarea,body:not(.admin-body) .contact-form select{font-size:15px}
@media(max-width:700px){body:not(.admin-body){font-size:16px}body:not(.admin-body) p,body:not(.admin-body) .intro-copy p,body:not(.admin-body) .section-heading p,body:not(.admin-body) .page-hero p,body:not(.admin-body) .article-content p{font-size:15px}body:not(.admin-body) .hero-copy>p{font-size:16px}body:not(.admin-body) .main-nav,body:not(.admin-body) .main-nav a{font-size:15px}body:not(.admin-body) .nav-cta{font-size:12px}body:not(.admin-body) .brand-copy small{font-size:10px}}
body:not(.admin-body) :where(small,label,a,button,li,time,figcaption,input,select,textarea,dt,dd){font-size:max(13px,1em)}


/* Home achievement story: photo led sliding accordion. */
.achievement-accordion{display:flex;gap:12px;min-height:420px;margin-top:30px}
.achievement-panel{position:relative;isolation:isolate;display:block;flex:1;min-width:0;overflow:hidden;padding:0;border:0;border-radius:18px;background:#1d3b2c;color:#fff;text-align:left;cursor:pointer;box-shadow:0 14px 38px #10241918;transition:flex .65s cubic-bezier(.2,.72,.2,1),border-radius .35s ease,transform .35s ease,box-shadow .35s ease}
.achievement-panel:hover{transform:translateY(-3px);box-shadow:0 20px 44px #10241924}
.achievement-panel.is-active{flex:4}
.achievement-panel>img{position:absolute;z-index:-2;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.2,.72,.2,1)}
.achievement-panel:hover>img,.achievement-panel.is-active>img{transform:scale(1.035)}
.achievement-panel-shade{position:absolute;z-index:-1;inset:0;background:linear-gradient(180deg,#07160b08 5%,#07160b24 38%,#07160be8 100%);transition:background .35s ease}
.achievement-panel-closed{position:absolute;inset:0;display:flex;align-items:center;justify-content:flex-end;gap:13px;padding:20px 14px;flex-direction:column;color:#fff;transition:opacity .25s ease,transform .35s ease}
.achievement-panel-closed>span{font-size:12px;font-weight:700;letter-spacing:.12em;color:#e3efcf}
.achievement-panel-closed>b{font:700 15px/1.3 var(--display);writing-mode:vertical-rl;transform:rotate(180deg);max-height:250px;text-align:left;overflow:hidden}
.achievement-panel.is-active .achievement-panel-closed{opacity:0;pointer-events:none;transform:translateY(10px)}
.achievement-panel-copy{position:absolute;left:clamp(20px,4vw,54px);right:24px;bottom:38px;display:grid;gap:10px;max-width:610px;opacity:0;transform:translateY(14px);transition:opacity .3s ease .1s,transform .45s ease .1s}
.achievement-panel.is-active .achievement-panel-copy{opacity:1;transform:translateY(0)}
.achievement-panel-kicker{font-size:12px;font-weight:800;letter-spacing:.13em;color:#e3efcf}
.achievement-panel-copy>strong{font:700 clamp(23px,3vw,38px)/1.15 var(--display);letter-spacing:-.035em;text-wrap:balance}
.achievement-panel-recipient{font-size:16px;font-weight:700;color:#fff}
.achievement-panel-description{font-size:14px;line-height:1.7;color:#f0f4ef;max-width:55ch}
.achievement-panel-date{font-size:13px;color:#e0e9df}
.achievement-panel-number{position:absolute;top:20px;right:20px;font:700 12px var(--sans);letter-spacing:.12em;color:#fff}
.achievement-panel:focus-visible{outline:3px solid #d8f090;outline-offset:3px}
@media(max-width:760px){.achievement-accordion{min-height:390px;gap:8px}.achievement-panel{border-radius:14px}.achievement-panel.is-active{flex:3.3}.achievement-panel-closed{padding:15px 9px}.achievement-panel-closed>b{font-size:13px}.achievement-panel-copy{left:22px;right:18px;bottom:24px;gap:8px}.achievement-panel-copy>strong{font-size:24px}.achievement-panel-kicker{font-size:10px}.achievement-panel-description{font-size:13px}.achievement-panel-number{top:14px;right:14px}}
@media(max-width:520px){.achievement-accordion{display:grid;grid-template-columns:1fr;min-height:0;gap:9px;margin-top:22px}.achievement-panel,.achievement-panel.is-active{height:78px;min-height:78px;width:100%;flex:auto;border-radius:13px;transition:height .45s cubic-bezier(.2,.72,.2,1),box-shadow .3s ease}.achievement-panel.is-active{height:310px;min-height:310px}.achievement-panel-closed{inset:0;flex-direction:row;justify-content:flex-start;align-items:center;padding:0 17px;gap:14px;background:linear-gradient(90deg,#07160bcf,#07160b12)}.achievement-panel-closed>span{font-size:11px}.achievement-panel-closed>b{writing-mode:initial;transform:none;max-height:none;text-align:left;font-size:14px;line-height:1.25}.achievement-panel.is-active .achievement-panel-closed{opacity:0}.achievement-panel-copy{left:18px;right:16px;bottom:20px}.achievement-panel-copy>strong{font-size:23px}.achievement-panel-recipient{font-size:14px}.achievement-panel-description{font-size:12px}.achievement-panel-number{top:12px;right:12px}}
@media(prefers-reduced-motion:reduce){.achievement-panel,.achievement-panel>img,.achievement-panel-closed,.achievement-panel-copy{transition:none}.achievement-panel:hover{transform:none}}

/* Improve readability of the hero caption over the video. */
.hero-note{font-size:15px;line-height:1.5;gap:17px;text-shadow:0 2px 12px #06150bcc}
.hero-note>span:first-child{font-size:13px;font-weight:700;letter-spacing:.08em}
.hero-note>span:last-child{font-size:15px;font-weight:600}
.hero-note i{height:34px;width:2px}
@media(max-width:700px){.hero-note{font-size:13px;gap:10px;bottom:56px}.hero-note>span:first-child{font-size:11px}.hero-note>span:last-child{font-size:13px;max-width:190px;line-height:1.45}.hero-note i{height:28px}}

/* Larger homepage statistics for quick reading. */
.stats-grid strong{font-size:32px;line-height:1.12;letter-spacing:-.04em}
.stats-grid .percent{font-size:20px}
.stats-grid span:not(.percent){font-size:15px;line-height:1.45;color:#43564a;margin-top:5px}
@media(max-width:700px){.stats-grid strong{font-size:27px}.stats-grid .percent{font-size:18px}.stats-grid span:not(.percent){font-size:13px;line-height:1.4;margin-top:4px}}

/* Stronger second pass for homepage statistics readability. */
.stats-grid strong{font-size:40px;line-height:1.08;letter-spacing:-.045em}
.stats-grid .percent{font-size:24px}
.stats-grid span:not(.percent){font-size:17px;line-height:1.4;font-weight:600;color:#354b3d;margin-top:7px}
@media(max-width:900px){.stats-grid strong{font-size:34px}.stats-grid .percent{font-size:21px}.stats-grid span:not(.percent){font-size:15px}}
@media(max-width:700px){.stats-grid strong{font-size:31px}.stats-grid .percent{font-size:19px}.stats-grid span:not(.percent){font-size:14px;line-height:1.35}}

.visit-time-note{display:flex;align-items:center;gap:12px;padding:14px 16px;border:1px solid #dce8d7;border-radius:10px;background:#f4f8ef;color:#315b42}
.visit-time-note>span:first-child{font-size:22px;line-height:1;color:#4d8054}
.visit-time-note>span:last-child{display:grid;gap:2px}
.visit-time-note b{font-size:14px}
.visit-time-note small{font-size:13px;color:#586a5c}

/* Keep the YouTube hero above its poster image and clearly visible below the text wash. */
.hero-photo{z-index:0}
.hero-video{z-index:1}
.hero-video iframe{opacity:.9;filter:brightness(1.08) saturate(1.08)}
.hero-video~.hero-wash{z-index:2}
.hero-video~.hero-content,.hero-video~.hero-scroll{z-index:3}
body[data-theme] .hero-wash{background:linear-gradient(90deg,rgba(12,37,31,.76) 0%,rgba(16,43,36,.58) 40%,rgba(16,43,36,.14) 100%),linear-gradient(0deg,rgba(14,37,30,.3),transparent 45%)}
@media(max-width:700px){.hero-video iframe{opacity:.88}}

/* Navbar school identity hierarchy: the school name is the primary label. */
.site-header .brand-copy b{font-size:16px;line-height:1.25;letter-spacing:.035em}
.site-header .brand-copy small{font-size:10px;line-height:1.35;letter-spacing:.09em}
@media(max-width:700px){.site-header .brand-copy b{font-size:15px}.site-header .brand-copy small{font-size:9px}}

/* Uploaded school branding and welcome image. */
.brand-mark.brand-mark-image{width:auto;min-width:0;max-width:140px;height:48px;padding:0;overflow:hidden;background:transparent;color:inherit;border-radius:0}
.brand-mark.brand-mark-image img{display:block;width:auto;max-width:100%;height:100%;object-fit:contain}
.admin-sidebar .brand-mark.brand-mark-image{width:40px;height:40px;max-width:40px;border-radius:8px;background:transparent}
@media(max-width:700px){.site-header .brand-mark.brand-mark-image{max-width:75px;height:38px}}
.welcome-card.has-image{padding:0 34px 39px}
.welcome-image{margin:0 -34px 25px;overflow:hidden;border-radius:18px 18px 0 0;background:#eff4eb}
.welcome-image img{display:block;width:100%;height:320px;object-fit:contain}
.welcome-card.has-image .welcome-close{z-index:1;top:12px;right:12px;display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:#ffffffed;color:#203a2a;box-shadow:0 3px 12px #10291d24}
.branding-upload{display:grid;gap:13px;min-width:0}
.branding-preview,.welcome-image-preview{display:grid;place-items:center;min-height:112px;padding:14px;border:1px dashed #cbd8ce;border-radius:12px;background:#f7f9f5;color:#69786d;font-size:13px}
.branding-preview img{display:block;max-width:min(100%,320px);max-height:90px;object-fit:contain}
.welcome-image-preview img{display:block;width:100%;max-height:190px;object-fit:cover;border-radius:8px}
.branding-upload-inline{grid-template-columns:64px minmax(0,1fr);align-items:center}
.favicon-preview{width:56px;height:56px;display:grid;place-items:center;border:1px solid #e0e8e1;border-radius:12px;background:#f7f9f5;color:#748177;font-size:25px;overflow:hidden}
.favicon-preview img{width:32px;height:32px;object-fit:contain}
.admin-check{display:flex;align-items:center;gap:8px;color:#4b5e51;font-size:13px}
.admin-check input{accent-color:#245742}
@media(max-width:650px){.welcome-card.has-image{padding:0 25px 34px}.welcome-image{margin:0 -25px 22px}.welcome-image img{height:240px}.branding-upload-inline{grid-template-columns:50px minmax(0,1fr)}}

/* Give the uploaded navbar logo a stable, generous display box. */
.site-header .brand-mark.brand-mark-image{flex:0 0 60px;width:60px;height:60px;max-width:60px;overflow:visible}
.site-header .brand-mark.brand-mark-image img{width:100%;height:100%;max-width:none;object-fit:contain}
@media(max-width:640px){.site-header .brand-mark.brand-mark-image{flex-basis:46px;width:46px;height:46px;max-width:46px}}

/* Elegant editorial cards for facility, achievement, news, and agenda listings. */
.page-grid-listing{grid-template-columns:minmax(0,1fr)!important}
.page-grid-listing .page-aside{display:none!important}
.editorial-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:28px}
.editorial-card{min-width:0;overflow:hidden;background:#fff;border:1px solid #e8eee8;border-radius:18px;box-shadow:0 12px 35px #193a2610;transition:transform .35s ease,box-shadow .35s ease,border-color .35s ease}
.editorial-card:hover{transform:translateY(-6px);border-color:#cfddce;box-shadow:0 22px 44px #193a2618}
.editorial-media{height:218px;display:block;position:relative;overflow:hidden;background:#edf2ec}
.editorial-media img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .55s ease}
.editorial-card:hover .editorial-media img{transform:scale(1.055)}
.editorial-tag{position:absolute;left:16px;top:16px;max-width:calc(100% - 32px);padding:8px 12px;border:1px solid #ffffffa8;border-radius:999px;background:#fffffff2;color:#285441;font:800 10px/1.2 var(--display);letter-spacing:.055em;text-transform:uppercase}
.editorial-copy{padding:21px 21px 19px}
.editorial-meta{display:block;color:#748278;font-size:13px;font-weight:700;line-height:1.5}
.editorial-copy h3{margin:8px 0 10px;color:#1e382c;font:750 21px/1.32 var(--display);letter-spacing:-.035em}
.editorial-copy h3 a:hover{color:#397653}
.editorial-copy>p{margin:0;color:#64736a;font-size:15px;line-height:1.75;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}
.editorial-copy>.editorial-meta{margin-top:16px;padding-top:13px;border-top:1px solid #edf0eb}
.editorial-copy .news-actions{margin-top:17px;padding-top:13px}
.news-listing-grid .editorial-copy h3{min-height:56px}
@media(max-width:1000px){.editorial-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:19px}.editorial-media{height:205px}}
@media(max-width:620px){.editorial-grid{grid-template-columns:1fr;gap:17px;margin-top:20px}.editorial-media{height:225px}.editorial-copy{padding:19px}.editorial-copy h3{font-size:20px}.news-listing-grid .editorial-copy h3{min-height:0}}
@media(prefers-reduced-motion:reduce){.editorial-card,.editorial-media img{transition:none}.editorial-card:hover{transform:none}}

/* Article discussion opens in an accessible, focused lightbox. */
.comments-intro{display:flex;align-items:center;justify-content:space-between;gap:22px;padding:27px 0;border-top:1px solid var(--line)}
.comments-intro h2{margin:0 0 7px;font:700 30px/1.2 var(--display);letter-spacing:-.04em}
.comments-intro h2 em,.comments-lightbox-heading h2 em{color:#49805a}
.comments-intro p{margin:0;color:#728078;font-size:15px}
.comments-lightbox{width:min(720px,calc(100vw - 32px));max-width:720px;max-height:calc(100dvh - 32px);padding:0;border:0;border-radius:22px;background:transparent;color:var(--ink);overflow:visible}
.comments-lightbox::backdrop{background:#07140edb;backdrop-filter:blur(8px)}
.comments-lightbox-panel{position:relative;max-height:calc(100dvh - 32px);overflow:auto;padding:34px;background:#fff;border:1px solid #ffffffb5;border-radius:22px;box-shadow:0 30px 100px #0005}
.comments-lightbox-close{position:sticky;z-index:2;float:right;top:0;margin:-14px -14px 0 10px;width:42px;height:42px;border:0;border-radius:50%;background:#f0f4ed;color:#264936;font-size:29px;line-height:1;cursor:pointer}
.comments-lightbox-heading{padding-right:35px}
.comments-lightbox-heading h2{margin:10px 0;font:750 35px/1.15 var(--display);letter-spacing:-.05em}
.comments-lightbox-heading p{margin:0;color:#69776e;font-size:15px;line-height:1.65}
.comments-form{margin:23px 0 27px}
.comments-form .btn{justify-self:start}
.comments-lightbox .comments-list{border-top:1px solid #e9eee8}
.comments-lightbox .comments-list>article{padding:17px 0;border-bottom:1px solid #e9eee8}
.comments-lightbox .comments-list>article>b{font-size:15px;color:#264936}
.comments-lightbox .comments-list>article>small{margin-left:10px;color:#89938b;font-size:12px}
.comments-lightbox .comments-list>article>p{margin:7px 0 0;color:#536259;font-size:15px;line-height:1.7}
@media(max-width:600px){.comments-intro{align-items:flex-start;flex-direction:column}.comments-intro h2{font-size:27px}.comments-lightbox{width:calc(100vw - 20px);max-height:calc(100dvh - 20px)}.comments-lightbox-panel{max-height:calc(100dvh - 20px);padding:25px 20px;border-radius:17px}.comments-lightbox-close{margin:-8px -7px 0 8px;width:38px;height:38px}.comments-lightbox-heading h2{font-size:30px}}

/* Footer logo sizing and contrast, independent from the navbar logo. */
.footer-brand{display:inline-flex;align-items:center;gap:15px;max-width:100%;min-width:0}
.footer-brand .brand-mark.brand-mark-image{display:flex;flex:0 0 76px;width:76px;height:76px;max-width:76px;min-width:0;padding:8px;overflow:hidden;border:1px solid #ffffff28;border-radius:16px;background:#ffffff;color:inherit}
.footer-brand .brand-mark.brand-mark-image img{display:block;width:100%;height:100%;max-width:none;object-fit:contain}
.footer-brand .brand-copy{min-width:0}
.footer-brand .brand-copy b{display:block;max-width:100%;font-size:16px;line-height:1.35;letter-spacing:.015em;overflow-wrap:anywhere}
.footer-brand .brand-copy small{margin-top:4px;font-size:10px;line-height:1.4;letter-spacing:.09em;color:#c1d0c4}
@media(max-width:640px){.footer-brand{gap:12px}.footer-brand .brand-mark.brand-mark-image{flex-basis:62px;width:62px;height:62px;max-width:62px;padding:6px;border-radius:13px}.footer-brand .brand-copy b{font-size:15px}}

/* Prestasi page: a polished, searchable school achievement wall. */
.achievement-showcase{max-width:1100px;margin:0 auto}
.achievement-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:32px}
.achievement-heading h2{margin:12px 0 8px;font:750 clamp(34px,5vw,52px)/1.08 var(--display);letter-spacing:-.06em;color:#173b2b}
.achievement-heading h2 em,.achievement-wall-heading h3 em{color:#4b865e}
.achievement-heading p{max-width:600px;margin:0;color:#68796d;font-size:17px}
.achievement-count{display:flex;align-items:center;gap:12px;padding:12px 17px;border:1px solid #e3ebe1;border-radius:15px;background:#f7faf4;color:#315a40;flex:none}
.achievement-count strong{font:800 32px/1 var(--display);letter-spacing:-.06em}
.achievement-count span{font-size:12px;font-weight:700;line-height:1.25}
.achievement-filters{display:grid;grid-template-columns:minmax(220px,1fr) 190px 150px auto;gap:10px;margin-bottom:24px}
.achievement-filters label{min-width:0}
.achievement-filters input,.achievement-filters select{width:100%;height:50px;padding:0 15px;border:1px solid #dfe8df;border-radius:12px;background:#fff;color:#304a39;font-size:14px;outline:none}
.achievement-filters input:focus,.achievement-filters select:focus{border-color:#528764;box-shadow:0 0 0 3px #52876420}
.achievement-search{position:relative}
.achievement-search>span{position:absolute;left:15px;top:50%;transform:translateY(-54%);color:#587f61;font-size:24px;pointer-events:none}
.achievement-search input{padding-left:44px}
.achievement-reset{padding:0 17px;border:1px solid #dfe8df;border-radius:12px;background:#f5f8f2;color:#3e6c4b;font-weight:700;cursor:pointer}
.achievement-reset:hover{background:#e9f1e5}
.achievement-feature{display:grid;grid-template-columns:1.12fr .88fr;min-height:390px;overflow:hidden;border:1px solid #e1e9df;border-radius:24px;background:#fff;box-shadow:0 18px 55px #15382312}
.achievement-feature-image{position:relative;min-height:390px;overflow:hidden;background:#e9efe8}
.achievement-feature-image img,.achievement-wall-image img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .65s ease}
.achievement-feature:hover .achievement-feature-image img,.achievement-wall-card:hover .achievement-wall-image img{transform:scale(1.045)}
.achievement-feature-overlay{position:absolute;inset:0;background:linear-gradient(0deg,#102e20a8,transparent 58%),linear-gradient(90deg,#102e2015,transparent)}
.achievement-feature-label{position:absolute;left:22px;bottom:20px;padding:9px 13px;border:1px solid #ffffff8a;border-radius:999px;background:#ffffffed;color:#28543a;font:800 10px/1.2 var(--display);letter-spacing:.1em}
.achievement-feature-copy{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:39px clamp(26px,4vw,55px)}
.achievement-level-chip{display:inline-flex;align-items:center;padding:8px 12px;border-radius:999px;background:#edf5e8;color:#3c744b;font-size:11px;font-weight:800;letter-spacing:.07em;text-transform:uppercase}
.achievement-feature-copy h3{margin:19px 0 10px;color:#1a3828;font:800 clamp(25px,3vw,36px)/1.2 var(--display);letter-spacing:-.045em}
.achievement-feature-copy>p{margin:0;color:#6b796e;font-size:15px;line-height:1.8}
.achievement-recipient{display:flex;align-items:center;gap:12px;margin:23px 0 18px;padding:14px 16px;border:1px solid #e8eee5;border-radius:14px;background:#fafcf8;color:#5d8b57}
.achievement-recipient>span:first-child{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:#e7f1dc;font-size:18px}
.achievement-recipient small,.achievement-recipient b{display:block}
.achievement-recipient small{margin-bottom:3px;color:#8b978a;font-size:9px;font-weight:800;letter-spacing:.1em}
.achievement-recipient b{color:#365541;font-size:14px}
.achievement-feature-copy time{margin-top:auto;color:#869187;font-size:12px;font-weight:700}
.achievement-wall-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin:56px 0 22px}
.achievement-wall-heading h3{margin:10px 0 0;color:#203c2c;font:750 31px/1.2 var(--display);letter-spacing:-.045em}
.achievement-wall-heading>[data-achievement-result]{color:#768279;font-size:13px;font-weight:700}
.achievement-wall{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.achievement-wall-card{min-width:0;overflow:hidden;border:1px solid #e3eae1;border-radius:18px;background:#fff;box-shadow:0 10px 30px #1738240b;transition:transform .35s ease,box-shadow .35s ease}
.achievement-wall-card:hover{transform:translateY(-5px);box-shadow:0 18px 42px #17382418}
.achievement-wall-image{height:205px;position:relative;overflow:hidden;background:#eaf0e9}
.achievement-wall-image:after{position:absolute;inset:45% 0 0;content:"";background:linear-gradient(0deg,#102d20a0,transparent);pointer-events:none}
.achievement-wall-image>span,.achievement-wall-image>b{position:absolute;z-index:1;top:14px;padding:8px 11px;border:1px solid #ffffff89;border-radius:999px;background:#ffffffed;color:#315d3e;font-size:10px;font-weight:800;letter-spacing:.065em;text-transform:uppercase}
.achievement-wall-image>span{left:14px}.achievement-wall-image>b{right:14px}
.achievement-wall-copy{padding:19px}
.achievement-wall-copy>span{color:#829087;font-size:11px;font-weight:800;letter-spacing:.07em}
.achievement-wall-copy h3{margin:8px 0;color:#233f30;font:750 20px/1.3 var(--display);letter-spacing:-.03em}
.achievement-wall-copy>p{margin:0;color:#6c796f;font-size:14px;line-height:1.7;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.achievement-feature[hidden],.achievement-wall-card[hidden]{display:none}
.achievement-feature-image,.achievement-wall-image{display:block;color:inherit}
a.achievement-feature-image img,a.achievement-wall-image img{transition:transform .65s ease}
a.achievement-feature-image:hover img,a.achievement-wall-image:hover img{transform:scale(1.04)}
.achievement-detail{max-width:860px;margin:0 auto}
.achievement-detail-cover{margin:20px 0 0}
.achievement-detail-cover img{display:block;width:100%;max-height:460px;object-fit:cover;border-radius:18px}
.achievement-detail-meta{display:flex;flex-wrap:wrap;gap:8px 18px;margin:14px 0 4px;color:#5c6f61;font-size:12.5px;font-weight:700}
.achievement-detail-body{margin:18px 0 8px;color:#33473c;font-size:16.5px;line-height:1.9;overflow-wrap:anywhere}
.achievement-detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:16px}
.achievement-detail-card{overflow:hidden;border:1px solid #e2e9e0;border-radius:14px;background:#fff}
.achievement-detail-card img{display:block;width:100%;height:150px;object-fit:cover}
.achievement-detail-card div{padding:12px 14px}
.achievement-detail-card h3{margin:0;font-size:15px}
@media(max-width:900px){.achievement-detail-grid{grid-template-columns:minmax(0,1fr)}}
.achievement-wall-copy>div{margin-top:15px;padding-top:13px;border-top:1px solid #edf1eb;color:#527b54;font-size:13px;font-weight:700}
.achievement-no-results{padding:35px;text-align:center;border:1px dashed #cbd9cb;border-radius:16px;color:#64756a}
@media(max-width:900px){.achievement-filters{grid-template-columns:minmax(190px,1fr) 1fr 1fr}.achievement-reset{height:48px;grid-column:1/-1}.achievement-wall{grid-template-columns:repeat(2,minmax(0,1fr))}.achievement-feature{grid-template-columns:1fr 1fr}.achievement-feature-image{min-height:345px}}
@media(max-width:600px){.achievement-heading{align-items:flex-start;flex-direction:column;margin-bottom:23px}.achievement-heading h2{font-size:38px}.achievement-heading p{font-size:15px}.achievement-count{padding:9px 13px}.achievement-count strong{font-size:27px}.achievement-filters{grid-template-columns:1fr 1fr;gap:8px}.achievement-search{grid-column:1/-1}.achievement-filters input,.achievement-filters select{height:47px;font-size:13px}.achievement-reset{grid-column:1/-1;height:45px}.achievement-feature{grid-template-columns:1fr}.achievement-feature-image{min-height:250px;height:250px}.achievement-feature-copy{padding:24px}.achievement-feature-copy h3{margin-top:15px;font-size:27px}.achievement-wall-heading{align-items:flex-start;flex-direction:column;margin:40px 0 18px}.achievement-wall-heading h3{font-size:27px}.achievement-wall{grid-template-columns:1fr;gap:15px}.achievement-wall-image{height:230px}}
@media(prefers-reduced-motion:reduce){.achievement-feature-image img,.achievement-wall-image img,.achievement-wall-card{transition:none}.achievement-wall-card:hover{transform:none}}

/* School news page inspired by a newsroom layout with a featured story and reader picks. */
.news-showcase{max-width:1160px;margin:0 auto}
.news-showcase-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:22px;margin-bottom:27px}
.news-showcase-heading h2{margin:11px 0 7px;font:750 clamp(36px,5vw,52px)/1.08 var(--display);letter-spacing:-.06em;color:#173b2b}
.news-showcase-heading h2 em{color:#4c865e}
.news-showcase-heading p{margin:0;color:#6a796f;font-size:17px}
.news-count{display:flex;align-items:center;gap:12px;padding:12px 17px;border:1px solid #e3ebe1;border-radius:15px;background:#f7faf4;color:#315a40;flex:none}
.news-count strong{font:800 32px/1 var(--display);letter-spacing:-.06em}
.news-count span{font-size:12px;font-weight:700;line-height:1.25}
.news-toolbar{display:grid;gap:14px;margin-bottom:25px}
.news-search{position:relative;display:block;max-width:460px}
.news-search>span{position:absolute;left:15px;top:50%;transform:translateY(-54%);color:#568060;font-size:24px;pointer-events:none}
.news-search input{width:100%;height:48px;padding:0 16px 0 44px;border:1px solid #dfe8df;border-radius:12px;background:#fff;color:#304a39;font-size:14px;outline:none}
.news-search input:focus{border-color:#528764;box-shadow:0 0 0 3px #52876420}
.news-category-filters{display:flex;flex-wrap:wrap;gap:8px}
.news-category-filters button{padding:9px 15px;border:1px solid #dfe7df;border-radius:999px;background:#fff;color:#607166;font-size:13px;font-weight:700;cursor:pointer;transition:.2s ease}
.news-category-filters button:hover{border-color:#77a47b;color:#2d6541}
.news-category-filters button.is-active{border-color:#245c3b;background:#245c3b;color:#fff;box-shadow:0 5px 13px #245c3b25}
.news-editorial-layout{display:grid;grid-template-columns:minmax(0,1fr) 285px;align-items:start;gap:27px}
.news-editorial-main{min-width:0}
.news-feature{display:grid;grid-template-columns:1.08fr .92fr;overflow:hidden;border:1px solid #e3eae2;border-radius:20px;background:#ffffff;box-shadow:0 15px 42px #18382310}
.news-feature[hidden],.news-latest-card[hidden]{display:none}
.news-feature-image{position:relative;display:block;min-height:350px;overflow:hidden;background:#e8eee7}
.news-feature-image:after{position:absolute;inset:55% 0 0;content:"";background:linear-gradient(0deg,#102d20a0,transparent);pointer-events:none}
.news-feature-image img,.news-latest-image img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .6s ease}
.news-feature:hover .news-feature-image img,.news-latest-card:hover .news-latest-image img{transform:scale(1.045)}
.news-feature-image>span{position:absolute;z-index:1;left:18px;bottom:17px;padding:8px 12px;border:1px solid #ffffff9c;border-radius:999px;background:#ffffffed;color:#315d3e;font-size:10px;font-weight:800;letter-spacing:.08em}
.news-feature-copy{display:flex;flex-direction:column;align-items:flex-start;padding:28px 25px 20px}
.news-feature-copy .news-meta{margin:0 0 5px;color:#66806f;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.news-feature-copy h3{margin:7px 0 10px;color:#1d3829;font:800 clamp(23px,2.4vw,31px)/1.22 var(--display);letter-spacing:-.045em}
.news-feature-copy h3 a:hover,.news-latest-copy h4 a:hover{color:#438154}
.news-feature-copy>p{margin:0;color:#6a786e;font-size:14px;line-height:1.75}
.news-read-more{display:inline-flex;gap:12px;align-items:center;margin:16px 0;color:#34734a;font-size:13px;font-weight:800}
.news-feature-copy .news-actions{width:100%;margin-top:auto;padding-top:13px}
.news-latest-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:15px;margin:38px 0 17px}
.news-latest-heading h3{margin:0;color:#203c2c;font:750 27px/1.2 var(--display);letter-spacing:-.04em}
.news-latest-heading h3 em{color:#4b865e}
.news-latest-heading>span{color:#77847a;font-size:12px;font-weight:700}
.news-latest-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}
.news-latest-card{min-width:0;overflow:hidden;border:1px solid #e4ebe3;border-radius:16px;background:#fff;box-shadow:0 9px 26px #1838230b;transition:transform .32s ease,box-shadow .32s ease}
.news-latest-card:hover{transform:translateY(-4px);box-shadow:0 16px 34px #18382316}
.news-latest-image{height:175px;position:relative;display:block;overflow:hidden;background:#e8eee7}
.news-latest-image>span{position:absolute;top:12px;left:12px;padding:7px 10px;border:1px solid #ffffff9c;border-radius:999px;background:#fffffff0;color:#315d3e;font-size:9px;font-weight:800;letter-spacing:.05em;text-transform:uppercase}
.news-latest-copy{padding:16px}
.news-latest-copy>time{color:#818e84;font-size:11px;font-weight:700}
.news-latest-copy h4{margin:7px 0 8px;color:#203b2c;font:750 18px/1.32 var(--display);letter-spacing:-.03em}
.news-latest-copy>p{margin:0;color:#6c796f;font-size:13px;line-height:1.65;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.news-latest-copy .news-actions{margin-top:14px;padding-top:11px}
.news-popular{position:sticky;top:20px;padding:22px 20px;border:1px solid #e2eae1;border-radius:18px;background:linear-gradient(160deg,#f8fbf5,#fff 75%);box-shadow:0 12px 32px #1838230b}
.news-popular>.eyebrow{font-size:9px}
.news-popular>h3{margin:10px 0 15px;color:#203c2c;font:750 23px/1.2 var(--display);letter-spacing:-.04em}
.news-popular>h3 em{color:#4b865e;font-family:var(--serif);font-weight:400}
.news-popular-item{display:grid;grid-template-columns:33px minmax(0,1fr) 15px;gap:10px;align-items:start;padding:14px 0;border-top:1px solid #e7eee5}
.news-popular-number{color:#9ab18c;font:800 18px/1 var(--display)}
.news-popular-item small,.news-popular-item b{display:block}
.news-popular-item small{margin-bottom:5px;color:#819086;font-size:9px;font-weight:800;letter-spacing:.05em;text-transform:uppercase}
.news-popular-item b{color:#2b4434;font-size:13px;line-height:1.45}
.news-popular-arrow{color:#65936a;font-size:14px}
.news-popular-item:hover b{color:#438154}
.news-popular-cta{display:block;margin-top:9px;padding:14px;border-radius:12px;background:#eaf2e4;color:#586b5a;font-size:11px;line-height:1.5}
.news-popular-cta b{display:block;margin-top:5px;color:#34734a;font-size:12px}
.news-empty-filter{padding:30px;text-align:center;border:1px dashed #cbd9cb;border-radius:16px;color:#64756a}
@media(max-width:980px){.news-editorial-layout{grid-template-columns:minmax(0,1fr) 245px;gap:17px}.news-feature{grid-template-columns:1fr}.news-feature-image{min-height:285px;height:285px}.news-feature-copy{padding:22px}.news-feature-copy .news-actions{margin-top:18px}.news-latest-grid{grid-template-columns:1fr}}
@media(max-width:700px){.news-showcase-heading{align-items:flex-start;flex-direction:column}.news-showcase-heading h2{font-size:39px}.news-showcase-heading p{font-size:15px}.news-count{padding:9px 13px}.news-count strong{font-size:27px}.news-editorial-layout{grid-template-columns:1fr}.news-popular{position:static;order:2}.news-feature-image{height:230px;min-height:230px}.news-feature-copy{padding:19px}.news-feature-copy h3{font-size:24px}.news-latest-heading{margin:30px 0 14px}.news-latest-heading h3{font-size:24px}.news-latest-grid{grid-template-columns:1fr}.news-latest-image{height:210px}.news-category-filters{flex-wrap:nowrap;overflow:auto;padding-bottom:5px}.news-category-filters button{white-space:nowrap}}
@media(prefers-reduced-motion:reduce){.news-feature-image img,.news-latest-image img,.news-latest-card,.news-category-filters button{transition:none}.news-latest-card:hover{transform:none}}

/* Editorial article detail layout with a strong cover image and reading column. */
.article-page{background:#fff}
.article-container{max-width:1160px}
.article-top{padding:36px 0 0;background:linear-gradient(180deg,#f5f8f2 0,#fff 100%)}
.article-breadcrumb{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:27px;color:#829087;font-size:13px}
.article-breadcrumb a{color:#52765a;font-weight:700}
.article-breadcrumb a:hover{color:#245c3b}
.article-header{max-width:940px;margin:0 auto 28px;text-align:center}
.article-category{display:inline-flex;padding:8px 13px;border:1px solid #dce9d7;border-radius:999px;background:#edf5e9;color:#367149;font-size:11px;font-weight:800;letter-spacing:.09em;text-transform:uppercase}
.article-byline{display:flex;justify-content:center;align-items:center;gap:9px;margin:15px 0 12px;color:#758279;font-size:13px;font-weight:700}
.article-header h1{margin:0;color:#172f22;font:800 clamp(36px,5.4vw,62px)/1.08 var(--display);letter-spacing:-.065em;text-wrap:balance}
.article-header>p{max-width:760px;margin:16px auto 0;color:#68776d;font-size:18px;line-height:1.7}
.article-cover-frame{position:relative;max-width:1040px;height:clamp(300px,52vw,560px);margin:0 auto;overflow:hidden;border-radius:24px 24px 0 0;background:#e8eee7;box-shadow:0 20px 55px #193b2516}
.article-cover-frame .article-cover{display:block;width:100%;height:100%;max-height:none;margin:0;object-fit:cover;transition:transform .65s ease}
.article-cover-frame:hover .article-cover{transform:scale(1.025)}
.article-cover-frame:after{position:absolute;inset:55% 0 0;content:"";background:linear-gradient(0deg,#092014a8,transparent);pointer-events:none}
.article-cover-frame figcaption{position:absolute;z-index:1;left:24px;bottom:20px;color:#fff;font-size:13px;font-weight:700;text-shadow:0 2px 12px #0008}
.article-cover-frame figcaption span{color:#e5eee1;font-weight:500}
.article-cover-placeholder{display:grid;place-items:center;max-width:1040px;height:320px;margin:0 auto;border-radius:24px 24px 0 0;background:radial-gradient(circle at 70% 30%,#d9eac1 0,transparent 30%),linear-gradient(135deg,#1e5539,#83a77b);color:#f5f8ec;font-size:74px}
.article-reading-section{padding:0 0 95px}
.article-reading-grid{display:grid;grid-template-columns:minmax(0,760px) minmax(220px,285px);justify-content:center;align-items:start;gap:55px}
.article-content{min-width:0;padding-top:25px}
.article-engagement{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 0 18px;border-bottom:1px solid #e8eee7;color:#708076;font-size:12px}
.article-engagement>span>b{color:#438052;text-transform:uppercase;letter-spacing:.07em}
.article-engagement>span>i{margin:0 5px;color:#a2ada3;font-style:normal}
.article-engagement-actions{display:flex;gap:16px}
.article-engagement-actions form{margin:0}
.article-action{padding:8px 11px;border:1px solid #e3ebe1;border-radius:999px;background:#f8faf6;color:#406c4b;font-size:12px;font-weight:700;cursor:pointer;transition:.2s ease}
.article-action:hover{border-color:#9dbb98;background:#eff6eb}
.article-action.liked{color:#d14a4a}
.article-body{padding:28px 0 32px;color:#35473a;font-size:18px;line-height:1.95;overflow-wrap:anywhere}
.article-body p{margin:0 0 1em;white-space:normal}
.article-body p:first-child:first-letter{float:left;padding:7px 9px 0 0;color:#2f7544;font:800 64px/.8 var(--serif)}
.article-richtext h2,.article-richtext h3,.article-richtext h4{margin:1.4em 0 .6em;color:#1d3928;line-height:1.3}
.article-richtext img{max-width:100%;height:auto;border-radius:12px;margin:12px 0}
.article-richtext figure{margin:16px 0}
.article-richtext table{width:100%;border-collapse:collapse;margin:16px 0;font-size:15px}
.article-richtext th,.article-richtext td{border:1px solid #dfe7dd;padding:8px 10px;text-align:left}
.article-richtext blockquote{margin:16px 0;padding:12px 18px;border-left:4px solid #4a8156;background:#f4f8f2;border-radius:0 12px 12px 0}
.article-richtext ul,.article-richtext ol{margin:0 0 1em 1.4em}
.article-richtext a{color:#2f7544;text-decoration:underline}
.article-tags{display:flex;flex-wrap:wrap;gap:8px;margin:4px 0 8px}
.article-tags span{display:inline-block;padding:5px 12px;border:1px solid #dfe7dd;border-radius:999px;background:#f4f8f2;color:#2f7544;font-size:12px;font-weight:700}
.article-share{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin:6px 0 10px;padding:14px 16px;border:1px solid #e3eae3;border-radius:14px;background:#f8faf6}
.article-share>span{font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:#5c6f61}
.article-share>div{display:flex;flex-wrap:wrap;gap:8px}
.article-share .article-action b{font-weight:700}
.article-share .article-action:hover{border-color:#9dbb98;background:#eff6eb}
.achievement-richtext{font-size:13px;line-height:1.7;color:inherit}
.achievement-richtext img{max-width:100%;height:auto;border-radius:10px;margin:8px 0}
.achievement-richtext table{width:100%;border-collapse:collapse;font-size:12px}
.achievement-richtext th,.achievement-richtext td{border:1px solid #dfe7dd;padding:6px 8px}
.spmb-cover{margin:18px 0 0}
.spmb-cover img{display:block;width:100%;max-height:420px;object-fit:cover;border-radius:16px}
.spmb-hero h2{margin:10px 0 6px}
.spmb-alert{display:flex;align-items:center;gap:12px;margin:18px 0 0;padding:13px 16px;border:1px solid #bfe3c6;border-radius:14px;background:#eef7ec;color:#205c33}
.spmb-alert span{font-weight:800}
.spmb-alert p{margin:0;flex:1;font-size:13px}
.spmb-alert .btn{white-space:nowrap}
.spmb-grid{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:18px;margin-top:18px}
.spmb-card{padding:22px;border:1px solid var(--line);border-radius:16px;background:#fff;box-shadow:0 8px 28px #183c2a08}
.spmb-card h3{margin:0 0 4px;font:750 20px/1.3 var(--display);color:#1d3928}
.spmb-card h4{margin:18px 0 8px;font:750 14px var(--display);color:#254d3c}
.spmb-card h4:first-of-type{margin-top:0}
.spmb-card ul,.spmb-card ol{margin:0 0 6px 1.3em;padding:0;color:#4d5c52;font-size:13.5px;line-height:1.8}
.spmb-table-wrap{overflow-x:auto}
.spmb-table{width:100%;border-collapse:collapse;font-size:12.5px}
.spmb-table th,.spmb-table td{padding:9px 10px;border-bottom:1px solid #edf1ec;text-align:left;vertical-align:top}
.spmb-table thead th{background:#f4f8f2;color:#254d3c;font-size:11px;letter-spacing:.04em;text-transform:uppercase}
.spmb-table tr.is-open td{background:#f2f9f0}
.spmb-table small{color:#7c8a7f}
.spmb-badge{display:inline-block;padding:3px 11px;border-radius:999px;background:#ecefec;color:#5c6f61;font-size:11px;font-weight:800}
.spmb-badge.open{background:#dff0d8;color:#23713a}
.spmb-side{display:flex;flex-direction:column;gap:18px}
.spmb-side .spmb-card p{font-size:13px;color:#4d5c52}
.spmb-wa-full{width:100%;margin-top:8px}
.spmb-contact span{display:block;margin-top:10px;font-size:12.5px;color:#5c6f61}
@media(max-width:900px){.spmb-grid{grid-template-columns:minmax(0,1fr)}}
.spmb-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}
.spmb-wa{position:relative}
.spmb-wa-split{display:inline-flex;align-items:stretch;gap:0}
.spmb-wa-split>.btn{border-top-right-radius:0;border-bottom-right-radius:0}
.spmb-wa-split .spmb-wa summary{border-top-left-radius:0;border-bottom-left-radius:0;margin-left:-1px}
.spmb-wa summary{list-style:none;cursor:pointer}
.spmb-wa summary{list-style:none;cursor:pointer}
.spmb-wa summary::-webkit-details-marker{display:none}
.spmb-wa>div{position:absolute;z-index:5;top:calc(100% + 8px);left:0;min-width:240px;padding:10px;border:1px solid var(--line);border-radius:12px;background:#fff;box-shadow:0 14px 40px #14252222}
.spmb-wa>div a{display:block;padding:8px 10px;border-radius:8px;font-size:13px;font-weight:700;color:var(--green)}
.spmb-wa>div a:hover{background:#f1f6ef}
.article-sidebar{position:sticky;top:24px;padding-top:28px}
.article-sidebar-card{padding:23px;border:1px solid #e2eadf;border-radius:18px;background:linear-gradient(150deg,#f6faf2,#fff 76%);box-shadow:0 12px 32px #153a240b}
.article-sidebar-card h2{margin:13px 0 9px;color:#1d3928;font:750 25px/1.18 var(--display);letter-spacing:-.045em}
.article-sidebar-card h2 em{color:#4a8156;font-family:var(--serif);font-weight:400}
.article-sidebar-card p{margin:0 0 17px;color:#6b786e;font-size:14px;line-height:1.7}
.article-sidebar-card .btn{font-size:12px}
.article-back-link{display:inline-flex;margin-top:18px;color:#4b7655;font-size:13px;font-weight:700}
.article-back-link:hover{color:#1e5733}
.comments{margin-top:10px}
.article-related{max-width:1040px;margin:62px auto 0;padding-top:32px;border-top:1px solid #e7ede5}
.article-related-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:20px}
.article-related-heading h2{margin:8px 0 0;color:#1e3a29;font:750 31px/1.2 var(--display);letter-spacing:-.045em}
.article-related-heading h2 em{color:#4a8156}
.article-related-heading>a{color:#3d7348;font-size:13px;font-weight:700}
.article-related-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}
.article-related-card{overflow:hidden;border:1px solid #e2e9e0;border-radius:16px;background:#fff;box-shadow:0 8px 25px #1738240a;transition:transform .3s ease,box-shadow .3s ease}
.article-related-card:hover{transform:translateY(-4px);box-shadow:0 15px 35px #17382415}
.article-related-image{display:grid;place-items:center;height:165px;overflow:hidden;background:linear-gradient(135deg,#dfead8,#b8d0b2);color:#548357;font-size:35px}
.article-related-image img{width:100%;height:100%;object-fit:cover;transition:transform .55s ease}
.article-related-card:hover .article-related-image img{transform:scale(1.05)}
.article-related-card>div{padding:15px}
.article-related-card small{color:#7c8a7f;font-size:10px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}
.article-related-card h3{margin:7px 0;color:#233e2d;font:750 17px/1.35 var(--display)}
.article-related-card h3 a:hover{color:#438154}
.article-related-card p{display:-webkit-box;overflow:hidden;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;color:#6c796f;font-size:13px;line-height:1.6}
@media(max-width:900px){.article-reading-grid{grid-template-columns:minmax(0,1fr);gap:0}.article-content{max-width:760px;margin:0 auto}.article-sidebar{position:static;max-width:760px;width:100%;margin:0 auto;padding-top:0}.article-sidebar-card{display:none}.article-back-link{margin-top:5px}.article-related{margin-top:48px}}
@media(max-width:650px){.article-top{padding-top:23px}.article-breadcrumb{margin-bottom:22px;font-size:12px}.article-header{margin-bottom:21px;text-align:left}.article-byline{justify-content:flex-start;font-size:12px}.article-header h1{font-size:37px}.article-header>p{margin-top:12px;font-size:16px}.article-cover-frame{height:260px;border-radius:18px 18px 0 0}.article-cover-frame figcaption{left:15px;bottom:14px;font-size:11px}.article-engagement{align-items:flex-start;flex-direction:column}.article-engagement-actions{width:100%;justify-content:flex-start}.article-body{padding:23px 0 26px;font-size:16px;line-height:1.85}.article-body p:first-child:first-letter{font-size:54px}.article-reading-section{padding-bottom:65px}.comments-intro{align-items:flex-start}.article-related{margin-top:42px}.article-related-heading{align-items:flex-start;flex-direction:column}.article-related-heading h2{font-size:27px}.article-related-grid{grid-template-columns:1fr}.article-related-image{height:215px}}
@media(prefers-reduced-motion:reduce){.article-cover-frame .article-cover,.article-action,.article-related-card,.article-related-image img{transition:none}.article-related-card:hover{transform:none}}

/* Immersive school profile page inspired by a corporate about-page narrative. */
.school-profile-page>.page-hero{display:none}
.school-profile-page>.page-body{padding:0;overflow:hidden}
.school-profile-page .page-grid{display:block!important}
.school-profile-page .page-main{max-width:none;width:100%;padding:0}
.school-profile{width:100%;overflow:hidden}
.profile-hero{position:relative;isolation:isolate;display:flex;align-items:center;width:100vw;min-height:620px;margin-left:calc(50% - 50vw);overflow:hidden;background:#10291c;color:#fff}
.profile-hero-photo,.profile-hero-shade{position:absolute;z-index:-1;inset:0;width:100%;height:100%}
.profile-hero-photo{object-fit:cover;object-position:center 45%;transform:scale(1.015)}
.profile-hero-shade{background:linear-gradient(90deg,rgba(7,27,17,.94) 0%,rgba(8,30,18,.8) 42%,rgba(8,30,18,.2) 100%),linear-gradient(0deg,rgba(7,26,16,.52),transparent 46%)}
.profile-hero-content{padding-top:45px;padding-bottom:80px}
.profile-school-label{margin:19px 0 0;color:#d9e7d6;font-size:14px;font-weight:800;letter-spacing:.075em;text-transform:uppercase}
.profile-hero-content h2{max-width:730px;margin:14px 0 13px;color:#fff;font:800 clamp(45px,7vw,82px)/1.01 var(--display);letter-spacing:-.07em}
.profile-hero-content h2 br{display:block}
.profile-hero-content h2 em{color:#d6ed91}
.profile-hero-intro{max-width:610px;margin:0;color:#e0e9df;font-size:18px;line-height:1.75}
.profile-hero-links{display:flex;align-items:center;gap:22px;margin-top:28px}
.profile-hero-links .btn{padding:14px 20px;font-size:13px}
.profile-text-link{display:inline-flex;align-items:center;gap:13px;color:#eff5e9;font-size:13px;font-weight:700}
.profile-text-link span{display:grid;place-items:center;width:29px;height:29px;border:1px solid #ffffff67;border-radius:50%}
.profile-hero-stats{display:flex;gap:0;margin-top:48px}
.profile-hero-stats>span{display:flex;align-items:center;gap:10px;padding:2px 22px;border-left:1px solid #ffffff4a}
.profile-hero-stats>span:first-child{padding-left:0;border:0}
.profile-hero-stats b{color:#d6ed91;font:800 27px/1 var(--display);letter-spacing:-.04em}
.profile-hero-stats small{max-width:82px;color:#e0e9df;font-size:11px;font-weight:700;line-height:1.3}
.profile-hero-caption{position:absolute;right:max(32px,calc((100vw - 1160px)/2));bottom:25px;color:#ffffffbd;font-size:10px;font-weight:800;letter-spacing:.16em}
.profile-hero-caption span{padding-left:10px;color:#d6ed91}
.profile-story{padding:105px 0 110px;background:#fff}
.profile-story-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.9fr);align-items:center;gap:clamp(42px,8vw,100px)}
.profile-story-visual{position:relative;min-width:0;padding:0 26px 25px 0}
.profile-story-visual>img{display:block;width:100%;height:470px;object-fit:cover;border-radius:20px;box-shadow:0 18px 42px #17382418}
.profile-visual-note{position:absolute;right:0;bottom:0;display:flex;align-items:center;gap:13px;padding:15px 18px;border:1px solid #e2eadf;border-radius:15px;background:#fff;box-shadow:0 10px 30px #16382016;color:#426d4d}
.profile-visual-note>b{font:800 32px/1 var(--display);letter-spacing:-.06em}
.profile-visual-note small{font-size:9px;font-weight:800;letter-spacing:.075em;line-height:1.5}
.profile-story-copy h2{margin:15px 0;color:#193727;font:750 clamp(35px,4.5vw,52px)/1.12 var(--display);letter-spacing:-.06em}
.profile-story-copy h2 em{color:#4a8053}
.profile-story-copy>p{margin:0;color:#68776c;font-size:17px;line-height:1.9;white-space:pre-line}
.profile-principal{display:flex;align-items:center;gap:13px;margin-top:27px;padding:13px 15px;border:1px solid #e7eee4;border-radius:15px;background:#f8faf6}
.profile-principal-mark{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:#e5efdc;color:#4d8155;font-size:20px}
.profile-principal>span:nth-child(2){display:grid;gap:3px;flex:1}
.profile-principal small{color:#849087;font-size:9px;font-weight:800;letter-spacing:.1em}
.profile-principal b{color:#304b37;font-size:14px}
.profile-principal-sign{display:grid;place-items:center;width:32px;height:32px;border:1px solid #a8c29b;border-radius:50%;color:#5e8b5b;font:italic 18px var(--serif)}
.profile-story-copy>.text-link{font-size:14px}
.profile-pillars{padding:0 0 105px;background:#fff}
.profile-pillars-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.profile-pillar-card{position:relative;min-height:270px;padding:31px 34px;overflow:hidden;border-radius:20px}
.profile-vision{background:#eef4e9;color:#254b32}
.profile-mission{background:#163d2b;color:#f4f6ee}
.profile-pillar-icon{position:absolute;top:23px;right:27px;display:grid;place-items:center;width:45px;height:45px;border:1px solid currentColor;border-radius:50%;font-size:20px;opacity:.6}
.profile-pillar-card .eyebrow{margin-top:17px;color:inherit;opacity:.72}
.profile-pillar-card h3{position:relative;z-index:1;margin:10px 0 12px;font:750 33px/1.1 var(--display);letter-spacing:-.05em}
.profile-pillar-card h3 em{font-family:var(--serif);font-weight:400}
.profile-pillar-card p{position:relative;z-index:1;max-width:490px;margin:0;color:inherit;font-size:17px;line-height:1.8;white-space:pre-line;opacity:.83}
.profile-pillar-number{position:absolute;right:22px;bottom:-39px;color:#35614312;font:800 160px/1 var(--display);letter-spacing:-.1em}
.profile-mission .profile-pillar-number{color:#fff1}
.profile-facilities{padding:95px 0 105px;background:#f6f8f3}
.profile-section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:25px;margin-bottom:30px}
.profile-section-heading h2{margin:12px 0 8px;color:#1c3a29;font:750 clamp(33px,4vw,46px)/1.13 var(--display);letter-spacing:-.055em}
.profile-section-heading h2 em{color:#4b8456}
.profile-section-heading p{max-width:610px;margin:0;color:#6b796e;font-size:16px;line-height:1.7}
.profile-section-heading>.text-link{flex:none;margin-bottom:5px;font-size:13px}
.profile-facility-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.profile-facility-card{overflow:hidden;border:1px solid #e4ebe1;border-radius:18px;background:#fff;box-shadow:0 10px 30px #153a240b;transition:transform .32s ease,box-shadow .32s ease}
.profile-facility-card:hover{transform:translateY(-5px);box-shadow:0 18px 42px #153a2418}
.profile-facility-image{position:relative;height:215px;overflow:hidden;background:#e5ece3}
.profile-facility-image img{width:100%;height:100%;object-fit:cover;transition:transform .55s ease}
.profile-facility-card:hover .profile-facility-image img{transform:scale(1.05)}
.profile-facility-image>span{position:absolute;top:14px;left:14px;display:grid;place-items:center;width:36px;height:36px;border:1px solid #ffffffac;border-radius:50%;background:#ffffffed;color:#315d3e;font:800 11px var(--display)}
.profile-facility-card>div:last-child{padding:18px 19px 21px}
.profile-facility-card h3{margin:0 0 7px;color:#263f2e;font:750 19px/1.35 var(--display)}
.profile-facility-card p{margin:0;color:#718075;font-size:14px;line-height:1.7}
.profile-achievements{padding:96px 0 105px;background:#153a2a;color:#fff}
.profile-achievements .profile-section-heading h2{color:#fff}
.profile-achievements .profile-section-heading h2 em{color:#d2e98f}
.profile-achievements .profile-section-heading p{color:#d1dfd2}
.profile-outline-link{flex:none;padding:12px 16px;border:1px solid #ffffff72;border-radius:999px;color:#f2f6ec;font-size:12px;font-weight:800}
.profile-outline-link:hover{background:#ffffff15}
.profile-achievement-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.profile-achievement-card{position:relative;height:310px;overflow:hidden;border:1px solid #ffffff32;border-radius:18px;background:#284b38}
.profile-achievement-card:after{position:absolute;inset:35% 0 0;content:"";background:linear-gradient(0deg,#092216e8,transparent)}
.profile-achievement-card>img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .55s ease}
.profile-achievement-card:hover>img{transform:scale(1.05)}
.profile-achievement-card>span{position:absolute;z-index:1;top:15px;left:15px;padding:8px 11px;border:1px solid #ffffff9e;border-radius:999px;background:#ffffffed;color:#2e5a3b;font-size:10px;font-weight:800;letter-spacing:.07em;text-transform:uppercase}
.profile-achievement-card>div{position:absolute;z-index:1;right:19px;bottom:18px;left:19px}
.profile-achievement-card h3{margin:0 0 6px;color:#fff;font:750 21px/1.3 var(--display);letter-spacing:-.03em}
.profile-achievement-card p{margin:0;color:#e0e9dc;font-size:13px;font-weight:700}
.profile-cta{padding:66px 0;background:#dcebbd;color:#214330}
.profile-cta-inner{display:flex;align-items:center;justify-content:space-between;gap:26px}
.profile-cta-inner h2{margin:10px 0 7px;font:750 clamp(32px,4vw,43px)/1.12 var(--display);letter-spacing:-.05em}
.profile-cta-inner h2 em{color:#4d8054}
.profile-cta-inner p{margin:0;color:#536a56;font-size:15px}
.profile-cta-inner .btn{flex:none;background:#214d35}
@media(max-width:850px){.profile-hero{min-height:570px}.profile-story-grid{gap:40px}.profile-story-visual>img{height:400px}.profile-facility-grid,.profile-achievement-grid{gap:13px}.profile-facility-image{height:180px}.profile-achievement-card{height:280px}.profile-facility-card h3{font-size:17px}}
@media(max-width:650px){.profile-hero{min-height:590px;align-items:flex-end}.profile-hero-photo{object-position:58% center}.profile-hero-shade{background:linear-gradient(0deg,rgba(6,25,16,.96) 0%,rgba(8,30,18,.77) 57%,rgba(8,30,18,.22) 100%)}.profile-hero-content{padding-top:75px;padding-bottom:78px}.profile-school-label{font-size:11px}.profile-hero-content h2{font-size:clamp(43px,13vw,61px)}.profile-hero-intro{font-size:15px;line-height:1.65}.profile-hero-links{align-items:flex-start;flex-direction:column;gap:15px;margin-top:21px}.profile-hero-stats{margin-top:30px}.profile-hero-stats>span{gap:7px;padding:2px 12px}.profile-hero-stats b{font-size:23px}.profile-hero-stats small{font-size:9px}.profile-hero-caption{right:20px;bottom:18px;font-size:8px}.profile-story{padding:68px 0 72px}.profile-story-grid{grid-template-columns:1fr;gap:34px}.profile-story-visual{padding-right:17px;padding-bottom:17px}.profile-story-visual>img{height:310px;border-radius:15px}.profile-visual-note{gap:9px;padding:11px 13px;border-radius:12px}.profile-visual-note>b{font-size:27px}.profile-story-copy h2{font-size:37px}.profile-story-copy>p{font-size:15px}.profile-pillars{padding-bottom:70px}.profile-pillars-grid{grid-template-columns:1fr;gap:12px}.profile-pillar-card{min-height:235px;padding:25px 23px;border-radius:16px}.profile-pillar-card h3{font-size:29px}.profile-pillar-card p{font-size:15px}.profile-facilities,.profile-achievements{padding:69px 0 75px}.profile-section-heading{align-items:flex-start;flex-direction:column;gap:14px;margin-bottom:21px}.profile-section-heading h2{font-size:34px}.profile-section-heading p{font-size:15px}.profile-section-heading>.text-link{margin-top:0}.profile-facility-grid,.profile-achievement-grid{grid-template-columns:1fr;gap:14px}.profile-facility-image{height:225px}.profile-facility-card>div:last-child{padding:17px}.profile-facility-card h3{font-size:19px}.profile-achievement-card{height:275px}.profile-outline-link{padding:10px 14px}.profile-cta{padding:50px 0}.profile-cta-inner{align-items:flex-start;flex-direction:column}.profile-cta-inner h2{font-size:34px}.profile-cta-inner p{font-size:14px}}
@media(prefers-reduced-motion:reduce){.profile-facility-card,.profile-facility-image img,.profile-achievement-card>img{transition:none}.profile-facility-card:hover{transform:none}}

/* Let the profile storytelling sections use the full viewport width. */
.school-profile-page>.page-body>.container.page-grid{width:100%;max-width:none;margin:0}

/* Dedicated teacher and staff directory. */
.staff-page{background:#fbfcf9}
.staff-hero{position:relative;overflow:hidden;background:linear-gradient(115deg,#153e30 0%,#1f6549 60%,#318263 100%);color:#fff}
.staff-hero:after{position:absolute;right:-120px;bottom:-350px;width:660px;height:660px;border:1px solid #ffffff1a;border-radius:50%;content:"";pointer-events:none}
.staff-hero-inner{position:relative;z-index:1;display:grid;grid-template-columns:1.1fr .9fr;align-items:center;min-height:520px;padding-top:34px;padding-bottom:44px}
.staff-breadcrumb{grid-column:1/-1;display:flex;align-items:center;gap:10px;margin-bottom:12px;color:#d3e3d7;font-size:13px}
.staff-breadcrumb a{color:#eff6ea;font-weight:700}
.staff-hero-copy{padding:15px 0 10px}
.staff-kicker{display:inline-flex;align-items:center;padding:9px 13px;border:1px solid #ffffff45;border-radius:999px;background:#ffffff12;color:#e4f0c5;font-size:11px;font-weight:800;letter-spacing:.09em}
.staff-hero-copy h1{margin:20px 0 14px;color:#fff;font:800 clamp(42px,6vw,70px)/1.02 var(--display);letter-spacing:-.065em}
.staff-hero-copy h1 em{color:#d8ed97;font-family:var(--serif);font-weight:400;letter-spacing:-.04em}
.staff-hero-copy>p{max-width:560px;margin:0;color:#e0ece2;font-size:17px;line-height:1.75}
.staff-hero-total{display:flex;align-items:center;gap:11px;margin-top:27px;color:#e4eee3;font-size:13px;font-weight:700}
.staff-hero-total strong{color:#d8ed97;font:800 35px/1 var(--display);letter-spacing:-.06em}
.staff-hero-art{position:relative;display:grid;place-items:center;min-height:355px}
.staff-art-orbit{position:absolute;display:block;border:1px solid #ffffff28;border-radius:50%;transform:rotate(-24deg)}
.staff-art-orbit-one{width:300px;height:300px}
.staff-art-orbit-two{width:390px;height:210px;border-color:#d8ed9738;transform:rotate(33deg)}
.staff-art-center{position:relative;display:grid;place-items:center;width:190px;height:190px;border:1px solid #ffffff5c;border-radius:42% 58% 52% 48%/48% 43% 57% 52%;background:radial-gradient(circle at 35% 28%,#8dbb7a,#3a805b 58%,#21563e);box-shadow:0 30px 75px #071a1055;color:#f5f8ed;font:800 90px/1 var(--display);text-shadow:0 8px 25px #173b2a;animation:staff-morph 9s ease-in-out infinite}
.staff-art-spark{position:absolute;top:52px;right:23%;color:#d8ed97;font-size:31px}
.staff-art-caption{position:absolute;right:2%;bottom:15px;color:#d4e7d6;font-size:9px;font-weight:800;letter-spacing:.16em;line-height:1.8;text-align:right}
@keyframes staff-morph{0%,100%{border-radius:42% 58% 52% 48%/48% 43% 57% 52%;transform:rotate(0)}50%{border-radius:58% 42% 42% 58%/39% 58% 42% 61%;transform:rotate(7deg)}}
.staff-directory{padding:82px 0 105px}
.staff-directory-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:28px}
.staff-directory-heading h2{margin:11px 0 7px;color:#1c3c2b;font:750 clamp(32px,4.2vw,45px)/1.12 var(--display);letter-spacing:-.055em}
.staff-directory-heading h2 em{color:#4c8354}
.staff-directory-heading p{margin:0;color:#718075;font-size:16px}
.staff-total-chip{display:flex;align-items:center;gap:10px;padding:11px 15px;border:1px solid #e2eae0;border-radius:14px;background:#fff;color:#456c4c;flex:none}
.staff-total-chip b{font:800 27px/1 var(--display)}
.staff-total-chip span{font-size:12px;font-weight:700}
.staff-search-form{max-width:700px;margin:0 0 19px}
.staff-search-form>label{display:block;margin-bottom:7px;color:#607165;font-size:12px;font-weight:800}
.staff-search-form>div{position:relative;display:flex;gap:9px}
.staff-search-form>div>span{position:absolute;left:15px;top:50%;transform:translateY(-53%);color:#59805d;font-size:24px;pointer-events:none}
.staff-search-form input[type=search]{flex:1;min-width:0;height:49px;padding:0 15px 0 43px;border:1px solid #dfe8df;border-radius:12px;background:#fff;color:#2a4433;font-size:14px;outline:none}
.staff-search-form input[type=search]:focus{border-color:#528764;box-shadow:0 0 0 3px #52876420}
.staff-search-form button{min-width:100px;padding:0 18px;border:0;border-radius:12px;background:#245c3b;color:#fff;font-weight:800;cursor:pointer;transition:background .2s ease}
.staff-search-form button:hover{background:#17482d}
.staff-search-form button span{margin-left:8px;color:#d9ec9d}
.staff-filters{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:43px}
.staff-filters>a{display:inline-flex;align-items:center;gap:8px;padding:9px 15px;border:1px solid #dfe7df;border-radius:999px;background:#fff;color:#637267;font-size:13px;font-weight:700;transition:.2s ease}
.staff-filters>a:hover{border-color:#87aa81;color:#2d6541}
.staff-filters>a.is-active{border-color:#245c3b;background:#245c3b;color:#fff;box-shadow:0 5px 13px #245c3b25}
.staff-filters small{display:grid;place-items:center;min-width:20px;height:20px;padding:0 5px;border-radius:999px;background:#edf3e9;color:#456d4a;font-size:10px;font-weight:800}
.staff-filters>a.is-active small{background:#ffffff24;color:#fff}
.staff-group{margin-top:37px}
.staff-group-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:17px;padding-bottom:13px;border-bottom:1px solid #e4ebe2}
.staff-group-heading .eyebrow{font-size:9px}
.staff-group-heading h3{margin:8px 0 0;color:#254332;font:750 27px/1.2 var(--display);letter-spacing:-.04em}
.staff-group-heading h3 em{color:#56865a;font-family:var(--serif);font-weight:400}
.staff-group-heading>span{color:#7a887d;font-size:12px;font-weight:700}
.staff-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:17px}
.staff-card{min-width:0;overflow:hidden;border:1px solid #e3ebe1;border-radius:18px;background:#fff;box-shadow:0 10px 28px #163a2209;transition:transform .32s ease,box-shadow .32s ease}
.staff-card:hover{transform:translateY(-5px);box-shadow:0 18px 38px #163a2216}
.staff-card-portrait{position:relative;display:grid;place-items:center;height:235px;overflow:hidden;background:linear-gradient(145deg,#e4efdc,#b8d4b5);color:#376343}
.staff-tone-2{background:linear-gradient(145deg,#e1ebdc,#c9dfd0);color:#3b6c52}
.staff-tone-3{background:linear-gradient(145deg,#f0edd7,#d7dfbd);color:#667447}
.staff-tone-4{background:linear-gradient(145deg,#e2eaf0,#c5d9dd);color:#426576}
.staff-card-portrait:before,.staff-card-portrait:after{position:absolute;border:1px solid #ffffff80;border-radius:50%;content:""}
.staff-card-portrait:before{width:210px;height:210px;right:-67px;top:-76px}
.staff-card-portrait:after{width:145px;height:145px;left:-47px;bottom:-63px}
.staff-card-portrait>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .55s ease}
.staff-card:hover .staff-card-portrait>img{transform:scale(1.045)}
.staff-card-portrait>span:not(.staff-card-index){position:relative;z-index:1;display:grid;place-items:center;width:105px;height:105px;border:1px solid #ffffffa0;border-radius:50%;background:#ffffff61;color:inherit;font:800 35px/1 var(--display);letter-spacing:-.04em;box-shadow:0 12px 32px #244a2315;backdrop-filter:blur(4px)}
.staff-card-portrait>i{position:absolute;top:22px;right:23px;color:#ffffffd9;font-style:normal;font-size:19px}
.staff-card-index{position:absolute;left:14px;top:14px;z-index:1;padding:7px 9px;border:1px solid #ffffffa0;border-radius:999px;background:#ffffffdc;color:#416b48;font-size:10px;font-weight:800}
.staff-card-copy{padding:17px 17px 18px}
.staff-card-role{display:inline-flex;padding:6px 9px;border-radius:999px;background:#eef5e9;color:#48734e;font-size:10px;font-weight:800;letter-spacing:.05em;text-transform:uppercase}
.staff-card-copy h4{margin:11px 0 7px;color:#203b2b;font:750 18px/1.3 var(--display);letter-spacing:-.025em;overflow-wrap:anywhere}
.staff-card-copy p{margin:0;color:#728076;font-size:13px;line-height:1.65;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.staff-card-line{display:block;width:37px;height:2px;margin-top:16px;border-radius:2px;background:#8cb278}
.staff-empty{padding:55px 20px;text-align:center;border:1px dashed #cad9c8;border-radius:18px;background:#fff}
.staff-empty>span{color:#78a56c;font-size:35px}
.staff-empty h3{margin:12px 0 5px;color:#24432f;font:750 24px var(--display)}
.staff-empty p{margin:0 0 13px;color:#718075}
.staff-empty a{color:#34734a;font-weight:800}
@media(max-width:980px){.staff-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.staff-card-portrait{height:215px}.staff-hero-inner{min-height:480px}.staff-art-center{width:155px;height:155px;font-size:75px}}
@media(max-width:700px){.staff-hero-inner{grid-template-columns:1fr;min-height:0;padding-top:23px;padding-bottom:28px}.staff-breadcrumb{margin-bottom:19px;font-size:12px}.staff-hero-copy{padding:0}.staff-hero-copy h1{font-size:clamp(39px,12vw,57px);margin:16px 0 11px}.staff-hero-copy>p{font-size:15px}.staff-hero-total{margin-top:18px}.staff-hero-art{position:absolute;right:-32px;bottom:-105px;min-height:280px;width:260px;opacity:.28}.staff-art-orbit-one{width:210px;height:210px}.staff-art-orbit-two{width:260px;height:140px}.staff-art-center{width:120px;height:120px;font-size:60px}.staff-art-caption,.staff-art-spark{display:none}.staff-directory{padding:59px 0 78px}.staff-directory-heading{align-items:flex-start;flex-direction:column;margin-bottom:21px}.staff-directory-heading h2{font-size:34px}.staff-directory-heading p{font-size:14px}.staff-total-chip{padding:8px 12px}.staff-total-chip b{font-size:23px}.staff-search-form>div{gap:7px}.staff-search-form button{min-width:82px;padding:0 11px}.staff-filters{flex-wrap:nowrap;overflow:auto;padding-bottom:4px;margin-bottom:32px}.staff-filters>a{white-space:nowrap}.staff-group{margin-top:30px}.staff-group-heading h3{font-size:24px}.staff-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.staff-card{border-radius:14px}.staff-card-portrait{height:190px}.staff-card-copy{padding:13px}.staff-card-role{font-size:9px}.staff-card-copy h4{font-size:16px}.staff-card-copy p{font-size:12px}}
@media(max-width:420px){.staff-grid{grid-template-columns:1fr}.staff-card{display:grid;grid-template-columns:115px minmax(0,1fr);align-items:stretch}.staff-card-portrait{height:100%;min-height:164px}.staff-card-portrait>span:not(.staff-card-index){width:70px;height:70px;font-size:27px}.staff-card-index{left:8px;top:8px;padding:5px 7px;font-size:8px}.staff-card-copy{align-self:center}.staff-card-copy h4{font-size:15px}}
@media(prefers-reduced-motion:reduce){.staff-art-center,.staff-card,.staff-card-portrait>img,.staff-filters>a,.staff-search-form button{animation:none;transition:none}.staff-card:hover{transform:none}}

@media(min-width:641px) and (max-width:1000px){.site-header .nav-wrap{gap:8px}.site-header .brand{gap:7px}.site-header .brand-copy b{font-size:14px}.site-header .brand-mark.brand-mark-image{flex-basis:46px;width:46px;height:46px;max-width:46px}.main-nav{gap:12px;font-size:11px}.nav-cta{padding:10px 12px;font-size:11px}}

/* Shared photographic banner for public content pages (homepage hero stays separate). */
.page-hero{position:relative;isolation:isolate;overflow:hidden;background:#173d2c;color:#fff}
.page-hero:before,.page-hero:after{position:absolute;inset:0;content:"";pointer-events:none}
.page-hero:before{z-index:-1;background-image:var(--page-hero-image,url('https://images.unsplash.com/photo-1562774053-701939374585?auto=format&fit=crop&w=2000&q=85'));background-position:center 46%;background-size:cover;transform:scale(1.025);filter:saturate(.84)}
.page-hero:after{z-index:-1;background:linear-gradient(90deg,rgba(8,34,22,.88) 0%,rgba(10,43,27,.72) 52%,rgba(9,37,24,.54) 100%),linear-gradient(0deg,rgba(8,31,20,.35),transparent 72%)}
.page-hero .container{position:relative;z-index:1}
.page-hero .eyebrow{color:#edf4e8}
.page-hero .eyebrow>span{background:#d8ed97}
.page-hero h1{color:#fff}
.page-hero h1 em{color:#d8ed97}
.page-hero p{color:#e2ece1}
@media(max-width:650px){.page-hero:before{background-position:58% center}.page-hero:after{background:linear-gradient(90deg,rgba(8,34,22,.86),rgba(10,43,27,.66)),linear-gradient(0deg,rgba(8,31,20,.42),transparent 75%)}}

/* Keep page hero copy bright against the image despite global morph text rules. */
body:not(.admin-body) .page-hero .eyebrow{color:#f3f7ef!important}
body:not(.admin-body) .page-hero h1{color:#fff!important}
body:not(.admin-body) .page-hero h1 em{color:#d8ed97!important}
body:not(.admin-body) .page-hero p{color:#f1f5ee!important}

/* Nested navigation for the Tentang Kami menu. */
.nav-dropdown{position:relative;display:flex;align-items:center}
.nav-dropdown-toggle{display:inline-flex;align-items:center;gap:7px;padding:10px 0;border:0;background:transparent;color:inherit;font:inherit;font-weight:inherit;cursor:pointer}
.nav-dropdown-toggle>span{font-size:.82em;transition:transform .18s ease}
.nav-dropdown:is(:hover,:focus-within) .nav-dropdown-toggle>span,.nav-dropdown.is-open .nav-dropdown-toggle>span{transform:rotate(180deg)}
.nav-dropdown-panel{position:absolute;z-index:120;top:calc(100% + 12px);left:-17px;display:none;min-width:210px;padding:8px;border:1px solid #e5ece5;border-radius:14px;background:#fff;box-shadow:0 16px 38px #10241b24}
.nav-dropdown-panel:before{position:absolute;right:0;bottom:100%;left:0;height:13px;content:""}
.nav-dropdown:is(:hover,:focus-within) .nav-dropdown-panel,.nav-dropdown.is-open .nav-dropdown-panel{display:grid}
.main-nav .nav-dropdown-panel a{display:block;padding:11px 13px;border-radius:9px;color:#263d30;font-size:14px;font-weight:700;line-height:1.35;white-space:nowrap}
.main-nav .nav-dropdown-panel a:hover,.main-nav .nav-dropdown-panel a:focus-visible{background:#eff6eb;color:#16753d}
@media(max-width:700px){
 .main-nav .nav-dropdown{display:block;width:100%}
 .main-nav .nav-dropdown-toggle{width:100%;justify-content:space-between;padding:11px 0;border-bottom:1px solid #e5ece5;text-align:left;font-size:16px}
 .main-nav .nav-dropdown-panel{position:static;min-width:0;padding:3px 0 7px;border:0;border-radius:0;background:transparent;box-shadow:none}
 .main-nav .nav-dropdown-panel:before{display:none}
 .main-nav .nav-dropdown.is-open .nav-dropdown-panel{display:grid}
 .main-nav .nav-dropdown-panel a{padding:10px 12px 10px 20px;border-bottom:1px solid #edf1ed;color:inherit;font-size:15px}
}
@media(prefers-reduced-motion:reduce){.nav-dropdown-toggle>span{transition:none}}
.footer-explore-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:20px;align-items:start}
.footer-explore-links a{min-width:0}
@media(max-width:700px){.footer-explore-links{column-gap:14px}}

/* Curated social feed page. */
.social-feed-section{padding-top:68px;padding-bottom:92px;background:linear-gradient(180deg,#f6f8f2 0%,#fff 68%)}
.social-feed-intro{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:25px}
.social-feed-intro h2{margin:12px 0 8px;color:#213d2d;font:800 clamp(29px,4vw,45px)/1.12 var(--display);letter-spacing:-.045em}
.social-feed-intro h2 em{color:#498151;font-style:normal}
.social-feed-intro p{max-width:590px;margin:0;color:#718075;font-size:16px}
.social-feed-count{display:flex;align-items:center;gap:12px;padding:13px 17px;border:1px solid #e1eadd;border-radius:15px;background:#fff;color:#627364;white-space:nowrap}
.social-feed-count b{color:#2f6c3d;font:800 30px/1 var(--display)}
.social-filter{display:flex;gap:9px;overflow:auto;padding:3px 2px 17px}
.social-filter button{flex:0 0 auto;padding:10px 16px;border:1px solid #e0e8dd;border-radius:999px;background:#fff;color:#536456;font-size:14px;font-weight:750;cursor:pointer;transition:.2s ease}
.social-filter button:hover,.social-filter button.is-active{border-color:#2f7441;background:#2f7441;color:#fff;box-shadow:0 8px 18px #2f744128}
.social-feed-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:21px}
.social-feed-card{min-width:0;overflow:hidden;border:1px solid #e6ebe3;border-radius:19px;background:#fff;box-shadow:0 12px 35px #19351c0a}
.social-card-heading{display:flex;align-items:center;gap:11px;padding:15px 15px 14px}
.social-platform-icon{display:grid;flex:0 0 38px;width:38px;height:38px;place-items:center;border-radius:13px;background:#f1f4ed;color:#365a3e;font:800 20px/1 var(--display)}
.social-platform-icon.platform-instagram{background:#fae9f0;color:#bc3b72}.social-platform-icon.platform-facebook{background:#e8efff;color:#2861c7}.social-platform-icon.platform-youtube{background:#fff0ed;color:#dc3027}.social-platform-icon.platform-tiktok{background:#e9f5f5;color:#13373a}
.social-card-heading>span:nth-child(2){display:grid;min-width:0;gap:2px}.social-card-heading b{overflow:hidden;color:#263d2e;font-size:14px;text-overflow:ellipsis;white-space:nowrap}.social-card-heading small{color:#778378;font-size:11px;font-weight:650}
.social-card-heading>a{display:grid;flex:0 0 34px;width:34px;height:34px;margin-left:auto;place-items:center;border:1px solid #e8eee6;border-radius:50%;color:#3d7046;font-size:17px}
.social-card-media{display:grid;min-height:255px;place-items:center;overflow:hidden;background:#f5f7f3}
.social-card-media iframe{display:block;width:100%;height:390px;border:0;background:#fff}
.social-card-media iframe[src*="youtube-nocookie"]{height:auto;aspect-ratio:16/9}
.social-card-media iframe[src*="tiktok.com/player"]{height:560px;max-height:78vh;background:#111}
.social-card-media iframe[src*="facebook.com/plugins"]{height:560px;max-height:75vh}
.social-card-media .instagram-media{width:calc(100% - 20px)!important;min-width:0!important;max-width:540px!important;margin:10px auto!important;background:#fff!important}
.social-card-thumbnail{position:relative;display:grid;width:100%;min-height:260px;place-items:center;overflow:hidden;background:linear-gradient(135deg,#234a34,#6b9a65);color:#fff}
.social-card-thumbnail img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .35s ease}.social-card-thumbnail:hover img{transform:scale(1.04)}
.social-card-thumbnail>span{font-size:50px}.social-card-thumbnail>b{position:absolute;right:12px;bottom:12px;padding:9px 12px;border-radius:999px;background:#10291dd9;color:#fff;font-size:12px}
.social-card-caption{padding:0 16px 17px;margin:14px 0 0;color:#59695d;font-size:14px;line-height:1.7;overflow-wrap:anywhere}
.social-feed-empty{padding:64px 20px;border:1px dashed #cddbc9;border-radius:20px;background:#fff;text-align:center}.social-feed-empty>span{color:#78a56c;font-size:42px}.social-feed-empty h3{margin:10px 0 5px;color:#27432f;font:800 24px var(--display)}.social-feed-empty p{margin:0;color:#728075}
.social-empty-filter{padding:35px;text-align:center;color:#637565}
@media(max-width:980px){.social-feed-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.social-feed-section{padding:49px 0 68px}.social-feed-intro{align-items:flex-start;flex-direction:column;gap:15px}.social-feed-intro p{font-size:14px}.social-feed-count{padding:10px 13px}.social-feed-count b{font-size:25px}.social-filter{margin-inline:-8px;padding-inline:8px}.social-filter button{padding:9px 13px;font-size:13px}.social-feed-grid{grid-template-columns:1fr;gap:15px}.social-feed-card{border-radius:16px}.social-card-media iframe[src*="tiktok.com/player"]{height:500px}.social-card-media iframe[src*="facebook.com/plugins"]{height:500px}}
@media(prefers-reduced-motion:reduce){.social-filter button,.social-card-thumbnail img{transition:none}}
