.prakriti-paths .card{color:inherit;text-decoration:none}.prakriti-paths .card:hover{border-color:#a77526}.health-fair-gallery{columns:3;column-gap:1.5rem}.health-fair-gallery figure{break-inside:avoid;margin:0 0 1.75rem;min-width:0}.health-fair-gallery a{display:block;overflow:hidden;border-radius:14px;background:#eadfc7}.health-fair-gallery img{display:block;width:100%;height:auto;transition:transform .45s ease,filter .45s ease}.health-fair-gallery a:hover img{transform:scale(1.025);filter:saturate(1.08)}.health-fair-gallery a:focus-visible{outline:3px solid #8e4b9a;outline-offset:5px}.health-fair-gallery figcaption{padding:.7rem .15rem;line-height:1.5}.health-fair-gallery figcaption span{display:block;font-size:.8em;letter-spacing:.08em;text-transform:uppercase;opacity:.7}.photo-viewer{box-sizing:border-box;width:min(1100px,96vw);max-height:94dvh;padding:1rem 1.25rem;border:1px solid #bda56b;border-radius:18px;background:#201227;color:#fff7e5;overflow:auto}.photo-viewer::backdrop{background:rgba(16,8,21,.9)}.photo-viewer-bar,.photo-viewer-controls{display:flex;align-items:center;justify-content:space-between;gap:1rem}.photo-viewer button{border:1px solid #ccb573;border-radius:30px;padding:.65rem 1.1rem;background:transparent;color:inherit;font:inherit;cursor:pointer;min-height:44px}.photo-viewer button:focus-visible{outline:3px solid white;outline-offset:3px}.photo-viewer-image{display:block;width:100%;height:65dvh;object-fit:contain;margin:1rem auto}.photo-viewer-caption{margin:.5rem 0 1rem}.photo-viewer-open{overflow:hidden}@media(max-width:900px){.health-fair-gallery{columns:2}}@media(max-width:580px){.health-fair-gallery{columns:1}.photo-viewer{padding:1rem}.photo-viewer-image{height:56dvh}}@media(prefers-reduced-motion:reduce){.health-fair-gallery img{transition:none}.health-fair-gallery a:hover img{transform:none}}

.school-hero--ecology .school-hero-media{max-height:none;min-height:0}.school-hero--ecology .school-hero-media img{height:auto;object-fit:contain}.school-hero--ecology .school-hero-title{margin-top:0}.prakriti-story-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem}.prakriti-story figure,.prakriti-study figure{margin:0}.prakriti-story img{width:100%;height:auto;border-radius:14px;display:block}.prakriti-story figcaption,.prakriti-study figcaption{padding:.75rem 0;font-size:.9em;line-height:1.5}.prakriti-study{background:#eee5d2}.prakriti-study-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:clamp(1.5rem,4vw,4rem);align-items:center}.prakriti-study img{width:100%;height:auto;display:block;border-radius:14px}.prakriti-study .hero-actions{display:flex;flex-wrap:wrap;gap:1rem;align-items:center}@media(max-width:700px){.prakriti-story-grid,.prakriti-study-grid{grid-template-columns:1fr}.school-hero--ecology .school-hero-media img{height:auto}}

.placement-jumps{display:flex;flex-wrap:wrap;gap:.75rem;margin:1.5rem 0}.placement-jumps a{border:1px solid #b8a16c;border-radius:24px;padding:.7rem 1rem;color:inherit}.prakriti-placement{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:clamp(1.5rem,4vw,4rem);padding:3rem 0;border-bottom:1px solid #cdbd93;align-items:start;scroll-margin-top:6rem}.prakriti-placement figure{margin:0}.prakriti-placement img{width:100%;height:auto;display:block;border-radius:14px}.prakriti-placement h3{font-size:clamp(1.7rem,3vw,2.4rem);line-height:1.2}.prakriti-placement dt{font-weight:bold;margin-top:1rem}.prakriti-placement dd{margin:.25rem 0 0;line-height:1.65}.prakriti-placement details{margin:1rem 0}.prakriti-placement summary{cursor:pointer;min-height:44px;padding:.6rem 0}.placement-route{margin-top:2rem;padding:1.5rem;background:#eee5d2;border-radius:14px}@media(max-width:700px){.prakriti-placement{grid-template-columns:1fr}.placement-jumps{flex-direction:column}}

/* Prakriti banner: fixed visual rhythm, shaded title over the photograph. */
.school-hero--ecology .prakriti-banner-scene{position:relative;isolation:isolate;width:min(1360px,94vw);height:420px;margin:0 auto;overflow:hidden;border-radius:12px}
.school-hero--ecology .school-hero-media{width:100%;height:100%;margin:0;max-height:none}
.school-hero--ecology .school-hero-media img{width:100%;height:100%;object-fit:cover;object-position:50% 43%}
.prakriti-banner-scene::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(19,26,18,.08) 20%,rgba(19,26,18,.2) 45%,rgba(19,26,18,.78) 100%);z-index:1;pointer-events:none}
.school-hero--ecology .school-hero-title{position:absolute;inset:auto 0 0;width:auto;margin:0;padding:28px 40px;background:transparent;border:0;box-shadow:none;color:#fffaf0;z-index:2}
.school-hero--ecology .school-hero-title .school-kicker{color:#fff5d8;text-shadow:0 1px 5px #162014;line-height:1.6}
.school-hero--ecology .school-hero-title h1{color:#fffaf0;font-size:clamp(3.2rem,7vw,6rem);text-shadow:0 2px 12px rgba(0,0,0,.5)}
.prakriti-banner-intro{padding-top:1.5rem}.school-hero--ecology .prakriti-banner-intro .school-lead{max-width:850px;margin-top:0}.prakriti-banner-intro .hero-actions{display:flex;flex-wrap:wrap;gap:1rem;align-items:center}.school-hero--ecology .school-hero-credit{width:min(1180px,88vw);margin:1rem auto 0;padding-bottom:1.25rem}
@media(max-width:700px){.school-hero--ecology .prakriti-banner-scene{width:100%;height:320px;border-radius:0}.school-hero--ecology .school-hero-title{width:auto;margin:0;padding:22px}.school-hero--ecology .school-hero-media img{height:100%;object-position:50% 43%}.school-hero--ecology .school-hero-title .school-kicker{font-size:10px;letter-spacing:.1em}}

.prakriti-paths .cards{align-items:stretch}.prakriti-paths .card{overflow:hidden}.prakriti-paths .card .prakriti-path-photo{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;object-position:center;margin:0 0 1.25rem;border-radius:10px}.prakriti-paths .card:first-child .prakriti-path-photo{object-position:50% 60%}.prakriti-community-banner{background:#eee5d2}.prakriti-community-banner figure{margin:1.5rem 0}.prakriti-community-banner img{display:block;width:100%;height:auto;max-height:620px;object-fit:contain;border-radius:14px;background:#e2d6bc}.prakriti-community-banner figcaption{font-size:.9em;line-height:1.5;padding:.75rem 0}@media(max-width:700px){.prakriti-paths .card .prakriti-path-photo{aspect-ratio:auto;height:auto}.prakriti-community-banner img{max-height:none}}

.yagi-film{position:relative;isolation:isolate;overflow:hidden;background:#18251b}.yagi-film-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:35% 50%;z-index:-2;pointer-events:none}.yagi-film::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(11,25,17,.86),rgba(11,25,17,.66));z-index:-1}.yagi-film .eyebrow,.yagi-film h2,.yagi-film p,.yagi-film .quote{color:#fff9e9;text-shadow:0 1px 4px #102015}.yagi-film-tools{position:relative;display:flex;flex-wrap:wrap;gap:1rem;align-items:center;margin-top:1.5rem}.yagi-film-toggle{font:inherit;cursor:pointer;border:1px solid #e2d4ac;border-radius:24px;padding:.6rem 1rem;min-height:44px;background:rgba(14,27,18,.7);color:#fff9e9}.yagi-film-tools a{color:#fff9e9}.yagi-film-toggle:focus-visible{outline:3px solid #fff;outline-offset:4px}@media(prefers-reduced-motion:reduce){.yagi-film-video{opacity:.65}}
