
[hidden]{display:none!important}body{overflow-wrap:anywhere}.skip{position:fixed;top:-80px;left:12px;z-index:100;background:white;padding:12px}.skip:focus{top:10px}a:focus-visible,button:focus-visible,summary:focus-visible,select:focus-visible,input:focus-visible,textarea:focus-visible,[role=button]:focus-visible{outline:3px solid var(--ocre);outline-offset:4px}.nav details{position:relative}.nav summary{padding:10px 14px;cursor:pointer;font-size:.9rem}.nav details>div{position:absolute;top:100%;left:0;min-width:240px;max-width:85vw;background:var(--nav);padding:10px;box-shadow:0 12px 24px #0003;max-height:70vh;overflow:auto}.nav .nav-items{display:flex;align-items:center;flex-wrap:wrap}.nav .conteneur{gap:12px}.actions-entete{flex-wrap:wrap}.actions-entete a:first-child{background:var(--rouge);color:white;border:0}.hero{min-height:590px}.hero h1{font-size:clamp(2rem,4.5vw,3.4rem);line-height:1.1;max-width:750px;margin:15px 0 24px}.hero__logo{max-width:300px}.hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0}.hero::before{z-index:1}.hero__texte{z-index:2}.hero__motif{z-index:1}.intro-copy{max-width:850px;margin:0 auto;font-size:1.12rem;white-space:pre-line;text-align:center}.section-head{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:24px}.section-head .titre-section{text-align:left;margin:0}.section-head .titre-section:after{margin-left:0}.carousel{display:flex;gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding:4px 2px 18px}.carousel::-webkit-scrollbar,.mpf-gallery::-webkit-scrollbar{display:none}.carousel>.carte{flex:0 0 calc((100% - 40px)/3);scroll-snap-align:start;border-radius:6px;overflow:hidden;box-shadow:0 3px 15px #0000000d}.carousel-controls{display:flex;gap:8px;align-items:center}.arrow{border:1px solid #849895;background:white;color:var(--bleu);border-radius:50%;width:44px;height:44px;cursor:pointer;font:24px Arial}.arrow:disabled{opacity:.35;cursor:default}.empty{padding:24px;border:1px dashed var(--vdg-charte);background:#fff9;max-width:800px;margin:20px auto;text-align:center}.pied .conteneur{display:flex;align-items:flex-start;justify-content:space-between;gap:36px;flex-wrap:wrap}.pied__logo{max-width:280px}.footer-links{display:flex;flex-direction:column;gap:12px}.form-card{max-width:760px;margin:auto;padding:32px;background:white;border:1px solid #c1cbc9;border-radius:6px}.form-card label{display:block;margin:18px 0 7px}.form-card input:not([type=checkbox]),.form-card textarea,.form-card select,.search-field{width:100%;font:inherit;border:1px solid #849895;border-radius:4px;padding:12px;background:white;color:var(--texte)}.form-card textarea{min-height:160px}.form-card input[type=checkbox]{width:20px;height:20px;vertical-align:middle}.form-card .check{font-size:.83rem}.form-card .hint{font-size:.8rem;color:var(--texte-doux)}.feedback{white-space:pre-wrap;line-height:1.5}.form-card .honeypot{position:absolute;left:-10000px}.filter-row{display:flex;gap:12px;flex-wrap:wrap;margin:24px 0}.filter-row select{padding:12px;font:inherit;max-width:100%}.event-detail{max-width:850px;margin:auto}.event-detail .event-meta{display:flex;gap:12px;flex-wrap:wrap}.event-description{white-space:pre-wrap}.event-color{border-left:5px solid var(--c);padding-left:18px}.cal-case{min-width:0}.cal-evt{text-decoration:none}.cal-case a{color:var(--texte);background:white;border-left:5px solid var(--c);box-shadow:0 1px 5px #0002}.event-list a{text-decoration:none}.map-layout{display:grid;grid-template-columns:1.4fr 1fr;gap:32px;align-items:start}.map-frame{position:relative;background:#edf0e7;border-radius:12px;border:1px solid #c2cbbd;overflow:hidden}.map-frame svg{width:100%;height:auto;display:block}.department{fill:#c8d3bb;stroke:#8b9c7b;stroke-width:2}.map-dot{cursor:pointer;fill:var(--rouge);stroke:white;stroke-width:3;transition:fill .2s,stroke-width .2s}.map-dot:hover,.map-dot:focus,.map-dot.selected{fill:var(--ocre-fonce);stroke-width:5}.map-city{font-size:12px;fill:#4f5b49;pointer-events:none}.map-credit{font-size:.65rem;margin:10px 14px;color:#53604c}.map-preview{padding:24px;background:white;border-radius:6px}.map-preview h3{color:var(--bleu);margin:0 0 8px}.map-preview p{white-space:pre-line}.map-places{display:flex;gap:8px;flex-wrap:wrap;margin:20px 0}.map-places button{font:inherit;font-size:.8rem;padding:8px 12px;background:white;border:1px solid #849895;border-radius:25px;cursor:pointer}.map-places button[aria-pressed=true]{background:var(--rouge);color:white}.map-gallery{margin:15px 0;position:relative}.map-gallery img{width:100%;aspect-ratio:4/3;object-fit:cover;cursor:zoom-in}.map-gallery figcaption{font-size:.8rem;margin:8px 0}.map-gallery figure{margin:0}.map-gallery .carousel-controls{justify-content:space-between;margin-top:10px}.map-peek{position:absolute;background:white;box-shadow:0 4px 24px #0004;width:180px;padding:8px;border-radius:5px;pointer-events:none;z-index:2}.map-peek img{width:100%;height:110px;object-fit:cover}.map-peek strong{font-size:.75rem}.mpf-gallery{scrollbar-width:none}.gallery-controls{display:flex;gap:8px;justify-content:flex-end}.mpf-comments{margin-top:40px}.mpf-comments h2{color:var(--bleu)}.reveal.is-pending{opacity:0;transform:translateY(20px)}.reveal{transition:opacity .65s ease,transform .65s cubic-bezier(.22,.61,.36,1)}.carte,.btn,.btn-contour,.rdv{transition:transform .25s ease,box-shadow .25s ease,background .25s ease}.carte:hover{transform:translateY(-4px);box-shadow:0 12px 28px #0002}.btn:hover,.btn-contour:hover{transform:translateY(-2px)}.pagination{display:flex;gap:15px;justify-content:center;align-items:center;margin:30px 0}.article-tete{padding-top:35px}.article-tete h1{max-width:1000px}.article-corps{padding-bottom:20px}.notice-box{background:#fbf1d6;padding:18px}.site-error{max-width:800px;margin:60px auto;padding:30px}.site-error a{color:var(--rouge)}
@media(max-width:950px){.signature{display:none}.map-layout{grid-template-columns:1fr}.carousel>.carte{flex-basis:calc((100% - 20px)/2)}.nav .nav-items{display:none;width:100%}.nav .nav-items.open{display:flex;flex-direction:column;align-items:stretch;padding-bottom:18px}.nav .conteneur{flex-wrap:wrap}.burger{display:flex}.nav details>div{position:static;box-shadow:none;max-width:100%;width:100%;background:#464649}.nav details{width:100%}.nav .nav-items>a{width:100%}.entete .conteneur{flex-wrap:wrap}.marque img{height:64px}.actions-entete a{font-size:.7rem}.map-frame{max-width:800px;margin:auto;width:100%}}
@media(max-width:600px){.hero{min-height:510px}.hero__texte{padding-top:45px;padding-bottom:40px}.hero__logo{width:230px}.hero__motif{width:65vw;right:-90px}.section{padding:44px 0}.section-head{align-items:flex-start;gap:10px}.titre-section{font-size:1.4rem}.carousel>.carte{flex-basis:88%}.carousel-controls .arrow{width:40px;height:40px}.form-card{padding:20px}.grille{grid-template-columns:1fr}.map-preview{padding:18px}.cal-case{min-height:72px}.cal-case a.cal-evt{width:20px;height:20px;min-height:20px;border:0;background:var(--c);box-shadow:none}.cal-evts{flex-direction:row}.entete .conteneur{padding-top:14px;padding-bottom:14px}.actions-entete{gap:8px}.section-head>.carousel-controls{flex-shrink:0}.banniere{min-height:210px}.banniere h1{font-size:1.9rem}.map-city{font-size:14px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*::before,*::after{transition:none!important;animation:none!important}.reveal.is-pending{opacity:1;transform:none}.carte:hover,.btn:hover{transform:none}}

.map-preview .hero__mots{color:var(--ocre-fonce)}

/* Finitions : fonds doux, navigation contextuelle et photos sans cadre. */
body{--page-surface:#f7f4ed;background:var(--page-surface)}body[data-surface=white]{--page-surface:#fff}body[data-surface=sage]{--page-surface:#eef2ec}.entete,.form-card,.carte,.map-preview,.mpf-lightbox{background:var(--page-surface)}.section--photos{background:var(--page-surface)}
.hero--graphic{background:linear-gradient(120deg,#3e504a 0%,#596b60 60%,#7f8d74 100%)}.hero--graphic:before{background:linear-gradient(90deg,#18291d44,transparent)}.hero--graphic .hero__motif{opacity:.23;width:min(650px,60vw)}
.article-une figure{border:0!important;box-shadow:none;border-radius:6px;overflow:hidden}.article-une figure img{border:0;box-shadow:none}.mpf-photos figure,.mpf-gallery figure,.map-gallery figure{overflow:hidden;border-radius:6px}.carte__image img,.article-une img,.mpf-photos img,.mpf-gallery img,.map-gallery img,.hero-photo{transition:transform .5s ease,filter .5s ease}
@media(hover:hover) and (prefers-reduced-motion:no-preference){.carte:hover .carte__image img,.article-une figure:hover img,.mpf-photos figure:hover img,.mpf-gallery figure:hover img,.map-gallery figure:hover img{transform:scale(1.035);filter:brightness(1.045)}.hero:hover .hero-photo{transform:scale(1.015)}}
.back-link{display:inline-block;color:inherit;padding:10px 0;font-size:.88rem;text-underline-offset:4px}.article-navigation{padding:22px 0;display:flex;justify-content:space-between;gap:20px;align-items:center;flex-wrap:wrap}.article-navigation>div{display:flex;gap:24px;flex-wrap:wrap}.article-navigation>div a{max-width:260px;color:var(--bleu);font-size:.85rem}.article-navigation span{display:block;font-size:.75rem;margin-top:5px}.feedback:not(:empty){padding:16px;background:#e9f0e3;border-left:4px solid #54724d}.feedback.error{background:#fbe9df;border-color:#9f3224}.feedback:empty{display:none}@media(max-width:600px){.article-navigation>div{width:100%;justify-content:space-between}.article-navigation>div a{max-width:46%}}

.floating-contact{position:fixed;right:20px;bottom:20px;z-index:40;box-shadow:0 4px 20px #0003}.legal-copy{max-width:850px}.legal-copy p{white-space:pre-wrap;overflow-wrap:anywhere}#contact-dialog{border:0;border-radius:12px;padding:24px;background:var(--page-surface,#f7f4ed);width:min(640px,94vw);max-height:90dvh;overflow:auto}#contact-dialog::backdrop{background:#142b2ba8}#contact-close{float:right}#contact-dialog .form-card{box-shadow:none;padding:0}#contact-dialog h2{clear:both}#footer{padding-bottom:64px}.banniere.hero--graphic{background-image:linear-gradient(125deg,#284d46,#628375)}

.about-copy{white-space:pre-wrap;overflow-wrap:anywhere}.about-split{display:grid;grid-template-columns:minmax(0,1fr);gap:40px;align-items:center}.about-split:has(>img){grid-template-columns:1.1fr 1fr}.about-split>img{width:100%;max-height:520px;object-fit:cover;border-radius:12px}.about-split article{min-width:0}article.about-split{margin:40px 0}article.about-split:nth-child(odd)>img{order:-1}.about-team{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:28px}.about-team article{padding:24px;background:var(--page-surface,#f7f4ed);border-radius:12px;overflow:hidden}.about-team h3{margin-bottom:8px}.about-portrait{width:100%;aspect-ratio:1;object-fit:cover;border-radius:10px}.association-page h3{font-size:1.5rem}.association-page img{transition:transform .3s,filter .3s}.association-page img:hover{transform:scale(1.02);filter:brightness(1.04)}@media(max-width:700px){.about-split:has(>img){grid-template-columns:1fr}.about-split>img{order:0!important}.about-team{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}}@media(prefers-reduced-motion:reduce){.association-page img{transition:none}.association-page img:hover{transform:none}}

.association-page .hero__mots{color:#87571e}

.map-tools{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:12px;font-size:.78rem;color:#435345}.map-tools label{display:flex;align-items:center;gap:8px;cursor:pointer}.map-tools input{width:18px;height:18px;accent-color:var(--rouge)}.map-legend{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.map-legend i{width:9px;height:9px;border-radius:50%;display:inline-block}.town-key{background:#53664c}.photo-key{background:var(--rouge)}.map-town{pointer-events:none}.map-town-dot{fill:#53664c;stroke:#edf0e7;stroke-width:1.5}.map-city{font-family:Arial,sans-serif;font-size:17px;font-weight:600;fill:#344530;paint-order:stroke;stroke:#edf0e7;stroke-width:3px;stroke-linejoin:round}.map-town-extra{display:none}.map-more-cities .map-town-extra{display:inline}.map-town-extra .map-city{font-size:15px;font-weight:400}@media(max-width:600px){.map-city{font-size:20px}.map-town-extra .map-city{font-size:18px}}

/* Fixed place-photo frame: natural portrait dimensions never change layout. */
.map-photo-frame{width:100%;aspect-ratio:4/3;overflow:hidden;background:#e5e7e0}
.map-gallery .map-photo-frame img{display:block!important;width:100%!important;height:100%!important;max-height:none!important;aspect-ratio:auto;object-fit:cover;object-position:center}
.map-peek img{aspect-ratio:4/3;height:auto;object-fit:cover}

.newsletter-signup{padding:52px 0;background:#cbd7d5;color:#193353}.newsletter-signup>.conteneur{max-width:920px}.newsletter-signup h2{margin:0 0 8px;font-size:clamp(1.55rem,3vw,2rem)}.newsletter-signup>.conteneur>p{margin:0 0 24px}.newsletter-signup form>label[for="newsletter-email"]{display:block;margin-bottom:7px;font-weight:600}.newsletter-signup input[type="email"]{display:block;width:100%;box-sizing:border-box;padding:13px 14px;border:1px solid #7e8f91;border-radius:2px;background:#fff;color:#172b49;font:inherit}.newsletter-signup form>.btn{display:block;margin:20px auto 0}.newsletter-signup .check{display:flex;gap:10px;align-items:flex-start;margin-top:16px}.newsletter-signup .check input{width:20px;height:20px;flex:none}.newsletter-signup .hint{margin:8px 0 0;font-size:.88rem}.newsletter-signup .feedback{text-align:center;margin:12px 0 0}.newsletter-signup .feedback.error{color:#a33122}@media(max-width:800px){.newsletter-signup{padding:38px 0}.newsletter-signup form>.btn{width:100%;max-width:240px}.newsletter-signup>.conteneur>p{margin-bottom:20px}}
