:root{--bg:#F7F3EA;--ink:#1f2a24;--mut:#6b7570;--line:#e6dfcf;--acc:#C8843B;--acc2:#2f5d4a}
*{box-sizing:border-box}body{margin:0;background:radial-gradient(1200px 500px at 80% -10%,#fbefd9 0,transparent 60%),var(--bg);color:var(--ink);font:16px/1.5 'DM Sans',system-ui,sans-serif}
a{color:var(--acc2)}h1,h2,h3{font-family:'Playfair Display',Georgia,serif;margin:0}
.ev-top{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;max-width:900px;margin:0 auto}
.ev-brand{display:flex;gap:10px;align-items:center;text-decoration:none;color:var(--ink)}.ev-brand img{border-radius:50%}.ev-brand span{display:flex;flex-direction:column;line-height:1.2}.ev-brand small{color:var(--mut);font-size:12px}.ev-link{font-size:14px;text-decoration:none}
main{max-width:900px;margin:0 auto;padding:0 16px 40px}
.ev-hero{padding:20px 0 6px;position:relative}.ev-hero::after{content:'🐾';position:absolute;right:2%;top:10px;font-size:54px;opacity:.12;animation:evfloat 7s ease-in-out infinite}
.ev-kicker{color:var(--acc);font-weight:700;text-transform:uppercase;letter-spacing:.08em;font-size:12px;margin:0 0 6px}.ev-hero h1{font-size:clamp(32px,6vw,48px)}.ev-lead{color:var(--mut);max-width:60ch}
.ev-sec{font-family:'Playfair Display',serif;font-size:23px;margin:30px 0 12px;display:flex;align-items:center;gap:10px}.ev-sec::first-letter{text-transform:uppercase}.ev-sec i{font-style:normal;font-size:12px;font-family:'DM Sans',sans-serif;font-weight:700;background:#fff;border:1px solid var(--line);border-radius:999px;padding:3px 10px;color:var(--mut)}
.ev-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:18px}
.ev-poster{position:relative;display:flex;flex-direction:column;min-height:360px;border-radius:22px;overflow:hidden;text-decoration:none;color:#fff;isolation:isolate;box-shadow:0 14px 34px rgba(60,40,10,.18);transition:transform .35s cubic-bezier(.2,.8,.2,1),box-shadow .35s;opacity:0;transform:translateY(18px);animation:evin .7s forwards}
.ev-poster:hover{transform:translateY(-8px) rotate(-.6deg);box-shadow:0 24px 50px rgba(60,40,10,.28)}
.ev-poster.k-balade{background:linear-gradient(155deg,#2f5d4a 0,#3f8a63 55%,#d8904a 130%)}.ev-poster.k-atelier{background:linear-gradient(155deg,#a63a2c 0,#d64535 50%,#e8963a 130%)}.ev-poster.k-rando{background:linear-gradient(155deg,#2c4a63 0,#3d6f9a 55%,#9ad0c2 130%)}
.ev-poster::before{content:attr(data-art);position:absolute;right:-18px;bottom:60px;font-size:150px;opacity:.16;z-index:-1;transition:transform .6s;transform:rotate(-8deg)}.ev-poster:hover::before{transform:rotate(6deg) scale(1.12)}
.ev-poster::after{content:'';position:absolute;inset:0;background:linear-gradient(110deg,transparent 30%,rgba(255,255,255,.22) 48%,transparent 66%);transform:translateX(-120%);z-index:-1}.ev-poster:hover::after{transform:translateX(120%);transition:transform .9s}
.ev-p-top{display:flex;justify-content:space-between;align-items:flex-start;padding:16px 16px 0}
.ev-p-date{background:rgba(255,255,255,.95);color:var(--ink);border-radius:14px;text-align:center;padding:8px 12px;min-width:64px;box-shadow:0 6px 16px rgba(0,0,0,.18)}.ev-p-date span{display:block;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--acc)}.ev-p-date b{display:block;font-size:30px;line-height:1.05;font-family:'Playfair Display',serif}
.ev-p-date.tbd b{font-size:15px;line-height:1.2;padding:4px 0}
.ev-p-kind{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;background:rgba(0,0,0,.25);padding:5px 10px;border-radius:999px}
.ev-p-body{margin-top:auto;padding:16px;background:linear-gradient(180deg,transparent,rgba(0,0,0,.45) 40%)}
.ev-p-title{font-size:23px;line-height:1.15;text-shadow:0 2px 10px rgba(0,0,0,.3)}.ev-p-sub{font-size:13px;opacity:.9;margin:4px 0 10px}
.ev-p-meta{list-style:none;margin:0 0 12px;padding:0;font-size:13.5px;display:grid;gap:3px}
.ev-p-foot{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:space-between}
.ev-lv{font-size:12px;font-weight:800;padding:5px 11px;border-radius:999px;color:#1f2a24;background:#fff;display:inline-flex;align-items:center;gap:6px}.ev-lv::before{content:'';width:9px;height:9px;border-radius:50%;background:currentColor}
.ev-lv.open{color:#1f7a4d;background:#e5f6ec}.ev-lv.soon{color:#a85f0c;background:#fff0d6}.ev-lv.last{color:#b3261e;background:#ffe1dc;animation:evpulse 1.6s infinite}.ev-lv.full{color:#fff;background:#8a1f17}.ev-lv.closed{color:#555;background:#e7e7e7}
.ev-price{font-weight:800;background:rgba(255,255,255,.2);padding:5px 11px;border-radius:999px;font-size:13px}
.ev-go{margin-top:12px;display:block;text-align:center;background:#fff;color:var(--ink);font-weight:800;border-radius:12px;padding:11px;transition:.2s}.ev-poster:hover .ev-go{background:#FBEFD9}
.ev-empty{color:var(--mut);padding:30px 0}.ev-foot{max-width:900px;margin:0 auto;padding:20px 16px 40px;text-align:center;font-size:13px;color:var(--mut)}
@keyframes evin{to{opacity:1;transform:none}}@keyframes evfloat{0%,100%{transform:translateY(0) rotate(-4deg)}50%{transform:translateY(-14px) rotate(8deg)}}@keyframes evpulse{0%,100%{box-shadow:0 0 0 0 rgba(179,38,30,.45)}50%{box-shadow:0 0 0 7px rgba(179,38,30,0)}}
@media (prefers-reduced-motion:reduce){.ev-poster{animation:none;opacity:1;transform:none}.ev-hero::after,.ev-lv.last{animation:none}.ev-poster:hover{transform:none}}

.ev-sponsor{display:flex;gap:16px;align-items:center;text-decoration:none;color:#fff;margin:18px 0 6px;padding:18px 22px;border-radius:22px;background:linear-gradient(120deg,#D64535,#E8744A 55%,#D8904A);box-shadow:0 20px 40px -20px rgba(214,69,53,.7);position:relative;overflow:hidden;transition:transform .25s}
.ev-sponsor:hover{transform:translateY(-3px)}.ev-sponsor::after{content:'🐾';position:absolute;right:14px;bottom:-14px;font-size:84px;opacity:.16;transform:rotate(-12deg)}
.ev-sp-ico{font-size:44px;animation:evfloat 5s ease-in-out infinite}.ev-sponsor b{font:700 20px 'Playfair Display',serif}
@media(max-width:560px){.ev-sponsor{flex-direction:column;text-align:center}}

/* 28/10/2026 : photos des événements (sélection par thème et saison) */
.ev-poster.has-photo::before{display:none}
.ev-p-cover{position:absolute;inset:0;z-index:-2;background-size:cover;background-position:center;transform:scale(1.02);transition:transform 1.1s cubic-bezier(.2,.8,.2,1)}
.ev-p-cover::after{content:'';position:absolute;inset:0;background:linear-gradient(to top,rgba(18,28,22,.88) 0,rgba(18,28,22,.55) 42%,rgba(18,28,22,.12) 100%)}
.ev-poster.has-photo:hover .ev-p-cover{transform:scale(1.09)}
.ev-poster.has-photo .ev-p-title,.ev-poster.has-photo .ev-p-sub,.ev-poster.has-photo .ev-p-meta{text-shadow:0 1px 8px rgba(0,0,0,.45)}
@media (prefers-reduced-motion:reduce){.ev-p-cover{transition:none}.ev-poster.has-photo:hover .ev-p-cover{transform:scale(1.02)}}
