.school-events-page { overflow:hidden; background:#fbfaf5; color:#123d2d; }
.school-events-page h1,.school-events-page h2,.school-events-page h3,.school-events-page p { margin-top:0; }.school-wide-shell { width:min(1560px,calc(100% - 64px)); margin:auto; }.school-reveal { opacity:0; transform:translateY(34px); transition:opacity .7s ease var(--delay,0ms),transform .7s cubic-bezier(.2,.65,.2,1) var(--delay,0ms); }.school-reveal.is-visible { opacity:1; transform:translateY(0); }
.school-video-hero { min-height:100svh; height:100svh; position:relative; display:flex; align-items:flex-end; overflow:hidden; background:#0b3526; color:#fff; }
.school-video-hero-media,.school-video-hero>.youtube-background { width:100%; height:100%; position:absolute; inset:0; display:block; border:0; object-fit:cover; }
.school-video-hero-overlay { position:absolute; z-index:1; inset:0; background:linear-gradient(90deg,rgba(4,28,19,.78) 0%,rgba(5,31,21,.43) 48%,rgba(5,28,20,.18) 72%),linear-gradient(0deg,rgba(4,26,18,.6),transparent 55%); }
.school-video-hero-content { z-index:2; width:min(720px,calc(100% - 96px)); max-width:none; margin-left:clamp(36px,6vw,110px); padding:0 0 clamp(62px,7vw,96px) 25px; border-left:3px solid rgba(227,192,92,.92); }
.school-video-hero-content>span { display:block; margin-bottom:16px; color:#e3c05c; font-size:.75rem; font-weight:900; letter-spacing:.2em; }
.school-video-hero-content h1 { max-width:720px; margin:0; font-size:clamp(3rem,5vw,5.2rem); line-height:.88; font-weight:900; letter-spacing:-.035em; text-shadow:0 8px 32px rgba(0,0,0,.22); }
.school-video-hero-content h1 b { display:block; font:inherit; }
.school-video-hero-content h1 b+ b { margin-top:.13em; }
.school-video-hero-content p { width:min(560px,100%); margin:20px 0 0; color:rgba(255,255,255,.88); font-size:clamp(.92rem,1.15vw,1.08rem); line-height:1.65; }
@media (max-width:650px) {
    .school-video-hero { min-height:720px; height:100svh; }
    .school-video-hero-content { width:calc(100% - 34px); margin:0 17px; padding:0 0 54px 16px; }
    .school-video-hero-content h1 { font-size:clamp(2.3rem,10.5vw,3.35rem); line-height:.92; }
    .school-video-hero-content p { margin-top:16px; font-size:.9rem; line-height:1.55; }
}
.school-title-hero { min-height:490px; display:flex; align-items:flex-end; padding:115px 0 70px; position:relative; overflow:hidden; background:#0c402d; color:#fff; }.school-title-hero::after { content:""; width:57vw; height:57vw; position:absolute; right:-14vw; top:-43vw; border:1px solid rgba(240,226,164,.26); border-radius:50%; box-shadow:0 0 0 70px rgba(255,255,255,.025),0 0 0 145px rgba(255,255,255,.02); }.school-title-layout { z-index:1; display:flex; justify-content:space-between; gap:40px; align-items:flex-end; }.school-title-layout span,.school-stage-heading>span,.school-program-copy>span,.school-catalogue-mark span,.school-story-copy>span,.school-korgan-heading>span,.school-gallery-heading span,.school-cta-inner>span { display:block; color:#e3c05c; font-size:.73rem; font-weight:900; letter-spacing:.18em; }.school-title-layout h1 { margin:12px 0 0; font-size:clamp(4rem,9vw,9.4rem); line-height:.78; font-weight:900; letter-spacing:0; }.school-title-layout p { width:min(410px,100%); margin:0 0 6px; color:rgba(255,255,255,.78); font-size:1.05rem; line-height:1.75; }
.school-reel-stage { padding:clamp(80px,9vw,145px) 0 100px; background:linear-gradient(180deg,#f7f7f1 0%,#fff 100%); }.school-stage-heading { width:min(560px,100%); margin:0 auto 48px 0; }.school-stage-heading h2 { margin:13px 0 14px; max-width:610px; color:#103d2d; font-size:clamp(3rem,6vw,6rem); line-height:.92; letter-spacing:0; }.school-stage-heading p { max-width:470px; color:#6f7d74; line-height:1.75; }.school-reel-wall { min-height:570px; display:grid; grid-template-columns:1.1fr .85fr .85fr 1.1fr; gap:20px; align-items:start; position:relative; }.school-reel-wall::before { content:""; position:absolute; z-index:0; left:2%; right:2%; top:48%; height:1px; background:linear-gradient(90deg,transparent,#d6bd69 12%,#d6bd69 88%,transparent); animation:schoolPulseLine 4.5s ease-in-out infinite; }.school-reel-card { min-width:0; aspect-ratio:9/14.3; position:relative; z-index:1; overflow:hidden; border-radius:8px; background:#123e2c; box-shadow:0 23px 45px rgba(13,63,40,.17); }.school-reel-card:nth-child(1) { margin-top:20px; }.school-reel-card:nth-child(2) { margin-top:116px; }.school-reel-card:nth-child(3) { margin-top:0; }.school-reel-card:nth-child(4) { margin-top:82px; }.school-reel-card::after { content:""; position:absolute; inset:0; pointer-events:none; background:linear-gradient(180deg,rgba(7,30,20,.08) 40%,rgba(6,36,23,.85) 100%); }.school-reel-card video { width:100%; height:100%; display:block; object-fit:cover; transition:transform .6s ease; }.school-reel-card:hover video { transform:scale(1.06); }.school-reel-overlay { position:absolute; z-index:1; top:17px; left:18px; right:18px; display:flex; justify-content:space-between; align-items:flex-start; color:#fff; }.school-reel-overlay span { color:#e4c463; font-size:.72rem; font-weight:900; letter-spacing:.12em; }.school-reel-overlay strong { max-width:110px; text-align:right; font-size:1.04rem; line-height:1.1; }.school-reel-controls { position:absolute; z-index:2; bottom:15px; left:16px; right:16px; display:flex; align-items:center; gap:8px; color:#fff; font-size:.66rem; }.school-reel-toggle { display:grid; place-items:center; width:27px; height:27px; padding:0; border:1px solid rgba(255,255,255,.68); border-radius:50%; background:rgba(8,45,29,.5); color:#fff; font-size:.66rem; }.school-reel-progress { flex:1; min-width:0; height:3px; accent-color:#e2c460; }.school-reel-duration { color:rgba(255,255,255,.7); }.school-stage-marker { display:flex; gap:12px; align-items:center; margin-top:28px; color:#748078; font-size:.68rem; letter-spacing:.13em; }.school-stage-marker span { width:70px; height:1px; background:#d4ba63; } @keyframes schoolPulseLine { 50% { opacity:.35; transform:scaleX(.96); } }
.school-program-section { padding:clamp(90px,11vw,155px) 0; background:#eef5ef; }.school-program-layout { display:grid; grid-template-columns:minmax(320px,.78fr) minmax(560px,1.22fr); gap:clamp(52px,8vw,150px); align-items:center; }.school-program-copy h2 { margin:12px 0 20px; max-width:510px; color:#123f2d; font-size:clamp(2.8rem,4.5vw,5.1rem); line-height:1.02; }.school-program-copy p { max-width:500px; color:#697c71; line-height:1.85; }.school-text-link { display:inline-flex; gap:10px; align-items:center; margin-top:16px; padding-bottom:10px; border-bottom:2px solid #d6b958; color:#123e2d; font-weight:900; text-decoration:none; }.school-experience-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:21px; }.school-experience-grid article { min-height:315px; position:relative; overflow:hidden; border-radius:7px; background:#133e2d; box-shadow:0 17px 36px rgba(10,58,37,.13); }.school-experience-grid img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; transition:transform .6s ease; }.school-experience-grid article::after { content:""; position:absolute; inset:0; background:linear-gradient(180deg,rgba(7,39,24,.05),rgba(7,39,24,.94)); }.school-experience-grid article:hover img { transform:scale(1.08); }.school-experience-grid article div { position:absolute; z-index:1; bottom:0; padding:26px; color:#fff; }.school-experience-grid i { color:#e4c25d; font-size:1.2rem; }.school-experience-grid h3 { margin:19px 0 8px; font-size:1.34rem; }.school-experience-grid p { margin:0; color:rgba(255,255,255,.78); font-size:.92rem; line-height:1.55; }
.school-catalogue-section { padding:42px 0; background:#163f2e; color:#fff; }.school-catalogue { display:grid; grid-template-columns:.52fr 1fr auto; gap:50px; align-items:center; }.school-catalogue-mark { display:flex; align-items:center; gap:14px; }.school-catalogue-mark i { color:#dfbd59; font-size:1.8rem; }.school-catalogue h2 { margin:0 0 11px; font-size:clamp(1.9rem,3vw,3rem); line-height:1.03; }.school-catalogue p { margin:0; max-width:640px; color:rgba(255,255,255,.72); line-height:1.7; }.school-catalogue-link { padding:16px 20px; border-radius:4px; background:#fff; color:#123c2b; font-weight:900; text-decoration:none; white-space:nowrap; }
.school-story-section { padding:clamp(90px,11vw,160px) 0; background:#fff; }.school-story-layout { display:grid; grid-template-columns:minmax(330px,.82fr) minmax(530px,1.18fr); gap:clamp(55px,10vw,175px); align-items:center; }.school-story-copy h2 { margin:12px 0 22px; color:#123d2c; font-size:clamp(2.8rem,4.8vw,5.3rem); line-height:1.02; }.school-story-copy>p { max-width:560px; color:#65776c; font-size:1rem; line-height:1.85; }.school-story-points { display:flex; flex-wrap:wrap; gap:9px; margin-top:26px; }.school-story-points span { padding:10px 13px; background:#eff5ef; color:#17422f; font-size:.8rem; font-weight:800; }.school-story-points i { margin-right:6px; color:#c98148; }.school-story-visual { min-height:570px; margin:0; position:relative; overflow:hidden; border-radius:8px; box-shadow:0 30px 60px rgba(10,58,38,.17); }.school-story-visual img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }.school-story-visual figcaption { position:absolute; right:18px; bottom:18px; width:min(275px,calc(100% - 36px)); padding:17px; background:rgba(255,255,255,.92); color:#123d2c; }.school-story-visual figcaption span { display:block; margin-bottom:5px; color:#c77b42; font-size:.65rem; font-weight:900; letter-spacing:.12em; }.school-story-visual figcaption strong { font-size:.95rem; line-height:1.35; }
.school-korgan-section { padding:clamp(90px,10vw,140px) 0; background:#edf3eb; }.school-korgan-heading { max-width:720px; margin:0 auto 38px; text-align:center; }.school-korgan-heading h2 { margin:10px 0 10px; color:#17432f; font-size:clamp(2.5rem,5vw,5.4rem); }.school-korgan-heading p { color:#6c7d73; line-height:1.75; }.school-korgan-image { position:relative; display:block; width:100%; padding:0; overflow:hidden; border:0; border-radius:8px; background:#143b2a; box-shadow:0 27px 57px rgba(11,57,36,.23); }.school-korgan-image img { width:100%; display:block; aspect-ratio:16/9; object-fit:cover; transition:transform .55s ease; }.school-korgan-image:hover img { transform:scale(1.025); }.school-korgan-image span { position:absolute; right:18px; bottom:18px; padding:11px 14px; border-radius:4px; background:rgba(9,40,26,.82); color:#fff; font-size:.8rem; font-weight:900; }
.school-gallery-section { padding:clamp(90px,11vw,160px) 0; background:#fff; }.school-gallery-heading { display:flex; justify-content:space-between; align-items:flex-end; gap:50px; margin-bottom:42px; }.school-gallery-heading h2 { margin:12px 0 0; color:#143d2c; font-size:clamp(3.3rem,6.2vw,6.6rem); line-height:.86; }.school-gallery-heading p { max-width:260px; margin:0 0 6px; color:#728078; line-height:1.7; }.school-featured-gallery { display:grid; grid-template-columns:1.35fr .9fr .9fr; gap:18px; }.school-featured-gallery button { height:480px; padding:0; position:relative; overflow:hidden; border:0; border-radius:8px; background:#123e2c; box-shadow:0 20px 42px rgba(13,62,41,.15); }.school-featured-gallery button:nth-child(2) { margin-top:55px; height:370px; }.school-featured-gallery button:nth-child(3) { margin-top:112px; height:300px; }.school-featured-gallery img,.school-gallery-rail img { width:100%; height:100%; object-fit:cover; display:block; transition:transform .55s ease; }.school-featured-gallery button::after { content:""; position:absolute; inset:0; background:linear-gradient(180deg,transparent 45%,rgba(8,46,29,.58)); }.school-featured-gallery span { position:absolute; z-index:1; bottom:18px; left:19px; color:#fff; font-size:.8rem; font-weight:900; letter-spacing:.15em; }.school-featured-gallery button:hover img,.school-gallery-rail button:hover img { transform:scale(1.07); }.school-gallery-rail { display:grid; grid-template-columns:repeat(9,minmax(0,1fr)); gap:12px; margin-top:34px; }.school-gallery-rail button { aspect-ratio:1/1; position:relative; overflow:hidden; padding:0; border:0; border-radius:5px; background:#143f2d; box-shadow:0 10px 23px rgba(12,57,38,.11); }.school-gallery-rail span { position:absolute; right:8px; bottom:6px; color:#fff; font-size:.63rem; font-weight:900; opacity:0; transition:.25s ease; }.school-gallery-rail button:hover span { opacity:1; }
.school-cta-section { padding:clamp(105px,13vw,180px) 0; text-align:center; background:radial-gradient(circle at 50% -20%,#2f704b,#103d2b 64%); color:#fff; }.school-cta-inner { max-width:870px; }.school-cta-inner h2 { margin:14px auto 17px; font-size:clamp(3rem,6vw,6.7rem); line-height:.91; }.school-cta-inner p { max-width:580px; margin:0 auto 30px; color:rgba(255,255,255,.76); line-height:1.75; }.school-cta-link { display:inline-flex; gap:10px; align-items:center; padding:15px 21px; border-radius:4px; background:#fff; color:#123d2b; font-weight:900; text-decoration:none; }
.school-gallery-modal .modal-content { overflow:hidden; border:0; border-radius:8px; background:#102a1e; }.school-gallery-modal img { display:block; width:100%; max-height:82vh; object-fit:contain; }.school-gallery-close { width:39px; height:39px; position:absolute; z-index:1; top:14px; right:14px; border:0; border-radius:50%; background:#fff; color:#123c2b; }
@media (max-width:1100px) { .school-reel-wall { min-height:0; }.school-reel-card:nth-child(n) { margin-top:0; }.school-program-layout,.school-story-layout { grid-template-columns:1fr; }.school-program-copy { max-width:680px; }.school-story-visual { min-height:470px; }.school-catalogue { grid-template-columns:1fr; gap:20px; }.school-featured-gallery button,.school-featured-gallery button:nth-child(2),.school-featured-gallery button:nth-child(3) { height:330px; margin-top:0; }.school-gallery-rail { grid-template-columns:repeat(5,minmax(0,1fr)); } }
@media (max-width:650px) { .school-wide-shell { width:min(100% - 34px,1560px); }.school-title-hero { min-height:380px; padding:120px 0 48px; }.school-title-layout { display:block; }.school-title-layout h1 { font-size:clamp(3.5rem,17vw,5.6rem); }.school-title-layout p { margin-top:25px; }.school-reel-stage,.school-program-section,.school-story-section,.school-korgan-section,.school-gallery-section { padding:76px 0; }.school-stage-heading h2 { font-size:3.1rem; }.school-reel-wall { grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }.school-reel-card:nth-child(2),.school-reel-card:nth-child(4) { margin-top:36px; }.school-reel-overlay { left:12px; right:12px; top:12px; }.school-reel-overlay strong { font-size:.88rem; }.school-reel-controls { left:9px; right:9px; bottom:10px; gap:5px; font-size:.57rem; }.school-reel-toggle { width:24px; height:24px; }.school-experience-grid { grid-template-columns:1fr; }.school-experience-grid article { min-height:260px; }.school-catalogue-section { padding:35px 0; }.school-story-copy h2 { font-size:3.1rem; }.school-story-visual { min-height:330px; }.school-featured-gallery { grid-template-columns:1.2fr .8fr; gap:10px; }.school-featured-gallery button,.school-featured-gallery button:nth-child(2),.school-featured-gallery button:nth-child(3) { height:235px; margin-top:0; }.school-featured-gallery button:first-child { grid-row:span 2; height:auto; }.school-gallery-rail { grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; margin-top:16px; }.school-gallery-heading { display:block; }.school-gallery-heading p { margin-top:20px; }.school-cta-inner h2 { font-size:3.15rem; }.school-korgan-image span { left:12px; right:auto; bottom:12px; } }

/* School event catalogue and compact planning close. */
.school-title-layout h1 b { display:block; font:inherit; }
.school-title-layout h1 .school-title-second { margin-top:.14em; }
.school-activities-section { padding:clamp(100px,12vw,175px) 0; background:linear-gradient(135deg,#fff 0%,#f2f7f0 100%); }
.school-activities-heading { display:grid; grid-template-columns:minmax(320px,.85fr) minmax(320px,.65fr); gap:45px; align-items:end; margin-bottom:52px; }
.school-activities-heading h2 { margin:11px 0 0; color:#123d2c; font-size:clamp(3.2rem,6vw,6.7rem); line-height:.92; }
.school-activities-heading p { max-width:490px; margin:0 0 5px; color:#6c7c72; font-size:1.04rem; line-height:1.8; }
.school-activity-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.school-activity-card { min-height:265px; position:relative; overflow:hidden; padding:31px; border:1px solid #dbe8dc; border-radius:8px; background:#fff; box-shadow:0 16px 34px rgba(14,62,40,.07); transition:transform .3s ease,background .3s ease,box-shadow .3s ease,color .3s ease; }
.school-activity-card::before { content:""; position:absolute; width:140px; height:140px; right:-72px; bottom:-78px; border:1px solid rgba(215,182,83,.42); border-radius:50%; transition:transform .5s ease; }
.school-activity-card:hover { transform:translateY(-9px); background:#123f2d; color:#fff; box-shadow:0 25px 45px rgba(13,60,39,.2); }
.school-activity-card:hover::before { transform:scale(1.65); }.school-activity-card>i { display:block; margin:31px 0 23px; color:#c57c45; font-size:1.55rem; transition:color .25s ease; }.school-activity-card:hover>i { color:#e5c260; }.school-activity-card h3 { position:relative; margin:0 0 10px; font-size:1.28rem; }.school-activity-card p { position:relative; max-width:310px; margin:0; color:#708075; line-height:1.65; font-size:.92rem; transition:color .25s ease; }.school-activity-card:hover p { color:rgba(255,255,255,.77); }.school-activity-index { position:absolute; top:25px; right:28px; color:#b6c2b8; font-size:.72rem; font-weight:900; letter-spacing:.11em; }.school-activity-arrow { position:absolute; right:29px; bottom:27px; opacity:0; transform:translate(-8px,8px); transition:.26s ease; }.school-activity-card:hover .school-activity-arrow { opacity:1; transform:translate(0); }
.school-cta-section { padding:clamp(80px,9vw,120px) 0; text-align:left; background:radial-gradient(circle at 82% 10%,rgba(64,130,86,.45),transparent 30%),linear-gradient(130deg,#0b3928,#13543a); }.school-cta-inner { max-width:none; display:grid; grid-template-columns:minmax(0,1.25fr) minmax(270px,.55fr); gap:clamp(50px,10vw,170px); align-items:center; }.school-cta-inner h2 { margin:12px 0 15px; max-width:820px; font-size:clamp(2.6rem,4.7vw,5.25rem); line-height:.98; }.school-cta-inner p { max-width:590px; margin:0 0 25px; }.school-cta-inner aside { display:flex; min-height:210px; flex-direction:column; align-items:flex-start; justify-content:center; gap:13px; padding:32px; border:1px solid rgba(255,255,255,.18); border-radius:8px; background:rgba(255,255,255,.08); box-shadow:0 20px 45px rgba(0,0,0,.12); }.school-cta-inner aside>i { color:#e4c25f; font-size:1.5rem; }.school-cta-inner aside strong { font-size:1.18rem; }.school-cta-inner aside span { color:rgba(255,255,255,.72); line-height:1.65; }
@media (max-width:900px) { .school-activities-heading,.school-cta-inner { grid-template-columns:1fr; gap:25px; }.school-activity-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }.school-cta-inner aside { min-height:0; }.school-cta-inner h2 { font-size:clamp(2.7rem,8vw,4.3rem); } }
@media (max-width:650px) { .school-activities-section { padding:76px 0; }.school-activities-heading h2 { font-size:3.2rem; }.school-activity-grid { grid-template-columns:1fr; }.school-activity-card { min-height:225px; }.school-cta-section { padding:76px 0; }.school-cta-inner h2 { font-size:3.1rem; }.school-cta-inner aside { padding:25px; } }

/* Editorial alignment pass: the page breathes in wide, calm bands. */
.school-reel-wall { min-height:0; grid-template-columns:repeat(4,minmax(0,1fr)); align-items:stretch; gap:clamp(18px,2vw,32px); padding:10px 0 34px; }
.school-reel-wall::before { top:auto; bottom:0; left:0; right:0; }
.school-reel-card,.school-reel-card:nth-child(1),.school-reel-card:nth-child(2),.school-reel-card:nth-child(3),.school-reel-card:nth-child(4) { margin-top:0; aspect-ratio:9/13.2; }
.school-reel-card { border:1px solid rgba(222,190,94,.22); box-shadow:0 18px 38px rgba(10,56,35,.14); }
.school-activities-heading { display:block; max-width:1060px; margin:0 auto 55px 0; }
.school-activities-heading h2 { max-width:730px; margin:14px 0 20px; font-size:clamp(3.1rem,5.4vw,5.6rem); line-height:.98; }
.school-activities-heading p { max-width:670px; margin:0; font-size:1.05rem; }
.school-cta-inner h2 { max-width:760px; }
.school-cta-inner aside { position:relative; overflow:hidden; animation:schoolPlanFloat 4.4s ease-in-out infinite; }
.school-cta-inner aside::before,.school-cta-inner aside::after { content:""; position:absolute; border:1px solid rgba(230,196,96,.32); border-radius:50%; pointer-events:none; }
.school-cta-inner aside::before { width:150px; height:150px; right:-62px; top:-72px; animation:schoolOrbit 7s linear infinite; }
.school-cta-inner aside::after { width:85px; height:85px; left:-43px; bottom:-43px; animation:schoolOrbit 5s linear infinite reverse; }
.school-cta-inner aside>* { position:relative; z-index:1; }
@keyframes schoolPlanFloat { 50% { transform:translateY(-9px); box-shadow:0 28px 55px rgba(0,0,0,.2); } }
@keyframes schoolOrbit { to { transform:rotate(360deg); } }
.school-gallery-section { background:linear-gradient(155deg,#fff 0%,#f2f7f0 100%); }
.school-gallery-heading { margin-bottom:52px; }.school-gallery-heading h2 { line-height:.95; font-size:clamp(3.2rem,5.2vw,5.7rem); }
.school-featured-gallery { position:relative; grid-template-columns:1.2fr .85fr .85fr; gap:22px; padding:25px; border:1px solid #dce8dc; border-radius:14px; background:rgba(255,255,255,.66); box-shadow:0 25px 55px rgba(11,59,37,.1); }
.school-featured-gallery button,.school-featured-gallery button:nth-child(2),.school-featured-gallery button:nth-child(3) { height:410px; margin-top:0; border-radius:10px; box-shadow:0 15px 28px rgba(11,59,37,.14); transition:transform .35s ease,box-shadow .35s ease; }
.school-featured-gallery button:nth-child(2) { margin-top:42px; height:320px; }.school-featured-gallery button:nth-child(3) { margin-top:85px; height:265px; }
.school-featured-gallery button:hover { z-index:2; transform:translateY(-10px) rotate(-.4deg); box-shadow:0 27px 48px rgba(11,59,37,.24); }
.school-gallery-rail { grid-template-columns:repeat(9,minmax(0,1fr)); gap:10px; padding:18px 20px; margin:20px 6% 0; border-radius:10px; background:#143f2d; box-shadow:0 18px 32px rgba(11,59,37,.16); }
.school-gallery-rail button { border:1px solid rgba(255,255,255,.24); border-radius:6px; box-shadow:none; }
@media (max-width:1100px) { .school-reel-wall { grid-template-columns:repeat(2,minmax(0,1fr)); }.school-featured-gallery button,.school-featured-gallery button:nth-child(2),.school-featured-gallery button:nth-child(3) { height:320px; margin-top:0; }.school-gallery-rail { margin-left:0; margin-right:0; } }
@media (max-width:650px) { .school-reel-wall { gap:13px; }.school-reel-card,.school-reel-card:nth-child(n) { aspect-ratio:9/13.5; margin-top:0; }.school-featured-gallery { display:grid; grid-template-columns:1fr; padding:12px; }.school-featured-gallery button,.school-featured-gallery button:nth-child(2),.school-featured-gallery button:nth-child(3) { height:255px; margin:0; }.school-gallery-rail { grid-template-columns:repeat(3,minmax(0,1fr)); padding:12px; } }

/* Compact single-line mastheads and a cleaner premium school gallery showcase. */
.school-title-hero.school-title-compact {
    min-height:390px;
    padding:105px 0 58px;
}
.school-title-hero.school-title-compact .school-title-layout h1 {
    font-size:clamp(3.9rem,7.1vw,7.7rem);
    line-height:.86;
}
.school-title-hero.school-title-compact .school-title-layout p {
    margin-bottom:3px;
}

.school-gallery-section {
    background:linear-gradient(180deg,#fff 0%,#f7faf5 100%);
}
.school-featured-gallery {
    padding:0;
    border:0;
    border-radius:0;
    background:transparent;
    box-shadow:none;
    grid-template-columns:minmax(0,1.08fr) minmax(0,.96fr) minmax(0,.96fr);
    gap:clamp(18px,2vw,30px);
    align-items:end;
}
.school-featured-gallery button,
.school-featured-gallery button:nth-child(2),
.school-featured-gallery button:nth-child(3) {
    height:clamp(330px,27vw,470px);
    margin-top:0;
    border:1px solid rgba(207,221,208,.9);
    border-radius:16px;
    background:#eef4ee;
    box-shadow:0 24px 52px rgba(13,61,39,.13);
}
.school-featured-gallery button:nth-child(2) {
    height:clamp(280px,22vw,385px);
}
.school-featured-gallery button:nth-child(3) {
    height:clamp(250px,19vw,330px);
}
.school-featured-gallery button::after {
    background:linear-gradient(180deg,rgba(9,42,28,0) 42%,rgba(8,41,27,.72) 100%);
}
.school-featured-gallery button::before {
    content:"";
    position:absolute;
    inset:12px;
    z-index:1;
    border:1px solid rgba(255,255,255,.38);
    border-radius:12px;
    opacity:0;
    pointer-events:none;
    transition:opacity .3s ease;
}
.school-featured-gallery button:hover::before {
    opacity:1;
}
.school-featured-gallery span {
    left:24px;
    bottom:22px;
    padding:8px 11px;
    border-radius:999px;
    color:#fff;
    background:rgba(7,36,24,.55);
    backdrop-filter:blur(8px);
}
.school-gallery-rail {
    grid-template-columns:repeat(9,minmax(0,1fr));
    gap:clamp(10px,1.1vw,16px);
    margin:clamp(20px,2.4vw,34px) 0 0;
    padding:0;
    border-radius:0;
    background:transparent;
    box-shadow:none;
}
.school-gallery-rail button {
    border:1px solid rgba(210,224,211,.95);
    border-radius:12px;
    background:#eef4ee;
    box-shadow:0 14px 30px rgba(13,61,39,.09);
    transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease;
}
.school-gallery-rail button:hover {
    transform:translateY(-6px);
    border-color:rgba(189,112,68,.45);
    box-shadow:0 23px 42px rgba(13,61,39,.16);
}
.school-gallery-rail button::after {
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(180deg,rgba(8,42,27,0) 45%,rgba(8,42,27,.5));
    opacity:0;
    transition:opacity .28s ease;
}
.school-gallery-rail button:hover::after {
    opacity:1;
}
.school-gallery-rail span {
    z-index:1;
    right:11px;
    bottom:9px;
    padding:5px 7px;
    border-radius:999px;
    background:rgba(7,36,24,.55);
    backdrop-filter:blur(8px);
}

@media (max-width:1100px) {
    .school-title-hero.school-title-compact { min-height:360px; }
    .school-featured-gallery { grid-template-columns:1fr 1fr; }
    .school-featured-gallery button:first-child { grid-column:span 2; }
    .school-featured-gallery button,
    .school-featured-gallery button:nth-child(2),
    .school-featured-gallery button:nth-child(3) { height:320px; }
    .school-gallery-rail { grid-template-columns:repeat(5,minmax(0,1fr)); }
}
@media (max-width:650px) {
    .school-title-hero.school-title-compact { min-height:330px; padding:110px 0 44px; }
    .school-title-hero.school-title-compact .school-title-layout h1 { font-size:clamp(3.25rem,15vw,4.9rem); }
    .school-featured-gallery { grid-template-columns:1fr; }
    .school-featured-gallery button:first-child { grid-column:auto; }
    .school-featured-gallery button,
    .school-featured-gallery button:nth-child(2),
    .school-featured-gallery button:nth-child(3) { height:255px; }
    .school-gallery-rail { grid-template-columns:repeat(2,minmax(0,1fr)); }
}

/* Premium video showcase and animated planning card refresh. */
.school-reel-stage {
    padding:clamp(86px,8.5vw,136px) 0 clamp(92px,8vw,128px);
    background:
        radial-gradient(circle at 78% 8%,rgba(226,194,96,.18),transparent 27%),
        linear-gradient(180deg,#fbfaf5 0%,#f6f8f2 100%);
}
.school-reel-stage .school-wide-shell {
    width:min(1780px,calc(100% - 44px));
}
.school-stage-heading {
    width:100%;
    max-width:none;
    margin:0 0 clamp(38px,4.6vw,70px);
    display:grid;
    grid-template-columns:minmax(0,1.05fr) minmax(320px,.62fr);
    gap:clamp(34px,7vw,130px);
    align-items:end;
}
.school-stage-kicker {
    display:inline-flex;
    width:max-content;
    align-items:center;
    gap:12px;
    padding:10px 14px;
    border:1px solid rgba(196,126,70,.22);
    border-radius:999px;
    background:#fff;
    box-shadow:0 14px 34px rgba(15,63,42,.08);
}
.school-stage-kicker span {
    color:#bd7044;
    font-size:.72rem;
    font-weight:900;
    letter-spacing:.18em;
}
.school-stage-kicker i {
    width:24px;
    height:24px;
    display:grid;
    place-items:center;
    border-radius:50%;
    color:#fff;
    background:#123f2d;
    font-size:.62rem;
    animation:schoolVideoPulse 1.8s ease-in-out infinite;
}
.school-stage-title-row {
    display:contents;
}
.school-stage-heading h2 {
    max-width:880px;
    margin:16px 0 0;
    position:relative;
    color:#103d2d;
    font-size:clamp(4.2rem,7.5vw,8.9rem);
    line-height:.84;
    letter-spacing:-.055em;
}
.school-stage-heading h2::after {
    content:"";
    width:clamp(130px,16vw,290px);
    height:10px;
    position:absolute;
    left:.03em;
    bottom:-18px;
    border-radius:999px;
    background:linear-gradient(90deg,#d8b75a,#bd7044,transparent);
}
.school-stage-heading p {
    max-width:460px;
    margin:0 0 18px;
    padding:24px 0 0 28px;
    border-left:2px solid rgba(189,112,68,.32);
    color:#63776b;
    font-size:1.05rem;
    line-height:1.8;
}
.school-reel-wall {
    min-height:0;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:clamp(18px,2.1vw,34px);
    padding:clamp(14px,2vw,30px);
    border:1px solid rgba(212,226,213,.82);
    border-radius:26px;
    background:rgba(255,255,255,.68);
    box-shadow:0 35px 80px rgba(12,55,36,.11);
    backdrop-filter:blur(12px);
}
.school-reel-wall::before {
    display:none;
}
.school-reel-card,
.school-reel-card:nth-child(1),
.school-reel-card:nth-child(2),
.school-reel-card:nth-child(3),
.school-reel-card:nth-child(4) {
    aspect-ratio:9/12.45;
    margin-top:0;
    border:1px solid rgba(255,255,255,.48);
    border-radius:18px;
    background:#0d3b29;
    box-shadow:0 25px 54px rgba(9,46,30,.18);
    transition:transform .35s ease,box-shadow .35s ease;
}
.school-reel-card:nth-child(even) {
    transform:translateY(28px);
}
.school-reel-card:hover {
    z-index:2;
    transform:translateY(-10px);
    box-shadow:0 38px 74px rgba(9,46,30,.28);
}
.school-reel-card:nth-child(even):hover {
    transform:translateY(14px);
}
.school-reel-card::after {
    background:
        linear-gradient(180deg,rgba(7,30,20,.08) 35%,rgba(5,34,22,.92) 100%),
        radial-gradient(circle at 50% 0%,rgba(255,255,255,.12),transparent 42%);
}
.school-reel-overlay {
    top:19px;
    left:20px;
    right:20px;
}
.school-reel-overlay span {
    padding:7px 9px;
    border-radius:999px;
    color:#123f2d;
    background:#e7c766;
}
.school-reel-overlay strong {
    max-width:150px;
    padding:8px 10px;
    border-radius:999px;
    background:rgba(9,39,26,.48);
    backdrop-filter:blur(8px);
    font-size:.96rem;
}
.school-reel-controls {
    left:18px;
    right:18px;
    bottom:17px;
    min-height:42px;
    padding:8px 10px;
    border:1px solid rgba(255,255,255,.2);
    border-radius:999px;
    background:rgba(5,32,21,.62);
    backdrop-filter:blur(12px);
}
.school-reel-toggle {
    width:30px;
    height:30px;
    border:0;
    background:#fff;
    color:#123f2d;
}
.school-reel-progress {
    accent-color:#e7c766;
}
.school-stage-marker {
    justify-content:center;
    margin-top:50px;
}

.school-cta-inner {
    grid-template-columns:minmax(0,1.08fr) minmax(410px,.72fr);
    gap:clamp(60px,8vw,150px);
}
.school-cta-inner aside.school-plan-card {
    min-height:360px;
    padding:34px;
    border-color:rgba(255,255,255,.2);
    background:linear-gradient(145deg,rgba(255,255,255,.13),rgba(255,255,255,.055));
}
.school-plan-card ol {
    width:100%;
    margin:20px 0 0;
    padding:0;
    display:grid;
    gap:10px;
    list-style:none;
}
.school-plan-card li {
    position:relative;
    overflow:hidden;
    display:flex;
    align-items:center;
    gap:12px;
    padding:12px 13px;
    border:1px solid rgba(255,255,255,.14);
    border-radius:12px;
    background:rgba(255,255,255,.075);
}
.school-plan-card li::after {
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(90deg,transparent,rgba(231,199,102,.18),transparent);
    transform:translateX(-120%);
    animation:schoolPlanScan 3.6s ease-in-out infinite;
}
.school-plan-card li:nth-child(2)::after { animation-delay:.55s; }
.school-plan-card li:nth-child(3)::after { animation-delay:1.1s; }
.school-plan-card b {
    color:#e7c766;
    font-size:.76rem;
    letter-spacing:.12em;
}
.school-plan-card em {
    color:rgba(255,255,255,.82);
    font-style:normal;
    font-size:.9rem;
}
.school-plan-live {
    margin-top:18px;
    display:inline-flex;
    align-items:center;
    gap:10px;
    color:rgba(255,255,255,.78);
    font-size:.78rem;
    font-weight:800;
    letter-spacing:.08em;
    text-transform:uppercase;
}
.school-plan-live i {
    width:10px;
    height:10px;
    border-radius:50%;
    background:#65e39a;
    box-shadow:0 0 0 0 rgba(101,227,154,.55);
    animation:schoolLiveDot 1.6s ease-out infinite;
}
.school-plan-orbit {
    position:absolute;
    inset:22px;
    pointer-events:none;
}
.school-plan-orbit span {
    position:absolute;
    width:11px;
    height:11px;
    border-radius:50%;
    background:#e7c766;
    box-shadow:0 0 22px rgba(231,199,102,.55);
    animation:schoolOrbitDot 6s linear infinite;
}
.school-plan-orbit span:nth-child(1) { left:12%; top:6%; }
.school-plan-orbit span:nth-child(2) { right:9%; top:40%; animation-delay:-2s; }
.school-plan-orbit span:nth-child(3) { left:46%; bottom:4%; animation-delay:-4s; }

@keyframes schoolVideoPulse {
    50% { transform:scale(1.12); box-shadow:0 0 0 8px rgba(18,63,45,.12); }
}
@keyframes schoolPlanScan {
    45%,100% { transform:translateX(120%); }
}
@keyframes schoolLiveDot {
    80%,100% { box-shadow:0 0 0 12px rgba(101,227,154,0); }
}
@keyframes schoolOrbitDot {
    50% { transform:translate(22px,-18px) scale(1.35); opacity:.72; }
    100% { transform:translate(0) scale(1); }
}

@media (max-width:1100px) {
    .school-stage-heading { grid-template-columns:1fr; gap:22px; }
    .school-stage-heading p { max-width:680px; padding-left:20px; }
    .school-reel-wall { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .school-reel-card:nth-child(even),
    .school-reel-card:nth-child(even):hover { transform:none; }
    .school-cta-inner { grid-template-columns:1fr; }
}
@media (max-width:650px) {
    .school-reel-stage .school-wide-shell { width:min(100% - 28px,1560px); }
    .school-stage-heading h2 { font-size:clamp(3.35rem,16vw,5.2rem); }
    .school-stage-heading p { padding-top:16px; }
    .school-reel-wall { grid-template-columns:1fr; padding:12px; border-radius:18px; }
    .school-reel-card,
    .school-reel-card:nth-child(n) { aspect-ratio:9/12.2; }
    .school-cta-inner aside.school-plan-card { min-height:0; padding:26px; }
}

/* Final refinement: centered one-line video title, cleaner reels, animated radar CTA. */
.school-reel-stage {
    padding:clamp(74px,7.5vw,118px) 0 clamp(86px,7.5vw,122px);
}
.school-stage-heading {
    display:block;
    max-width:1280px;
    margin:0 auto clamp(34px,4vw,58px);
    text-align:center;
}
.school-stage-eyebrow {
    display:inline-flex;
    align-items:center;
    gap:10px;
    margin:0 auto 18px;
    color:#bd7044;
    font-size:.72rem;
    font-weight:900;
    letter-spacing:.18em;
}
.school-stage-eyebrow::before,
.school-stage-eyebrow::after {
    content:"";
    width:42px;
    height:1px;
    background:linear-gradient(90deg,transparent,#bd7044);
}
.school-stage-eyebrow::after {
    background:linear-gradient(90deg,#bd7044,transparent);
}
.school-stage-heading h2 {
    max-width:none;
    margin:0 auto 16px;
    color:#103d2d;
    font-size:clamp(3.2rem,5.25vw,6.8rem);
    line-height:.98;
    letter-spacing:-.045em;
    white-space:nowrap;
}
.school-stage-heading h2::after {
    width:min(360px,42vw);
    height:5px;
    left:50%;
    bottom:-14px;
    transform:translateX(-50%);
    background:linear-gradient(90deg,transparent,#d8b75a,#bd7044,transparent);
}
.school-stage-heading p {
    max-width:620px;
    margin:28px auto 0;
    padding:0;
    border:0;
    color:#62766a;
}
.school-reel-wall {
    width:min(1720px,100%);
    margin:0 auto;
    padding:0;
    border:0;
    border-radius:0;
    background:transparent;
    box-shadow:none;
    backdrop-filter:none;
}
.school-reel-card,
.school-reel-card:nth-child(1),
.school-reel-card:nth-child(2),
.school-reel-card:nth-child(3),
.school-reel-card:nth-child(4) {
    aspect-ratio:9/12.2;
    border:1px solid rgba(211,224,212,.9);
    border-radius:22px;
    background:#f1f5ef;
    box-shadow:0 28px 62px rgba(10,54,35,.13);
    transform:none;
}
.school-reel-card:nth-child(even),
.school-reel-card:nth-child(even):hover {
    transform:none;
}
.school-reel-card:hover {
    transform:translateY(-8px);
    box-shadow:0 38px 78px rgba(10,54,35,.22);
}
.school-reel-card::before {
    content:"";
    position:absolute;
    inset:10px;
    z-index:2;
    border:1px solid rgba(255,255,255,.38);
    border-radius:16px;
    pointer-events:none;
}
.school-reel-card::after {
    background:linear-gradient(180deg,rgba(6,36,23,.02) 28%,rgba(5,34,22,.88) 100%);
}
.school-reel-overlay {
    top:18px;
    left:auto;
    right:18px;
    justify-content:flex-end;
}
.school-reel-overlay span {
    display:none;
}
.school-reel-overlay strong {
    max-width:180px;
    padding:9px 12px;
    border:1px solid rgba(255,255,255,.18);
    border-radius:999px;
    background:rgba(8,38,25,.55);
    color:#fff;
    text-align:right;
}
.school-reel-controls {
    left:18px;
    right:18px;
    bottom:18px;
    border-radius:18px;
    background:rgba(5,32,21,.7);
}
.school-stage-marker {
    display:none;
}

.school-cta-inner aside.school-plan-card {
    min-height:430px;
    display:grid;
    grid-template-columns:minmax(230px,.92fr) minmax(210px,.78fr);
    gap:24px;
    align-items:center;
    padding:30px;
    overflow:hidden;
}
.school-plan-card > i,
.school-plan-card > strong,
.school-plan-card > span,
.school-plan-card > ol,
.school-plan-orbit {
    display:none;
}
.school-plan-radar {
    position:relative;
    width:min(100%,300px);
    aspect-ratio:1;
    margin:auto;
    display:grid;
    place-items:center;
    border-radius:50%;
    background:
        radial-gradient(circle,rgba(231,199,102,.18) 0 7%,transparent 8%),
        radial-gradient(circle,rgba(255,255,255,.1),transparent 58%);
}
.school-radar-ring {
    position:absolute;
    inset:13%;
    border:1px solid rgba(231,199,102,.34);
    border-radius:50%;
    animation:schoolRadarBreath 3.4s ease-in-out infinite;
}
.school-radar-ring:nth-child(2) {
    inset:28%;
    border-color:rgba(255,255,255,.2);
    animation-delay:.8s;
}
.school-radar-sweep {
    position:absolute;
    inset:5%;
    border-radius:50%;
    background:conic-gradient(from 0deg,rgba(101,227,154,.42),rgba(231,199,102,.14) 35deg,transparent 88deg);
    animation:schoolRadarSweep 4.8s linear infinite;
    mask:radial-gradient(circle,transparent 0 18%,#000 19% 100%);
}
.school-plan-core {
    position:relative;
    z-index:2;
    width:92px;
    height:92px;
    display:grid;
    place-items:center;
    align-content:center;
    gap:4px;
    border-radius:50%;
    color:#0f402d;
    background:#f5d36f;
    box-shadow:0 0 38px rgba(245,211,111,.28);
}
.school-plan-core i {
    font-size:1.05rem;
}
.school-plan-core b {
    color:#0f402d;
    font-size:.78rem;
    letter-spacing:.08em;
    text-transform:uppercase;
}
.school-plan-node {
    position:absolute;
    z-index:3;
    padding:8px 10px;
    border:1px solid rgba(255,255,255,.16);
    border-radius:999px;
    color:#fff;
    background:rgba(9,45,30,.68);
    font-size:.76rem;
    font-weight:850;
    box-shadow:0 10px 24px rgba(0,0,0,.12);
    animation:schoolNodeFloat 3s ease-in-out infinite;
}
.school-plan-node.node-a { top:12%; left:4%; }
.school-plan-node.node-b { top:28%; right:-2%; animation-delay:.65s; }
.school-plan-node.node-c { left:18%; bottom:8%; animation-delay:1.2s; }
.school-plan-copy {
    position:relative;
    z-index:4;
}
.school-plan-copy strong {
    display:block;
    color:#fff;
    font-size:clamp(1.45rem,2vw,2rem);
    line-height:1.15;
}
.school-plan-copy span {
    display:block;
    margin-top:13px;
    color:rgba(255,255,255,.74);
    line-height:1.75;
}
.school-plan-live {
    grid-column:1 / -1;
    width:max-content;
    margin:0;
    padding:10px 12px;
    border:1px solid rgba(101,227,154,.25);
    border-radius:999px;
    background:rgba(101,227,154,.08);
}

@keyframes schoolRadarSweep {
    to { transform:rotate(360deg); }
}
@keyframes schoolRadarBreath {
    50% { transform:scale(1.06); opacity:.55; }
}
@keyframes schoolNodeFloat {
    50% { transform:translateY(-8px); }
}

@media (max-width:1100px) {
    .school-stage-heading h2 { white-space:normal; }
    .school-cta-inner aside.school-plan-card { grid-template-columns:1fr; }
}
@media (max-width:650px) {
    .school-stage-heading h2 { font-size:clamp(2.6rem,12vw,4.2rem); }
    .school-stage-eyebrow::before,
    .school-stage-eyebrow::after { width:24px; }
    .school-cta-inner aside.school-plan-card { padding:24px; }
    .school-plan-radar { width:min(100%,250px); }
}

/* Cleaner media controls and unified premium headings for the rest of the school page. */
.school-reel-controls {
    left:18px;
    right:18px;
    bottom:18px;
    min-height:32px;
    padding:5px 9px;
    gap:8px;
    border:1px solid rgba(255,255,255,.72);
    border-radius:999px;
    color:#153d2c;
    background:rgba(255,255,255,.92);
    box-shadow:none;
    backdrop-filter:none;
}
.school-reel-toggle {
    width:24px;
    height:24px;
    flex:0 0 24px;
    border:0;
    color:#fff;
    background:#123f2d;
    font-size:.62rem;
}
.school-reel-time,
.school-reel-duration {
    color:#234c3a;
    font-size:.62rem;
    font-weight:800;
}
.school-reel-progress {
    height:2px;
    accent-color:#d6b85c;
}

.school-program-copy > span,
.school-activities-heading > span,
.school-korgan-heading > span,
.school-gallery-heading span {
    display:inline-flex;
    align-items:center;
    gap:10px;
    color:#bd7044;
    font-size:.72rem;
    font-weight:900;
    letter-spacing:.18em;
}
.school-program-copy > span::before,
.school-activities-heading > span::before,
.school-korgan-heading > span::before,
.school-gallery-heading span::before,
.school-program-copy > span::after,
.school-activities-heading > span::after,
.school-korgan-heading > span::after,
.school-gallery-heading span::after {
    content:"";
    width:34px;
    height:1px;
    background:linear-gradient(90deg,transparent,#bd7044);
}
.school-program-copy > span::after,
.school-activities-heading > span::after,
.school-korgan-heading > span::after,
.school-gallery-heading span::after {
    background:linear-gradient(90deg,#bd7044,transparent);
}
.school-program-copy h2,
.school-activities-heading h2,
.school-korgan-heading h2,
.school-gallery-heading h2 {
    position:relative;
    max-width:1180px;
    color:#103d2d;
    font-size:clamp(3.1rem,5.3vw,6.45rem);
    line-height:.98;
    letter-spacing:-.045em;
}
.school-program-copy h2::after,
.school-activities-heading h2::after,
.school-korgan-heading h2::after,
.school-gallery-heading h2::after {
    content:"";
    width:min(310px,38vw);
    height:5px;
    position:absolute;
    left:0;
    bottom:-15px;
    border-radius:999px;
    background:linear-gradient(90deg,#d8b75a,#bd7044,transparent);
}
.school-activities-heading {
    max-width:1250px;
    margin:0 auto 62px;
    text-align:center;
}
.school-activities-heading h2 {
    margin:15px auto 0;
}
.school-activities-heading h2::after {
    left:50%;
    transform:translateX(-50%);
    background:linear-gradient(90deg,transparent,#d8b75a,#bd7044,transparent);
}
.school-activities-heading p {
    max-width:760px;
    margin:32px auto 0;
}
.school-gallery-heading {
    display:block;
    max-width:1250px;
    margin:0 auto 56px;
    text-align:center;
}
.school-gallery-heading h2 {
    margin:15px auto 0;
}
.school-gallery-heading h2::after {
    left:50%;
    transform:translateX(-50%);
    background:linear-gradient(90deg,transparent,#d8b75a,#bd7044,transparent);
}
.school-gallery-heading p {
    max-width:560px;
    margin:32px auto 0;
}
.school-korgan-heading h2 {
    margin-left:auto;
    margin-right:auto;
}
.school-korgan-heading h2::after {
    left:50%;
    transform:translateX(-50%);
    background:linear-gradient(90deg,transparent,#d8b75a,#bd7044,transparent);
}
.school-program-copy h2 {
    margin-bottom:32px;
}

@media (max-width:650px) {
    .school-program-copy h2,
    .school-activities-heading h2,
    .school-korgan-heading h2,
    .school-gallery-heading h2 {
        font-size:clamp(2.65rem,12vw,4.1rem);
        letter-spacing:-.035em;
    }
}

/* Korgan title refinement requested after the video heading pass. */
.school-korgan-heading h2 {
    max-width: 1120px;
    font-size: clamp(2.9rem, 5.2vw, 6rem);
    letter-spacing: -.052em;
}

.school-korgan-heading h2::after {
    display: none !important;
}

.school-korgan-heading p {
    margin-top: 18px;
}

.school-reel-media,
.school-reel-media picture,
.school-reel-media > div,
.school-reel-media img,
.school-reel-media video,
.school-reel-media iframe {
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    display:block;
}

.school-reel-media img,
.school-reel-media video {
    object-fit:cover;
    transition:transform .6s ease;
}

.school-reel-card:not(.is-playing):hover .school-reel-media img {
    transform:scale(1.06);
}

.school-reel-media iframe {
    z-index:4;
    border:0;
    background:#000;
}

.school-reel-controls span {
    font-weight:800;
    letter-spacing:0;
}

.school-reel-card.is-playing::after,
.school-reel-card.is-playing .school-reel-overlay,
.school-reel-card.is-playing .school-reel-controls {
    display:none;
}

.school-reel-card.is-playing .school-reel-media iframe {
    pointer-events:none;
}

.school-reel-card.is-playing .school-reel-media::before,
.school-reel-card.is-playing .school-reel-media::after {
    content:"";
    position:absolute;
    z-index:7;
    pointer-events:none;
}

.school-reel-card.is-playing .school-reel-media::before {
    display:block;
    left:0;
    top:0;
    width:76px;
    height:74px;
    border-radius:0;
    background:#000;
}

.school-reel-card.is-playing .school-reel-media::after {
    right:0;
    top:58px;
    bottom:106px;
    width:58px;
    background:linear-gradient(90deg,rgba(0,0,0,0) 0%,#000 35%,#000 100%);
}

.school-reel-card.is-playing::before,
.school-reel-card.is-playing::after {
    content:"";
    position:absolute;
    left:0;
    right:0;
    z-index:6;
    display:block;
    border:0;
    border-radius:0;
    pointer-events:none;
}

.school-reel-card.is-playing::before {
    display:none;
}

.school-reel-card.is-playing::after {
    inset:auto 0 0 0;
    top:auto;
    bottom:0;
    height:116px;
    background:linear-gradient(0deg,rgba(0,0,0,.94) 0%,rgba(0,0,0,.76) 48%,transparent 100%);
}

.school-reel-click-layer {
    position:absolute;
    z-index:8;
    inset:0 0 92px 0;
    padding:0;
    border:0;
    background:transparent;
    cursor:pointer;
}

.school-reel-player-controls {
    position:absolute;
    z-index:9;
    left:18px;
    right:18px;
    bottom:16px;
    min-height:44px;
    display:grid;
    grid-template-columns:32px minmax(0,1fr) auto 32px;
    gap:10px;
    align-items:center;
    padding:8px 10px;
    border:1px solid rgba(255,255,255,.26);
    border-radius:999px;
    color:#fff;
    background:rgba(4,18,13,.76);
    backdrop-filter:blur(12px);
}

.school-reel-player-toggle,
.school-reel-volume-toggle {
    width:28px;
    height:28px;
    display:grid;
    place-items:center;
    padding:0;
    border:0;
    border-radius:50%;
    color:#fff;
    background:#123f2d;
    font-size:.72rem;
}

.school-reel-player-controls input[type="range"] {
    width:100%;
    height:4px;
    accent-color:#ef233c;
    cursor:pointer;
}

.school-reel-player-controls span {
    min-width:70px;
    color:rgba(255,255,255,.84);
    font-size:.62rem;
    font-weight:800;
    text-align:right;
}

.school-reel-startup-mask {
    position:absolute;
    z-index:7;
    left:50%;
    top:50%;
    width:62px;
    height:62px;
    display:grid;
    place-items:center;
    border:1px solid rgba(255,255,255,.38);
    border-radius:50%;
    color:#fff;
    background:rgba(12,55,36,.84);
    box-shadow:0 16px 34px rgba(0,0,0,.26);
    pointer-events:none;
    transform:translate(-50%,-50%);
    animation:schoolReelMaskOut 5.5s ease forwards;
}

.school-reel-startup-mask span {
    position:absolute;
    inset:7px;
    border:2px solid rgba(231,199,102,.25);
    border-top-color:#e7c766;
    border-radius:50%;
    animation:schoolReelMaskSpin 1.05s linear infinite;
}

.school-reel-startup-mask i {
    position:relative;
    z-index:1;
    font-size:.92rem;
}

@keyframes schoolReelMaskSpin {
    to { transform:rotate(360deg); }
}

@keyframes schoolReelMaskOut {
    0%, 78% { opacity:1; transform:translate(-50%,-50%) scale(1); }
    100% { opacity:0; transform:translate(-50%,-50%) scale(.84); }
}

.school-reel-card.is-control-hover,
.school-reel-card:nth-child(even).is-control-hover {
    transform:none;
    box-shadow:0 28px 62px rgba(10,54,35,.13);
}

.school-reel-card.is-control-hover .school-reel-media img,
.school-reel-card.is-control-hover .school-reel-media video {
    transform:none;
}

/* Video vitrini revizyonu: YouTube oynarken kenarları karartan maskeleri kapat ve modal büyütme düğmesini sadeleştir. */
.school-reel-card.is-playing .school-reel-media::before,
.school-reel-card.is-playing .school-reel-media::after,
.school-reel-card.is-playing::after {
    display:none !important;
}

.school-reel-card.is-playing .school-reel-media iframe {
    background:transparent;
}

.school-reel-card,
.school-reel-card:nth-child(1),
.school-reel-card:nth-child(2),
.school-reel-card:nth-child(3),
.school-reel-card:nth-child(4) {
    aspect-ratio:9/16;
}

.school-reel-expand {
    position:absolute;
    z-index:12;
    top:18px;
    left:18px;
    width:34px;
    height:34px;
    display:grid;
    place-items:center;
    border:1px solid rgba(255,255,255,.62);
    border-radius:50%;
    color:#fff;
    background:rgba(8,38,25,.58);
    backdrop-filter:blur(8px);
    box-shadow:0 10px 24px rgba(0,0,0,.16);
    pointer-events:auto;
    transition:transform .22s ease, background .22s ease, border-color .22s ease;
}

.school-reel-expand:hover,
.school-reel-expand:focus {
    color:#123f2d;
    background:#fff;
    border-color:#fff;
    transform:translateY(-2px);
}

.school-reel-card.is-playing .school-reel-expand {
    z-index:13;
    opacity:1;
    background:rgba(8,38,25,.82);
}

.school-video-modal .modal-dialog {
    width:calc(100% - 32px);
    max-width:390px;
}

.school-video-modal .modal-content {
    position:relative;
    overflow:hidden;
    border:0;
    border-radius:22px;
    background:#071b13;
    box-shadow:0 32px 80px rgba(0,0,0,.34);
}

.school-video-frame-wrap {
    width:100%;
    aspect-ratio:9/16;
    background:#071b13;
}

.school-video-modal iframe {
    display:block;
    width:100%;
    height:100%;
    border:0;
    background:#071b13;
}

@media (max-width:650px) {
    .school-video-modal .modal-dialog {
        width:calc(100% - 24px);
        max-width:360px;
        margin:12px auto;
    }

    .school-reel-expand {
        top:14px;
        left:14px;
        width:32px;
        height:32px;
    }
}
