/* Gentle translucent surfaces and direct pointer feedback. */
:root{--glass-edge:rgba(255,255,255,.78);--glass-shadow:0 18px 60px rgba(32,63,45,.09)}
body{background:radial-gradient(ellipse at 85% 8%,#e9f5df 0,transparent 28%),radial-gradient(ellipse at 4% 47%,#e2f1ef 0,transparent 23%),var(--paper)}
.header{position:sticky;top:0;z-index:10;background:rgba(248,250,246,.76);backdrop-filter:blur(24px) saturate(150%);-webkit-backdrop-filter:blur(24px) saturate(150%);box-shadow:0 1px 18px rgba(30,61,44,.04)}
.brand-mark{display:block;width:52px;height:46px;object-fit:contain;background:transparent;border-radius:0;mix-blend-mode:multiply}
.footer-brand{display:inline-flex;align-items:center;gap:9px}.footer-brand img{width:50px;height:44px;object-fit:contain;background:#fff;border-radius:12px}
section[id]{scroll-margin-top:120px}
.hero-art,.mission-copy,.program-list article,.news-card{background:rgba(255,255,255,.64);border:1px solid var(--glass-edge);box-shadow:var(--glass-shadow);backdrop-filter:blur(16px) saturate(145%);-webkit-backdrop-filter:blur(16px) saturate(145%)}
.hero-art,.news-card,.program-image,.story-photo{border-radius:24px}
.hero-art{overflow:hidden}.hero-art .map-top{background:rgba(255,255,255,.7)}
.mission-copy{border-radius:28px;padding:34px}.program-list article{border-radius:22px;margin:10px 0;padding:20px 22px}
.story-photo{overflow:hidden}.story-copy,.founder-copy,.participate-heading{border-radius:26px}
.glass-panel{position:relative;transition:transform .45s cubic-bezier(.2,.8,.2,1),box-shadow .45s ease}
.glass-panel::after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:radial-gradient(350px circle at var(--light-x,-500px) var(--light-y,-500px),rgba(255,255,255,.22),transparent 62%);opacity:0;transition:opacity .25s ease;z-index:2}
@media(hover:hover) and (pointer:fine){.glass-panel:hover::after{opacity:1}.hero-art:hover,.program-image:hover,.story-photo:hover,.news-card:hover,.program-list article:hover{transform:translateY(-4px);box-shadow:0 24px 58px rgba(32,63,45,.14)}}
.button:active,.header-link:active,.languages button:active{transform:scale(.97)}
.in-view{animation:glass-arrive .7s cubic-bezier(.2,.8,.2,1) both}@keyframes glass-arrive{from{opacity:.78;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}
.protected-image{position:relative;display:block;min-width:0}.protected-image>.clean-overlay{position:absolute!important;inset:0;width:100%!important;height:100%!important;max-height:none!important;object-fit:cover;pointer-events:none;user-select:none}
.news-card>.protected-image{height:100%;min-height:360px}.news-card>.protected-image>img:not(.clean-overlay){width:100%;height:100%;min-height:360px;object-fit:cover}
.participate-heading{padding:34px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.18);box-shadow:inset 0 1px rgba(255,255,255,.12)}
@media(max-width:900px){.header{backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}.mission-copy{padding:25px}.news-card>.protected-image,.news-card>.protected-image>img:not(.clean-overlay){min-height:300px}}
@media(max-width:600px){.brand-mark{width:42px;height:38px}.news-card>.protected-image{min-height:0}.news-card>.protected-image>img:not(.clean-overlay){min-height:0;aspect-ratio:1.4}.participate-heading{padding:25px}.hero-art,.news-card,.program-image,.story-photo{border-radius:18px}}
@media(prefers-reduced-motion:reduce){.glass-panel{transition:none}.in-view{animation:none}}
