:root{--teal:#104547;--sand:#f6f1ea;--accent:#c98b5b;--ink:#1d2b2c}
*{box-sizing:border-box}body{margin:0;font-family:system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;color:var(--ink);line-height:1.6;background:#fff}
a{color:var(--teal)}img{max-width:100%;height:auto;display:block}
.wrap{max-width:1100px;margin:0 auto;padding:0 20px}
header{background:#fff;border-bottom:1px solid #e5ddd2;position:sticky;top:0;z-index:5}
.nav{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:10px 20px;max-width:1100px;margin:0 auto}
.nav img{height:48px;width:auto}.nav ul{list-style:none;display:flex;flex-wrap:wrap;gap:4px 16px;margin:0;padding:0}
.nav a{text-decoration:none;font-weight:600}.nav .lang{border:1px solid var(--teal);padding:2px 8px;border-radius:4px}
.hero{background:var(--teal);color:#fff;padding:70px 0;text-align:center}.hero h1{font-size:2.4rem;margin:.2em 0}.hero p{max-width:700px;margin:1em auto}
section{padding:50px 0}section.alt{background:var(--sand)}h2{color:var(--teal);font-size:1.8rem;margin-top:0}
.btn{display:inline-block;background:#25a244;color:#fff;padding:12px 22px;border-radius:6px;text-decoration:none;font-weight:700;margin:6px 0}
.btn.light{background:var(--accent)}
.events{display:grid;gap:24px}.event{display:grid;grid-template-columns:minmax(0,320px) 1fr;gap:20px;background:#fff;border:1px solid #e5ddd2;border-radius:8px;overflow:hidden}
.event img{width:100%;height:100%;object-fit:cover}.event-body{padding:16px 16px 16px 0}.event h3{margin:0 0 6px;color:var(--teal)}.meta{color:#444}
.soon{font-size:1.2rem;background:var(--sand);padding:20px;border-radius:8px}
@media(max-width:700px){.event{grid-template-columns:1fr}.event-body{padding:0 16px 16px}}
.grid{display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}
.card{background:#fff;border:1px solid #e5ddd2;border-radius:8px;padding:20px}.card img.round{border-radius:50%;width:160px;height:160px;object-fit:cover;margin:0 auto 10px}
.center{text-align:center}.quote{font-style:italic}.quote img{width:80px;height:80px;border-radius:50%;object-fit:cover}
.partners{display:flex;flex-wrap:wrap;gap:30px;align-items:center;justify-content:center}.partners img{max-height:80px;width:auto}
form label{display:block;margin:10px 0 4px;font-weight:600}form input,form textarea{width:100%;padding:10px;border:1px solid #bbb;border-radius:6px;font:inherit}
form button{margin-top:12px;background:var(--teal);color:#fff;border:0;padding:12px 22px;border-radius:6px;font-weight:700;cursor:pointer}
footer{background:var(--teal);color:#fff;padding:30px 0}footer a{color:#fff}
.note{background:#fff7e0;border-left:4px solid var(--accent);padding:10px 14px}
.hero.photo{background:linear-gradient(rgba(16,69,71,.72),rgba(16,69,71,.72)),url(/images/hero-trio-steps.webp) center 30%/cover;padding:110px 0}
.split{display:grid;grid-template-columns:1fr 1fr;gap:32px;align-items:center}.split img{border-radius:10px;width:100%;max-height:520px;object-fit:cover}
@media(max-width:800px){.split{grid-template-columns:1fr}}
.gallery{display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(230px,1fr))}.gallery img{width:100%;height:220px;object-fit:cover;border-radius:8px}
.banner{width:100%;max-height:480px;object-fit:cover}
.approach-bg{background:linear-gradient(rgba(246,241,234,.9),rgba(246,241,234,.9)),url(/images/approach-face.webp) center/cover}
.banner{object-position:center 20%}
img.whole,.split img.whole{object-fit:contain;height:auto;max-height:none;width:auto;max-width:100%;margin-left:auto;margin-right:auto}
.hero-split{text-align:left}.hero-split img.whole{max-height:560px;border-radius:10px}
@media(max-width:800px){.hero-split{text-align:center}.hero-split img.whole{max-height:none}}
