
*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;background:#f4f5ef}body{overflow:hidden}.stage{position:relative;isolation:isolate;display:grid;place-items:center;min-height:100svh;height:100%;overflow:hidden}.film{position:absolute;inset:0;z-index:-3;background:#d6dfd3 url('poster.jpg') center/cover no-repeat}.film video{height:100%;width:100%;object-fit:cover;filter:saturate(.6);transform:scale(1.04);animation:drift 18s ease-in-out infinite alternate}.veil{position:absolute;inset:0;z-index:-2;background:radial-gradient(ellipse at 50% 49%,rgba(250,251,247,.97) 0%,rgba(248,250,244,.89) 26%,rgba(244,247,239,.65) 62%,rgba(229,237,224,.46) 100%)}.glow{position:absolute;width:75vmax;height:75vmax;border-radius:50%;z-index:-1;left:-40vmax;bottom:-55vmax;background:radial-gradient(circle,rgba(69,174,71,.18),transparent 65%);animation:glow 18s ease-in-out infinite alternate;pointer-events:none}h1{margin:0;width:min(64vw,850px);line-height:0;animation:reveal 1.2s ease-out both}h1 img{display:block;width:100%;height:auto;filter:drop-shadow(0 3px 24px rgba(255,255,255,.3))}@keyframes drift{to{transform:scale(1.12) translate(-.8%,.6%)}}@keyframes glow{to{transform:translate(60vw,-22vh)}}@keyframes reveal{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media(max-width:600px){h1{width:84vw}.veil{background:radial-gradient(ellipse at center,rgba(250,251,247,.96),rgba(248,250,244,.82) 42%,rgba(235,242,230,.56))}.film video{object-position:52% center}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important}.film video{display:none}}

@font-face{font-family:Poppins;src:url('fonts/poppins-regular.ttf') format('truetype');font-weight:400;font-display:swap}@font-face{font-family:Poppins;src:url('fonts/poppins-semibold.ttf') format('truetype');font-weight:600;font-display:swap}
html{height:auto;scroll-behavior:smooth}body{height:auto;overflow:auto;color:#30332d;font-family:Poppins,Arial,sans-serif}.stage{height:100svh;min-height:520px}.discover{position:absolute;bottom:30px;left:50%;transform:translateX(-50%);color:#343b30;text-decoration:none;font-size:12px;letter-spacing:.08em;display:flex;align-items:center;gap:16px;padding:12px 16px;white-space:nowrap}.discover span{font-size:22px}.discover:hover{color:#187c24}.directory{max-width:1200px;margin:auto;padding:100px 48px 80px}.eyebrow{text-transform:uppercase;font-size:11px;letter-spacing:.18em;color:#3f7843;margin:0 0 15px}.directory h2{font-size:clamp(26px,4vw,44px);font-weight:600;letter-spacing:-.04em;line-height:1.2;margin:0 0 20px}.intro{max-width:650px;font-size:14px;line-height:1.8;color:#697063;margin:0 0 65px}.country{display:grid;grid-template-columns:210px 1fr;border-top:1px solid #dce2d7;padding:30px 0 40px;scroll-margin-top:30px}.country h3{font-size:20px;letter-spacing:-.03em;margin:14px 0;font-weight:600}.events{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;column-gap:40px}.events li{border-bottom:1px solid #e1e6dc}.event{padding:18px 0;display:grid;grid-template-columns:1fr auto;gap:5px 14px;color:inherit;text-decoration:none}.event strong{font-size:15px;font-weight:600}.event small{font-size:11px;line-height:1.7;color:#71776b;grid-column:1}.event .arrow{grid-column:2;grid-row:1/3;align-self:center;color:#438347;font-size:20px;transition:transform .2s}.event:hover strong{color:#247a2b}.event:hover .arrow{transform:translate(3px,-3px)}.pending{font-size:10px;color:#71776b;grid-column:2;grid-row:1/3;align-self:center}a:focus-visible{outline:2px solid #2b9137;outline-offset:5px;border-radius:3px}.footer{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #dce2d7;padding-top:24px;margin-top:20px;color:#71776b;font-size:11px}.footer a{color:inherit;text-underline-offset:4px}.skip{position:fixed;top:10px;left:10px;z-index:9;background:white;padding:10px;transform:translateY(-160%);color:#17491b}.skip:focus{transform:none}@media(max-width:700px){.directory{padding:65px 24px 40px}.country{grid-template-columns:1fr;padding:20px 0 30px}.country h3{margin:5px 0 8px}.events{column-gap:24px}.event strong{font-size:13px}.intro{margin-bottom:35px}.footer{flex-wrap:wrap}.discover{bottom:22px}}@media(max-width:420px){.events{grid-template-columns:1fr}.stage{min-height:420px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.contact{border-top:1px solid #dce2d7;padding-top:65px;margin-top:35px}.contact-layout{display:grid;grid-template-columns:1fr 1.4fr;gap:70px}.contact h2{font-size:32px}.contact p{font-size:13px;line-height:1.8;color:#697063}.contact a{color:#267b30;text-underline-offset:4px}.contact-form{display:grid;grid-template-columns:1fr 1fr;gap:18px 20px}.field{display:flex;flex-direction:column;gap:7px}.field label{font-size:12px;font-weight:600}.field input,.field select,.field textarea{font:inherit;font-size:13px;background:#fff;border:1px solid #cbd4c5;border-radius:5px;color:#30332d;padding:12px;width:100%;min-width:0}.field input:focus,.field select:focus,.field textarea:focus{outline:2px solid #2b9137;outline-offset:2px}.field textarea{resize:vertical;min-height:140px}.full{grid-column:1/-1}.consent{font-size:11px;line-height:1.8;display:flex;align-items:flex-start;gap:10px}.consent input{accent-color:#278235;width:17px;height:17px;flex:none;margin-top:3px}.submit{border:0;border-radius:5px;background:#287c31;color:white;font:inherit;font-size:13px;font-weight:600;padding:14px 22px;cursor:pointer;justify-self:start}.submit:hover{background:#1c6124}.submit:disabled{opacity:.6;cursor:wait}.status{font-size:12px;line-height:1.7;min-height:1.7em;margin:0}.status[data-state=error]{color:#9a2929}.status[data-state=success]{color:#246c2b}.privacy-note{margin-top:22px}.privacy-note summary{font-size:11px;cursor:pointer;color:#53634d}.privacy-note p{font-size:11px}.bot-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}@media(max-width:800px){.contact-layout{grid-template-columns:1fr;gap:25px}.contact{padding-top:45px}.contact h2{font-size:28px}}@media(max-width:480px){.contact-form{grid-template-columns:1fr}.field{grid-column:1/-1}}
