:root{--green:#003d2b;--green2:#0e713a;--lime:#77b829;--cream:#fbfaf5;--cream2:#f5f5eb;--ink:#11271d;--muted:#5e6963;--line:#e5e5db;--shadow:0 12px 34px rgba(15,61,43,.08)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fffdf9;color:var(--ink);font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}a{text-decoration:none;color:inherit}img{display:block;max-width:100%}button,input,select,textarea{font:inherit}.container{width:min(1180px,92vw);margin:auto}.topbar{position:sticky;top:0;z-index:50;background:rgba(255,253,249,.96);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}.nav{min-height:92px;display:flex;align-items:center;gap:22px}.brand{position:relative;color:var(--green);margin-right:auto;line-height:1}.brand strong{display:block;font:700 39px Georgia,serif}.brand small{display:block;font-size:11px;margin-top:7px;color:#4a554e}.leafmark{position:absolute;top:-16px;left:55px;color:var(--lime);font-size:21px;transform:rotate(-34deg)}.menu{display:flex;gap:24px;align-items:center;font-size:14px}.menu a{padding:34px 0 16px}.menu a.active{font-weight:800;color:var(--green);border-bottom:3px solid var(--lime)}.menu-toggle{display:none;border:0;background:transparent;font-size:27px;color:var(--green)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;border-radius:9px;padding:13px 19px;border:1px solid var(--green);font-weight:700;cursor:pointer;background:white;color:var(--green)}.btn.primary{background:linear-gradient(135deg,var(--green),#00733d);color:#fff;box-shadow:0 7px 20px rgba(0,72,45,.13)}.btn.big{padding:16px 24px;font-size:17px}.btn.full{width:100%}.iconbtn{width:46px;padding:0;background:#8dc735;color:#fff;border-color:#8dc735}.home-hero{padding:0 0 22px;background:radial-gradient(circle at 30% 35%,#fff 0,#fffdf9 43%,#f6f5ec 100%)}.home-grid{display:grid;grid-template-columns:1.05fr .95fr;min-height:625px;align-items:stretch}.hero-copy{padding:58px 20px 30px 12px;display:flex;flex-direction:column;justify-content:center}.hero-copy h1,.page-intro h1,.banner-hero h1,.welcome-hero h1,.about-hero h1,.contact-hero h1,.faq-hero h1,.profile-hero h1,.cookies-hero h1{font:700 clamp(42px,5.8vw,72px)/1.08 Georgia,serif;color:var(--green);margin:0}.hero-copy h1 span,.discover-intro h1 span{color:#1e8237}.green-rule{width:54px;height:4px;border-radius:4px;background:var(--lime);margin:20px 0}.hero-copy>p{font-size:18px;line-height:1.6;max-width:560px;margin:0 0 23px}.home-visual{overflow:hidden;min-height:625px}.home-visual img{width:100%;height:100%;object-fit:cover;object-position:center}.promise-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:32px}.promise-grid>div,.benefit-grid>div{display:flex;flex-direction:column;align-items:center;text-align:center;gap:7px}.promise-grid b{font-size:13px;line-height:1.25}.promise-grid small,.benefit-grid small{font-size:12px;line-height:1.45;color:#4e5b54}.round-icon{width:50px;height:50px;border-radius:50%;display:grid;place-items:center;background:#f0f5db;color:var(--green);font-size:24px}.section{padding:64px 0}.section.compact{padding:44px 0}.section.alt{background:var(--cream)}h2{font:700 35px/1.12 Georgia,serif;color:var(--green);margin:0 0 17px}h3{color:var(--green)}p{line-height:1.58}.center{text-align:center}.center-rule{margin:18px auto}.strong{font-weight:800}.spacer{margin-top:42px}.launch-card{display:grid;grid-template-columns:.9fr 1.1fr;overflow:hidden;background:#fbfcf6;border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow)}.launch-copy{padding:34px 40px}.launch-card img{width:100%;height:100%;min-height:310px;object-fit:cover}.app-showcase{display:grid;grid-template-columns:repeat(5,1fr);gap:25px;margin-top:35px}.app-showcase>div{text-align:center}.app-showcase img{height:160px;margin:auto auto 14px;border-radius:12px;box-shadow:var(--shadow)}.app-showcase b{display:block}.app-showcase p{font-size:13px}.quote-strip,.cta-strip{margin-top:34px;padding:22px 30px;border-radius:16px;background:linear-gradient(90deg,#eff5dc,#f8f9ef);display:flex;align-items:center;gap:20px;border:1px solid #e7e8d9}.quote-strip b,.cta-strip b{font-size:19px;flex:1}.page-intro{text-align:center;padding:54px 0 20px}.page-intro h1{font-size:54px}.page-intro p{font-size:18px;color:#414c46}.how-list{display:grid;gap:0}.how-row{display:grid;grid-template-columns:.75fr 1.25fr;gap:35px;padding:28px 0;border-bottom:1px solid var(--line);align-items:center}.how-copy{display:flex;gap:26px;align-items:flex-start}.num{width:56px;height:56px;min-width:56px;border-radius:50%;background:linear-gradient(135deg,#159449,#005834);display:grid;place-items:center;color:#fff;font-size:28px;font-weight:800}.how-copy h3,.how-tip h3{font-size:24px;margin:10px 0}.how-copy p{font-size:17px}.how-media{display:grid;grid-template-columns:1.15fr .85fr;background:#f6f7ed;border-radius:20px;overflow:hidden;min-height:220px}.how-media>img{width:100%;height:100%;object-fit:cover;min-height:220px}.how-tip{padding:24px;display:flex;flex-direction:column;justify-content:center}.discover-intro{padding-bottom:5px}.filter-tabs,.filter-bar{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-top:28px}.filter,.location-pill{border:1px solid var(--line);background:#fff;padding:11px 17px;border-radius:30px;font-weight:700;color:#1f3127;cursor:pointer}.filter.active{background:var(--green);color:#fff;border-color:var(--green)}.species-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.species-card{background:#fff;border:1px solid var(--line);border-radius:17px;overflow:hidden;box-shadow:0 5px 18px rgba(0,0,0,.04)}.species-img{height:190px;position:relative}.species-img img{width:100%;height:100%;object-fit:cover}.season{position:absolute;left:14px;top:14px;background:rgba(0,70,40,.87);color:#fff;border-radius:8px;padding:7px 10px;font-size:11px}.species-body{padding:15px}.species-body h3{font:700 20px Georgia,serif;margin:0 0 9px}.species-body p{font-size:13px;min-height:62px}.species-body a{display:flex;justify-content:space-between;font-weight:800}.photo-banner{position:relative;overflow:hidden;margin-top:28px;border-radius:17px;min-height:260px}.photo-banner>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.photo-banner>div{position:relative;z-index:2;margin:18px;max-width:480px;padding:24px;background:rgba(255,253,247,.91);border-radius:14px}.photo-banner h2{font-size:30px}.benefit-grid{display:grid;grid-template-columns:repeat(4,1fr);margin-top:28px;background:#fafaf4;border:1px solid var(--line);border-radius:17px;padding:24px 10px}.benefit-grid>div{padding:5px 18px;border-right:1px solid var(--line);font-size:29px}.benefit-grid>div:last-child{border-right:0}.benefit-grid b{font-size:14px}.benefit-grid.five{grid-template-columns:repeat(5,1fr)}.benefit-grid.six{grid-template-columns:repeat(6,1fr)}.filter-bar{justify-content:flex-start;margin:0 0 20px}.location-pill{margin-right:auto}.map-layout{display:grid;grid-template-columns:1.25fr .72fr .67fr;gap:0;border:1px solid var(--line);border-radius:18px;overflow:hidden;background:#fff}.realistic-map{position:relative;min-height:640px;background:linear-gradient(25deg,#eef3dc,#f9eed5 46%,#e3f2d7);overflow:hidden}.realistic-map:before{content:"";position:absolute;inset:0;background-image:linear-gradient(28deg,transparent 47%,rgba(255,255,255,.9) 48% 50%,transparent 51%),linear-gradient(120deg,transparent 47%,rgba(246,203,100,.45) 48% 50%,transparent 51%);background-size:150px 125px,220px 210px}.map-marker{position:absolute;width:45px;height:45px;border-radius:50%;background:#07582f;color:#fff;border:5px solid white;display:grid;place-items:center;z-index:2;font-weight:800;box-shadow:0 4px 12px rgba(0,0,0,.18)}.you{position:absolute;left:58%;top:58%;z-index:3;color:#1e8cff;font-size:38px;text-shadow:0 0 0 7px rgba(255,255,255,.9)}.map-note{position:absolute;left:20px;bottom:20px;background:#fff;padding:16px;border-radius:13px;font-weight:700;z-index:4;box-shadow:var(--shadow)}.place-list{border-left:1px solid var(--line);border-right:1px solid var(--line)}.place-card{display:grid;grid-template-columns:88px 1fr;gap:12px;padding:14px;border-bottom:1px solid var(--line)}.place-card img{width:88px;height:88px;object-fit:cover;border-radius:9px}.place-card h3{margin:3px 0 5px}.place-card p,.place-card small{font-size:12px}.member-lock{display:block;background:#f1f3e5;padding:6px;border-radius:7px;font-size:10px}.why-card{padding:22px;background:#faf9f0}.why-card ul{list-style:none;padding:0;display:grid;gap:14px;font-size:13px}.why-card>small{text-align:center;display:block;margin-top:9px}.region-card{display:grid;grid-template-columns:.8fr 1.2fr;gap:35px;align-items:center;margin-top:24px;border:1px solid var(--line);border-radius:17px;padding:18px;background:#fbfaf4}.region-card img{height:250px;width:100%;object-fit:cover;border-radius:13px}.mini-benefits{display:grid;grid-template-columns:repeat(2,1fr);gap:15px;font-size:13px}.banner-hero{padding:44px 0;text-align:center;background:#fafaf2}.banner-hero.contrib-hero{background:linear-gradient(rgba(255,255,249,.68),rgba(255,255,249,.82)),url('assets/haut-rhin.jpg') center/cover}.banner-hero.responsible{background:linear-gradient(90deg,#fffdf9 0 42%,rgba(255,253,249,.35)),url('assets/responsible-hero.jpg') right/55% 100% no-repeat}.banner-hero h1{font-size:54px}.contrib-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.contrib-steps>div{position:relative;text-align:center;border:1px solid var(--line);border-radius:14px;padding:25px;background:#fff}.contrib-steps span{position:absolute;top:-17px;left:50%;transform:translateX(-50%);width:34px;height:34px;border-radius:50%;background:var(--green2);color:#fff;display:grid;place-items:center;font-weight:800}.contrib-steps i{font-style:normal;font-size:44px;display:block;margin:8px}.contrib-steps b{display:block}.contrib-steps p{font-size:13px}.example-card{display:grid;grid-template-columns:1.45fr .8fr;border:1px solid var(--line);border-radius:17px;margin-top:30px;overflow:hidden}.example-card>div{padding:24px}.example-photos{display:grid;grid-template-columns:1fr 1fr;gap:12px}.example-photos figure{margin:0;position:relative}.example-photos img{height:230px;width:100%;object-fit:cover;border-radius:12px}.example-photos figcaption{position:absolute;left:10px;bottom:10px;background:#03472f;color:#fff;padding:6px 9px;border-radius:6px;font-size:11px}.example-data{background:#faf9ef}.identify-card{display:grid;grid-template-columns:.8fr 1.2fr;gap:20px;background:#f6f7ed;border-radius:17px;padding:18px;margin-top:25px}.identify-photos{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.identify-photos img{width:100%;height:150px;object-fit:cover;border-radius:10px}.join-grid{display:grid;grid-template-columns:.7fr 1.35fr .55fr;gap:24px;align-items:start}.join-copy h1{font:700 52px Georgia,serif;color:var(--green)}.checklist{list-style:none;padding:0;display:grid;gap:12px}.checklist li:before{content:'✓';color:var(--green2);font-weight:900;margin-right:10px}.side-photo{width:100%;height:260px;object-fit:cover;border-radius:18px;margin-top:28px}.signup-card,.trust-card,.panel{border:1px solid var(--line);border-radius:17px;padding:24px;background:#fff}.signup-head{display:flex;justify-content:space-between;gap:20px;align-items:start}.signup-head span{font-size:12px}.signup-head a{color:var(--green2);font-weight:800}.tabs{display:flex;gap:10px;margin:20px 0}.tab{border:0;border-bottom:2px solid transparent;background:none;padding:8px 12px}.tab.active{border-color:var(--green2);color:var(--green2);font-weight:800}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.form-grid label,.demo-form label{font-size:12px;font-weight:700;display:grid;gap:6px}.wide{grid-column:1/-1}.input{width:100%;padding:13px 14px;border:1px solid #d8ded9;border-radius:8px;background:#fff}.interest-tags{display:flex;flex-wrap:wrap;gap:8px}.interest-tags span{background:#f0f3e4;padding:8px 11px;border-radius:9px;font-size:12px}.consent{display:flex!important;grid-template-columns:16px 1fr!important;align-items:start;margin:18px 0}.or{text-align:center;margin:15px 0;color:var(--muted);font-size:12px}.social-login{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.social-login button{padding:10px;background:#fff;border:1px solid var(--line);border-radius:8px;font-size:21px}.trust-card{display:grid;gap:24px;background:#faf9ef}.trust-card>div{display:grid;gap:5px}.trust-card small{font-size:11px}.welcome-hero,.about-hero,.contact-hero,.faq-hero,.cookies-hero{background:#fffdf9}.welcome-grid,.about-grid,.contact-grid,.faq-hero .container,.cookies-grid{display:grid;grid-template-columns:.85fr 1.15fr;align-items:stretch}.welcome-grid>div,.about-grid>div,.contact-grid>div,.faq-hero .container>div,.cookies-grid>div{padding:45px 30px 45px 0;display:flex;flex-direction:column;justify-content:center}.welcome-grid>img,.about-grid>img,.contact-grid>img,.faq-hero img,.cookies-grid>img{width:100%;height:100%;min-height:320px;object-fit:cover}.bigcheck{width:74px;height:74px;border-radius:50%;display:grid;place-items:center;background:#075932;color:#fff;font-size:40px}.next-grid{display:grid;grid-template-columns:1fr .9fr;gap:20px;margin-top:26px}.download-card,.steps-mini{border:1px solid var(--line);border-radius:17px;padding:28px;background:#fbfaf4}.store-buttons{display:flex;gap:10px}.store-buttons span{background:#111;color:#fff;padding:12px 18px;border-radius:8px}.steps-mini>div{display:grid;grid-template-columns:38px 1fr;gap:12px;padding:13px 0;border-bottom:1px solid var(--line)}.steps-mini span{width:32px;height:32px;border-radius:50%;background:var(--green2);color:#fff;display:grid;place-items:center;font-weight:800}.steps-mini p{grid-column:2;margin:0;font-size:13px}.story-grid{display:grid;grid-template-columns:.85fr 1.15fr;align-items:stretch;margin-top:24px;border:1px solid var(--line);border-radius:17px;overflow:hidden}.story-grid.reverse{grid-template-columns:1fr 1.15fr}.story-grid img{width:100%;height:100%;min-height:310px;object-fit:cover}.story-copy{padding:30px}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:20px;text-align:center}.stats b{display:block;font:700 26px Georgia,serif;color:var(--green)}.stats small{font-size:11px}.faq-hero .container{padding-top:0}.faq-search{max-width:620px;margin-top:16px;border-radius:28px}.faq-categories{display:grid;grid-template-columns:repeat(6,1fr);gap:12px}.faq-categories span{display:flex;flex-direction:column;align-items:center;gap:8px;border:1px solid var(--line);padding:20px;border-radius:14px;background:#fff;font-size:28px}.faq-categories b{font-size:13px}.faq-layout{display:grid;grid-template-columns:.35fr 1fr;gap:20px;margin-top:25px}.faq-side{background:#faf9ef;border:1px solid var(--line);border-radius:15px;padding:25px}.faq-bubble{font-size:70px;display:block;text-align:center;padding:30px}.faq-item{border:1px solid var(--line);border-radius:11px;background:#fff;margin-bottom:10px;overflow:hidden}.faq-item summary{padding:17px 20px;font-weight:800;cursor:pointer;color:var(--green)}.faq-item p{padding:0 20px 18px;margin:0}.contact-promises{display:flex;gap:18px;flex-wrap:wrap;margin-top:24px;font-size:12px}.contact-methods{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);border-radius:17px;padding:22px;margin:18px 0 24px}.contact-methods>div{display:flex;flex-direction:column;align-items:center;text-align:center;gap:7px;border-right:1px solid var(--line);font-size:28px}.contact-methods>div:last-child{border-right:0}.contact-methods b,.contact-methods small,.contact-methods a,.contact-methods span{font-size:13px}.contact-form-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:20px}.demo-form{display:grid;gap:14px}.map-photo{width:100%;height:240px;object-fit:cover;border-radius:12px}.travel p{font-size:13px}.profile-hero{text-align:center;padding:38px 0;background:linear-gradient(90deg,#fff 0 50%,#f5f5e8)}.profile-hero h1{font-size:54px}.profile-tabs{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#fff}.profile-tabs .container{display:flex;justify-content:space-between;gap:18px;padding:16px 0;font-size:13px}.profile-tabs .active{color:var(--green2);font-weight:800}.profile-layout{display:grid;grid-template-columns:310px 1fr;gap:20px}.profile-layout aside{display:grid;gap:18px}.profile-card{text-align:center}.profile-card img{width:100px;height:100px;object-fit:cover;border-radius:50%;margin:auto}.profile-card h2 small{font:600 11px Inter;background:#e9f1d7;padding:4px 7px;border-radius:8px}.panel h3{font-family:Georgia,serif}.right{float:right}.premium{background:#faf9ef}.profile-main{display:grid;grid-template-columns:1.1fr .9fr;gap:25px}.range{width:100%;accent-color:var(--green2)}.level-card{margin-top:18px}.level-row{display:grid;grid-template-columns:80px 1fr auto;gap:20px;align-items:center}.level-badge{width:75px;height:75px;border-radius:50%;display:grid;place-items:center;background:#eff4da;font-size:35px;border:2px solid #9ab93e}.progress{height:8px;border-radius:8px;background:#e4e7dd;overflow:hidden}.progress i{display:block;width:76%;height:100%;background:#52a240}.badges{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;text-align:center}.badges span{font-size:35px}.badges small{display:block;font-size:10px;margin-top:8px}.cookies-grid{border-bottom:1px solid var(--line)}.cookies-grid>img{max-height:340px}.cookie-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:36px}.text-block{margin-bottom:30px}.cookie-summary{background:#faf9ef;padding:20px;border-radius:15px}.cookie-panel{border:1px solid var(--line);border-radius:18px;padding:25px;background:#fbfaf4}.cookie-row{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:17px 0;border-bottom:1px solid var(--line)}.cookie-row>div{display:grid;gap:5px}.cookie-row small{font-size:12px}.cookie-row em{font:500 10px Inter;background:#fff;padding:4px 6px;border-radius:5px}.toggle{width:53px;height:30px;border:0;border-radius:30px;background:#c8c7b8;position:relative;cursor:pointer}.toggle:after{content:"";position:absolute;width:24px;height:24px;border-radius:50%;background:#fff;top:3px;left:3px;transition:.2s;box-shadow:0 1px 3px rgba(0,0,0,.25)}.toggle.on{background:#087244}.toggle.on:after{left:26px}.cookie-panel>.btn{margin-top:10px}.privacy-strip{margin-top:30px;background:#faf9ef;border:1px solid var(--line);border-radius:16px;padding:20px;display:flex;gap:17px;align-items:center}.privacy-strip>div p{margin:4px 0}.footer{background:linear-gradient(135deg,#00372a,#005338);color:#fff;padding:42px 0 20px}.footer-grid{display:grid;grid-template-columns:1.15fr .8fr .8fr 1.15fr;gap:34px}.footer .brand{color:#fff}.footer .brand small{color:#e3eee8}.footer a{display:block;margin:8px 0;font-size:13px;opacity:.94}.footer p{font-size:12px}.socials{display:flex;gap:10px;margin-top:22px}.socials span{width:36px;height:36px;border:1px solid rgba(255,255,255,.5);border-radius:50%;display:grid;place-items:center}.newsletter{display:flex;gap:8px}.newsletter .input{min-width:0}.legal{display:flex;justify-content:space-between;gap:20px;border-top:1px solid rgba(255,255,255,.2);padding-top:18px;margin-top:27px;font-size:11px}.hidden{display:none!important}@media(max-width:1000px){.menu{position:absolute;left:0;right:0;top:92px;background:#fffdf9;padding:18px 4vw;display:none;flex-direction:column;align-items:stretch;box-shadow:0 15px 20px rgba(0,0,0,.08)}.menu.open{display:flex}.menu a{padding:10px 0}.menu-toggle{display:block}.nav-cta{display:none}.home-grid,.welcome-grid,.about-grid,.contact-grid,.faq-hero .container,.cookies-grid{grid-template-columns:1fr}.home-visual{min-height:500px}.promise-grid{grid-template-columns:repeat(2,1fr)}.species-grid{grid-template-columns:repeat(2,1fr)}.app-showcase{grid-template-columns:repeat(3,1fr)}.benefit-grid.five,.benefit-grid.six{grid-template-columns:repeat(3,1fr)}.map-layout{grid-template-columns:1fr .72fr}.why-card{grid-column:1/-1}.join-grid{grid-template-columns:1fr 1.3fr}.trust-card{grid-column:1/-1;grid-template-columns:repeat(4,1fr)}.profile-main{grid-template-columns:1fr}.faq-categories{grid-template-columns:repeat(3,1fr)}}@media(max-width:720px){.container{width:min(94vw,620px)}.brand strong{font-size:32px}.brand small{font-size:9px}.hero-copy{padding:38px 6px}.hero-copy h1,.page-intro h1,.banner-hero h1,.welcome-hero h1,.about-hero h1,.contact-hero h1,.faq-hero h1,.profile-hero h1,.cookies-hero h1{font-size:42px}.home-visual{min-height:400px}.promise-grid,.launch-card,.how-row,.how-media,.region-card,.join-grid,.next-grid,.story-grid,.story-grid.reverse,.contact-form-grid,.profile-layout,.cookie-layout{grid-template-columns:1fr}.how-copy{gap:14px}.how-tip{padding:18px}.app-showcase{grid-template-columns:repeat(2,1fr)}.species-grid{grid-template-columns:1fr}.benefit-grid,.benefit-grid.five,.benefit-grid.six{grid-template-columns:repeat(2,1fr)}.benefit-grid>div:nth-child(even){border-right:0}.contrib-steps{grid-template-columns:1fr 1fr;gap:28px 12px}.example-card{grid-template-columns:1fr}.identify-card{grid-template-columns:1fr}.map-layout{grid-template-columns:1fr}.realistic-map{min-height:460px}.place-list{border:0;border-top:1px solid var(--line)}.trust-card{grid-template-columns:1fr 1fr}.faq-layout{grid-template-columns:1fr}.faq-side{display:none}.contact-methods{grid-template-columns:1fr 1fr;gap:22px}.contact-methods>div{border-right:0}.profile-tabs .container{overflow:auto;justify-content:flex-start;white-space:nowrap}.profile-layout aside{grid-template-columns:1fr}.badges{grid-template-columns:repeat(3,1fr)}.footer-grid{grid-template-columns:1fr 1fr}.legal{flex-direction:column}.quote-strip,.cta-strip{align-items:flex-start;flex-direction:column}.filter-bar{justify-content:flex-start}.location-pill{width:100%;margin:0}.form-grid{grid-template-columns:1fr}.wide{grid-column:auto}}@media(max-width:460px){.promise-grid,.app-showcase,.benefit-grid,.benefit-grid.five,.benefit-grid.six,.contrib-steps,.contact-methods,.footer-grid{grid-template-columns:1fr}.benefit-grid>div{border-right:0;border-bottom:1px solid var(--line);padding:14px}.benefit-grid>div:last-child{border-bottom:0}.trust-card{grid-template-columns:1fr}.app-showcase img{height:190px}.profile-layout aside{grid-template-columns:1fr}.level-row{grid-template-columns:70px 1fr}.level-row>strong{grid-column:2}.faq-categories{grid-template-columns:repeat(2,1fr)}}
/* ===== Cueilléo V2 — fidélité maquettes ===== */
:root{--site-max:1400px}
.container{width:min(var(--site-max),94vw)}
.nav{min-height:96px;gap:26px}
.brand{width:190px;min-width:190px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;margin-right:auto}
.brand-logo{width:155px;height:auto;object-fit:contain;display:block}
.brand small{font-size:10px;margin-top:2px;color:#4a554e;white-space:nowrap}
.leafmark,.brand strong{display:none!important}
.footer .brand{width:210px;min-width:0}
.footer .brand-logo{width:165px;filter:brightness(0) invert(1)}
.footer .brand small{color:#dfece5;margin-top:5px}
.menu{gap:26px;font-size:14px}
.home-grid{grid-template-columns:56% 44%;min-height:670px}
.hero-copy{padding:60px 52px 40px 18px;justify-content:center}
.hero-copy h1{font-size:clamp(48px,4vw,64px);line-height:1.03;letter-spacing:-1.3px;max-width:760px}
.hero-copy h1 .hero-line{display:block;white-space:nowrap;color:var(--green)}
.hero-copy h1 .hero-line.accent{color:#23883b}
.hero-copy>p{font-size:17px;max-width:680px;margin-bottom:24px}
.home-visual{min-height:670px;border-radius:0 0 0 2px}
.home-visual img{object-position:center center}
.promise-grid{gap:22px;margin-top:34px}
.promise-grid b{font-size:14px}.promise-grid small{font-size:11px}
.round-icon{width:54px;height:54px;font-size:25px}
.section{padding:58px 0}
.launch-card{grid-template-columns:.9fr 1.1fr}
.launch-copy{padding:42px 48px}
.launch-copy h2{font-size:46px}
.app-showcase{gap:32px}.app-showcase img{height:190px}
.page-intro h1,.banner-hero h1,.profile-hero h1{font-size:58px}
.species-img{height:245px}
.species-card{border-radius:15px}
.species-body{padding:18px}
.photo-banner{min-height:330px}
.footer{padding-top:48px}
@media(max-width:1250px){
  .container{width:min(1180px,94vw)}
  .menu{gap:16px;font-size:13px}
  .brand{width:165px;min-width:165px}.brand-logo{width:145px}
  .home-grid{grid-template-columns:58% 42%}
  .hero-copy{padding-right:28px}
  .hero-copy h1{font-size:54px}
  .promise-grid{gap:10px}
}
@media(max-width:1000px){
  .brand{width:auto;min-width:155px}
  .hero-copy h1 .hero-line{white-space:normal}
  .home-grid{grid-template-columns:1fr}
  .home-visual{min-height:520px}
}
@media(max-width:720px){
  .brand-logo{width:130px}.brand small{font-size:8.5px}
  .hero-copy{padding:38px 6px}
  .hero-copy h1{font-size:43px;letter-spacing:-.6px}
  .species-img{height:260px}
}

/* ===== Cueilléo V3 — corrections grand écran validées sur maquettes ===== */
@media (min-width:1001px){
  /* Titres plus proches des proportions des maquettes */
  .hero-copy h1{font-size:52px;line-height:1.055;letter-spacing:-.9px}
  .page-intro h1,.banner-hero h1,.welcome-hero h1,.about-hero h1,.contact-hero h1,.faq-hero h1,.profile-hero h1,.cookies-hero h1{font-size:46px!important;line-height:1.08!important;letter-spacing:-.45px}
  .launch-copy h2{font-size:40px;line-height:1.1}
  h2{font-size:31px}

  /* Fondu photo -> zone texte, comme les maquettes */
  .home-visual{position:relative;margin-left:-52px;padding-left:52px}
  .home-visual img{-webkit-mask-image:linear-gradient(to right,transparent 0%,rgba(0,0,0,.35) 9%,#000 23%,#000 100%);mask-image:linear-gradient(to right,transparent 0%,rgba(0,0,0,.35) 9%,#000 23%,#000 100%)}
  .welcome-grid>img,.about-grid>img,.contact-grid>img,.cookies-grid>img{-webkit-mask-image:linear-gradient(to right,transparent 0%,rgba(0,0,0,.25) 10%,#000 27%,#000 100%);mask-image:linear-gradient(to right,transparent 0%,rgba(0,0,0,.25) 10%,#000 27%,#000 100%);margin-left:-34px;width:calc(100% + 34px)}

  /* FAQ : composition propre, sans chevauchement ni bande blanche */
  .faq-hero{overflow:hidden;background:#fffdf9}
  .faq-hero .container{grid-template-columns:52% 48%;min-height:355px;align-items:stretch;position:relative}
  .faq-hero .container>div{padding:42px 16px 42px 0;position:relative;z-index:2}
  .faq-hero img{min-height:355px;height:355px;object-fit:cover;object-position:center;width:calc(100% + 70px);margin-left:-70px;-webkit-mask-image:linear-gradient(to right,transparent 0%,rgba(0,0,0,.22) 13%,#000 35%,#000 100%);mask-image:linear-gradient(to right,transparent 0%,rgba(0,0,0,.22) 13%,#000 35%,#000 100%)}
  .faq-search{width:100%;max-width:650px;margin-top:18px;position:relative;z-index:4;background:rgba(255,255,255,.96)}

  /* Icônes : même style fin vert sur fond crème */
  .round-icon,.faq-categories span .icon-shell,.icon-shell,.contact-methods .icon-shell,.faq-bubble.icon-shell,.bigcheck.icon-shell{
    color:var(--green);background:#eef3d9;border-radius:50%;display:inline-grid;place-items:center;flex:0 0 auto
  }
  .round-icon{font-size:0}
  .round-icon .cueilleo-icon{width:26px;height:26px}
  .cueilleo-icon{width:28px;height:28px;stroke:currentColor;fill:none;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;display:block}
  .faq-categories span{font-size:0;min-height:112px;justify-content:center}
  .faq-categories span .icon-shell{width:54px;height:54px}
  .faq-categories span .cueilleo-icon{width:27px;height:27px}
  .faq-categories b{font-size:13px}
  .contact-methods>div{font-size:0}
  .contact-methods>div .icon-shell{width:56px;height:56px;margin-bottom:4px}
  .contact-methods>div .cueilleo-icon{width:28px;height:28px}
  .contrib-steps i{font-size:0;width:64px;height:64px;border-radius:50%;background:#eef3d9;display:grid;place-items:center;margin:8px auto 14px;color:var(--green)}
  .contrib-steps i .cueilleo-icon{width:32px;height:32px}
  .faq-bubble{font-size:0!important}
  .faq-bubble .cueilleo-icon{width:54px;height:54px}
}

/* ===== Cueilléo V4 — corrections cahier grand écran ===== */
@media (min-width:1001px){
  .hero-copy h1{font-size:47px!important;line-height:1.04!important}
  .page-intro h1,.banner-hero h1,.welcome-hero h1,.about-hero h1,.contact-hero h1,.faq-hero h1,.profile-hero h1,.cookies-hero h1{font-size:42px!important}
  .hero-copy>p{font-size:16px;line-height:1.5}
  .promise-grid small{font-size:10.5px;line-height:1.35}
  .home-grid{grid-template-columns:54% 46%}
  .home-visual{margin-left:-85px;padding-left:85px}
  .home-visual img{-webkit-mask-image:linear-gradient(to right,transparent 0%,rgba(0,0,0,.18) 8%,#000 30%);mask-image:linear-gradient(to right,transparent 0%,rgba(0,0,0,.18) 8%,#000 30%)}
  .real-map-photo{background-image:linear-gradient(rgba(255,255,255,.08),rgba(255,255,255,.08)),url('photos/contact-map.jpg')!important;background-size:cover!important;background-position:center!important}
  .real-map-photo:before{display:none}
  .faq-categories span{font-size:inherit!important;display:flex!important;flex-direction:column;align-items:center;gap:5px;padding:14px 8px;text-align:center}
  .faq-categories span i{font-style:normal;width:52px;height:52px;border-radius:50%;display:grid;place-items:center;background:#eef3d9;color:var(--green);font-size:24px}
  .faq-categories span b{font-size:13px}.faq-categories span small{font-size:10px;color:#58645e;line-height:1.25}
  .faq-item summary{position:relative;padding-right:42px}.faq-item summary:after{content:'⌄';position:absolute;right:17px;top:50%;transform:translateY(-50%);font-size:22px;color:var(--green)}.faq-item[open] summary:after{content:'⌃'}
  .email-only{grid-template-columns:1fr!important;max-width:430px;margin:0 auto 28px}.email-only>div{border:0!important}
  .contact-side{display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;min-height:360px;background:#fafaf1}
  .community-note{display:flex;flex-direction:column;gap:7px;margin-top:24px;padding:18px 20px;border-radius:14px;background:#f1f5df;color:var(--green)}.community-note small{color:#4e5b54}
  .round-icon.ico{font-family:Georgia,serif;font-size:22px!important;font-weight:700}
}


/* ===== Cueilléo V5 — reprise qualitative grand écran ===== */
.ui-icon{display:inline-grid;place-items:center;line-height:0;color:inherit}.cueilleo-icon{width:24px;height:24px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.icon-shell{width:50px;height:50px;border-radius:50%;display:inline-grid;place-items:center;background:#eef3d9;color:var(--green)}
.filter .ui-icon,.location-pill .ui-icon,.btn .ui-icon,.member-lock .ui-icon{width:18px;height:18px;vertical-align:middle}.filter .cueilleo-icon,.location-pill .cueilleo-icon,.btn .cueilleo-icon,.member-lock .cueilleo-icon{width:18px;height:18px}
@media (min-width:1001px){
  /* Accueil : composition remontée et respiration du titre */
  .home-grid{min-height:670px;grid-template-columns:55% 45%}
  .hero-copy{justify-content:flex-start;padding:112px 50px 28px 18px}
  .hero-copy h1{font-size:45px!important;line-height:1.115!important;letter-spacing:-.55px!important;max-width:690px}
  .hero-copy h1 .hero-line{margin-bottom:2px}.hero-copy h1 .hero-line.accent:first-of-type{margin-top:5px}
  .hero-copy .green-rule{margin:18px 0 16px}
  .hero-copy>p{font-size:15px;line-height:1.55;max-width:640px;margin-bottom:18px}
  .hero-copy>.btn.big{align-self:flex-start;padding:13px 24px;font-size:15px;min-width:455px}
  .promise-grid{margin-top:24px;gap:18px}.promise-grid .round-icon{width:50px;height:50px;background:#eef3d9}.promise-grid .cueilleo-icon{width:27px;height:27px}.promise-grid b{font-size:13px}.promise-grid small{font-size:10.5px;max-width:160px}
  .home-visual{min-height:670px;margin-left:-55px;padding-left:55px}.home-visual img{-webkit-mask-image:linear-gradient(to right,transparent 0%,rgba(0,0,0,.22) 11%,#000 28%);mask-image:linear-gradient(to right,transparent 0%,rgba(0,0,0,.22) 11%,#000 28%)}
  .quote-strip{position:relative;min-height:86px;padding:18px 110px 18px 92px;overflow:hidden;background:linear-gradient(90deg,#eff5dc,#f7f8ec);border-radius:14px}.quote-heart{position:absolute;left:28px;width:46px;height:46px;border-radius:50%;display:grid;place-items:center;background:#0a6841;color:#fff}.quote-heart .cueilleo-icon{width:26px;height:26px}.quote-strip b{font-size:18px;line-height:1.3}.branch-deco{position:absolute;right:25px;bottom:5px;color:#4f8f3b;transform:rotate(-10deg)}.branch-deco .cueilleo-icon{width:74px;height:74px;stroke-width:1.25}

  /* Comment ça marche : réduire réellement les contenants */
  .page-intro{padding:34px 0 12px}.page-intro h1{font-size:40px!important}.page-intro p{font-size:16px;margin:10px 0}.section.compact{padding:30px 0}
  .how-row{grid-template-columns:33% 67%;gap:26px;padding:18px 0;min-height:0}.how-copy{gap:20px}.num{width:48px;height:48px;min-width:48px;font-size:23px}.how-copy h3,.how-tip h3{font-size:20px;margin:5px 0 8px}.how-copy p,.how-tip p{font-size:14px;line-height:1.5;margin:0}.how-media{height:230px;min-height:230px;grid-template-columns:58% 42%;border-radius:15px}.how-media>img{height:230px!important;min-height:230px!important;object-fit:cover}.how-tip{padding:20px}.how-tip .round-icon{width:48px;height:48px;margin-bottom:5px}.how-tip .cueilleo-icon{width:26px;height:26px}
  .cta-strip{margin-top:22px;padding:16px 22px;min-height:72px}.cta-strip b{font-size:16px}.cta-strip .round-icon{width:46px;height:46px}.how-trust{display:grid;grid-template-columns:repeat(4,1fr);margin-top:24px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:18px 0}.how-trust>div{display:flex;align-items:center;gap:12px;padding:0 22px;border-right:1px solid var(--line)}.how-trust>div:last-child{border-right:0}.how-trust .icon-shell{width:48px;height:48px;min-width:48px}.how-trust p{margin:0;display:grid;gap:4px}.how-trust b{font-size:12px;color:var(--green)}.how-trust small{font-size:10px;color:#59655e;line-height:1.35}

  /* Découvrir : icônes dans chaque vignette et bandeau propre */
  .filter-tabs .filter{display:inline-flex;align-items:center;gap:7px}.species-title{display:flex;align-items:center;justify-content:space-between;gap:12px}.species-title h3{margin:0 0 9px}.species-title-icon{width:38px;height:38px;min-width:38px;border-radius:50%;display:grid;place-items:center;background:#eef3d9;color:var(--green)}.species-title-icon .cueilleo-icon{width:21px;height:21px}.discover-photo-banner{min-height:320px!important;display:flex;align-items:center}.discover-photo-banner>img{z-index:0}.discover-photo-banner:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,253,247,.96) 0%,rgba(255,253,247,.90) 34%,rgba(255,253,247,.25) 52%,transparent 68%);z-index:1;pointer-events:none}.discover-photo-banner>div{z-index:2!important;margin:0!important;margin-left:34px!important;max-width:500px!important;padding:24px 28px!important;background:transparent!important;border-radius:0!important;box-shadow:none!important}.discover-photo-banner h2{font-size:29px!important}.benefit-grid{padding:20px 10px}.benefit-grid>div{font-size:inherit!important}.benefit-icon{width:54px;height:54px}.benefit-icon .cueilleo-icon{width:29px;height:29px}.benefit-grid b{font-size:13px}.benefit-grid small{font-size:10.5px}

  /* Autour de moi : vraie carte issue de la maquette et icônes homogènes */
  .map-layout{grid-template-columns:1.2fr .72fr .68fr}.maquette-map{min-height:640px;background:url('photos/map-autour.jpg') center/cover no-repeat!important}.maquette-map:before{display:none!important}.why-card{padding:25px 22px}.why-card h2{font-size:29px}.why-card ul{gap:13px}.why-card li{display:flex;align-items:center;gap:10px;line-height:1.35}.why-icon{width:42px;height:42px;min-width:42px}.why-icon .cueilleo-icon{width:22px;height:22px}.mini-benefits{grid-template-columns:repeat(4,1fr);gap:0;margin-top:18px}.mini-benefits>div{display:flex;flex-direction:column;align-items:center;text-align:center;gap:8px;padding:0 15px;border-right:1px solid var(--line)}.mini-benefits>div:last-child{border-right:0}.mini-icon{width:50px;height:50px}.mini-icon .cueilleo-icon{width:27px;height:27px}.mini-benefits b{font-size:11px;line-height:1.35;color:var(--ink)}

  /* Même langage d'icônes sur le reste du site */
  .contact-methods .ui-icon,.faq-categories .ui-icon,.contrib-steps .ui-icon,.benefit-grid .ui-icon,.mini-benefits .ui-icon{color:var(--green)}
}


/* ===== Cueilléo V6 — corrections maquettes : Contribuer / FAQ / Contact / À propos ===== */
@media (min-width:1001px){
  /* Contribuer */
  .contrib-benefits .icon-shell{width:58px;height:58px;margin-bottom:4px}.contrib-benefits .cueilleo-icon{width:30px;height:30px}.contrib-benefits>div{padding:12px 18px}.contrib-benefits b{font-size:13px}.contrib-benefits small{font-size:10.5px;max-width:190px}
  .contrib-steps{gap:18px;margin-top:16px}.contrib-steps>div{padding:30px 18px 20px;min-height:205px}.contrib-steps>div>.step-number{position:absolute;top:-18px;left:50%;transform:translateX(-50%);width:36px;height:36px;border-radius:50%;background:#075a34;color:#fff;display:grid;place-items:center;font-weight:800;font-style:normal}.contrib-steps i{position:static!important;width:68px;height:68px;margin:4px auto 14px!important;background:#eef3d9!important;border-radius:50%!important;display:grid!important;place-items:center!important;color:var(--green)!important}.contrib-steps i .ui-icon{position:static!important;transform:none!important;width:auto!important;height:auto!important;background:none!important;color:inherit!important}.contrib-steps i .cueilleo-icon{width:34px;height:34px}.contrib-steps b{font-size:14px}.contrib-steps p{font-size:11.5px;line-height:1.45;margin:9px 0 0}
  .contrib-cta small{font-size:12px;font-weight:500;color:#425249}.contrib-trust-bar{display:grid;grid-template-columns:repeat(4,1fr);margin-top:22px;padding:18px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.contrib-trust-bar>div{display:flex;align-items:flex-start;gap:12px;padding:0 20px;border-right:1px solid var(--line)}.contrib-trust-bar>div:last-child{border-right:0}.contrib-trust-bar .icon-shell{width:48px;height:48px;min-width:48px}.contrib-trust-bar .cueilleo-icon{width:25px;height:25px}.contrib-trust-bar p{margin:0;display:grid;gap:4px}.contrib-trust-bar b{font-size:11px}.contrib-trust-bar small{font-size:9.5px;line-height:1.4;color:#5b665f}

  /* À propos */
  .about-question-strip{margin-top:20px;min-height:72px;border:1px solid #e4e6d7;border-radius:14px;background:linear-gradient(90deg,#f1f4df,#faf9f0);display:flex;align-items:center;gap:18px;padding:14px 22px}.about-question-strip .icon-shell{width:48px;height:48px;min-width:48px}.about-question-strip b{flex:1;font-size:14px;line-height:1.35}.about-question-strip .btn{min-width:170px}

  /* FAQ — reconstruction sans superposition */
  .faq-hero-v6{padding:0!important;background:#fffdf9!important;overflow:visible!important}.faq-hero-v6:before,.faq-hero-v6:after{display:none!important}.faq-hero-grid{display:grid!important;grid-template-columns:46% 54%!important;grid-template-rows:280px 58px!important;position:relative!important;align-items:stretch!important;padding:0!important}.faq-hero-copy{grid-column:1;grid-row:1;padding:55px 25px 20px 35px;z-index:2}.faq-hero-copy h1{font-size:42px!important;line-height:1.08!important}.faq-hero-copy p{font-size:15px;line-height:1.55;margin:0}.faq-hero-photo{grid-column:2;grid-row:1;overflow:hidden;position:relative}.faq-hero-photo:before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,#fffdf9 0%,rgba(255,253,249,.78) 12%,transparent 40%)}.faq-hero-photo img{width:100%;height:100%;object-fit:cover;position:relative;z-index:0;-webkit-mask-image:none!important;mask-image:none!important}.faq-search-wrap{grid-column:1/3;grid-row:2;width:66%;margin:-22px auto 0;z-index:5;position:relative}.faq-search-wrap>.ui-icon{position:absolute;left:20px;top:50%;transform:translateY(-50%);z-index:2;color:var(--green)}.faq-search-wrap .faq-search{max-width:none!important;width:100%!important;height:58px!important;margin:0!important;padding-left:55px!important;border-radius:30px!important;box-shadow:0 7px 18px rgba(18,55,38,.05);background:#fff!important}.faq-categories-v6{margin-top:18px;gap:12px}.faq-categories-v6 span{min-height:175px!important;padding:20px 12px!important;justify-content:flex-start!important;gap:9px!important}.faq-categories-v6 span i.icon-shell{width:58px;height:58px;margin-bottom:3px}.faq-categories-v6 span i.icon-shell .ui-icon{display:grid}.faq-categories-v6 .cueilleo-icon{width:29px;height:29px}.faq-categories-v6 b{font-size:13px!important}.faq-categories-v6 small{font-size:10px!important;line-height:1.35!important;color:#546159!important;text-align:center}
  .faq-layout-v6{grid-template-columns:280px 1fr;gap:18px;margin-top:28px}.faq-side-v6{padding:25px 24px;display:flex;flex-direction:column;align-items:flex-start;min-height:440px}.faq-side-v6 h2{font-size:27px}.faq-side-v6>p{font-size:13px}.faq-speech{width:160px;height:120px;margin:18px auto 20px;align-self:center;border-radius:50% 50% 50% 18%;background:#dfe9a8;display:grid;place-items:center;position:relative}.faq-speech:after{content:"";position:absolute;left:20px;bottom:-18px;border:22px solid transparent;border-top-color:#dfe9a8;transform:rotate(30deg)}.faq-speech .cueilleo-icon{width:60px;height:60px;color:#246b38;position:relative;z-index:2}.faq-side-v6 .btn{margin-top:auto}.faq-item{margin-bottom:8px;border-radius:10px}.faq-item summary{padding:15px 18px;font-size:13px}.faq-item p{font-size:12px;line-height:1.55;padding:0 18px 16px}.faq-item summary:after{content:'⌄'!important;font-family:Arial,sans-serif;font-size:20px}.faq-item[open] summary{background:linear-gradient(90deg,#f0f3da,#faf9f2)}.faq-item[open] summary:after{content:'⌃'!important}
  .faq-help-banner{margin-top:28px;min-height:185px;border:1px solid #e3e5d8;border-radius:15px;background:linear-gradient(90deg,#f1f4df,#faf9f0);display:grid;grid-template-columns:270px 1fr 300px;align-items:center;overflow:hidden}.faq-help-visual{height:185px;position:relative;display:flex;align-items:flex-end;justify-content:center;overflow:hidden}.faq-help-visual img{height:180px;width:auto;object-fit:cover;border-radius:20px 20px 0 0;transform:rotate(-6deg);transform-origin:bottom}.help-circle{position:absolute;right:28px;top:45px;width:72px;height:72px;border-radius:50%;border:4px solid #5e9634;background:#edf2d4;display:grid;place-items:center;color:#1f6538}.help-circle .cueilleo-icon{width:36px;height:36px}.faq-help-copy{padding:20px 30px}.faq-help-copy h2{font-size:28px;margin-bottom:0}.faq-help-copy .green-rule{margin:10px 0}.faq-help-copy p{font-size:12px;margin:0 0 8px}.faq-help-copy ul{list-style:none;padding:0;margin:0;display:grid;gap:5px;font-size:11px}.faq-help-copy li{display:flex;align-items:center;gap:8px}.faq-help-copy li .cueilleo-icon{width:16px;height:16px}.faq-help-actions{display:flex;flex-direction:column;align-items:center;gap:12px;padding:20px}.faq-help-actions .btn{min-width:220px}.faq-help-actions span{font-size:11px}

  /* Contact — une seule zone de contact, icônes cerclées */
  .contact-promises-v6{gap:24px}.contact-promises-v6>span{display:flex;align-items:center;gap:8px}.contact-promises-v6 .icon-shell{width:42px;height:42px;min-width:42px}.contact-promises-v6 .cueilleo-icon{width:22px;height:22px}.contact-promises-v6 b{font-size:11px}.contact-v6-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;align-items:stretch}.contact-form-v6{padding:25px 28px}.contact-form-v6 h2{font-size:30px}.form-privacy{display:flex;align-items:center;justify-content:center;gap:6px;color:#566159;font-size:10px}.form-privacy .cueilleo-icon{width:14px;height:14px}.contact-card-v6{background:linear-gradient(135deg,#f4f6e7,#fbfaf3);display:flex;flex-direction:column;align-items:center;text-align:center;justify-content:center;padding:34px}.contact-main-icon{width:66px;height:66px}.contact-main-icon .cueilleo-icon{width:33px;height:33px}.contact-card-v6 h2{font-size:30px;margin:15px 0 5px}.contact-card-v6>p{max-width:480px;font-size:13px}.contact-email{font-weight:800;color:var(--green);border:1px solid var(--green);border-radius:8px;padding:10px 14px;margin:8px 0 25px}.contact-reassurance{width:100%;display:grid;grid-template-columns:repeat(3,1fr);gap:10px;border-top:1px solid #dfe2d2;padding-top:20px}.contact-reassurance>div{display:flex;flex-direction:column;align-items:center;gap:6px}.contact-reassurance .icon-shell{width:44px;height:44px}.contact-reassurance .cueilleo-icon{width:22px;height:22px}.contact-reassurance b{font-size:11px}.contact-reassurance small{font-size:9px;line-height:1.35;color:#5d685f}
}


/* ===== Cueilléo V7 — ajustements grand écran selon maquettes ===== */
@media (min-width:1001px){

  /* ACCUEIL — descendre CTA + icônes + textes pour mieux occuper le bas */
  .home-grid{min-height:700px}
  .hero-copy{
    padding-top:96px!important;
    padding-bottom:34px!important;
  }
  .hero-copy>p{margin-bottom:30px!important}
  .home-main-cta{
    margin-top:10px!important;
    min-height:52px;
  }
  .promise-grid{
    margin-top:48px!important;
    padding-bottom:10px;
    gap:24px!important;
  }
  .promise-grid .round-icon{
    width:54px!important;
    height:54px!important;
  }
  .promise-grid b{
    font-size:13.5px!important;
    line-height:1.3!important;
  }
  .promise-grid small{
    font-size:11px!important;
    line-height:1.42!important;
  }

  /* AUTOUR DE MOI — bandeau promo du bas comme la maquette */
  .around-promo-strip{
    position:relative;
    margin-top:22px;
    min-height:76px;
    display:flex;
    align-items:center;
    gap:18px;
    padding:14px 110px 14px 18px;
    border:1px solid #e3e6d7;
    border-radius:14px;
    background:linear-gradient(90deg,#f1f4df 0%,#faf9f0 100%);
    overflow:hidden;
  }
  .around-promo-strip>.icon-shell{
    width:48px;
    height:48px;
    min-width:48px;
  }
  .around-promo-strip>b{
    flex:1;
    font-size:16px;
    color:var(--ink);
  }
  .around-promo-strip>.btn{
    min-width:300px;
  }
  .around-branch{
    position:absolute;
    right:18px;
    bottom:3px;
    color:#538e3f;
    transform:rotate(-8deg);
  }
  .around-branch .cueilleo-icon{
    width:66px;
    height:66px;
    stroke-width:1.25;
  }

  /* CONTRIBUER — plus d'air entre le titre et les 4 cartes */
  .contrib-steps-title{
    margin-top:52px!important;
    margin-bottom:0!important;
  }
  .contrib-steps{
    margin-top:48px!important;
  }

  /* À PROPOS — bouton avec feuille */
  .story-copy .btn.primary .cueilleo-icon{
    width:18px;
    height:18px;
  }

  /* FAQ — corriger le groupe catégories : vrai rond vert clair + texte plus lisible */
  .faq-categories-v6{
    display:grid!important;
    grid-template-columns:repeat(6,1fr)!important;
    gap:12px!important;
    align-items:stretch!important;
    margin-top:26px!important;
  }
  .faq-categories-v6>span{
    min-height:164px!important;
    height:auto!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:flex-start!important;
    padding:18px 12px 16px!important;
    gap:8px!important;
    border:1px solid #e3e5dc!important;
    border-radius:14px!important;
    background:#fff!important;
    text-align:center!important;
    font-size:inherit!important;
    overflow:visible!important;
  }
  .faq-categories-v6 .faq-category-icon{
    display:grid!important;
    place-items:center!important;
    width:62px!important;
    height:62px!important;
    min-width:62px!important;
    min-height:62px!important;
    border-radius:50%!important;
    background:#e9efc9!important;
    color:#063d2b!important;
    margin:0 auto 3px!important;
    padding:0!important;
    position:static!important;
  }
  .faq-categories-v6 .faq-category-icon .ui-icon{
    position:static!important;
    display:grid!important;
    width:auto!important;
    height:auto!important;
    transform:none!important;
  }
  .faq-categories-v6 .faq-category-icon .cueilleo-icon{
    width:30px!important;
    height:30px!important;
    display:block!important;
  }
  .faq-categories-v6 b{
    font-size:15px!important;
    line-height:1.2!important;
    color:var(--ink)!important;
    margin-top:2px!important;
  }
  .faq-categories-v6 small{
    display:block!important;
    font-size:11.5px!important;
    line-height:1.4!important;
    color:#4f5d55!important;
    text-align:center!important;
  }

  /* FAQ — loupe bien visible dans la barre */
  .faq-search-wrap>.ui-icon{
    left:22px!important;
    color:#0a4b34!important;
  }
  .faq-search-wrap>.ui-icon .cueilleo-icon{
    width:24px!important;
    height:24px!important;
    stroke-width:2!important;
  }
  .faq-search-wrap .faq-search{
    padding-left:62px!important;
    font-size:14px!important;
  }

  /* CONTACT — bloc promotion FAQ de bas de page */
  .contact-faq-promo{
    grid-column:1/-1;
    min-height:180px;
    margin-top:4px;
    display:grid;
    grid-template-columns:240px 1fr 290px;
    align-items:center;
    border:1px solid #e3e5d8;
    border-radius:15px;
    overflow:hidden;
    background:linear-gradient(90deg,#f1f4df,#faf9f0);
  }
  .contact-faq-visual{
    height:180px;
    position:relative;
    overflow:hidden;
    display:flex;
    align-items:flex-end;
    justify-content:center;
  }
  .contact-faq-visual img{
    height:175px;
    width:auto;
    border-radius:18px 18px 0 0;
    transform:rotate(-5deg);
    transform-origin:bottom center;
  }
  .contact-faq-help{
    position:absolute;
    right:28px;
    top:50px;
    width:62px;
    height:62px;
    border-radius:50%;
    border:3px solid #639339;
    background:#edf2d4;
    display:grid;
    place-items:center;
    color:#1f6538;
  }
  .contact-faq-help .cueilleo-icon{width:31px;height:31px}
  .contact-faq-copy{padding:20px 28px}
  .contact-faq-copy h2{font-size:28px;margin-bottom:0}
  .contact-faq-copy .green-rule{margin:10px 0}
  .contact-faq-copy p{font-size:12px;margin:0}
  .contact-faq-actions{
    display:flex;
    flex-direction:column;
    gap:10px;
    padding:20px 24px;
  }
  .contact-faq-actions .btn{width:100%}
}


/* ===== Cueilléo V8 — correction définitive FAQ + bandeaux feuille ===== */
@media (min-width:1001px){

  /* FAQ : cartes isolées des anciens sélecteurs .faq-categories span */
  .faq-categories-v8{
    display:grid!important;
    grid-template-columns:repeat(6,minmax(0,1fr))!important;
    gap:14px!important;
    align-items:stretch!important;
    margin-top:30px!important;
  }
  .faq-categories-v8 .faq-category-card{
    min-height:174px!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:9px!important;
    padding:20px 12px 17px!important;
    border:1px solid #e1e4da!important;
    border-radius:15px!important;
    background:#fff!important;
    text-align:center!important;
    overflow:hidden!important;
  }
  .faq-categories-v8 .faq-category-icon{
    width:64px!important;
    height:64px!important;
    min-width:64px!important;
    min-height:64px!important;
    margin:0 auto 5px!important;
    padding:0!important;
    border:0!important;
    border-radius:50%!important;
    background:#e6edbf!important;
    color:#073e2d!important;
    display:grid!important;
    place-items:center!important;
    position:static!important;
    transform:none!important;
    font-style:normal!important;
    line-height:1!important;
  }
  .faq-categories-v8 .faq-category-icon .cueilleo-icon{
    width:31px!important;
    height:31px!important;
    display:block!important;
    margin:0!important;
    padding:0!important;
  }
  .faq-categories-v8 .faq-category-card b{
    display:block!important;
    margin:0!important;
    font-size:15px!important;
    line-height:1.2!important;
    font-weight:800!important;
    color:#12271e!important;
  }
  .faq-categories-v8 .faq-category-card small{
    display:block!important;
    margin:0!important;
    font-size:11.5px!important;
    line-height:1.45!important;
    color:#526058!important;
  }

  /* Loupe de la recherche : toujours visible et centrée */
  .faq-search-wrap{
    position:relative!important;
  }
  .faq-search-wrap > .ui-icon{
    position:absolute!important;
    left:24px!important;
    top:50%!important;
    transform:translateY(-50%)!important;
    z-index:10!important;
    width:25px!important;
    height:25px!important;
    display:grid!important;
    place-items:center!important;
    color:#073e2d!important;
    background:transparent!important;
    border:0!important;
    padding:0!important;
  }
  .faq-search-wrap > .ui-icon .cueilleo-icon{
    width:25px!important;
    height:25px!important;
  }
  .faq-search-wrap .faq-search{
    padding-left:64px!important;
  }

  /* Bandeaux du bas : remplacer la branche trop fine par un badge feuille cohérent */
  .strip-leaf-badge{
    width:50px!important;
    height:50px!important;
    min-width:50px!important;
    min-height:50px!important;
    border-radius:50%!important;
    background:#e5edbd!important;
    color:#0b5b36!important;
    display:grid!important;
    place-items:center!important;
    flex:0 0 auto!important;
    box-shadow:inset 0 0 0 1px rgba(26,85,53,.05);
  }
  .strip-leaf-badge .ui-icon{
    display:grid!important;
    place-items:center!important;
    width:auto!important;
    height:auto!important;
  }
  .strip-leaf-badge .cueilleo-icon{
    width:27px!important;
    height:27px!important;
    stroke-width:1.9!important;
  }

  .quote-strip{
    padding-right:28px!important;
  }
  .quote-strip .strip-leaf-badge{
    margin-left:4px!important;
  }

  .around-promo-strip{
    padding-right:18px!important;
  }
  .around-promo-strip .around-leaf-badge{
    position:static!important;
    margin-left:4px!important;
  }

  /* neutraliser les anciennes branches si elles subsistent par cache ou autre page */
  .branch-deco,.around-branch{display:none!important}
}

/* ===== V9 : inscription et phases futures ===== */
.signup-v9 .account-choice{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:14px 0 18px}
.signup-v9 .account-choice label{display:flex;align-items:center;justify-content:center;gap:6px;padding:10px 8px;border:1px solid #dfe5da;border-radius:11px;background:#f7f8f0;font-size:12px;font-weight:700}
.signup-v9 input[type="radio"],.signup-v9 input[type="checkbox"]{accent-color:#0b5b36}
.signup-v9 .field-note{display:block;font-size:10px;color:#66746b;margin-top:3px}
.signup-v9 .profile-note{padding:11px 13px;border-radius:10px;background:#f1f4df;font-size:11px;color:#435249}
.future-page{min-height:68vh;display:grid;place-items:center;padding:70px 24px;background:#f7f7ef}
.future-card{width:min(760px,100%);padding:50px;text-align:center;background:#fff;border:1px solid #e2e6dc;border-radius:20px}
.future-icon{width:70px;height:70px;margin:0 auto 16px;display:grid;place-items:center;border-radius:50%;background:#e6edbf;color:#0b5b36}
.future-icon .cueilleo-icon{width:32px;height:32px}.future-card h1{font-size:38px;margin:5px 0 14px}.future-note{margin-top:24px;padding:18px;border-radius:13px;background:#f1f4df}
@media(max-width:800px){.signup-v9 .account-choice{grid-template-columns:1fr 1fr}.future-card{padding:30px 20px}}

/* ===== V14 : emplacement Premium ===== */
.premium-placeholder{min-height:62vh;display:grid;align-items:center;background:#f7f7ef}
.premium-placeholder-card{max-width:760px;margin:0 auto;padding:58px 44px;text-align:center;background:#fff;border:1px solid #e2e6dc;border-radius:20px}
.premium-placeholder-card>.icon-shell{width:70px;height:70px;margin:0 auto 18px}
.premium-placeholder-card h1{font-size:38px;margin:8px 0 14px}
.premium-placeholder-card p:last-child{margin-bottom:0}


/* ===== V15 : aperçu public + fenêtre accès membre ===== */
.member-gate-modal{
  position:fixed;
  inset:0;
  z-index:9999;
  display:none;
  align-items:center;
  justify-content:center;
  padding:24px;
}
.member-gate-modal.is-open{display:flex}
.member-gate-backdrop{
  position:absolute;
  inset:0;
  background:rgba(6,32,24,.62);
  backdrop-filter:blur(3px);
}
.member-gate-dialog{
  position:relative;
  z-index:1;
  width:min(560px,100%);
  padding:38px 36px 30px;
  border-radius:20px;
  background:#fff;
  box-shadow:0 24px 80px rgba(0,0,0,.24);
  text-align:center;
}
.member-gate-close{
  position:absolute;
  top:13px;
  right:15px;
  width:38px;
  height:38px;
  border:0;
  border-radius:50%;
  background:#f0f4df;
  color:#0b5b36;
  font-size:24px;
  line-height:1;
  cursor:pointer;
}
.member-gate-icon{
  width:66px;
  height:66px;
  margin:0 auto 14px;
  border-radius:50%;
  background:#e6edbf;
  color:#0b5b36;
  display:grid;
  place-items:center;
}
.member-gate-icon .cueilleo-icon{width:31px;height:31px}
.member-gate-dialog h2{font-size:30px;margin:6px 0 12px}
.member-gate-dialog>p:not(.eyebrow){
  max-width:460px;
  margin:0 auto 22px;
  color:#526058;
  line-height:1.6;
}
.member-gate-actions{
  display:flex;
  flex-direction:column;
  gap:10px;
  max-width:360px;
  margin:0 auto 14px;
}
.member-gate-actions .btn{width:100%}
.member-gate-dialog small{color:#6b756f}
body.modal-open{overflow:hidden}

@media(max-width:650px){
  .member-gate-dialog{padding:34px 20px 26px}
  .member-gate-dialog h2{font-size:25px}
}

/* ===== Cueilléo V17 — Mode édition images administrateur ===== */
:root{--admin-accent:#176232;--admin-panel:#ffffff;--admin-soft:#eef5e8;--admin-ink:#183222}
body.cueilleo-admin-image-mode main img:not(.brand-logo):not(.no-admin-edit),
body.cueilleo-admin-image-mode footer img:not(.brand-logo):not(.no-admin-edit){cursor:crosshair;outline:2px dashed rgba(23,98,50,.45);outline-offset:3px;transition:outline .18s ease,filter .18s ease}
body.cueilleo-admin-image-mode main img:not(.brand-logo):not(.no-admin-edit):hover,
body.cueilleo-admin-image-mode footer img:not(.brand-logo):not(.no-admin-edit):hover{outline-color:var(--admin-accent);filter:brightness(.96)}
.cueilleo-admin-launcher{position:fixed;right:18px;bottom:18px;z-index:99980;border:0;border-radius:999px;background:var(--admin-accent);color:#fff;font:700 14px/1 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;padding:13px 17px;box-shadow:0 10px 30px rgba(0,0,0,.22);display:flex;align-items:center;gap:9px;cursor:pointer}
.cueilleo-admin-launcher[hidden]{display:none!important}.cueilleo-admin-launcher.is-on{background:#0d3f20}.cueilleo-admin-launcher small{font-size:11px;opacity:.82;font-weight:600}
.cueilleo-admin-login{position:fixed;inset:0;z-index:100000;background:rgba(7,27,15,.46);display:flex;align-items:center;justify-content:center;padding:18px;backdrop-filter:blur(5px)}
.cueilleo-admin-login[hidden]{display:none!important}.cueilleo-admin-login-card{width:min(420px,96vw);background:#fff;border-radius:20px;padding:26px;box-shadow:0 24px 70px rgba(0,0,0,.28);font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}.cueilleo-admin-login-card h2{font-family:Georgia,serif;color:#123b22;margin:0 0 8px;font-size:28px}.cueilleo-admin-login-card p{color:#566159;font-size:14px;line-height:1.5;margin:0 0 16px}.cueilleo-admin-login-card input{width:100%;box-sizing:border-box;border:1px solid #cbd7c8;border-radius:12px;padding:12px 14px;font-size:16px}.cueilleo-admin-login-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:15px}.cueilleo-admin-login-actions button{border:0;border-radius:10px;padding:11px 15px;font-weight:700;cursor:pointer}.cueilleo-admin-login-actions .cancel{background:#eef1eb;color:#294533}.cueilleo-admin-login-actions .go{background:var(--admin-accent);color:#fff}.cueilleo-admin-login-error{color:#a12e2e!important;font-size:12px!important;margin-top:9px!important}
.cueilleo-image-editor{position:fixed;inset:0;z-index:99990;background:rgba(8,28,16,.48);display:flex;align-items:center;justify-content:center;padding:18px;backdrop-filter:blur(6px)}
.cueilleo-image-editor[hidden]{display:none!important}.cueilleo-image-editor-card{width:min(1050px,97vw);max-height:94vh;overflow:auto;background:var(--admin-panel);border-radius:22px;box-shadow:0 28px 90px rgba(0,0,0,.32);font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}.cueilleo-image-editor-head{display:flex;justify-content:space-between;gap:14px;align-items:center;padding:18px 22px;border-bottom:1px solid #e5e9e1;position:sticky;top:0;background:#fff;z-index:4}.cueilleo-image-editor-head h2{font-family:Georgia,serif;color:#123b22;margin:0;font-size:25px}.cueilleo-image-editor-head button{border:0;background:#eef3ea;color:#173b24;width:36px;height:36px;border-radius:50%;font-size:22px;cursor:pointer}.cueilleo-image-editor-body{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(300px,.7fr);gap:22px;padding:22px}.cueilleo-image-preview-wrap{background:#e9eee5;border:1px solid #dbe3d8;border-radius:16px;padding:16px;min-height:360px;display:flex;align-items:center;justify-content:center}.cueilleo-image-preview-frame{position:relative;overflow:hidden;background:#f7f7f2;border-radius:12px;box-shadow:0 6px 24px rgba(0,0,0,.12);width:min(100%,680px);height:360px}.cueilleo-image-preview-frame img{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;max-width:none!important;object-fit:contain!important;object-position:center center!important;transform-origin:center center!important;margin:0!important;border-radius:0!important;box-shadow:none!important}.cueilleo-image-controls{display:flex;flex-direction:column;gap:16px}.cueilleo-image-controls .filename{background:#f4f6ef;border-radius:10px;padding:10px 12px;color:#4f5d53;font-size:12px;word-break:break-all}.cueilleo-control label{display:flex;justify-content:space-between;gap:10px;font-weight:700;color:var(--admin-ink);font-size:13px;margin-bottom:7px}.cueilleo-control output{font-variant-numeric:tabular-nums;color:#4a704f}.cueilleo-control input[type=range]{width:100%;accent-color:var(--admin-accent)}.cueilleo-image-editor-note{font-size:12px;line-height:1.45;color:#607065;background:var(--admin-soft);padding:11px 12px;border-radius:10px}.cueilleo-image-editor-actions{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:auto}.cueilleo-image-editor-actions button{border-radius:11px;padding:12px 14px;font-weight:800;cursor:pointer;border:1px solid #b9c9b8}.cueilleo-image-editor-actions .reset{background:#fff;color:#30523a}.cueilleo-image-editor-actions .save{background:var(--admin-accent);border-color:var(--admin-accent);color:#fff}.cueilleo-image-editor-actions .restore{grid-column:1/-1;background:#f0f1ec;color:#4c574f;border-color:#e0e3dc}.cueilleo-admin-toast{position:fixed;left:50%;bottom:28px;transform:translateX(-50%);z-index:100010;background:#123c22;color:#fff;padding:11px 16px;border-radius:999px;font:700 13px system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;box-shadow:0 10px 26px rgba(0,0,0,.2)}
@media(max-width:760px){.cueilleo-image-editor-body{grid-template-columns:1fr}.cueilleo-image-preview-frame{height:280px}.cueilleo-admin-launcher{right:10px;bottom:10px;padding:11px 13px}.cueilleo-admin-launcher small{display:none}}


/* ===== V18 : bouton d'accès administrateur local ===== */
#cueilleoAdminEntry{
  position:fixed;
  left:14px;
  bottom:14px;
  z-index:10050;
  border:1px solid rgba(7,62,45,.22);
  border-radius:999px;
  padding:8px 13px;
  background:rgba(255,255,255,.92);
  color:#073e2d;
  font:700 12px/1 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  box-shadow:0 5px 18px rgba(0,0,0,.12);
  cursor:pointer;
}
#cueilleoAdminEntry:hover{background:#f1f4df}
#cueilleoAdminEntry.is-unlocked{
  background:#e6edbf;
  color:#0b5b36;
}


/* V20 : les textes et icônes HTML restent indépendants du zoom des images */
.cueilleo-v20-admin [data-cueilleo-fixed-ui="1"] {
  transform: none;
}
.cueilleo-v20-admin img[data-cueilleo-image-target="1"] {
  transform-origin: center center;
}


/* ===== V21 ADMIN — "Comment ça marche ?" : visuel séparé du texte ===== */
.how-demo{
  min-width:0;
  display:grid;
  grid-template-columns:48% 52%;
  background:#fff;
  overflow:hidden;
}
.how-demo-image{
  min-width:0;
  overflow:hidden;
  background:#eef2e6;
}
.how-demo-image>img{
  display:block;
  width:100%;
  height:100%;
  min-height:230px;
  object-fit:cover;
  object-position:center;
}
.phone-demo-image{
  background:#fbfaf6;
  display:flex;
  align-items:center;
  justify-content:center;
}
.phone-demo-image>img{
  width:100%;
  height:100%;
  object-fit:contain;
  padding:7px 3px;
}
.how-demo-data{
  min-width:0;
  padding:14px 13px;
  background:#fbfaf6;
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.species-demo-data h4{
  margin:0 0 7px;
  font:700 20px/1.1 Georgia,serif;
  color:var(--green);
}
.demo-line{
  display:grid;
  grid-template-columns:32px 1fr;
  gap:8px;
  align-items:center;
  padding:7px 0;
  border-bottom:1px solid #e4e5dc;
}
.demo-line:last-child{border-bottom:0}
.demo-line b,.demo-line small{
  display:block;
  line-height:1.22;
}
.demo-line b{font-size:12px;color:#1d3127}
.demo-line small{font-size:11px;color:#4d5952;margin-top:2px}
.demo-icon{
  width:30px;
  height:30px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:#eef4d9;
  color:var(--green2);
  font-weight:800;
  flex:0 0 auto;
}
.demo-icon .ui-icon{width:18px;height:18px}
.demo-info,.demo-check{font-size:18px}
.contribute-demo-data{
  gap:0;
  padding:8px 10px;
}
.contribute-mini-step{
  display:grid;
  grid-template-columns:24px 30px 1fr;
  gap:6px;
  align-items:center;
  padding:8px 0;
  border-bottom:1px solid #e4e5dc;
}
.contribute-mini-step:last-child{border-bottom:0}
.mini-num{
  width:22px;
  height:22px;
  border-radius:50%;
  background:var(--green2);
  color:white;
  font-size:11px;
  font-weight:800;
  display:grid;
  place-items:center;
}
.contribute-mini-step b{
  font-size:11px;
  line-height:1.25;
  color:#1d3127;
}

/* Dans les étapes 2 et 4, l'image et les informations sont maintenant deux éléments séparés.
   L'éditeur admin ne zoome donc que l'image cliquée. */
.how-row:nth-child(2) .how-media,
.how-row:nth-child(4) .how-media{
  grid-template-columns:62% 38%;
}
.how-row:nth-child(2) .how-tip,
.how-row:nth-child(4) .how-tip{
  padding:16px;
}

@media(max-width:720px){
  .how-demo{
    grid-template-columns:46% 54%;
    min-height:250px;
  }
  .how-demo-image>img{min-height:250px}
  .how-row:nth-child(2) .how-media,
  .how-row:nth-child(4) .how-media{
    grid-template-columns:1fr;
    height:auto;
    min-height:0;
  }
}
@media(max-width:460px){
  .how-demo{grid-template-columns:1fr}
  .how-demo-image{height:220px}
  .how-demo-image>img{min-height:220px;height:220px}
}


/* ===== V22 ADMIN — zoom borné à la zone image =====
   Chaque image de "Comment ça marche ?" est maintenant dans sa propre fenêtre.
   Un zoom ne peut plus peindre par-dessus le texte voisin. */
.how-image-viewport{
  min-width:0;
  min-height:230px;
  width:100%;
  height:230px;
  overflow:hidden;
  position:relative;
  background:#eef2e6;
  isolation:isolate;
}
.how-image-viewport>img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  max-width:none;
  object-fit:cover;
  object-position:center;
  transform-origin:center center;
}
.how-media>.how-tip{
  position:relative;
  z-index:2;
  background:#f6f7ed;
}

/* Même protection pour les zones séparées des étapes 2 et 4. */
.how-demo-image{
  isolation:isolate;
}
.how-demo-data{
  position:relative;
  z-index:2;
}

@media(max-width:720px){
  .how-image-viewport{height:230px;min-height:230px}
}


/* ===== V23 ADMIN — qualité d'image =====
   Ne pas pré-rastériser les photos avant zoom : Safari doit rééchantillonner
   directement depuis le fichier source à chaque cadrage. */
.cueilleo-v20-admin img[data-cueilleo-image-target="1"],
.cueilleo-admin-image-mode img,
.cueilleo-image-preview-frame img{
  image-rendering:auto !important;
  -webkit-font-smoothing:auto;
  backface-visibility:visible !important;
  -webkit-backface-visibility:visible !important;
}


/* ===== V24 ADMIN — rendu net sans scale() ===== */
.cueilleo-image-preview-frame{
  position:relative !important;
  overflow:hidden !important;
}


/* ===== V25 ADMIN — curseurs actifs + rendu sans transform ===== */
.cueilleo-image-preview-frame{
  position:relative !important;
  overflow:hidden !important;
}

/* ===== MAJ ACCUEIL TYPO LOGO 5 VISUELS V5 ===== */

/* ------------------------------------------------------------------
   1. LOGO : plus présent, sans agrandir exagérément toute la barre
   ------------------------------------------------------------------ */

.topbar .brand{
  width:220px !important;
  min-width:220px !important;
}

.topbar .brand-logo{
  width:183px !important; /* environ +18 % par rapport aux 155 px */
  height:auto !important;
}

.topbar .brand small{
  font-size:10.5px !important;
  margin-top:3px !important;
}


/* ------------------------------------------------------------------
   2. TYPOGRAPHIE DE L'ACCUEIL
   Baskerville est plus élancée et moins "écrasée" que Georgia.
   On retire aussi le letter-spacing négatif qui tassait les caractères.
   ------------------------------------------------------------------ */

.home-hero .hero-copy h1{
  font-family:Baskerville,"Baskerville Old Face","Times New Roman",serif !important;
  font-size:50px !important;
  font-weight:600 !important;
  line-height:1.075 !important;
  letter-spacing:0 !important;
  max-width:760px !important;
}

.home-hero .hero-copy h1 .hero-line{
  display:block !important;
  white-space:nowrap !important;
  margin-bottom:1px !important;
}

/* Les grands titres suivants de l'accueil reprennent la même famille */
main > .section h2,
.home-hero h1{
  font-family:Baskerville,"Baskerville Old Face","Times New Roman",serif !important;
}


/* ------------------------------------------------------------------
   3. LES CINQ VISUELS
   - même largeur
   - même hauteur
   - même bas
   - même axe pour titres / textes / images
   ------------------------------------------------------------------ */

.app-showcase{
  display:grid !important;
  grid-template-columns:repeat(5,minmax(0,1fr)) !important;
  gap:26px !important;
  margin-top:34px !important;
  align-items:start !important;
}

.app-showcase .app-card-uniform{
  display:grid !important;
  grid-template-rows:44px 62px 330px !important;
  justify-items:center !important;
  align-items:start !important;
  width:100% !important;
  min-width:0 !important;
  text-align:center !important;
}

/* Titre centré exactement sur la largeur du visuel */
.app-showcase .app-card-uniform > b{
  grid-row:1 !important;
  width:220px !important;
  max-width:100% !important;
  min-height:44px !important;
  margin:0 !important;
  padding:0 4px 8px !important;

  display:flex !important;
  align-items:flex-end !important;
  justify-content:center !important;

  text-align:center !important;
  font-size:16px !important;
  line-height:1.2 !important;
}

/* Descriptif centré exactement sur le même axe */
.app-showcase .app-card-uniform > p{
  grid-row:2 !important;
  width:220px !important;
  max-width:100% !important;
  min-height:62px !important;
  margin:0 !important;
  padding:0 5px 14px !important;

  text-align:center !important;
  font-size:14px !important;
  line-height:1.38 !important;
}

/* Cadre rigoureusement identique pour les cinq */
.app-showcase .app-shot-uniform{
  grid-row:3 !important;
  position:relative !important;
  width:220px !important;
  height:330px !important;
  max-width:100% !important;
  margin:0 auto !important;

  overflow:hidden !important;
  border:1px dashed #9baa96 !important;
  border-radius:12px !important;
  background:#fff !important;
}

/*
  Chaque fichier remplit exactement le même cadre.
  Aucun déplacement manuel n'est nécessaire.
*/
.app-showcase .app-shot-uniform > img{
  position:absolute !important;
  inset:0 !important;

  width:100% !important;
  height:100% !important;
  max-width:none !important;
  max-height:none !important;

  margin:0 !important;
  padding:0 !important;

  object-fit:cover !important;
  object-position:center top !important;

  border-radius:0 !important;
  box-shadow:none !important;
  transform:none !important;
}


/* Un peu plus d'air sous la section, comme dans la maquette */
.section:has(.app-showcase){
  padding-top:68px !important;
  padding-bottom:42px !important;
}

.section:has(.app-showcase) > .container > h2.center{
  font-size:38px !important;
  line-height:1.13 !important;
  margin-bottom:0 !important;
}


/* Tablette */
@media (min-width:721px) and (max-width:1000px){
  .topbar .brand{
    width:180px !important;
    min-width:180px !important;
  }

  .topbar .brand-logo{
    width:158px !important;
  }

  .app-showcase{
    grid-template-columns:repeat(3,1fr) !important;
  }

  .app-showcase .app-card-uniform{
    grid-template-rows:44px 62px 300px !important;
  }

  .app-showcase .app-card-uniform > b,
  .app-showcase .app-card-uniform > p,
  .app-showcase .app-shot-uniform{
    width:205px !important;
  }

  .app-showcase .app-shot-uniform{
    height:300px !important;
  }
}


/* Mobile */
@media (max-width:720px){
  .home-hero .hero-copy h1{
    font-size:43px !important;
    line-height:1.08 !important;
  }

  .home-hero .hero-copy h1 .hero-line{
    white-space:normal !important;
  }

  .app-showcase{
    grid-template-columns:repeat(2,1fr) !important;
  }

  .app-showcase .app-card-uniform{
    grid-template-rows:auto auto 280px !important;
  }

  .app-showcase .app-card-uniform > b,
  .app-showcase .app-card-uniform > p,
  .app-showcase .app-shot-uniform{
    width:195px !important;
    max-width:100% !important;
  }

  .app-showcase .app-shot-uniform{
    height:280px !important;
  }
}

@media (max-width:460px){
  .app-showcase{
    grid-template-columns:1fr !important;
  }

  .app-showcase .app-card-uniform{
    grid-template-rows:auto auto 330px !important;
  }

  .app-showcase .app-card-uniform > b,
  .app-showcase .app-card-uniform > p,
  .app-showcase .app-shot-uniform{
    width:220px !important;
  }

  .app-showcase .app-shot-uniform{
    height:330px !important;
  }
}

/* ===== FIN MAJ ACCUEIL TYPO LOGO 5 VISUELS V5 ===== */

/* ===== HERO FONDU + POLICE ELANCEE V6 ===== */

@media (min-width:1001px){

  /* ---------------------------------------------------------------
     PHOTO : elle repasse derrière la zone de texte
     --------------------------------------------------------------- */
  .home-hero{
    position:relative !important;
    overflow:hidden !important;
    background:#fffdf9 !important;
    isolation:isolate !important;
  }

  .home-grid{
    position:relative !important;
    min-height:650px !important;
    isolation:isolate !important;
  }

  .home-visual{
    position:absolute !important;
    z-index:1 !important;

    top:0 !important;
    right:0 !important;
    bottom:0 !important;

    /* La photo occupe environ les 2/3 et passe derrière le texte */
    width:73% !important;
    height:100% !important;

    margin:0 !important;
    padding:0 !important;
    overflow:hidden !important;
    border-radius:0 !important;
  }

  .home-visual img{
    position:absolute !important;
    inset:0 !important;
    width:100% !important;
    height:100% !important;
    max-width:none !important;
    max-height:none !important;
    object-fit:cover !important;
    object-position:center center !important;
    transform:none !important;
  }

  /* ---------------------------------------------------------------
     FONDU COURBE / SPLINE
     Une grande forme claire courbe mange progressivement la photo.
     Il n'y a plus de séparation verticale droite.
     --------------------------------------------------------------- */
  .home-visual::before{
    content:"";
    position:absolute;
    z-index:3;
    pointer-events:none;

    top:-12%;
    bottom:-12%;
    left:-7%;
    width:54%;

    /*
      Le bord droit de cette forme est volontairement très arrondi.
      Il crée l'effet "spline" au lieu d'une ligne droite.
    */
    background:#fffdf9;
    border-radius:
      0 62% 44% 0 /
      0 42% 58% 0;

    filter:blur(22px);
    opacity:.96;
  }

  /* Deuxième fondu, beaucoup plus large et progressif */
  .home-visual::after{
    content:"";
    position:absolute;
    z-index:4;
    pointer-events:none;

    top:-10%;
    bottom:-10%;
    left:22%;
    width:43%;

    background:radial-gradient(
      ellipse 100% 88% at 0% 50%,
      rgba(255,253,249,.96) 0%,
      rgba(255,253,249,.88) 22%,
      rgba(255,253,249,.70) 42%,
      rgba(255,253,249,.47) 59%,
      rgba(255,253,249,.25) 74%,
      rgba(255,253,249,.10) 87%,
      rgba(255,253,249,0) 100%
    );

    filter:blur(28px);
  }

  /* Le texte reste prioritaire */
  .hero-copy{
    position:relative !important;
    z-index:6 !important;
    width:52% !important;
    max-width:700px !important;
  }

  /*
    Halo local uniquement derrière le texte.
    On voit toujours l'image, mais elle devient beaucoup plus douce ici.
  */
  .hero-copy::after{
    content:"";
    position:absolute;
    z-index:-1;
    pointer-events:none;

    top:-45px;
    right:-210px;
    bottom:-55px;
    left:-85px;

    background:radial-gradient(
      ellipse 82% 92% at 31% 48%,
      rgba(255,253,249,.99) 0%,
      rgba(255,253,249,.96) 41%,
      rgba(255,253,249,.82) 57%,
      rgba(255,253,249,.58) 70%,
      rgba(255,253,249,.30) 82%,
      rgba(255,253,249,.10) 92%,
      rgba(255,253,249,0) 100%
    );

    filter:blur(16px);
  }


  /* ---------------------------------------------------------------
     POLICE : plus haute que large
     --------------------------------------------------------------- */
  .home-hero .hero-copy h1{
    font-family:
      Didot,
      "Bodoni 72",
      "Bodoni 72 Smallcaps",
      "Baskerville",
      "Times New Roman",
      serif !important;

    font-size:50px !important;
    font-weight:600 !important;
    line-height:1.10 !important;
    letter-spacing:-0.2px !important;
  }

  /*
    Chaque ligne est légèrement étirée en hauteur seulement.
    Largeur inchangée, hauteur +10 %.
  */
  .home-hero .hero-copy h1 .hero-line{
    display:block !important;
    transform:scaleY(1.10) !important;
    transform-origin:left center !important;

    /* Compensation pour que les lignes ne se chevauchent pas */
    margin-top:3px !important;
    margin-bottom:7px !important;
  }

  /* Le texte secondaire reste plus resserré que la zone photo */
  .hero-copy p,
  .hero-copy .lead,
  .hero-copy .hero-description{
    max-width:555px !important;
  }
}


/* Mobile / tablette : on évite les transformations verticales */
@media (max-width:1000px){
  .home-hero .hero-copy h1{
    font-family:
      Didot,
      "Bodoni 72",
      "Baskerville",
      "Times New Roman",
      serif !important;
  }

  .home-hero .hero-copy h1 .hero-line{
    transform:none !important;
  }
}

/* ===== FIN HERO FONDU + POLICE ELANCEE V6 ===== */

/* ===== HERO CHEVAUCHEMENT REEL V7 ===== */

@media (min-width:1001px){

  .home-hero{
    position:relative !important;
    overflow:hidden !important;
    isolation:isolate !important;
    background:#fffdf9 !important;
  }

  .home-grid{
    position:relative !important;
    min-height:650px !important;
    display:block !important;
    isolation:isolate !important;
  }

  /*
    IMAGE :
    elle prend maintenant 84 % de la largeur du hero
    et commence beaucoup plus à gauche.
  */
  .home-visual{
    position:absolute !important;
    z-index:1 !important;

    top:0 !important;
    right:0 !important;
    bottom:0 !important;

    width:84% !important;
    height:100% !important;

    margin:0 !important;
    padding:0 !important;
    overflow:hidden !important;
    border-radius:0 !important;
  }

  .home-visual img{
    position:absolute !important;
    inset:0 !important;

    width:100% !important;
    height:100% !important;
    max-width:none !important;
    max-height:none !important;

    object-fit:cover !important;
    object-position:center center !important;

    transform:none !important;
  }

  /*
    TEXTE :
    largeur normale et plus généreuse.
    Il vient réellement au-dessus de l'image.
  */
  .hero-copy{
    position:relative !important;
    z-index:10 !important;

    width:58% !important;
    max-width:760px !important;

    margin:0 !important;
    padding:70px 0 36px 24px !important;
  }

  .home-hero .hero-copy h1{
    max-width:720px !important;
  }

  .hero-copy p,
  .hero-copy .lead,
  .hero-copy .hero-description{
    max-width:610px !important;
  }

  /*
    On supprime l'ancienne grosse "zone de sécurité" claire.
    Le blanc n'occupe plus une moitié entière de l'écran.
  */
  .home-visual::before{
    content:"" !important;
    position:absolute !important;
    z-index:3 !important;
    pointer-events:none !important;

    top:-10% !important;
    bottom:-10% !important;
    left:-4% !important;

    /* volontairement beaucoup plus étroit */
    width:30% !important;

    background:#fffdf9 !important;

    border-radius:
      0 72% 48% 0 /
      0 42% 58% 0 !important;

    filter:blur(18px) !important;
    opacity:.94 !important;
  }

  /*
    Le vrai fondu :
    il commence près du texte et disparaît vite dans la photo.
  */
  .home-visual::after{
    content:"" !important;
    position:absolute !important;
    z-index:4 !important;
    pointer-events:none !important;

    top:-8% !important;
    bottom:-8% !important;

    left:14% !important;
    width:34% !important;

    background:radial-gradient(
      ellipse 100% 86% at 0% 50%,
      rgba(255,253,249,.90) 0%,
      rgba(255,253,249,.72) 28%,
      rgba(255,253,249,.48) 50%,
      rgba(255,253,249,.24) 70%,
      rgba(255,253,249,.08) 86%,
      rgba(255,253,249,0) 100%
    ) !important;

    filter:blur(22px) !important;
  }

  /*
    Halo LOCAL autour du texte seulement.
    Il protège la lisibilité mais laisse voir la photo derrière.
  */
  .hero-copy::after{
    content:"" !important;
    position:absolute !important;
    z-index:-1 !important;
    pointer-events:none !important;

    top:28px !important;
    bottom:10px !important;
    left:-45px !important;
    right:-95px !important;

    background:radial-gradient(
      ellipse 75% 88% at 30% 47%,
      rgba(255,253,249,.95) 0%,
      rgba(255,253,249,.86) 40%,
      rgba(255,253,249,.62) 60%,
      rgba(255,253,249,.34) 76%,
      rgba(255,253,249,.12) 90%,
      rgba(255,253,249,0) 100%
    ) !important;

    filter:blur(12px) !important;
  }
}

/* ===== FIN HERO CHEVAUCHEMENT REEL V7 ===== */

/* ===== TYPO GLOBALE + LOGO SITE V8 ===== */

/* ---------------------------------------------------------
   LOGO DU SITE, EN HAUT À GAUCHE
   --------------------------------------------------------- */

.topbar .brand{
  width:235px !important;
  min-width:235px !important;
  padding-top:8px !important;
}

.topbar .brand-logo{
  width:198px !important;
  height:auto !important;
  display:block !important;
  margin-top:5px !important;
}

.topbar .brand small{
  font-size:10.5px !important;
  margin-top:2px !important;
}


/* ---------------------------------------------------------
   POLICE GLOBALE DES GRANDS TITRES
   Plus haute / élancée que Georgia ou Baskerville.
   --------------------------------------------------------- */

h1,
h2,
h3,
.section-title,
.page-title,
.hero-title{
  font-family:
    Didot,
    "Bodoni 72",
    "Bodoni 72 Smallcaps",
    "Baskerville",
    "Times New Roman",
    serif !important;

  font-weight:700 !important;
  letter-spacing:0 !important;
}


/* ---------------------------------------------------------
   TITRES PRINCIPAUX DE PAGE
   --------------------------------------------------------- */

main h1,
main h2,
main .section h2{
  font-weight:700 !important;
}


/* ---------------------------------------------------------
   GRAND TITRE D'ACCUEIL
   --------------------------------------------------------- */

.home-hero .hero-copy h1{
  font-family:
    Didot,
    "Bodoni 72",
    "Bodoni 72 Smallcaps",
    "Baskerville",
    "Times New Roman",
    serif !important;

  font-size:52px !important;
  font-weight:700 !important;
  line-height:1.08 !important;
  letter-spacing:0 !important;

  max-width:760px !important;
}

/*
  Plus de présence verticale sans élargir les caractères.
  L'étirement reste léger pour éviter un effet artificiel.
*/
.home-hero .hero-copy h1 .hero-line{
  display:block !important;
  transform:scaleY(1.08) !important;
  transform-origin:left center !important;
  margin-top:2px !important;
  margin-bottom:6px !important;
}

/* Noir plus dense */
.home-hero .hero-copy h1 .hero-line:not(.accent){
  color:#102719 !important;
}

/* Vert plus soutenu */
.home-hero .hero-copy h1 .hero-line.accent,
.home-hero .hero-copy h1 .green,
.home-hero .hero-copy h1 em{
  color:#2f8a2e !important;
  font-weight:700 !important;
}


/* ---------------------------------------------------------
   AUTRES GRANDS TITRES DU SITE
   --------------------------------------------------------- */

.section h2,
.page-section h2,
.feature-section h2,
main > section h2{
  font-size:38px !important;
  line-height:1.12 !important;
  font-weight:700 !important;
}

.section h3,
.card h3,
.feature-card h3{
  font-weight:700 !important;
}


/* ---------------------------------------------------------
   MOBILE / TABLETTE
   --------------------------------------------------------- */

@media (max-width:1000px){
  .topbar .brand{
    width:195px !important;
    min-width:195px !important;
  }

  .topbar .brand-logo{
    width:170px !important;
  }

  .home-hero .hero-copy h1{
    font-size:44px !important;
  }

  .home-hero .hero-copy h1 .hero-line{
    transform:none !important;
  }
}

@media (max-width:720px){
  .home-hero .hero-copy h1{
    font-size:40px !important;
    line-height:1.1 !important;
  }

  .section h2,
  .page-section h2,
  .feature-section h2,
  main > section h2{
    font-size:32px !important;
  }
}

/* ===== FIN TYPO GLOBALE + LOGO SITE V8 ===== */

/* ===== SUPPRESSION BASELINE LOGO V1 ===== */

/* Filet de sécurité : aucune baseline sous le logo */
.topbar .brand small,
.brand small,
.brand-tagline,
.logo-tagline,
.site-tagline,
.logo-subtitle,
.brand-subtitle{
    display:none !important;
}

/* Le logo peut redescendre légèrement puisqu'il n'y a plus de baseline */
.topbar .brand-logo,
.brand .brand-logo{
    margin-bottom:0 !important;
}

/* ===== FIN SUPPRESSION BASELINE LOGO V1 ===== */

/* ===== HIERARCHIE TYPO + HEADER V9 ===== */


/* =========================================================
   1. HEADER / LOGO
   ========================================================= */

/*
  On conserve le logo actuel mais on réduit l'espace vide
  sous lui avant la ligne du header.
*/
.topbar,
.site-header,
header.topbar{
  padding-bottom:6px !important;
}

.topbar .brand,
.site-header .brand{
  padding-bottom:2px !important;
  margin-bottom:0 !important;
}

.topbar .brand-logo,
.site-header .brand-logo{
  margin-bottom:0 !important;
}

/* La baseline reste masquée */
.topbar .brand small,
.brand small,
.brand-tagline,
.logo-tagline,
.site-tagline,
.logo-subtitle,
.brand-subtitle{
  display:none !important;
}


/* =========================================================
   2. FAMILLE TYPOGRAPHIQUE
   Plus élancée, plus verticale, moins "ratatinée"
   ========================================================= */

:root{
  --cueilleo-display:
    Didot,
    "Bodoni 72",
    "Bodoni 72 Smallcaps",
    "Baskerville",
    "Times New Roman",
    serif;
}


/* =========================================================
   3. TITRE PRINCIPAL DE PAGE
   Doit être plus fort que tous les titres secondaires
   ========================================================= */

main > h1,
main .page-title,
.page-hero h1,
.page-header h1,
.hero-page h1,
.page-intro h1,
main > .container > h1,
main > section:first-of-type h1{
  font-family:var(--cueilleo-display) !important;
  font-size:52px !important;
  line-height:1.04 !important;
  font-weight:800 !important;
  letter-spacing:0 !important;
  color:#102719 !important;
  text-align:center !important;

  /* léger allongement vertical sans élargissement */
  transform:scaleY(1.06) !important;
  transform-origin:center center !important;

  margin-bottom:18px !important;
}


/*
  Cas très fréquent sur tes pages :
  grand titre centré au-dessus d'un sous-titre.
*/
main .center h1,
main h1.center{
  font-family:var(--cueilleo-display) !important;
  font-size:52px !important;
  line-height:1.04 !important;
  font-weight:800 !important;
  letter-spacing:0 !important;
  color:#102719 !important;
}


/* =========================================================
   4. TITRES DE GRANDES SECTIONS
   Ex. "Pourquoi contribuer ?"
       "Comment contribuer en 4 étapes"
       "Cueilléo arrive dans le Haut-Rhin"
   ========================================================= */

main h2,
.section h2,
section h2,
.section-title,
.content-title{
  font-family:var(--cueilleo-display) !important;
  font-size:38px !important;
  line-height:1.08 !important;
  font-weight:750 !important;
  letter-spacing:0 !important;
  color:#102719 !important;

  transform:scaleY(1.045) !important;
  transform-origin:left center !important;
}


/* Titres de section centrés */
main h2.center,
.center h2,
.section-title.center{
  transform-origin:center center !important;
}


/* =========================================================
   5. TITRES À L'INTÉRIEUR DES CONTENANTS / CARTES
   Ils doivent être forts mais rester sous le titre de page.
   ========================================================= */

.card h3,
.card h4,
.feature-card h3,
.feature-card h4,
.info-card h3,
.info-card h4,
.step-card h3,
.step-card h4,
.benefit-card h3,
.benefit-card h4,
.reason-card h3,
.reason-card h4,
.panel h3,
.panel h4,
.box h3,
.box h4,
[class*="card"] h3,
[class*="card"] h4{
  font-family:var(--cueilleo-display) !important;
  font-size:21px !important;
  line-height:1.10 !important;
  font-weight:750 !important;
  letter-spacing:0 !important;
  color:#102719 !important;

  transform:scaleY(1.035) !important;
  transform-origin:center center !important;
}


/*
  Pour les titres placés au-dessus des petites icônes dans
  des bandes de 4 ou 5 colonnes.
*/
.features b,
.benefits b,
.steps b,
.app-showcase b,
[class*="feature"] b,
[class*="benefit"] b,
[class*="step"] b{
  font-weight:750 !important;
  letter-spacing:0 !important;
}


/* =========================================================
   6. PAGE CONTRIBUER : hiérarchie renforcée
   ========================================================= */

/*
  Le titre "Contribuez à Cueilléo" est actuellement trop léger.
  On le force clairement au niveau TITRE DE PAGE.
*/
body:has(a[href*="contribuer"].active) main h1,
body:has(a[href*="contribuer"][aria-current="page"]) main h1,
body:has(.nav a[href*="contribuer"].active) main h1{
  font-family:var(--cueilleo-display) !important;
  font-size:54px !important;
  line-height:1.03 !important;
  font-weight:800 !important;
  color:#102719 !important;
  transform:scaleY(1.07) !important;
  transform-origin:center center !important;
}

/* "Pourquoi contribuer ?" */
body:has(a[href*="contribuer"].active) main h2,
body:has(.nav a[href*="contribuer"].active) main h2{
  font-size:39px !important;
  font-weight:750 !important;
}


/* =========================================================
   7. ACCUEIL : conserver le titre noir + vert plus fort
   ========================================================= */

.home-hero .hero-copy h1{
  font-family:var(--cueilleo-display) !important;
  font-weight:800 !important;
  letter-spacing:0 !important;
}

.home-hero .hero-copy h1 .hero-line{
  transform:scaleY(1.08) !important;
  transform-origin:left center !important;
}

.home-hero .hero-copy h1 .accent,
.home-hero .hero-copy h1 .green,
.home-hero .hero-copy h1 em{
  font-weight:800 !important;
}


/* =========================================================
   8. TABLETTE / MOBILE
   ========================================================= */

@media (max-width:1000px){

  main > h1,
  main .page-title,
  .page-hero h1,
  .page-header h1,
  .hero-page h1,
  .page-intro h1,
  main > .container > h1{
    font-size:44px !important;
    transform:none !important;
  }

  main h2,
  .section h2,
  section h2,
  .section-title,
  .content-title{
    font-size:34px !important;
    transform:none !important;
  }

  .card h3,
  .feature-card h3,
  .step-card h3,
  .benefit-card h3,
  [class*="card"] h3{
    font-size:20px !important;
    transform:none !important;
  }
}

@media (max-width:720px){

  main > h1,
  main .page-title,
  .page-hero h1,
  .page-header h1,
  .hero-page h1,
  .page-intro h1,
  main > .container > h1{
    font-size:39px !important;
  }

  main h2,
  .section h2,
  section h2,
  .section-title,
  .content-title{
    font-size:30px !important;
  }
}

/* ===== FIN HIERARCHIE TYPO + HEADER V9 ===== */

/* ===== CORRECTION GLOBALE V10 ===== */

:root{
  --cueilleo-display:
    Didot,
    "Bodoni 72",
    "Bodoni 72 Smallcaps",
    "Baskerville",
    "Times New Roman",
    serif;
}


/* =========================================================
   1. HEADER : logo + menu sur une seule ligne
   ========================================================= */

/* Baseline supprimée partout */
.topbar .brand small,
.brand small,
.brand-tagline,
.logo-tagline,
.site-tagline,
.logo-subtitle,
.brand-subtitle{
  display:none !important;
}

/*
  On garde le logo grand mais on récupère de la place
  horizontalement pour le menu.
*/
.topbar,
.site-header,
header.topbar{
  padding-top:4px !important;
  padding-bottom:4px !important;
}

.topbar .container,
.site-header .container,
header.topbar .container{
  display:flex !important;
  align-items:center !important;
  gap:18px !important;
  flex-wrap:nowrap !important;
}

.topbar .brand,
.site-header .brand{
  width:205px !important;
  min-width:205px !important;
  flex:0 0 205px !important;
  padding-top:2px !important;
  padding-bottom:0 !important;
  margin:0 !important;
}

.topbar .brand-logo,
.site-header .brand-logo{
  width:192px !important;
  height:auto !important;
  margin:0 !important;
  display:block !important;
}

/*
  Menu compact et forcé sur UNE ligne.
*/
.topbar nav,
.site-header nav,
.topbar .nav,
.site-header .nav{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  gap:17px !important;
  flex:1 1 auto !important;
  min-width:0 !important;
  flex-wrap:nowrap !important;
  white-space:nowrap !important;
}

.topbar nav a,
.site-header nav a,
.topbar .nav a,
.site-header .nav a{
  white-space:nowrap !important;
  flex:0 0 auto !important;
  font-size:14px !important;
  line-height:1 !important;
  padding-left:0 !important;
  padding-right:0 !important;
}

/* Bouton de droite légèrement compacté */
.topbar .cta,
.site-header .cta,
.topbar .join-btn,
.site-header .join-btn,
.topbar a.button,
.site-header a.button{
  white-space:nowrap !important;
  flex:0 0 auto !important;
  padding-left:18px !important;
  padding-right:18px !important;
  font-size:14px !important;
}


/* =========================================================
   2. TITRES PRINCIPAUX DE PAGE
   Le titre de page doit dominer tous les autres.
   ========================================================= */

main > h1,
main .page-title,
.page-hero h1,
.page-header h1,
.hero-page h1,
.page-intro h1,
main > .container > h1,
main section:first-of-type h1{
  font-family:var(--cueilleo-display) !important;
  font-size:54px !important;
  line-height:1.02 !important;
  font-weight:800 !important;
  letter-spacing:0 !important;
  color:#102719 !important;
}

/* Titres de page centrés hors accueil */
body:not(.home) main > h1,
body:not(.home) main .page-title,
body:not(.home) .page-hero h1,
body:not(.home) .page-header h1,
body:not(.home) .hero-page h1,
body:not(.home) .page-intro h1,
body:not(.home) main > .container > h1{
  text-align:center !important;
  transform:scaleY(1.055) !important;
  transform-origin:center center !important;
}


/* =========================================================
   3. TITRES SECONDAIRES : moins gras, moins concurrents
   ========================================================= */

main h2,
.section h2,
section h2,
.section-title,
.content-title{
  font-family:var(--cueilleo-display) !important;
  font-size:36px !important;
  line-height:1.08 !important;

  /* nettement moins gras que le titre principal */
  font-weight:600 !important;

  letter-spacing:0 !important;
  color:#102719 !important;

  transform:scaleY(1.035) !important;
  transform-origin:left center !important;
}

/* titres secondaires centrés */
main h2.center,
.center h2,
.section-title.center{
  transform-origin:center center !important;
}


/* =========================================================
   4. TITRES DES CONTENANTS / CARTES
   Encore un niveau en dessous.
   ========================================================= */

.card h3,
.card h4,
.feature-card h3,
.feature-card h4,
.info-card h3,
.info-card h4,
.step-card h3,
.step-card h4,
.benefit-card h3,
.benefit-card h4,
.reason-card h3,
.reason-card h4,
.panel h3,
.panel h4,
.box h3,
.box h4,
[class*="card"] h3,
[class*="card"] h4{
  font-family:var(--cueilleo-display) !important;
  font-size:20px !important;
  line-height:1.10 !important;
  font-weight:600 !important;
  letter-spacing:0 !important;
  color:#102719 !important;
  transform:scaleY(1.025) !important;
  transform-origin:center center !important;
}

/* Libellés internes plus sobres */
.features b,
.benefits b,
.steps b,
.app-showcase b,
[class*="feature"] b,
[class*="benefit"] b,
[class*="step"] b{
  font-weight:600 !important;
}


/* =========================================================
   5. PAGE ACCUEIL UNIQUEMENT : tout le hero à gauche
   ========================================================= */

.home-hero .hero-copy{
  text-align:left !important;
  align-items:flex-start !important;
}

.home-hero .hero-copy h1{
  text-align:left !important;
  font-family:var(--cueilleo-display) !important;
  font-size:52px !important;
  line-height:1.07 !important;
  font-weight:800 !important;
  letter-spacing:0 !important;
  max-width:760px !important;
}

.home-hero .hero-copy h1 .hero-line{
  display:block !important;
  text-align:left !important;
  transform:scaleY(1.07) !important;
  transform-origin:left center !important;
  margin-top:2px !important;
  margin-bottom:5px !important;
}

.home-hero .hero-copy h1 .hero-line:not(.accent){
  color:#102719 !important;
}

.home-hero .hero-copy h1 .accent,
.home-hero .hero-copy h1 .green,
.home-hero .hero-copy h1 em{
  color:#2f8a2e !important;
  font-weight:800 !important;
}

.home-hero .hero-copy p,
.home-hero .hero-copy .lead,
.home-hero .hero-copy .hero-description,
.home-hero .hero-copy .hero-actions,
.home-hero .hero-copy .features,
.home-hero .hero-copy .hero-features,
.home-hero .hero-copy .benefits{
  text-align:left !important;
  margin-left:0 !important;
  margin-right:auto !important;
}


/* =========================================================
   6. PAGE CONTRIBUER : hiérarchie explicite
   ========================================================= */

/*
  Le titre principal "Contribuez à Cueilléo"
  doit être clairement supérieur aux titres secondaires.
*/
body:has(a[href*="contribuer"].active) main h1,
body:has(a[href*="contribuer"][aria-current="page"]) main h1,
body:has(.nav a[href*="contribuer"].active) main h1{
  font-family:var(--cueilleo-display) !important;
  font-size:56px !important;
  font-weight:800 !important;
  line-height:1.02 !important;
  color:#102719 !important;
}

/* "Pourquoi contribuer ?" / "Comment contribuer en 4 étapes" */
body:has(a[href*="contribuer"].active) main h2,
body:has(.nav a[href*="contribuer"].active) main h2{
  font-size:35px !important;
  font-weight:600 !important;
}


/* =========================================================
   7. RESPONSIVE
   ========================================================= */

@media (max-width:1250px){

  .topbar .container,
  .site-header .container{
    gap:14px !important;
  }

  .topbar .brand,
  .site-header .brand{
    width:190px !important;
    min-width:190px !important;
    flex-basis:190px !important;
  }

  .topbar .brand-logo,
  .site-header .brand-logo{
    width:178px !important;
  }

  .topbar nav,
  .site-header nav,
  .topbar .nav,
  .site-header .nav{
    gap:13px !important;
  }

  .topbar nav a,
  .site-header nav a,
  .topbar .nav a,
  .site-header .nav a{
    font-size:13px !important;
  }

  .topbar .cta,
  .site-header .cta,
  .topbar .join-btn,
  .site-header .join-btn{
    padding-left:14px !important;
    padding-right:14px !important;
    font-size:13px !important;
  }
}

@media (max-width:1000px){

  /*
    À partir de tablette, on ne force plus artificiellement
    toutes les transformations verticales.
  */
  main > h1,
  main .page-title,
  .page-hero h1,
  .page-header h1,
  .hero-page h1,
  .page-intro h1,
  main > .container > h1{
    font-size:44px !important;
    transform:none !important;
  }

  main h2,
  .section h2,
  section h2,
  .section-title,
  .content-title{
    font-size:32px !important;
    transform:none !important;
  }

  .home-hero .hero-copy h1{
    font-size:44px !important;
  }

  .home-hero .hero-copy h1 .hero-line{
    transform:none !important;
  }
}

@media (max-width:720px){

  main > h1,
  main .page-title,
  .page-hero h1,
  .page-header h1,
  .hero-page h1,
  .page-intro h1,
  main > .container > h1{
    font-size:39px !important;
  }

  main h2,
  .section h2,
  section h2,
  .section-title,
  .content-title{
    font-size:29px !important;
  }
}

/* ===== FIN CORRECTION GLOBALE V10 ===== */

/* ===== CORRECTION GLOBALE V11 ===== */

:root{
  --cueilleo-display:
    Didot,
    "Bodoni 72",
    "Bodoni 72 Smallcaps",
    Baskerville,
    "Times New Roman",
    serif;

  --cueilleo-ui:
    "Avenir Next",
    Avenir,
    "Helvetica Neue",
    Helvetica,
    Arial,
    sans-serif;

  --cueilleo-dark:#102719;
  --cueilleo-green:#2f7f2d;
  --cueilleo-green-dark:#0f4f2d;
}


/* =========================================================
   1. HEADER / LOGO
   ========================================================= */

/* Baseline supprimée partout */
.topbar .brand small,
.brand small,
.brand-tagline,
.logo-tagline,
.site-tagline,
.logo-subtitle,
.brand-subtitle{
  display:none !important;
}

/* Header compact mais avec un petit espace propre sous le logo */
.topbar,
.site-header,
header.topbar{
  padding-top:5px !important;
  padding-bottom:5px !important;
}

.topbar .container,
.site-header .container,
header.topbar .container{
  display:flex !important;
  align-items:center !important;
  flex-wrap:nowrap !important;
  gap:14px !important;
}

/* Logo grand mais pas au point d'écraser le menu */
.topbar .brand,
.site-header .brand{
  width:198px !important;
  min-width:198px !important;
  flex:0 0 198px !important;
  margin:0 !important;
  padding:1px 0 4px !important;
}

.topbar .brand-logo,
.site-header .brand-logo{
  width:188px !important;
  height:auto !important;
  display:block !important;
  margin:0 !important;
}


/* =========================================================
   2. MENU SUR UNE SEULE LIGNE
   ========================================================= */

.topbar nav,
.site-header nav,
.topbar .nav,
.site-header .nav{
  display:flex !important;
  flex:1 1 auto !important;
  min-width:0 !important;

  align-items:center !important;
  justify-content:flex-end !important;

  flex-wrap:nowrap !important;
  white-space:nowrap !important;

  gap:14px !important;
}

.topbar nav a,
.site-header nav a,
.topbar .nav a,
.site-header .nav a{
  flex:0 0 auto !important;
  white-space:nowrap !important;

  font-family:var(--cueilleo-ui) !important;
  font-size:13.5px !important;
  font-weight:500 !important;
  line-height:1 !important;

  padding-left:0 !important;
  padding-right:0 !important;
}


/* =========================================================
   3. CTA HEADER : REJOINDRE GRATUITEMENT PLUS GRAND
   ========================================================= */

.topbar .cta,
.site-header .cta,
.topbar .join-btn,
.site-header .join-btn,
.topbar a.button,
.site-header a.button{
  flex:0 0 auto !important;
  white-space:nowrap !important;

  min-height:54px !important;
  padding:0 24px !important;

  display:flex !important;
  align-items:center !important;
  justify-content:center !important;

  font-family:var(--cueilleo-ui) !important;
  font-size:15px !important;
  font-weight:700 !important;

  border-radius:12px !important;
  background:var(--cueilleo-green-dark) !important;
  color:#fff !important;
}


/* =========================================================
   4. TITRES PRINCIPAUX DE PAGE
   ========================================================= */

main > h1,
main .page-title,
.page-hero h1,
.page-header h1,
.hero-page h1,
.page-intro h1,
main > .container > h1,
main section:first-of-type h1{
  font-family:var(--cueilleo-display) !important;
  font-size:54px !important;
  line-height:1.02 !important;
  font-weight:800 !important;
  letter-spacing:0 !important;
  color:var(--cueilleo-dark) !important;
}

/* hors accueil : titre principal centré */
body:not(.home) main > h1,
body:not(.home) main .page-title,
body:not(.home) .page-hero h1,
body:not(.home) .page-header h1,
body:not(.home) .hero-page h1,
body:not(.home) .page-intro h1,
body:not(.home) main > .container > h1{
  text-align:center !important;
  transform:scaleY(1.045) !important;
  transform-origin:center center !important;
}


/* =========================================================
   5. TITRES SECONDAIRES — MOINS GRAS
   ========================================================= */

main h2,
.section h2,
section h2,
.section-title,
.content-title{
  font-family:var(--cueilleo-display) !important;
  font-size:35px !important;
  line-height:1.08 !important;
  font-weight:600 !important;
  letter-spacing:0 !important;
  color:var(--cueilleo-dark) !important;
  transform:scaleY(1.025) !important;
  transform-origin:left center !important;
}

main h2.center,
.center h2,
.section-title.center{
  transform-origin:center center !important;
}


/* =========================================================
   6. TITRES DE CARTES / CONTENANTS — ENCORE PLUS SOBRES
   ========================================================= */

.card h3,
.card h4,
.feature-card h3,
.feature-card h4,
.info-card h3,
.info-card h4,
.step-card h3,
.step-card h4,
.benefit-card h3,
.benefit-card h4,
.reason-card h3,
.reason-card h4,
.panel h3,
.panel h4,
.box h3,
.box h4,
[class*="card"] h3,
[class*="card"] h4{
  font-family:var(--cueilleo-display) !important;
  font-size:20px !important;
  line-height:1.10 !important;
  font-weight:550 !important;
  letter-spacing:0 !important;
  color:var(--cueilleo-dark) !important;
  transform:scaleY(1.02) !important;
  transform-origin:center center !important;
}


/* =========================================================
   7. ACCUEIL : TITRE UNIQUEMENT ALIGNÉ À GAUCHE
   ========================================================= */

.home-hero .hero-copy{
  text-align:left !important;
  align-items:flex-start !important;
}

.home-hero .hero-copy h1{
  text-align:left !important;
  font-family:var(--cueilleo-display) !important;
  font-size:52px !important;
  line-height:1.07 !important;
  font-weight:800 !important;
  letter-spacing:0 !important;
  max-width:760px !important;
}

.home-hero .hero-copy h1 .hero-line{
  display:block !important;
  text-align:left !important;
  transform:scaleY(1.06) !important;
  transform-origin:left center !important;
  margin-top:2px !important;
  margin-bottom:5px !important;
}

.home-hero .hero-copy h1 .hero-line:not(.accent){
  color:var(--cueilleo-dark) !important;
}

.home-hero .hero-copy h1 .accent,
.home-hero .hero-copy h1 .green,
.home-hero .hero-copy h1 em{
  color:var(--cueilleo-green) !important;
  font-weight:800 !important;
}

.home-hero .hero-copy p,
.home-hero .hero-copy .lead,
.home-hero .hero-copy .hero-description,
.home-hero .hero-copy .hero-actions,
.home-hero .hero-copy .features,
.home-hero .hero-copy .hero-features,
.home-hero .hero-copy .benefits{
  text-align:left !important;
  margin-left:0 !important;
  margin-right:auto !important;
}


/* =========================================================
   8. "COMMENT ÇA MARCHE ?" — TITRES EN VERT,
      POLICE DIFFÉRENTE DES GRANDS TITRES
   ========================================================= */

/*
  Cible les titres de petites étapes/cartes.
  Exemples :
  Je cherche / Je découvre / Je cueille / Je contribue
  Explorez la carte / Informez-vous / Cueillez responsable
*/
.how-it-works h3,
.how-it-works h4,
.how-it-works b,
.how-card h3,
.how-card h4,
.step-card h3,
.step-card h4,
.process-card h3,
.process-card h4,
[class*="how"] h3,
[class*="how"] h4,
[class*="step"] h3,
[class*="step"] h4,
[class*="process"] h3,
[class*="process"] h4{
  font-family:var(--cueilleo-ui) !important;
  font-size:20px !important;
  line-height:1.14 !important;
  font-weight:650 !important;
  letter-spacing:0 !important;
  color:var(--cueilleo-green-dark) !important;
  transform:none !important;
}

/* variantes éventuellement rendues en <b> */
.how-it-works .title,
.how-card .title,
.step-card .title,
.process-card .title,
[class*="how"] .title,
[class*="step"] .title{
  font-family:var(--cueilleo-ui) !important;
  font-weight:650 !important;
  color:var(--cueilleo-green-dark) !important;
}


/* =========================================================
   9. PAGE CONTRIBUER : HIÉRARCHIE PLUS NETTE
   ========================================================= */

body:has(a[href*="contribuer"].active) main h1,
body:has(a[href*="contribuer"][aria-current="page"]) main h1,
body:has(.nav a[href*="contribuer"].active) main h1{
  font-family:var(--cueilleo-display) !important;
  font-size:56px !important;
  font-weight:800 !important;
  line-height:1.02 !important;
  color:var(--cueilleo-dark) !important;
}

body:has(a[href*="contribuer"].active) main h2,
body:has(.nav a[href*="contribuer"].active) main h2{
  font-size:34px !important;
  font-weight:600 !important;
}


/* =========================================================
   10. RESPONSIVE
   ========================================================= */

@media (max-width:1250px){

  .topbar .brand,
  .site-header .brand{
    width:182px !important;
    min-width:182px !important;
    flex-basis:182px !important;
  }

  .topbar .brand-logo,
  .site-header .brand-logo{
    width:172px !important;
  }

  .topbar nav,
  .site-header nav,
  .topbar .nav,
  .site-header .nav{
    gap:11px !important;
  }

  .topbar nav a,
  .site-header nav a,
  .topbar .nav a,
  .site-header .nav a{
    font-size:12.5px !important;
  }

  .topbar .cta,
  .site-header .cta,
  .topbar .join-btn,
  .site-header .join-btn{
    min-height:50px !important;
    padding:0 17px !important;
    font-size:13px !important;
  }
}

@media (max-width:1000px){

  main > h1,
  main .page-title,
  .page-hero h1,
  .page-header h1,
  .hero-page h1,
  .page-intro h1,
  main > .container > h1{
    font-size:44px !important;
    transform:none !important;
  }

  main h2,
  .section h2,
  section h2,
  .section-title,
  .content-title{
    font-size:31px !important;
    transform:none !important;
  }

  .home-hero .hero-copy h1{
    font-size:44px !important;
  }

  .home-hero .hero-copy h1 .hero-line{
    transform:none !important;
  }
}

@media (max-width:720px){

  main > h1,
  main .page-title,
  .page-hero h1,
  .page-header h1,
  .hero-page h1,
  .page-intro h1,
  main > .container > h1{
    font-size:39px !important;
  }

  main h2,
  .section h2,
  section h2,
  .section-title,
  .content-title{
    font-size:28px !important;
  }
}

/* ===== FIN CORRECTION GLOBALE V11 ===== */

/* ===== MASQUER CADRES IMAGES V13 ===== */

.editable-image,
.image-editable,
.admin-editable-image,
.admin-image-target,
.image-editor-target,
[data-editable-image],
[data-admin-image],
[data-image-editable],
[data-image-editor],
[data-editable="image"]{
    outline:none !important;
    border-style:none !important;
    border-color:transparent !important;
    box-shadow:none !important;
}

.app-showcase img,
.app-showcase picture,
.app-showcase figure,
.app-showcase .phone,
.app-showcase .phone-frame,
.app-showcase .image-wrap,
.showcase-grid img,
.showcase-grid picture,
.showcase-grid figure,
.showcase-grid .phone,
.showcase-grid .phone-frame,
.showcase-grid .image-wrap,
.features-app img,
.features-app picture,
.features-app figure,
.features-app .phone,
.features-app .phone-frame,
.app-features img,
.app-features picture,
.app-features figure,
.app-features .phone,
.app-features .phone-frame{
    outline:none !important;
}

.app-showcase picture,
.app-showcase figure,
.app-showcase .phone-frame,
.app-showcase .image-wrap,
.showcase-grid picture,
.showcase-grid figure,
.showcase-grid .phone-frame,
.showcase-grid .image-wrap,
.features-app picture,
.features-app figure,
.features-app .phone-frame,
.app-features picture,
.app-features figure,
.app-features .phone-frame{
    border-style:none !important;
    border-color:transparent !important;
    box-shadow:none !important;
}

[style*="dashed"],
[style*="dotted"]{
    outline-style:none !important;
}

[style*="outline"]{
    outline:none !important;
}

/* ===== FIN MASQUER CADRES IMAGES V13 ===== */

/* ===== CORRECTION COULEURS CUEILLEO V23 ===== */

:root{
    --cueilleo-main:#2F6B3A;       /* vert principal, bien vert */
    --cueilleo-soft:#4F7A46;       /* vert secondaire, légèrement plus clair */
    --cueilleo-active:#79B82A;     /* trait actif */
    --cueilleo-white:#FFFFFF;
}

/* =========================================================
   TITRES / NAVIGATION / TEXTES IMPORTANTS
   ========================================================= */

body h1,
body h2,
body h3,
body h4,
body h5,
body h6,
body .page-title,
body .hero-title,
body .section-title,
body .content-title,
body .card-title,
body .title,
body nav a,
body .nav a,
body .topbar a,
body .site-header a,
body strong,
body b{
    color:var(--cueilleo-main) !important;
    -webkit-text-fill-color:var(--cueilleo-main) !important;
}

/* =========================================================
   PETITS TEXTES D'EXPLICATION
   ========================================================= */

body p,
body small,
body figcaption,
body .description,
body .subtitle,
body .sub-title,
body .lead,
body .meta,
body .helper,
body .hint,
body .note,
body .caption,
body .eyebrow,
body .card p,
body .card .description,
body .feature-card p,
body .step-card p,
body .info-card p,
body .showcase p,
body .showcase-item p,
body .feature p,
body .feature-item p,
body [class*="description"],
body [class*="subtitle"],
body [class*="helper"],
body [class*="caption"],
body [class*="meta"]{
    color:var(--cueilleo-soft) !important;
    -webkit-text-fill-color:var(--cueilleo-soft) !important;
}

/* =========================================================
   BOUTONS / CTA / FOOTER VERTS = TEXTE BLANC OBLIGATOIRE
   ========================================================= */

body button,
body button *,
body .btn,
body .btn *,
body .button,
body .button *,
body .cta,
body .cta *,
body .join-btn,
body .join-btn *,
body .cueilleo-join-cta,
body .cueilleo-join-cta *,
body .primary-button,
body .primary-button *,
body .primary-btn,
body .primary-btn *,
body a.btn,
body a.btn *,
body a.button,
body a.button *,
body a.cta,
body a.cta *,
body footer,
body footer *,
body .footer,
body .footer *,
body .site-footer,
body .site-footer *,
body .dark,
body .dark *,
body .dark-green,
body .dark-green *,
body .green-dark,
body .green-dark *,
body .bg-dark-green,
body .bg-dark-green *,
body .bg-green-dark,
body .bg-green-dark *{
    color:var(--cueilleo-white) !important;
    -webkit-text-fill-color:var(--cueilleo-white) !important;
}

/* Cas fréquent du bouton "Rejoindre gratuitement" */
body a[href*="rejoindre"],
body a[href*="rejoindre"] *,
body [class*="join"],
body [class*="join"] *,
body [class*="rejoindre"],
body [class*="rejoindre"] *{
    color:var(--cueilleo-white) !important;
    -webkit-text-fill-color:var(--cueilleo-white) !important;
}

/* =========================================================
   TRAIT DE NAVIGATION ACTIF
   ========================================================= */

body nav a.active::after,
body nav a[aria-current="page"]::after,
body .nav a.active::after,
body .nav a[aria-current="page"]::after,
body .topbar a.active::after,
body .site-header a.active::after,
body .nav-link.active::after,
body .active-line,
body .nav-underline,
body .menu-underline,
body .current-line,
body .active-indicator{
    background:var(--cueilleo-active) !important;
    border-color:var(--cueilleo-active) !important;
}

/* Texte de l'onglet actif reste vert principal */
body nav a.active,
body nav a[aria-current="page"],
body .nav a.active,
body .nav a[aria-current="page"]{
    color:var(--cueilleo-main) !important;
    -webkit-text-fill-color:var(--cueilleo-main) !important;
}

/* ===== FIN CORRECTION COULEURS CUEILLEO V23 ===== */

/* ===== HIERARCHIE 2 VERTS CUEILLEO V24 ===== */

:root{
    --cueilleo-main:#2F6B3A;
    --cueilleo-soft:#5E8D4A;
    --cueilleo-active:#79B82A;
    --cueilleo-white:#FFFFFF;
}

/* =========================================================
   1) VERT PRINCIPAL
   Titres importants + petits titres + menus
   ========================================================= */

body h1,
body h2,
body h3,
body h4,
body h5,
body h6,

body .page-title,
body .hero-title,
body .section-title,
body .content-title,
body .card-title,
body .title,

body nav a,
body .nav a,
body .topbar a,
body .site-header a,

body .feature-title,
body .feature-item h3,
body .feature-card h3,
body .showcase-item h3,
body .showcase h3,
body .step-card h3,
body .info-card h3,
body .card h3,
body .card h4,

body strong,
body b{
    color:var(--cueilleo-main) !important;
    -webkit-text-fill-color:var(--cueilleo-main) !important;
}

/* =========================================================
   2) VERT SECONDAIRE
   Petits textes explicatifs sous les titres
   ========================================================= */

body .feature-item p,
body .feature-card p,
body .showcase-item p,
body .showcase p,
body .step-card p,
body .info-card p,
body .card p,

body .description,
body .subtitle,
body .sub-title,
body .lead,
body .meta,
body .helper,
body .hint,
body .note,
body .caption,
body .eyebrow,
body figcaption{
    color:var(--cueilleo-soft) !important;
    -webkit-text-fill-color:var(--cueilleo-soft) !important;
}

/* =========================================================
   3) ACCUEIL : GRAND TITRE EN 2 VERTS
   - 2 premières lignes = vert principal
   - 2 lignes suivantes = vert secondaire
   ========================================================= */

/* Le h1 de l'accueil garde par défaut le vert principal */
body.home h1,
body.home .hero-title,
body.home .hero-copy h1{
    color:var(--cueilleo-main) !important;
    -webkit-text-fill-color:var(--cueilleo-main) !important;
}

/*
   Si les deux lignes du bas ont déjà une classe d'accent,
   elles passent en vert secondaire.
*/
body.home .hero-title .accent,
body.home .hero-title .green,
body.home .hero-title .hero-accent,
body.home .hero-copy h1 .accent,
body.home .hero-copy h1 .green,
body.home .hero-copy h1 .hero-accent,
body.home .text-accent,
body.home .light-green{
    color:var(--cueilleo-soft) !important;
    -webkit-text-fill-color:var(--cueilleo-soft) !important;
}

/*
   Compatibilité si le body n'a pas la classe home.
*/
.home-hero .accent,
.home-hero .green,
.home-hero .hero-accent,
.home-hero .text-accent,
.home-hero .light-green,
.hero-copy .accent,
.hero-copy .green,
.hero-copy .hero-accent{
    color:var(--cueilleo-soft) !important;
    -webkit-text-fill-color:var(--cueilleo-soft) !important;
}

/* =========================================================
   4) TEXTE COURANT GÉNÉRAL
   On évite le noir sans transformer tous les textes explicatifs
   en vert principal.
   ========================================================= */

body p,
body li,
body label,
body small,
body span{
    color:var(--cueilleo-main);
}

/* Les textes descriptifs ciblés plus haut gagnent avec !important */

/* =========================================================
   5) FONDS VERTS / BOUTONS = BLANC
   ========================================================= */

body button,
body button *,
body .btn,
body .btn *,
body .button,
body .button *,
body .cta,
body .cta *,
body .join-btn,
body .join-btn *,
body .cueilleo-join-cta,
body .cueilleo-join-cta *,
body .primary-button,
body .primary-button *,
body .primary-btn,
body .primary-btn *,
body a.btn,
body a.btn *,
body a.button,
body a.button *,
body a.cta,
body a.cta *,
body a[href*="rejoindre"],
body a[href*="rejoindre"] *,
body footer,
body footer *,
body .footer,
body .footer *,
body .site-footer,
body .site-footer *,
body .dark-green,
body .dark-green *,
body .green-dark,
body .green-dark *,
body .bg-dark-green,
body .bg-dark-green *,
body .bg-green-dark,
body .bg-green-dark *{
    color:var(--cueilleo-white) !important;
    -webkit-text-fill-color:var(--cueilleo-white) !important;
}

/* =========================================================
   6) TRAIT ACTIF DU MENU = VERT CLAIR
   ========================================================= */

body nav a.active::after,
body nav a[aria-current="page"]::after,
body .nav a.active::after,
body .nav a[aria-current="page"]::after,
body .topbar a.active::after,
body .site-header a.active::after,
body .nav-link.active::after,
body .active-line,
body .nav-underline,
body .menu-underline,
body .current-line,
body .active-indicator{
    background:var(--cueilleo-active) !important;
    border-color:var(--cueilleo-active) !important;
}

/* Texte actif reste vert principal */
body nav a.active,
body nav a[aria-current="page"],
body .nav a.active,
body .nav a[aria-current="page"]{
    color:var(--cueilleo-main) !important;
    -webkit-text-fill-color:var(--cueilleo-main) !important;
}

/* ===== FIN HIERARCHIE 2 VERTS CUEILLEO V24 ===== */

/* ===== BOUTON NOUS REJOINDRE V25 ===== */

/*
  On cible volontairement plusieurs noms de classes possibles
  pour ne modifier que le CTA du menu.
*/
.join-btn,
.cueilleo-join-cta,
.nav-join,
.header-join,
.topbar .join-btn,
.site-header .join-btn,
a[href*="rejoindre"]{
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:10px !important;

    padding-left:22px !important;
    padding-right:22px !important;

    min-width:auto !important;
    width:auto !important;
    white-space:nowrap !important;

    color:#FFFFFF !important;
    -webkit-text-fill-color:#FFFFFF !important;
}

/* Icône utilisateur */
.join-btn::before,
.cueilleo-join-cta::before,
.nav-join::before,
.header-join::before,
.topbar .join-btn::before,
.site-header .join-btn::before,
a[href*="rejoindre"]::before{
    content:"";
    width:18px;
    height:18px;
    flex:0 0 18px;

    background-repeat:no-repeat;
    background-position:center;
    background-size:18px 18px;

    /* petit pictogramme utilisateur blanc */
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 21a8 8 0 0 0-16 0'/%3E%3Ccircle cx='12' cy='7' r='4'/%3E%3C/svg%3E");
}

/* Le texte reste bien blanc, y compris s'il est dans un span */
.join-btn *,
.cueilleo-join-cta *,
.nav-join *,
.header-join *,
.topbar .join-btn *,
.site-header .join-btn *,
a[href*="rejoindre"] *{
    color:#FFFFFF !important;
    -webkit-text-fill-color:#FFFFFF !important;
}

/* ===== FIN BOUTON NOUS REJOINDRE V25 ===== */

/* ===== AJUSTER BOUTON NOUS REJOINDRE V26 ===== */

/*
   Groupe icône + texte plus compact,
   mais davantage d'air à gauche et à droite du bouton.
*/
.join-btn,
.cueilleo-join-cta,
.nav-join,
.header-join,
.topbar .join-btn,
.site-header .join-btn,
a[href*="rejoindre"]{
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;

    /* Icône plus proche du texte */
    gap:5px !important;

    /* Plus de marge dans le bouton */
    padding-left:28px !important;
    padding-right:28px !important;

    width:auto !important;
    min-width:auto !important;
    white-space:nowrap !important;
}

/* On garde l'icône à sa taille actuelle */
.join-btn::before,
.cueilleo-join-cta::before,
.nav-join::before,
.header-join::before,
.topbar .join-btn::before,
.site-header .join-btn::before,
a[href*="rejoindre"]::before{
    margin:0 !important;
}

/* ===== FIN AJUSTER BOUTON NOUS REJOINDRE V26 ===== */

/* ===== MARGES LATERALES NOUS REJOINDRE V27 ===== */

/* On augmente UNIQUEMENT l'espace aux extrémités du bouton. */
.join-btn,
.cueilleo-join-cta,
.nav-join,
.header-join,
.topbar .join-btn,
.site-header .join-btn,
a[href*="rejoindre"]{
    padding-left:36px !important;
    padding-right:36px !important;
}

/* ===== FIN MARGES LATERALES NOUS REJOINDRE V27 ===== */

/* ===== BOUTON NOUS REJOINDRE V28 ===== */

/*
  Sélecteur volontairement très précis pour passer devant
  les anciennes règles !important déjà présentes dans le site.
*/
html body .topbar .container.nav a.btn.primary.nav-cta[href="rejoindre.html"],
html body .topbar .container.nav a.nav-cta[href="rejoindre.html"] {
    /* Le bouton doit pouvoir s'élargir avec le padding */
    width: auto !important;
    min-width: max-content !important;
    max-width: none !important;

    /* Plus d'air uniquement aux extrémités */
    padding-left: 42px !important;
    padding-right: 42px !important;

    /* On ne définit PAS gap : espace icône/texte inchangé */
}

/* ===== FIN BOUTON NOUS REJOINDRE V28 ===== */

/* ===== MENU HORIZONTAL V29 ===== */

/* Navigation centrale : légèrement plus à gauche et plus aérée */
html body .topbar .container.nav nav {
    position: relative !important;
    left: -14px !important;
    gap: 17px !important;
    white-space: nowrap !important;
}

/* Taille des intitulés du menu uniquement */
html body .topbar .container.nav nav a {
    font-size: 16px !important;
    white-space: nowrap !important;
}

/*
  On ne touche volontairement ni au logo,
  ni au bouton .nav-cta "Nous rejoindre".
*/

/* ===== FIN MENU HORIZONTAL V29 ===== */

/* ===== CUEILLEO 3 CORRECTIONS V30 ===== */

:root{
  --cueilleo-main-green-v30:#2F6B3A;
}

.cueilleo-filter-main-v30{
  background:#2F6B3A !important;
  background-color:#2F6B3A !important;
  color:#FFFFFF !important;
  border-color:#2F6B3A !important;
}

.cueilleo-filter-main-v30 *,
.cueilleo-filter-main-v30 svg{
  color:#FFFFFF !important;
  fill:currentColor !important;
  stroke:currentColor !important;
}

.cueilleo-member-close-v30{
  color:#2F6B3A !important;
  opacity:1 !important;
  visibility:visible !important;
}

.cueilleo-member-close-v30 svg,
.cueilleo-member-close-v30 svg *,
.cueilleo-member-close-v30 path,
.cueilleo-member-close-v30 line{
  color:#2F6B3A !important;
  stroke:#2F6B3A !important;
  opacity:1 !important;
}

.cueilleo-discover-link-v30{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  width:100% !important;
  margin-top:14px !important;
  padding-top:13px !important;
  border-top:1px solid rgba(47,107,58,.16) !important;
  color:#2F6B3A !important;
  text-decoration:none !important;
  font-weight:600 !important;
  cursor:pointer !important;
}

.cueilleo-discover-link-v30 .cueilleo-arrow-v30{
  font-size:24px !important;
  line-height:1 !important;
  color:#2F6B3A !important;
}

/* ===== FIN CUEILLEO 3 CORRECTIONS V30 ===== */

/* ===== CUEILLEO CORRECTIF FICHE + CROIX V31 ===== */

/* 1 — "Découvrir la fiche" + flèche : vert foncé Cueilléo */
html body .cueilleo-discover-link-v30,
html body .cueilleo-discover-link-v30 span,
html body .cueilleo-discover-link-v30 .cueilleo-arrow-v30 {
    color: #2F6B3A !important;
    -webkit-text-fill-color: #2F6B3A !important;
}

html body .cueilleo-discover-link-v30 svg,
html body .cueilleo-discover-link-v30 svg *,
html body .cueilleo-discover-link-v30 path,
html body .cueilleo-discover-link-v30 line {
    color: #2F6B3A !important;
    stroke: #2F6B3A !important;
    fill: #2F6B3A !important;
}

/* 2 — Croix de fermeture de la fenêtre membre : vert foncé Cueilléo */
html body .cueilleo-member-close-v30,
html body .cueilleo-member-close-v30 *,
html body .cueilleo-member-close-v30 span {
    color: #2F6B3A !important;
    -webkit-text-fill-color: #2F6B3A !important;
    opacity: 1 !important;
    visibility: visible !important;
}

html body .cueilleo-member-close-v30 svg,
html body .cueilleo-member-close-v30 svg *,
html body .cueilleo-member-close-v30 path,
html body .cueilleo-member-close-v30 line,
html body .cueilleo-member-close-v30 polyline {
    color: #2F6B3A !important;
    stroke: #2F6B3A !important;
    fill: none !important;
    opacity: 1 !important;
}

/* Si la croix est dessinée avec ::before / ::after */
html body .cueilleo-member-close-v30::before,
html body .cueilleo-member-close-v30::after {
    color: #2F6B3A !important;
    background-color: #2F6B3A !important;
    opacity: 1 !important;
}

/*
IMPORTANT :
Aucune règle ici ne cible le sélecteur "Toutes".
Il reste donc dans son vert actuel validé.
*/

/* ===== FIN CUEILLEO CORRECTIF FICHE + CROIX V31 ===== */

/* ===== REPARATION COULEURS BLANCS V35 ===== */

/*
   Correctif basé sur le code réel du site.
   Il corrige UNIQUEMENT :
   - les sélecteurs blancs : texte/icônes verts
   - "Découvrir la fiche" + flèche : verts
   - le bouton blanc de la fenêtre membre : texte vert
   Il conserve :
   - "Toutes" actif : fond vert + texte blanc
   - boutons verts .primary : texte blanc
   - footer : texte blanc
*/

/* 1) Sélecteurs BLANCS de la page Découvrir */
html body .filter-tabs .filter:not(.active),
html body .filter-tabs .filter:not(.active) *,
html body .filter-bar .filter:not(.active),
html body .filter-bar .filter:not(.active) *,
html body .location-pill,
html body .location-pill * {
    color: #2F6B3A !important;
    -webkit-text-fill-color: #2F6B3A !important;
}

/* Icônes SVG dans les sélecteurs blancs */
html body .filter-tabs .filter:not(.active) svg,
html body .filter-tabs .filter:not(.active) svg *,
html body .filter-bar .filter:not(.active) svg,
html body .filter-bar .filter:not(.active) svg *,
html body .location-pill svg,
html body .location-pill svg * {
    color: #2F6B3A !important;
    stroke: #2F6B3A !important;
}

/* 2) Sélecteur ACTIF "Toutes" : NE PAS CHANGER */
html body .filter-tabs .filter.active,
html body .filter-tabs .filter.active *,
html body .filter-bar .filter.active,
html body .filter-bar .filter.active * {
    color: #FFFFFF !important;
    -webkit-text-fill-color: #FFFFFF !important;
}

html body .filter-tabs .filter.active,
html body .filter-bar .filter.active {
    background: #2F6B3A !important;
    background-color: #2F6B3A !important;
    border-color: #2F6B3A !important;
}

/* 3) "Découvrir la fiche" + flèche */
html body .species-body a.member-gate,
html body .species-body a.member-gate *,
html body .species-body .cueilleo-discover-link-v30,
html body .species-body .cueilleo-discover-link-v30 *,
html body a.cueilleo-discover-link-v30,
html body a.cueilleo-discover-link-v30 * {
    color: #2F6B3A !important;
    -webkit-text-fill-color: #2F6B3A !important;
}

/* 4) Bouton BLANC de la fenêtre membre */
html body .member-gate-dialog .member-gate-actions .btn.light,
html body .member-gate-dialog .member-gate-actions .btn.light *,
html body .member-gate-dialog button.btn.light,
html body .member-gate-dialog button.btn.light * {
    color: #2F6B3A !important;
    -webkit-text-fill-color: #2F6B3A !important;
    background: #FFFFFF !important;
    background-color: #FFFFFF !important;
}

/* 5) Croix de fermeture : vert */
html body .member-gate-close,
html body .member-gate-close *,
html body .cueilleo-member-close-v30,
html body .cueilleo-member-close-v30 * {
    color: #2F6B3A !important;
    -webkit-text-fill-color: #2F6B3A !important;
}

/* 6) Sécurité : les vrais boutons verts restent BLANCS */
html body .btn.primary,
html body .btn.primary *,
html body a.btn.primary,
html body a.btn.primary * {
    color: #FFFFFF !important;
    -webkit-text-fill-color: #FFFFFF !important;
}

/* ===== FIN REPARATION COULEURS BLANCS V35 ===== */

/* ===== REJOINDRE V36 - TEXTES VISIBLES ===== */

html body .signup-card .signup-head h2,
html body .signup-card .signup-head span,
html body .signup-card .signup-head span * {
    color:#2F6B3A !important;
    -webkit-text-fill-color:#2F6B3A !important;
}

html body .signup-card .account-choice label,
html body .signup-card .account-choice label * {
    color:#2F6B3A !important;
    -webkit-text-fill-color:#2F6B3A !important;
}

html body .signup-card .form-grid label,
html body .signup-card .form-grid label > small {
    color:#2F6B3A !important;
    -webkit-text-fill-color:#2F6B3A !important;
}

html body .signup-card .input {
    color:#2F6B3A !important;
    -webkit-text-fill-color:#2F6B3A !important;
    background:#FFFFFF !important;
}

html body .signup-card .input::placeholder {
    color:#6E8B73 !important;
    -webkit-text-fill-color:#6E8B73 !important;
    opacity:1 !important;
}

html body .signup-card .field-note {
    color:#5E8D4A !important;
    -webkit-text-fill-color:#5E8D4A !important;
}

html body .signup-card .profile-note {
    color:#2F6B3A !important;
    -webkit-text-fill-color:#2F6B3A !important;
}

html body .signup-card .consent,
html body .signup-card .consent * {
    color:#2F6B3A !important;
    -webkit-text-fill-color:#2F6B3A !important;
}

html body .signup-card button.btn.primary,
html body .signup-card button.btn.primary * {
    color:#FFFFFF !important;
    -webkit-text-fill-color:#FFFFFF !important;
}

/* ===== FIN REJOINDRE V36 ===== */

/* ===== REJOINDRE V37 - BLOC DROIT ===== */

/* Bloc de droite de la page Nous rejoindre uniquement */
html body .join-grid > .trust-card,
html body .join-grid > .trust-card > div {
    color:#2F6B3A !important;
}

/* Titres : Gratuit, Sécurisé, Sans engagement, Accessible partout */
html body .join-grid > .trust-card b,
html body .join-grid > .trust-card strong {
    color:#2F6B3A !important;
    -webkit-text-fill-color:#2F6B3A !important;
}

/* Petits textes explicatifs */
html body .join-grid > .trust-card small,
html body .join-grid > .trust-card p {
    color:#5E8D4A !important;
    -webkit-text-fill-color:#5E8D4A !important;
    opacity:1 !important;
    visibility:visible !important;
}

/* Icônes du bloc droit */
html body .join-grid > .trust-card .ui-icon,
html body .join-grid > .trust-card .cueilleo-icon,
html body .join-grid > .trust-card svg,
html body .join-grid > .trust-card svg * {
    color:#2F6B3A !important;
    stroke:#2F6B3A !important;
    opacity:1 !important;
    visibility:visible !important;
}

/* ===== FIN REJOINDRE V37 ===== */

/* ===== CARTE AUTOUR EDITABLE V38 ===== */
html body .maquette-map.cueilleo-map-editable{
    position:relative !important;
    overflow:hidden !important;
    background:none !important;
    min-height:640px !important;
}
html body .maquette-map.cueilleo-map-editable::before{display:none !important;}
html body .maquette-map.cueilleo-map-editable > .cueilleo-map-image{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    max-width:none;
    object-fit:cover;
    object-position:center center;
    display:block;
}
html body.cueilleo-admin-image-mode .maquette-map.cueilleo-map-editable > .cueilleo-map-image{cursor:pointer !important;}
/* ===== FIN CARTE AUTOUR EDITABLE V38 ===== */

/* ===== EDITEUR IMAGES ADMIN V39 ===== */

/* Croix en haut à droite */
html body .cueilleo-image-editor-head > button {
    color:#2F6B3A !important;
    -webkit-text-fill-color:#2F6B3A !important;
    background:#EEF3EA !important;
    opacity:1 !important;
    visibility:visible !important;
}

/* Bouton blanc "Centrer" */
html body .cueilleo-image-editor-actions .reset,
html body .cueilleo-image-editor-actions .reset * {
    color:#2F6B3A !important;
    -webkit-text-fill-color:#2F6B3A !important;
    background:#FFFFFF !important;
    opacity:1 !important;
    visibility:visible !important;
}

/* Bouton gris clair "Supprimer ce réglage" */
html body .cueilleo-image-editor-actions .restore,
html body .cueilleo-image-editor-actions .restore * {
    color:#2F6B3A !important;
    -webkit-text-fill-color:#2F6B3A !important;
    background:#F0F1EC !important;
    opacity:1 !important;
    visibility:visible !important;
}

/* Sécurité : "Enregistrer" reste blanc sur vert */
html body .cueilleo-image-editor-actions .save,
html body .cueilleo-image-editor-actions .save * {
    color:#FFFFFF !important;
    -webkit-text-fill-color:#FFFFFF !important;
}

/* ===== FIN EDITEUR IMAGES ADMIN V39 ===== */

/* ===== AUTOUR FICHES COMPACTES V40 ===== */

html body .map-layout .place-list{
    background:#FFFFFF !important;
}

html body .map-layout .place-list .place-card{
    display:grid !important;
    grid-template-columns:minmax(0,1fr) 160px !important;
    grid-template-rows:auto !important;
    align-items:center !important;
    gap:14px !important;
    min-height:148px !important;
    padding:13px 14px !important;
    margin:0 !important;
    border-bottom:1px solid var(--line) !important;
    overflow:visible !important;
    background:#FFFFFF !important;
}

html body .map-layout .place-list .place-card > div:not(.place-photo-frame){
    grid-column:1 !important;
    grid-row:1 !important;
    min-width:0 !important;
    align-self:center !important;
}

html body .map-layout .place-list .place-card > .place-photo-frame{
    grid-column:2 !important;
    grid-row:1 !important;
    position:relative !important;
    width:160px !important;
    height:112px !important;
    min-width:160px !important;
    min-height:112px !important;
    max-width:160px !important;
    max-height:112px !important;
    justify-self:end !important;
    align-self:center !important;
    overflow:hidden !important;
    border-radius:10px !important;
    background:#EEF2E8 !important;
    box-shadow:0 2px 8px rgba(0,0,0,.08) !important;
}

html body .map-layout .place-list .place-card > .place-photo-frame > img{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    max-width:none;
    max-height:none;
    object-fit:cover;
    object-position:center center;
    display:block;
    border-radius:0 !important;
    margin:0 !important;
}

html body .map-layout .place-list .place-card h3{
    margin:0 0 6px !important;
    font-size:19px !important;
    line-height:1.05 !important;
}

html body .map-layout .place-list .place-card small{
    display:block !important;
    margin:0 0 6px !important;
    font-size:11px !important;
    line-height:1.25 !important;
}

html body .map-layout .place-list .place-card p{
    margin:0 0 7px !important;
    font-size:11px !important;
    line-height:1.28 !important;
}

html body .map-layout .place-list .place-card .member-lock{
    display:inline-flex !important;
    align-items:center !important;
    gap:5px !important;
    width:auto !important;
    max-width:150px !important;
    margin:0 !important;
    padding:5px 7px !important;
    border-radius:7px !important;
    background:#F1F3E5 !important;
    color:#2F6B3A !important;
    -webkit-text-fill-color:#2F6B3A !important;
    font-size:9px !important;
    line-height:1.18 !important;
}

html body .map-layout .place-list > button.btn.light.full.member-gate,
html body .map-layout .place-list > button.btn.light.full.member-gate *{
    color:#2F6B3A !important;
    -webkit-text-fill-color:#2F6B3A !important;
}

html body .map-layout .place-list > button.btn.light.full.member-gate{
    background:#FFFFFF !important;
    border-color:#2F6B3A !important;
    min-height:44px !important;
    padding:10px 14px !important;
}

html body.cueilleo-admin-image-mode .map-layout .place-photo-frame{
    width:160px !important;
    height:112px !important;
    min-width:160px !important;
    min-height:112px !important;
    max-width:160px !important;
    max-height:112px !important;
    overflow:hidden !important;
}

/* ===== FIN AUTOUR FICHES COMPACTES V40 ===== */

/* ===== HAUT RHIN PHOTO GAUCHE V41 ===== */

/* Composition comme la maquette : photo à gauche, texte à droite */
html body .region-card{
    display:grid !important;
    grid-template-columns:40% 60% !important;
    gap:0 !important;
    align-items:stretch !important;
    padding:0 !important;
    min-height:230px !important;
    overflow:hidden !important;
    background:#FBFAF4 !important;
}

/* Cadre de photo fixe : il ne s'agrandit pas avec le zoom admin */
html body .region-card > .region-photo-frame{
    grid-column:1 !important;
    position:relative !important;
    width:100% !important;
    height:230px !important;
    min-height:230px !important;
    overflow:hidden !important;
    border-radius:0 !important;
    background:#EEF2E8 !important;
}

/* La photo remplit uniquement son cadre */
html body .region-card > .region-photo-frame > img{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    max-width:none;
    max-height:none;
    object-fit:cover;
    object-position:center center;
    margin:0 !important;
    border-radius:0 !important;
}

/* Texte à droite */
html body .region-card > .region-copy{
    grid-column:2 !important;
    padding:24px 30px !important;
    display:flex !important;
    flex-direction:column !important;
    justify-content:center !important;
    min-width:0 !important;
}

html body .region-card > .region-copy h2{
    margin:0 0 10px !important;
}

html body .region-card > .region-copy > p{
    margin:0 0 18px !important;
}

/* Les 4 avantages restent bien alignés */
html body .region-card .mini-benefits{
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
    gap:0 !important;
    margin-top:6px !important;
}

/* Le zoom admin agit DANS le cadre sans modifier sa taille */
html body.cueilleo-admin-image-mode .region-card > .region-photo-frame{
    width:100% !important;
    height:230px !important;
    min-height:230px !important;
    max-height:230px !important;
    overflow:hidden !important;
}

/* Tablette / mobile */
@media(max-width:720px){
    html body .region-card{
        grid-template-columns:1fr !important;
    }
    html body .region-card > .region-photo-frame{
        grid-column:1 !important;
        height:220px !important;
        min-height:220px !important;
    }
    html body .region-card > .region-copy{
        grid-column:1 !important;
    }
}

/* ===== FIN HAUT RHIN PHOTO GAUCHE V41 ===== */

/* ===== VIGNETTES AUTOUR PHOTO GAUCHE V42 ===== */

/*
  Page Autour de moi uniquement :
  - photo à GAUCHE
  - texte à DROITE
  - cadre photo fixe
  - zoom admin limité à l'intérieur du cadre
*/

html body .map-layout .place-list .place-card{
    display:grid !important;
    grid-template-columns:160px minmax(0,1fr) !important;
    grid-template-rows:auto !important;
    align-items:center !important;
    gap:14px !important;
    min-height:148px !important;
    padding:13px 14px !important;
    margin:0 !important;
    overflow:visible !important;
}

/* PHOTO À GAUCHE */
html body .map-layout .place-list .place-card > .place-photo-frame{
    grid-column:1 !important;
    grid-row:1 !important;

    position:relative !important;
    width:160px !important;
    height:112px !important;
    min-width:160px !important;
    min-height:112px !important;
    max-width:160px !important;
    max-height:112px !important;

    justify-self:start !important;
    align-self:center !important;

    overflow:hidden !important;
    border-radius:10px !important;
    background:#EEF2E8 !important;
}

/* TEXTE À DROITE */
html body .map-layout .place-list .place-card > div:not(.place-photo-frame){
    grid-column:2 !important;
    grid-row:1 !important;
    min-width:0 !important;
    align-self:center !important;
}

/* L'image reste enfermée dans son cadre fixe */
html body .map-layout .place-list .place-card > .place-photo-frame > img{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    max-width:none;
    max-height:none;
    object-fit:cover;
    object-position:center center;
    display:block;
    margin:0 !important;
    border-radius:0 !important;
}

/* Petits ajustements de lisibilité */
html body .map-layout .place-list .place-card h3{
    margin:0 0 6px !important;
}

html body .map-layout .place-list .place-card small{
    margin:0 0 6px !important;
}

html body .map-layout .place-list .place-card p{
    margin:0 0 7px !important;
}

/* Le zoom admin ne change jamais la taille du cadre */
html body.cueilleo-admin-image-mode .map-layout .place-photo-frame{
    width:160px !important;
    height:112px !important;
    min-width:160px !important;
    min-height:112px !important;
    max-width:160px !important;
    max-height:112px !important;
    overflow:hidden !important;
}

/* ===== FIN VIGNETTES AUTOUR PHOTO GAUCHE V42 ===== */

/* ===== CONTRIBUER MIRABELLES V43 ===== */

html body .contrib-benefits .ui-icon,
html body .contrib-steps .ui-icon,
html body .contrib-example-v43 .ui-icon,
html body .contrib-trust-bar .ui-icon,
html body .contrib-cta .ui-icon,
html body .contrib-benefits .cueilleo-icon,
html body .contrib-steps .cueilleo-icon,
html body .contrib-example-v43 .cueilleo-icon,
html body .contrib-trust-bar .cueilleo-icon,
html body .contrib-cta .cueilleo-icon {
    color:#2F6B3A !important;
    stroke:#2F6B3A !important;
}

html body .contrib-example-v43{
    display:block !important;
    margin-top:30px !important;
    padding:0 !important;
    overflow:visible !important;
    border:0 !important;
    background:transparent !important;
}

html body .contrib-example-v43 .example-main{
    padding:0 !important;
}

html body .contrib-example-v43 .example-main > h2{
    margin:0 0 18px !important;
    color:#2F6B3A !important;
}

html body .example-content-v43{
    display:grid !important;
    grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr) !important;
    gap:24px !important;
    align-items:stretch !important;
}

html body .example-photos-v43{
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
    gap:16px !important;
}

html body .example-photo-frame-v43{
    position:relative !important;
    height:300px !important;
    min-height:300px !important;
    margin:0 !important;
    overflow:hidden !important;
    border-radius:14px !important;
    background:#EEF2E8 !important;
    box-shadow:0 3px 12px rgba(0,0,0,.08) !important;
}

html body .example-photo-frame-v43 > img{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    max-width:none;
    max-height:none;
    object-fit:cover;
    object-position:center center;
    display:block;
    margin:0 !important;
    border-radius:0 !important;
}

html body .example-photo-frame-v43 > figcaption{
    position:absolute !important;
    left:12px !important;
    bottom:12px !important;
    z-index:3 !important;
    margin:0 !important;
    padding:6px 10px !important;
    border-radius:7px !important;
    background:rgba(31,77,42,.92) !important;
    color:#FFFFFF !important;
    -webkit-text-fill-color:#FFFFFF !important;
    font-size:11px !important;
    font-weight:700 !important;
}

html body .example-data-v43{
    display:flex !important;
    flex-direction:column !important;
    justify-content:center !important;
    gap:14px !important;
    padding:24px 26px !important;
    border-radius:14px !important;
    background:#FBFAF4 !important;
}

html body .example-data-v43 > h2{
    display:flex !important;
    align-items:center !important;
    gap:10px !important;
    margin:0 0 4px !important;
    color:#2F6B3A !important;
}

html body .example-info-row-v43{
    display:grid !important;
    grid-template-columns:28px minmax(0,1fr) !important;
    gap:10px !important;
    align-items:start !important;
}

html body .example-info-row-v43 > .ui-icon{
    margin-top:2px !important;
}

html body .example-info-row-v43 p{
    margin:0 !important;
    display:grid !important;
    gap:3px !important;
}

html body .example-info-row-v43 b{
    color:#2F6B3A !important;
    font-size:13px !important;
}

html body .example-info-row-v43 small{
    color:#5E8D4A !important;
    font-size:12px !important;
    line-height:1.4 !important;
}

html body.cueilleo-admin-image-mode .example-photo-frame-v43{
    height:300px !important;
    min-height:300px !important;
    max-height:300px !important;
    overflow:hidden !important;
}

@media(max-width:900px){
    html body .example-content-v43{
        grid-template-columns:1fr !important;
    }
}

@media(max-width:620px){
    html body .example-photos-v43{
        grid-template-columns:1fr !important;
    }
    html body .example-photo-frame-v43{
        height:260px !important;
        min-height:260px !important;
    }
}

/* ===== FIN CONTRIBUER MIRABELLES V43 ===== */

/* ===== CONTRIBUER 6 ETAPES V44 ===== */

/* 6 étapes : grille propre et équilibrée sur grand écran */
html body .contrib-steps.contrib-steps-six{
    display:grid !important;
    grid-template-columns:repeat(3, minmax(0,1fr)) !important;
    gap:22px 18px !important;
    margin-top:26px !important;
}

/* Chaque carte garde le style existant, avec une hauteur régulière */
html body .contrib-steps.contrib-steps-six > div{
    min-height:205px !important;
    padding:26px 20px 22px !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    text-align:center !important;
    justify-content:flex-start !important;
}

/* Icônes toujours vert foncé */
html body .contrib-steps.contrib-steps-six .ui-icon,
html body .contrib-steps.contrib-steps-six .cueilleo-icon{
    color:#2F6B3A !important;
    stroke:#2F6B3A !important;
}

/* Titres */
html body .contrib-steps.contrib-steps-six b{
    display:block !important;
    margin-top:8px !important;
    color:#2F6B3A !important;
    font-size:15px !important;
    line-height:1.25 !important;
}

/* Textes courts */
html body .contrib-steps.contrib-steps-six p{
    margin:10px 0 0 !important;
    font-size:12px !important;
    line-height:1.45 !important;
    max-width:260px !important;
}

/* Responsive */
@media(max-width:900px){
    html body .contrib-steps.contrib-steps-six{
        grid-template-columns:repeat(2, minmax(0,1fr)) !important;
    }
}

@media(max-width:560px){
    html body .contrib-steps.contrib-steps-six{
        grid-template-columns:1fr !important;
    }
}

/* ===== FIN CONTRIBUER 6 ETAPES V44 ===== */

/* ===== CONTRIBUER 5 ETAPES V45 ===== */

/* 5 cartes sur UNE seule rangée sur grand écran */
html body .contrib-steps.contrib-steps-five{
    display:grid !important;
    grid-template-columns:repeat(5, minmax(0,1fr)) !important;
    gap:14px !important;
    margin-top:26px !important;
}

/* Cartes compactes et régulières */
html body .contrib-steps.contrib-steps-five > div{
    min-height:210px !important;
    padding:24px 14px 20px !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    text-align:center !important;
    justify-content:flex-start !important;
}

/* Icônes en vert foncé */
html body .contrib-steps.contrib-steps-five .ui-icon,
html body .contrib-steps.contrib-steps-five .cueilleo-icon{
    color:#2F6B3A !important;
    stroke:#2F6B3A !important;
}

/* Titres */
html body .contrib-steps.contrib-steps-five b{
    display:block !important;
    margin-top:8px !important;
    color:#2F6B3A !important;
    font-size:14px !important;
    line-height:1.24 !important;
}

/* Textes */
html body .contrib-steps.contrib-steps-five p{
    margin:10px 0 0 !important;
    font-size:11px !important;
    line-height:1.42 !important;
    max-width:220px !important;
}

/* Tablette */
@media(max-width:1000px){
    html body .contrib-steps.contrib-steps-five{
        grid-template-columns:repeat(2, minmax(0,1fr)) !important;
    }
}

/* Mobile */
@media(max-width:560px){
    html body .contrib-steps.contrib-steps-five{
        grid-template-columns:1fr !important;
    }
}

/* ===== FIN CONTRIBUER 5 ETAPES V45 ===== */

/* ===== ESPACEMENT TITRE / 5 ETAPES V46 ===== */

/* Plus d'air entre le titre et les 5 vignettes numérotées */
html body .contrib-steps-title{
    margin-bottom:0 !important;
}

html body .contrib-steps.contrib-steps-five{
    margin-top:52px !important;
}

/* ===== FIN ESPACEMENT TITRE / 5 ETAPES V46 ===== */

/* ===== A PROPOS 2 LIGNES PROPRES V48 ===== */

html body .story-grid{
    display:grid !important;
    grid-template-columns:minmax(0, 1fr) minmax(0, 1fr) !important;
    align-items:stretch !important;
    width:100% !important;
    max-width:none !important;
    clear:both !important;
}

html body .story-grid + .story-grid{
    margin-top:24px !important;
}

html body .story-grid:not(.about-preserve-section) > .story-copy{
    grid-column:1 !important;
    grid-row:1 !important;
}

html body .story-grid:not(.about-preserve-section) > img{
    grid-column:2 !important;
    grid-row:1 !important;
}

html body .story-grid.about-preserve-section > img{
    grid-column:1 !important;
    grid-row:1 !important;
    width:100% !important;
    height:100% !important;
    min-height:255px !important;
    object-fit:cover !important;
    display:block !important;
}

html body .story-grid.about-preserve-section > .story-copy{
    grid-column:2 !important;
    grid-row:1 !important;
}

html body .story-grid.about-preserve-section{
    margin-top:28px !important;
}

@media(max-width:760px){
    html body .story-grid{
        grid-template-columns:1fr !important;
    }

    html body .story-grid > .story-copy,
    html body .story-grid > img,
    html body .story-grid.about-preserve-section > .story-copy,
    html body .story-grid.about-preserve-section > img{
        grid-column:1 !important;
    }

    html body .story-grid:not(.about-preserve-section) > .story-copy{
        grid-row:1 !important;
    }

    html body .story-grid:not(.about-preserve-section) > img{
        grid-row:2 !important;
    }

    html body .story-grid.about-preserve-section > img{
        grid-row:1 !important;
    }

    html body .story-grid.about-preserve-section > .story-copy{
        grid-row:2 !important;
    }
}

/* ===== FIN A PROPOS 2 LIGNES PROPRES V48 ===== */

/* ===== A PROPOS PHOTO COMMUNAUTE + CONTACT V49 ===== */

/* Photo communauté : cadre fixe, l'éditeur manipule seulement l'image dedans */
html body .story-grid .community-photo-frame{
    grid-column:2 !important;
    grid-row:1 !important;
    position:relative !important;
    overflow:hidden !important;
    width:100% !important;
    height:100% !important;
    min-height:255px !important;
    border-radius:16px !important;
}

html body .story-grid .community-photo-frame > img{
    position:absolute !important;
    inset:0 !important;
    width:100% !important;
    height:100% !important;
    object-fit:cover !important;
    display:block !important;
}

/* Le bouton clair "Nous contacter" doit rester lisible */
html body .about-question-strip a.btn.light,
html body .about-question-strip a.btn.light *,
html body .about-question-strip .btn.light,
html body .about-question-strip .btn.light *{
    color:#2F6B3A !important;
    -webkit-text-fill-color:#2F6B3A !important;
    stroke:#2F6B3A !important;
}

/* Mobile : photo communauté sous le texte */
@media(max-width:760px){
    html body .story-grid .community-photo-frame{
        grid-column:1 !important;
        grid-row:2 !important;
        min-height:220px !important;
    }
}

/* ===== FIN A PROPOS PHOTO COMMUNAUTE + CONTACT V49 ===== */

/* ===== FAQ CORRECTIONS V50 ===== */
html body .faq-hero-photo.faq-hero-photo-editable{position:relative!important;overflow:hidden!important}
html body .faq-hero-photo.faq-hero-photo-editable>img{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;object-fit:cover!important;display:block!important}
html body .faq-side .faq-speech.faq-speech-message .ui-icon{color:#2F6B3A!important;-webkit-text-fill-color:#2F6B3A!important;stroke:#2F6B3A!important}
html body .faq-side a.faq-contact-dark,html body .faq-side a.faq-contact-dark *,html body .faq-side a.faq-contact-dark .ui-icon{color:#2F6B3A!important;-webkit-text-fill-color:#2F6B3A!important;stroke:#2F6B3A!important}
html body .faq-help-visual .help-circle{width:82px!important;height:82px!important;min-width:82px!important;min-height:82px!important;border-radius:50%!important;display:flex!important;align-items:center!important;justify-content:center!important;padding:0!important}
html body .faq-help-visual .help-circle::before,html body .faq-help-visual .help-circle::after{display:none!important;content:none!important}
html body .faq-help-visual .help-circle>.ui-icon{width:36px!important;height:36px!important;font-size:36px!important;margin:0!important;padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important}
/* ===== FIN FAQ CORRECTIONS V50 ===== */

/* ===== EMAIL FOOTER V55 ===== */
html body footer input[type="email"]{
    color:#2F6B3A !important;
    -webkit-text-fill-color:#2F6B3A !important;
    opacity:1 !important;
}
html body footer input[type="email"]::placeholder{
    color:#5E6F5A !important;
    -webkit-text-fill-color:#5E6F5A !important;
    opacity:1 !important;
}
html body footer input[type="email"]::-webkit-input-placeholder{
    color:#5E6F5A !important;
    -webkit-text-fill-color:#5E6F5A !important;
    opacity:1 !important;
}
/* ===== FIN EMAIL FOOTER V55 ===== */

/* ===== FAQ PHOTO ADMIN V56 ===== */
html body .faq-hero-photo.faq-admin-image-frame{
    position:relative !important;
    overflow:hidden !important;
    display:block !important;
    isolation:isolate !important;
}
html body .faq-hero-photo.faq-admin-image-frame > img{
    display:block !important;
    position:absolute !important;
    left:0 !important;
    top:0 !important;
    width:100% !important;
    height:100% !important;
    max-width:none !important;
    object-fit:cover !important;
    object-position:center center !important;
    pointer-events:auto !important;
    visibility:visible !important;
    opacity:1 !important;
    z-index:1 !important;
}
html body.admin-mode .faq-admin-image-frame,
html body.admin-mode .faq-admin-image-frame > img,
html body.admin-edit-images .faq-admin-image-frame,
html body.admin-edit-images .faq-admin-image-frame > img{
    pointer-events:auto !important;
}
/* ===== FIN FAQ PHOTO ADMIN V56 ===== */

/* ===== CONTACT TEXTES V58 ===== */

/* Bouton blanc en bas à droite : texte visible en vert foncé */
html body .contact-faq-actions a.btn.light,
html body .contact-faq-actions a.btn.light *{
    color:#2F6B3A !important;
    -webkit-text-fill-color:#2F6B3A !important;
    stroke:#2F6B3A !important;
}

/* Le select Sujet reste propre, sans texte noir résiduel */
html body .contact-form-v6 select.input{
    color:#2F6B3A !important;
    -webkit-text-fill-color:#2F6B3A !important;
}

/* ===== FIN CONTACT TEXTES V58 ===== */

/* ===== EDITEUR TEXTES FAQ V59 ===== */

html body .faq-text-editor-btn{
    position:fixed !important;
    right:22px !important;
    bottom:72px !important;
    z-index:99998 !important;
    border:0 !important;
    border-radius:999px !important;
    padding:12px 18px !important;
    background:#2F6B3A !important;
    color:#fff !important;
    -webkit-text-fill-color:#fff !important;
    font-weight:700 !important;
    cursor:pointer !important;
    box-shadow:0 5px 18px rgba(0,0,0,.18) !important;
}

html body .faq-text-editor-btn.is-editing{
    background:#79B82A !important;
}

html body.faq-text-editing #faqList summary[contenteditable="true"],
html body.faq-text-editing #faqList p[contenteditable="true"]{
    outline:2px dashed #79B82A !important;
    outline-offset:4px !important;
    cursor:text !important;
    border-radius:6px !important;
}

html body.faq-text-editing #faqList summary[contenteditable="true"]:focus,
html body.faq-text-editing #faqList p[contenteditable="true"]:focus{
    outline:3px solid #2F6B3A !important;
    background:#F7FBEF !important;
}

/* ===== FIN EDITEUR TEXTES FAQ V59 ===== */

/* ===== NOUS REJOINDRE ACTIF V60 ===== */
html body a.join-page-active,
html body a.join-page-active *{
    background-color:#79B82A !important;
    color:#FFFFFF !important;
    -webkit-text-fill-color:#FFFFFF !important;
    stroke:#FFFFFF !important;
}
/* ===== FIN NOUS REJOINDRE ACTIF V60 ===== */

/* ===== NOUS REJOINDRE ACTIF V61 ===== */

/* Page rejoindre uniquement : priorité maximale sur les anciennes règles */
html body .topbar .container.nav > a.btn.primary.nav-cta.join-page-active[href="rejoindre.html"]{
    background:#79B82A !important;
    background-color:#79B82A !important;
    border-color:#79B82A !important;
    color:#FFFFFF !important;
    -webkit-text-fill-color:#FFFFFF !important;
}

html body .topbar .container.nav > a.btn.primary.nav-cta.join-page-active[href="rejoindre.html"] *,
html body .topbar .container.nav > a.btn.primary.nav-cta.join-page-active[href="rejoindre.html"]::before{
    color:#FFFFFF !important;
    -webkit-text-fill-color:#FFFFFF !important;
    stroke:#FFFFFF !important;
}

/* ===== FIN NOUS REJOINDRE ACTIF V61 ===== */

/* ===== FAQ QUESTIONS VERT CUEILLEO V66 ===== */

/* Questions FAQ uniquement */
html body #faqList .faq-item > summary,
html body #faqList details.faq-item > summary,
html body #faqList .faq-item[open] > summary,
html body #faqList .faq-item > summary:hover{
    color:#2F6B3A !important;
    -webkit-text-fill-color:#2F6B3A !important;
}

/* Réponses volontairement non modifiées */

/* ===== FIN FAQ QUESTIONS VERT CUEILLEO V66 ===== */

/* ===== FAQ CHARTE CONTACT V72 ===== */

/*
   Le bloc FAQ reprend volontairement le composant de Contact.
   Les couleurs, boutons, rayons et dimensions générales
   restent hérités de la charte déjà validée.
*/

.faq-help-contact-v72{
    margin-top:28px !important;
    margin-bottom:28px !important;
}

/* Image droite, comme dans Contact */
.faq-help-contact-v72 .contact-faq-visual img{
    transform:none !important;
    rotate:none !important;
}

/* Trois lignes avec les vraies icônes UI du site */
.faq-help-benefits-v72{
    display:flex;
    flex-direction:column;
    gap:8px;
    margin-top:14px;
}

.faq-help-benefits-v72 > div{
    display:flex;
    align-items:center;
    gap:10px;
    color:#2F6B3A;
}

.faq-help-benefits-v72 .ui-icon{
    flex:0 0 auto;
}

/* Lien et flèche en vert Cueilléo */
.faq-centre-aide-v72{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:7px;
    text-decoration:none;
    color:#2F6B3A !important;
    -webkit-text-fill-color:#2F6B3A !important;
    font-weight:500;
}

.faq-centre-aide-v72 strong,
.faq-centre-aide-v72 .ui-icon{
    color:#2F6B3A !important;
    -webkit-text-fill-color:#2F6B3A !important;
}

/* ===== FIN FAQ CHARTE CONTACT V72 ===== */

/* ===== FOOTER LIENS LEGAUX UNE LIGNE V73 ===== */

/* Met les liens légaux du bas sur une seule ligne */
.footer .legal{
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    gap:24px !important;
    flex-wrap:nowrap !important;
}

.footer .legal > span:last-child{
    display:flex !important;
    align-items:center !important;
    gap:6px !important;
    white-space:nowrap !important;
    flex-wrap:nowrap !important;
}

.footer .legal > span:last-child a{
    display:inline !important;
    white-space:nowrap !important;
}

/* ===== FIN FOOTER LIENS LEGAUX UNE LIGNE V73 ===== */

/* ===== MENU RESPONSIVE TABLETTE + TELEPHONE V92 ===== */
@media (max-width:1200px){
  html body .topbar{
    position:sticky !important;
    top:0 !important;
    z-index:5000 !important;
    overflow:visible !important;
  }

  html body .topbar .container.nav{
    position:relative !important;
    min-height:78px !important;
    height:auto !important;
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    gap:14px !important;
    padding:8px 0 !important;
  }

  html body .topbar .container.nav > .brand{
    position:relative !important;
    left:auto !important;
    right:auto !important;
    top:auto !important;
    width:auto !important;
    min-width:0 !important;
    flex:0 1 auto !important;
    margin:0 auto 0 0 !important;
    padding:0 !important;
  }

  html body .topbar .container.nav > .brand .brand-logo{
    width:150px !important;
    max-width:42vw !important;
    height:auto !important;
    margin:0 !important;
  }

  html body .topbar .container.nav > .menu-toggle{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    position:relative !important;
    inset:auto !important;
    order:3 !important;
    flex:0 0 48px !important;
    width:48px !important;
    height:48px !important;
    margin:0 !important;
    padding:0 !important;
    border:1px solid rgba(47,107,58,.18) !important;
    border-radius:12px !important;
    background:#FFFFFF !important;
    color:#2F6B3A !important;
    font-size:28px !important;
    line-height:1 !important;
    box-shadow:none !important;
    cursor:pointer !important;
    z-index:5002 !important;
  }

  html body .topbar .container.nav > .nav-cta{
    display:none !important;
  }

  html body .topbar .container.nav > nav.menu{
    display:none !important;
    position:absolute !important;
    left:0 !important;
    right:0 !important;
    top:100% !important;
    width:100% !important;
    margin:0 !important;
    padding:10px 16px 16px !important;
    flex-direction:column !important;
    align-items:stretch !important;
    gap:0 !important;
    white-space:normal !important;
    background:#FFFDF9 !important;
    border:1px solid rgba(47,107,58,.12) !important;
    border-top:0 !important;
    border-radius:0 0 16px 16px !important;
    box-shadow:0 14px 28px rgba(20,55,35,.14) !important;
    z-index:5001 !important;
    max-height:calc(100vh - 92px) !important;
    overflow-y:auto !important;
    -webkit-overflow-scrolling:touch !important;
  }

  html body .topbar .container.nav > nav.menu.open{
    display:flex !important;
  }

  html body .topbar .container.nav > nav.menu > a{
    display:block !important;
    position:relative !important;
    width:100% !important;
    margin:0 !important;
    padding:12px 8px !important;
    border:0 !important;
    border-bottom:1px solid rgba(47,107,58,.10) !important;
    font-size:15px !important;
    line-height:1.25 !important;
    color:#2F6B3A !important;
    background:transparent !important;
    white-space:normal !important;
    text-align:left !important;
  }

  html body .topbar .container.nav > nav.menu > a.active:not(.cueilleo-mobile-join){
    font-weight:800 !important;
    color:#2F6B3A !important;
  }

  html body .topbar .container.nav > nav.menu > a.active:not(.cueilleo-mobile-join)::after{
    content:"" !important;
    position:absolute !important;
    left:8px !important;
    bottom:5px !important;
    width:34px !important;
    height:3px !important;
    border-radius:3px !important;
    background:#79B82A !important;
  }

  html body .topbar .container.nav > nav.menu > a.cueilleo-mobile-join{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    width:100% !important;
    margin:12px 0 0 !important;
    padding:13px 18px !important;
    border:1px solid #2F6B3A !important;
    border-radius:10px !important;
    background:#2F6B3A !important;
    color:#FFFFFF !important;
    font-weight:800 !important;
    text-align:center !important;
  }
}

@media (max-width:600px){
  html body .topbar .container.nav{
    min-height:70px !important;
  }

  html body .topbar .container.nav > .brand .brand-logo{
    width:132px !important;
    max-width:48vw !important;
  }

  html body .topbar .container.nav > .menu-toggle{
    width:44px !important;
    height:44px !important;
    flex-basis:44px !important;
    font-size:25px !important;
  }

  html body .topbar .container.nav > nav.menu{
    padding:8px 12px 14px !important;
  }

  html body .topbar .container.nav > nav.menu > a{
    padding:11px 7px !important;
    font-size:15px !important;
  }
}
/* ===== FIN MENU RESPONSIVE TABLETTE + TELEPHONE V92 ===== */

/* ===== HAMBURGER VISIBLE + CACHE MOBILE V93 ===== */

@media (max-width:1200px){

  html body .topbar .container.nav > button.menu-toggle{
    position:relative !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    font-size:0 !important;
    color:transparent !important;
    -webkit-text-fill-color:transparent !important;
    text-indent:-9999px !important;
    overflow:hidden !important;
  }

  html body .topbar .container.nav > button.menu-toggle::before,
  html body .topbar .container.nav > button.menu-toggle::after{
    content:"" !important;
    position:absolute !important;
    left:50% !important;
    width:23px !important;
    height:2.5px !important;
    border-radius:4px !important;
    background:#2F6B3A !important;
    transform-origin:center !important;
    transition:transform .18s ease, top .18s ease, box-shadow .18s ease !important;
    pointer-events:none !important;
  }

  html body .topbar .container.nav > button.menu-toggle::before{
    top:15px !important;
    transform:translateX(-50%) !important;
    box-shadow:0 8px 0 #2F6B3A !important;
  }

  html body .topbar .container.nav > button.menu-toggle::after{
    top:31px !important;
    transform:translateX(-50%) !important;
  }

  html body .topbar .container.nav > button.menu-toggle[aria-expanded="true"]::before{
    top:23px !important;
    transform:translateX(-50%) rotate(45deg) !important;
    box-shadow:none !important;
  }

  html body .topbar .container.nav > button.menu-toggle[aria-expanded="true"]::after{
    top:23px !important;
    transform:translateX(-50%) rotate(-45deg) !important;
  }
}

@media (max-width:600px){
  html body .topbar .container.nav > button.menu-toggle::before{
    top:13px !important;
    box-shadow:0 8px 0 #2F6B3A !important;
  }

  html body .topbar .container.nav > button.menu-toggle::after{
    top:29px !important;
  }

  html body .topbar .container.nav > button.menu-toggle[aria-expanded="true"]::before,
  html body .topbar .container.nav > button.menu-toggle[aria-expanded="true"]::after{
    top:21px !important;
  }
}

/* ===== FIN HAMBURGER VISIBLE + CACHE MOBILE V93 ===== */

/* ===== HERO ACCUEIL RESPONSIVE V94 ===== */

/* iPad portrait + paysage : on évite le desktop comprimé. */
@media (max-width:1200px){
  html body .home-hero{
    padding:0 0 22px !important;
  }

  html body .home-hero .home-grid{
    grid-template-columns:1fr !important;
    min-height:0 !important;
    align-items:stretch !important;
  }

  html body .home-hero .hero-copy{
    transform:none !important;
    position:relative !important;
    left:auto !important;
    right:auto !important;
    width:100% !important;
    max-width:820px !important;
    margin:0 auto !important;
    padding:44px 28px 34px !important;
  }

  html body .home-hero .hero-copy h1{
    max-width:760px !important;
    font-size:clamp(46px,6.2vw,62px) !important;
    line-height:1.04 !important;
    letter-spacing:-.8px !important;
  }

  html body .home-hero .hero-copy h1 .hero-line{
    white-space:normal !important;
  }

  html body .home-hero .hero-copy > p{
    max-width:680px !important;
    font-size:17px !important;
    line-height:1.55 !important;
  }

  html body .home-hero .home-main-cta{
    width:auto !important;
    max-width:100% !important;
  }

  html body .home-hero .promise-grid{
    grid-template-columns:repeat(4,1fr) !important;
    gap:12px !important;
    margin-top:28px !important;
  }

  html body .home-hero .home-visual{
    width:100% !important;
    min-height:420px !important;
    height:420px !important;
  }

  html body .home-hero .home-visual img{
    width:100% !important;
    height:100% !important;
    object-fit:cover !important;
  }
}

/* iPhone : vraie composition mobile, plus compacte. */
@media (max-width:600px){
  html body .home-hero .hero-copy{
    max-width:none !important;
    margin:0 !important;
    padding:30px 18px 26px !important;
  }

  html body .home-hero .hero-copy h1{
    width:100% !important;
    max-width:none !important;
    margin:0 !important;
    font-size:clamp(39px,11.2vw,48px) !important;
    line-height:1.02 !important;
    letter-spacing:-.6px !important;
  }

  html body .home-hero .hero-copy h1 .hero-line{
    display:block !important;
    white-space:normal !important;
  }

  html body .home-hero .green-rule{
    width:48px !important;
    height:4px !important;
    margin:20px 0 18px !important;
  }

  html body .home-hero .hero-copy > p{
    width:100% !important;
    max-width:none !important;
    margin:0 0 20px !important;
    font-size:16px !important;
    line-height:1.5 !important;
  }

  html body .home-hero .home-main-cta{
    display:flex !important;
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    padding:14px 16px !important;
    font-size:16px !important;
    line-height:1.25 !important;
    white-space:normal !important;
    text-align:center !important;
  }

  html body .home-hero .promise-grid{
    grid-template-columns:repeat(2,1fr) !important;
    gap:18px 10px !important;
    margin-top:26px !important;
  }

  html body .home-hero .home-visual{
    min-height:330px !important;
    height:330px !important;
  }
}

/* Très petits iPhone. */
@media (max-width:390px){
  html body .home-hero .hero-copy{
    padding-left:15px !important;
    padding-right:15px !important;
  }

  html body .home-hero .hero-copy h1{
    font-size:38px !important;
  }
}

/* ===== FIN HERO ACCUEIL RESPONSIVE V94 ===== */

/* ===== ACCUEIL BLOCS RESPONSIVE V95 ===== */

/* TABLETTE */
@media (max-width:1200px){

  html body .section.alt .launch-card{
    display:grid !important;
    grid-template-columns:1fr !important;
    overflow:hidden !important;
    border-radius:20px !important;
  }

  html body .section.alt .launch-card > .launch-copy{
    position:relative !important;
    z-index:2 !important;
    width:100% !important;
    padding:34px 32px 28px !important;
    background:#fbfcf6 !important;
  }

  html body .section.alt .launch-card > .launch-copy h2{
    margin:0 !important;
    font-size:42px !important;
    line-height:1.08 !important;
  }

  html body .section.alt .launch-card > img{
    position:static !important;
    inset:auto !important;
    left:auto !important;
    right:auto !important;
    top:auto !important;
    bottom:auto !important;
    transform:none !important;
    display:block !important;
    width:100% !important;
    max-width:none !important;
    height:400px !important;
    min-height:0 !important;
    object-fit:cover !important;
    object-position:center !important;
    margin:0 !important;
    z-index:1 !important;
  }

  html body .section > .container > h2.center{
    max-width:760px !important;
    margin:0 auto 28px !important;
    font-size:40px !important;
    line-height:1.12 !important;
    text-align:center !important;
  }

  html body .section .app-showcase{
    grid-template-columns:repeat(2, minmax(0,1fr)) !important;
    gap:24px !important;
  }

  html body .section .app-showcase .app-card-uniform{
    width:100% !important;
    max-width:none !important;
    min-width:0 !important;
  }

  html body .section .app-showcase .app-shot-uniform{
    width:100% !important;
    max-width:280px !important;
    margin-left:auto !important;
    margin-right:auto !important;
  }
}

/* IPHONE */
@media (max-width:600px){

  html body .section.alt{
    padding:32px 0 !important;
  }

  html body .section.alt .launch-card{
    width:100% !important;
    border-radius:18px !important;
  }

  html body .section.alt .launch-card > .launch-copy{
    padding:25px 20px 22px !important;
  }

  html body .section.alt .launch-card > .launch-copy h2{
    display:block !important;
    width:100% !important;
    margin:0 !important;
    font-size:30px !important;
    line-height:1.08 !important;
    letter-spacing:0 !important;
  }

  html body .section.alt .launch-card > .launch-copy .green-rule{
    margin:15px 0 !important;
  }

  html body .section.alt .launch-card > .launch-copy p{
    margin-top:0 !important;
    font-size:15px !important;
    line-height:1.5 !important;
  }

  html body .section.alt .launch-card > .launch-copy .btn{
    display:flex !important;
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
    padding:13px 14px !important;
    white-space:normal !important;
    text-align:center !important;
  }

  html body .section.alt .launch-card > img{
    height:285px !important;
    min-height:285px !important;
    border-radius:0 !important;
  }

  html body main > .section:not(.alt){
    padding-top:40px !important;
  }

  html body .section > .container > h2.center{
    width:100% !important;
    max-width:340px !important;
    margin:0 auto 24px !important;
    padding:0 6px !important;
    font-size:29px !important;
    line-height:1.08 !important;
    letter-spacing:0 !important;
    overflow-wrap:normal !important;
    word-break:normal !important;
  }

  html body .section .app-showcase{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:28px !important;
    width:100% !important;
    margin-top:0 !important;
  }

  html body .section .app-showcase .app-card-uniform{
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    width:100% !important;
    max-width:340px !important;
    margin:0 auto !important;
    text-align:center !important;
  }

  html body .section .app-showcase .app-card-uniform > b{
    font-size:17px !important;
    line-height:1.25 !important;
    margin-bottom:5px !important;
  }

  html body .section .app-showcase .app-card-uniform > p{
    min-height:0 !important;
    margin:0 0 12px !important;
    font-size:14px !important;
    line-height:1.45 !important;
  }

  html body .section .app-showcase .app-shot-uniform{
    width:min(100%,250px) !important;
    height:auto !important;
    min-height:0 !important;
    margin:0 auto !important;
    overflow:hidden !important;
  }

  html body .section .app-showcase .app-shot-uniform img{
    position:static !important;
    inset:auto !important;
    transform:none !important;
    display:block !important;
    width:100% !important;
    max-width:100% !important;
    height:auto !important;
    min-height:0 !important;
    object-fit:contain !important;
    margin:0 !important;
  }

  html body .section .quote-strip{
    margin-top:30px !important;
  }
}

/* ===== FIN ACCUEIL BLOCS RESPONSIVE V95 ===== */

/* ===== IMAGES RESPONSIVE AUTOMATIQUES V96 ===== */

/*
  Principe :
  - ordinateur > 1200 px : aucun changement ;
  - tablette/téléphone : les anciens réglages Admin de position/zoom
    ne peuvent plus casser la mise en page ;
  - les photos remplissent automatiquement leur cadre ;
  - les captures d'application utilisent "contain" pour rester entières ;
  - les cartes géographiques ne sont PAS concernées.
*/

@media (max-width:1200px){

  /* ---------------------------------------------------------
     1. CADRES PHOTO : comportement commun
     --------------------------------------------------------- */
  html body .home-visual,
  html body .species-img,
  html body .photo-banner,
  html body .how-image-viewport,
  html body .how-demo-image,
  html body .place-photo-frame,
  html body .region-photo-frame,
  html body .region-image-frame,
  html body .story-grid,
  html body .example-photo-frame,
  html body .contrib-photo-frame,
  html body .identify-photos,
  html body .welcome-grid,
  html body .about-grid,
  html body .contact-grid,
  html body .faq-hero .container,
  html body .cookies-grid{
    overflow:hidden !important;
  }

  /* ---------------------------------------------------------
     2. PHOTOS "COVER" : remplissent le cadre automatiquement.
     On neutralise left/top/transform/zoom Admin uniquement
     sur tablette et mobile.
     --------------------------------------------------------- */
  html body .home-visual > img,
  html body .species-img > img,
  html body .photo-banner > img,
  html body .how-image-viewport > img,
  html body .how-demo-image > img,
  html body .place-photo-frame > img,
  html body .region-photo-frame > img,
  html body .region-image-frame > img,
  html body .story-grid > img,
  html body .example-photo-frame > img,
  html body .contrib-photo-frame > img,
  html body .identify-photos img,
  html body .welcome-grid > img,
  html body .about-grid > img,
  html body .contact-grid > img,
  html body .faq-hero img,
  html body .cookies-grid > img,
  html body .side-photo{
    position:static !important;
    inset:auto !important;
    top:auto !important;
    right:auto !important;
    bottom:auto !important;
    left:auto !important;
    transform:none !important;
    translate:none !important;
    scale:none !important;
    margin:0 !important;

    width:100% !important;
    max-width:100% !important;
    object-fit:cover !important;
    object-position:center center !important;

    -webkit-mask-image:none !important;
    mask-image:none !important;
  }

  /* Les images directement dans launch-card sont déjà gérées par V95,
     mais on sécurise le centrage automatique. */
  html body .launch-card > img{
    object-fit:cover !important;
    object-position:center center !important;
  }

  /* ---------------------------------------------------------
     3. CAPTURES D'APPLICATION : on montre l'écran entier.
     --------------------------------------------------------- */
  html body .app-shot-uniform{
    position:relative !important;
    overflow:hidden !important;
  }

  html body .app-shot-uniform > img{
    position:static !important;
    inset:auto !important;
    top:auto !important;
    right:auto !important;
    bottom:auto !important;
    left:auto !important;
    transform:none !important;
    translate:none !important;
    scale:none !important;
    margin:0 auto !important;

    width:100% !important;
    max-width:100% !important;
    height:100% !important;
    max-height:100% !important;

    object-fit:contain !important;
    object-position:center center !important;

    -webkit-mask-image:none !important;
    mask-image:none !important;
  }

  /* ---------------------------------------------------------
     4. FICHES ESPÈCES : ratio stable en tablette.
     --------------------------------------------------------- */
  html body .species-img{
    height:auto !important;
    aspect-ratio:4 / 3 !important;
  }

  html body .species-img > img{
    height:100% !important;
  }

  /* ---------------------------------------------------------
     5. COMMENT ÇA MARCHE : cadres stables.
     --------------------------------------------------------- */
  html body .how-image-viewport,
  html body .how-demo-image{
    position:relative !important;
    min-height:240px !important;
  }

  html body .how-image-viewport > img,
  html body .how-demo-image > img{
    height:100% !important;
    min-height:240px !important;
  }

  /* ---------------------------------------------------------
     6. AUTOUR DE MOI : vignettes photo fixes et propres.
     --------------------------------------------------------- */
  html body .place-photo-frame{
    position:relative !important;
    overflow:hidden !important;
    flex:0 0 auto !important;
  }

  html body .place-photo-frame > img{
    height:100% !important;
  }

  html body .region-photo-frame,
  html body .region-image-frame{
    position:relative !important;
    overflow:hidden !important;
    min-height:220px !important;
  }

  html body .region-photo-frame > img,
  html body .region-image-frame > img{
    height:100% !important;
  }

  /* ---------------------------------------------------------
     7. HERO DES PAGES INTERNES : photo sous le texte,
        sans ancien déplacement desktop.
     --------------------------------------------------------- */
  html body .welcome-grid > img,
  html body .about-grid > img,
  html body .contact-grid > img,
  html body .faq-hero img,
  html body .cookies-grid > img{
    min-height:320px !important;
    height:clamp(320px,45vw,440px) !important;
  }
}


/* Téléphone : cadres plus courts pour éviter les pages interminables. */
@media (max-width:600px){

  html body .home-visual{
    height:320px !important;
    min-height:320px !important;
  }

  html body .home-visual > img{
    height:100% !important;
  }

  html body .species-img{
    aspect-ratio:4 / 3 !important;
  }

  html body .how-image-viewport,
  html body .how-demo-image{
    min-height:210px !important;
    height:210px !important;
  }

  html body .how-image-viewport > img,
  html body .how-demo-image > img{
    height:100% !important;
    min-height:0 !important;
  }

  html body .welcome-grid > img,
  html body .about-grid > img,
  html body .contact-grid > img,
  html body .faq-hero img,
  html body .cookies-grid > img{
    height:280px !important;
    min-height:280px !important;
  }

  html body .story-grid > img{
    width:100% !important;
    height:280px !important;
    min-height:280px !important;
  }

  html body .identify-photos img{
    height:180px !important;
  }

  /* Les captures d'application gardent leur proportion native. */
  html body .app-shot-uniform{
    height:auto !important;
    min-height:0 !important;
    aspect-ratio:2 / 3 !important;
  }

  html body .app-shot-uniform > img{
    width:100% !important;
    height:100% !important;
  }
}

/* ===== FIN IMAGES RESPONSIVE AUTOMATIQUES V96 ===== */

/* ===== MENU DESKTOP SANS CHEVAUCHEMENT LOGO V97 ===== */

/*
  Correction uniquement grand écran.
  Le problème venait du menu desktop déplacé vers la gauche
  par une ancienne règle (left:-14px) et d'un espace insuffisant
  entre le logo et la navigation.
*/
@media (min-width:1101px){

  html body .topbar .container.nav{
    display:flex !important;
    align-items:center !important;
    gap:18px !important;
  }

  html body .topbar .container.nav > .brand{
    position:relative !important;
    left:auto !important;
    right:auto !important;
    flex:0 0 205px !important;
    width:205px !important;
    min-width:205px !important;
    margin:0 !important;
  }

  html body .topbar .container.nav > .brand .brand-logo{
    width:188px !important;
    max-width:188px !important;
    height:auto !important;
  }

  html body .topbar .container.nav > nav.menu{
    position:static !important;
    left:auto !important;
    right:auto !important;
    margin-left:12px !important;
    margin-right:0 !important;
    flex:1 1 auto !important;
    min-width:0 !important;
    display:flex !important;
    align-items:center !important;
    justify-content:flex-start !important;
    gap:15px !important;
    white-space:nowrap !important;
  }

  html body .topbar .container.nav > nav.menu > a{
    flex:0 0 auto !important;
    font-size:14px !important;
    white-space:nowrap !important;
  }

  html body .topbar .container.nav > .nav-cta{
    flex:0 0 auto !important;
    margin-left:auto !important;
  }
}

/*
  Entre 1101 et 1350 px, on resserre légèrement le menu,
  mais sans jamais le faire passer sur le logo.
*/
@media (min-width:1101px) and (max-width:1350px){
  html body .topbar .container.nav{
    gap:12px !important;
  }

  html body .topbar .container.nav > .brand{
    flex-basis:190px !important;
    width:190px !important;
    min-width:190px !important;
  }

  html body .topbar .container.nav > .brand .brand-logo{
    width:176px !important;
    max-width:176px !important;
  }

  html body .topbar .container.nav > nav.menu{
    margin-left:8px !important;
    gap:11px !important;
  }

  html body .topbar .container.nav > nav.menu > a{
    font-size:13px !important;
  }

  html body .topbar .container.nav > .nav-cta{
    padding-left:24px !important;
    padding-right:24px !important;
  }
}

/* ===== FIN MENU DESKTOP SANS CHEVAUCHEMENT LOGO V97 ===== */

/* ===== MENU IPAD PAYSAGE HORIZONTAL V98 ===== */

/*
  iPad/tablette en paysage :
  - pas de hamburger ;
  - logo fixe à gauche ;
  - navigation sur une seule ligne ;
  - défilement horizontal au doigt si nécessaire ;
  - bouton Nous rejoindre conservé à droite.
  iPhone + tablette portrait : comportement hamburger inchangé.
  Ordinateur > 1100 px : inchangé.
*/
@media (min-width:768px) and (max-width:1100px) and (orientation:landscape){

  html body .topbar{
    overflow:visible !important;
  }

  html body .topbar .container.nav{
    width:96vw !important;
    min-height:82px !important;
    display:flex !important;
    align-items:center !important;
    flex-wrap:nowrap !important;
    gap:10px !important;
    overflow:visible !important;
  }

  /* Logo : zone réservée, jamais recouverte par le menu. */
  html body .topbar .container.nav > .brand{
    position:relative !important;
    left:auto !important;
    right:auto !important;
    flex:0 0 150px !important;
    width:150px !important;
    min-width:150px !important;
    margin:0 !important;
    z-index:2 !important;
  }

  html body .topbar .container.nav > .brand .brand-logo{
    width:142px !important;
    max-width:142px !important;
    height:auto !important;
  }

  /* En paysage tablette, on masque le hamburger. */
  html body .topbar .container.nav > .menu-toggle{
    display:none !important;
  }

  /*
    Le menu devient une bande horizontale défilable.
    Les anciennes règles du menu mobile (position:absolute,
    display:none, etc.) sont neutralisées uniquement ici.
  */
  html body .topbar .container.nav > nav.menu{
    position:static !important;
    inset:auto !important;
    left:auto !important;
    right:auto !important;
    top:auto !important;

    display:flex !important;
    flex:1 1 auto !important;
    flex-direction:row !important;
    align-items:center !important;
    justify-content:flex-start !important;
    flex-wrap:nowrap !important;

    min-width:0 !important;
    width:auto !important;
    max-width:none !important;

    margin:0 !important;
    padding:0 4px !important;
    gap:18px !important;

    background:transparent !important;
    box-shadow:none !important;

    white-space:nowrap !important;
    overflow-x:auto !important;
    overflow-y:hidden !important;

    -webkit-overflow-scrolling:touch !important;
    overscroll-behavior-x:contain !important;
    scrollbar-width:none !important;
    touch-action:pan-x !important;
  }

  html body .topbar .container.nav > nav.menu::-webkit-scrollbar{
    display:none !important;
    width:0 !important;
    height:0 !important;
  }

  html body .topbar .container.nav > nav.menu > a{
    display:block !important;
    flex:0 0 auto !important;
    width:auto !important;
    min-width:max-content !important;

    margin:0 !important;
    padding:29px 0 17px !important;

    font-size:14px !important;
    line-height:1.1 !important;
    white-space:nowrap !important;
  }

  /* L'état actif garde son soulignement vert. */
  html body .topbar .container.nav > nav.menu > a.active{
    border-bottom:3px solid #79B82A !important;
  }

  /* Bouton à droite, compact pour garder un maximum de place au menu. */
  html body .topbar .container.nav > a.nav-cta{
    display:inline-flex !important;
    flex:0 0 auto !important;
    width:auto !important;
    min-width:max-content !important;
    margin:0 0 0 4px !important;
    padding:11px 15px !important;
    font-size:13px !important;
    white-space:nowrap !important;
  }

  /*
    V92 peut avoir ajouté un deuxième "Nous rejoindre"
    à l'intérieur du menu mobile. En paysage on le masque,
    puisque le vrai bouton de droite est visible.
  */
  html body .topbar nav.menu .mobile-join-link,
  html body .topbar nav.menu [data-mobile-join="true"]{
    display:none !important;
  }
}

/* ===== FIN MENU IPAD PAYSAGE HORIZONTAL V98 ===== */

/* ===== SUPPRIMER PETIT TRAIT MENU IPAD V99 ===== */

/*
  Tablette en mode paysage uniquement :
  on retire le PETIT trait sous le lien actif du menu.
  Le grand trait horizontal du header reste en place.
*/
@media (min-width:768px) and (max-width:1100px) and (orientation:landscape){

  html body .topbar .container.nav > nav.menu > a.active{
    border-bottom:0 !important;
    box-shadow:none !important;
    text-decoration:none !important;
  }

}

/* ===== FIN SUPPRIMER PETIT TRAIT MENU IPAD V99 ===== */


/* ===== TITRES PAGES IPHONE V100 ===== */
@media (max-width:600px){
 html body .page-intro h1,
 html body .banner-hero h1,
 html body .welcome-hero h1,
 html body .about-hero h1,
 html body .contact-hero h1,
 html body .faq-hero h1,
 html body .profile-hero h1,
 html body .cookies-hero h1,
 html body main > .container > h1,
 html body main .page-title,
 html body .page-hero h1,
 html body .page-header h1,
 html body .hero-page h1{
   font-size:34px !important;
   line-height:1.06 !important;
   letter-spacing:-0.5px !important;
 }
}
@media (max-width:390px){
 html body .page-intro h1,
 html body .banner-hero h1,
 html body .welcome-hero h1,
 html body .about-hero h1,
 html body .contact-hero h1,
 html body .faq-hero h1,
 html body .profile-hero h1,
 html body .cookies-hero h1,
 html body main > .container > h1,
 html body main .page-title,
 html body .page-hero h1,
 html body .page-header h1,
 html body .hero-page h1{
   font-size:32px !important;
 }
}
/* ===== FIN TITRES PAGES IPHONE V100 ===== */

/* ===== ACCUEIL IPHONE TITRE + TELEPHONES V101 ===== */

/*
  iPhone uniquement :
  1) titre principal moins haut pour faire remonter le reste du hero ;
  2) les 5 captures de l'application ont exactement le même cadre ;
  3) les captures restent entières : aucune n'est grossie/coupée.
  Tablette et ordinateur : inchangés.
*/
@media (max-width:600px){

  html body .home-hero .hero-copy h1{
    font-size:37px !important;
    line-height:1.06 !important;
    letter-spacing:-0.35px !important;
  }

  html body .home-hero .hero-copy h1 .hero-line{
    display:block !important;
    white-space:normal !important;
    transform:none !important;
    margin-top:0 !important;
    margin-bottom:2px !important;
  }

  html body .app-showcase{
    grid-template-columns:1fr !important;
    gap:38px !important;
  }

  html body .app-showcase .app-card-uniform{
    display:grid !important;
    grid-template-rows:auto auto 330px !important;
    justify-items:center !important;
    align-items:start !important;
    width:100% !important;
    min-width:0 !important;
    text-align:center !important;
  }

  html body .app-showcase .app-card-uniform > b,
  html body .app-showcase .app-card-uniform > p{
    width:min(290px, 88vw) !important;
    max-width:100% !important;
  }

  html body .app-showcase .app-shot-uniform{
    position:relative !important;
    width:240px !important;
    max-width:72vw !important;
    height:330px !important;
    min-height:330px !important;
    overflow:hidden !important;
    margin:12px auto 0 !important;
    padding:0 !important;
  }

  html body .app-showcase .app-shot-uniform > img{
    position:static !important;
    inset:auto !important;
    display:block !important;
    width:100% !important;
    height:100% !important;
    max-width:100% !important;
    max-height:100% !important;
    margin:0 auto !important;
    padding:0 !important;
    object-fit:contain !important;
    object-position:center top !important;
    transform:none !important;
    translate:none !important;
    scale:none !important;
  }
}

@media (max-width:390px){
  html body .home-hero .hero-copy h1{
    font-size:35px !important;
  }

  html body .app-showcase .app-shot-uniform{
    width:225px !important;
    max-width:70vw !important;
    height:310px !important;
    min-height:310px !important;
  }

  html body .app-showcase .app-card-uniform{
    grid-template-rows:auto auto 310px !important;
  }
}

/* ===== FIN ACCUEIL IPHONE TITRE + TELEPHONES V101 ===== */


/* === V109 : vrai cadre image À propos === */

/*
  La grille reste strictement la même.
  Le wrapper remplace simplement l'image comme 2e cellule de la grille.
  C'est lui qui devient le vrai cadre photo.
*/
.about-grid > .about-image-frame-v109 {
    position: relative !important;
    overflow: hidden !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 320px !important;
    align-self: stretch !important;
    justify-self: stretch !important;
}

/*
  On reporte sur l'image les dimensions qu'elle avait avant le wrapper.
  Centre image = centre du vrai cadre.
*/
.about-grid > .about-image-frame-v109 > img {
    display: block !important;
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    max-width: none !important;
    object-fit: cover !important;
    object-position: center center !important;
    transform-origin: center center !important;
    margin: 0 !important;
}

/*
  Le fondu historique de la page À propos était appliqué à l'image directe.
  Maintenant il est appliqué au vrai cadre, donc le rendu visuel reste identique.
*/
@media (min-width:1001px) {
    .about-grid > .about-image-frame-v109 {
        -webkit-mask-image: linear-gradient(
            to right,
            transparent 0%,
            rgba(0,0,0,.25) 10%,
            #000 27%,
            #000 100%
        );
        mask-image: linear-gradient(
            to right,
            transparent 0%,
            rgba(0,0,0,.25) 10%,
            #000 27%,
            #000 100%
        );
        margin-left: -34px !important;
        width: calc(100% + 34px) !important;
    }

    .about-grid > .about-image-frame-v109 > img {
        -webkit-mask-image: none !important;
        mask-image: none !important;
        margin-left: 0 !important;
        width: 100% !important;
    }
}

@media (max-width:1000px) {
    .about-grid > .about-image-frame-v109 {
        margin-left: 0 !important;
        width: 100% !important;
        -webkit-mask-image: none !important;
        mask-image: none !important;
    }
}

/* === FIN V109 === */\n\n\n

/* ===== FAQ ANCRAGE DROITE V120 ===== */

/*
  Le cadre reste à 100% de sa colonne FAQ.
  On ne le met surtout pas en justify-self:end,
  car son enfant image est en position:absolute et le cadre
  peut alors se retrouver sans largeur visible.
*/
html body .faq-hero-photo.faq-admin-image-frame,
html body .faq-hero-photo.faq-hero-photo-editable,
html body .faq-hero-photo{
    width:100% !important;
    min-width:0 !important;
    justify-self:stretch !important;
    margin-left:0 !important;
    margin-right:0 !important;
    overflow:hidden !important;
}

/* La référence visuelle de la photo reste le bord droit. */
html body .faq-hero-photo.faq-admin-image-frame > img,
html body .faq-hero-photo.faq-hero-photo-editable > img,
html body .faq-hero-photo > img{
    object-position:right center !important;
    margin:0 !important;
}

/* ===== FIN FAQ ANCRAGE DROITE V120 ===== */

/* ===== CONTRIBUER NUMEROS MOBILE TABLETTE V121 ===== */

/*
  Cible UNIQUEMENT tablette + téléphone.
  Le grand écran (>1200px) reste strictement inchangé.
*/
@media (max-width:1200px){

  html body .contrib-steps,
  html body .contrib-steps > div{
      overflow:visible !important;
  }

  html body .contrib-steps > div{
      position:relative !important;
  }

  html body .contrib-steps > div > .step-number{
      display:grid !important;
      visibility:visible !important;
      opacity:1 !important;
      position:absolute !important;
      top:-18px !important;
      left:50% !important;
      transform:translateX(-50%) !important;
      width:36px !important;
      height:36px !important;
      min-width:36px !important;
      min-height:36px !important;
      border-radius:50% !important;
      place-items:center !important;
      z-index:20 !important;
  }

  html body .contrib-steps > div > i{
      position:static !important;
      display:grid !important;
      visibility:visible !important;
      opacity:1 !important;
      margin-top:4px !important;
      z-index:auto !important;
  }
}

/* ===== FIN CONTRIBUER NUMEROS MOBILE TABLETTE V121 ===== */

/* ===== CONTRIBUER NUMERO ICONE SEPARES V123 ===== */

/* UNIQUEMENT tablette + téléphone */
@media (max-width:1200px){

  /* Chaque carte devient une vraie colonne centrée. */
  html body .contrib-steps > div{
      position:relative !important;
      display:flex !important;
      flex-direction:column !important;
      align-items:center !important;
      text-align:center !important;
      overflow:visible !important;
      padding-top:34px !important;
  }

  /* Numéro : seul rond vert foncé au-dessus de la carte. */
  html body .contrib-steps > div > .step-number{
      position:absolute !important;
      top:-18px !important;
      left:50% !important;
      transform:translateX(-50%) !important;
      width:36px !important;
      height:36px !important;
      min-width:36px !important;
      min-height:36px !important;
      margin:0 !important;
      border-radius:50% !important;
      background:#075a34 !important;
      color:#fff !important;
      display:grid !important;
      place-items:center !important;
      visibility:visible !important;
      opacity:1 !important;
      z-index:20 !important;
  }

  /* Icône : rond vert clair séparé, DANS la carte, sous le numéro. */
  html body .contrib-steps > div > i{
      position:static !important;
      transform:none !important;
      width:68px !important;
      height:68px !important;
      min-width:68px !important;
      min-height:68px !important;
      margin:0 auto 14px !important;
      padding:0 !important;
      border-radius:50% !important;
      background:#eef3d9 !important;
      color:#2F6B3A !important;
      display:grid !important;
      place-items:center !important;
      visibility:visible !important;
      opacity:1 !important;
      z-index:auto !important;
  }

  /* Le pictogramme lui-même reste centré dans le rond clair. */
  html body .contrib-steps > div > i .ui-icon{
      position:static !important;
      transform:none !important;
      margin:0 !important;
      padding:0 !important;
      width:auto !important;
      height:auto !important;
      background:none !important;
      color:#2F6B3A !important;
  }

  html body .contrib-steps > div > i .cueilleo-icon{
      width:34px !important;
      height:34px !important;
      color:#2F6B3A !important;
      stroke:#2F6B3A !important;
  }
}

/* ===== FIN CONTRIBUER NUMERO ICONE SEPARES V123 ===== */

/* ===== A PROPOS CONTACT MOBILE TABLETTE V124 ===== */

/*
  UNIQUEMENT tablette + téléphone :
  - le texte garde sa place ;
  - le bouton "Nous contacter" passe en bas, centré ;
  - on ajoute de l'espace vertical pour éviter tout chevauchement.
*/
@media (max-width:1200px){

  html body .about-question-strip{
      display:grid !important;
      grid-template-columns:auto minmax(0,1fr) !important;
      grid-template-rows:auto auto !important;
      align-items:center !important;
      column-gap:14px !important;
      row-gap:18px !important;
      min-height:150px !important;
      padding:22px 24px 26px !important;
      overflow:visible !important;
  }

  html body .about-question-strip .icon-shell{
      grid-column:1 !important;
      grid-row:1 !important;
      align-self:start !important;
      margin:0 !important;
  }

  html body .about-question-strip > b{
      grid-column:2 !important;
      grid-row:1 !important;
      margin:0 !important;
      min-width:0 !important;
      line-height:1.45 !important;
  }

  html body .about-question-strip > a.btn,
  html body .about-question-strip .btn{
      grid-column:1 / -1 !important;
      grid-row:2 !important;
      justify-self:center !important;
      align-self:end !important;
      margin:0 auto !important;
      width:auto !important;
      min-width:220px !important;
      max-width:90% !important;
      position:static !important;
      transform:none !important;
  }
}

/* iPhone / petit écran : encore un peu plus d'air autour du texte. */
@media (max-width:760px){

  html body .about-question-strip{
      min-height:180px !important;
      padding:24px 18px 30px !important;
      row-gap:20px !important;
  }

  html body .about-question-strip > b{
      font-size:16px !important;
      line-height:1.45 !important;
  }

  html body .about-question-strip > a.btn,
  html body .about-question-strip .btn{
      min-width:240px !important;
      max-width:100% !important;
  }
}

/* ===== FIN A PROPOS CONTACT MOBILE TABLETTE V124 ===== */

/* ===== FAQ PHOTO MOBILE TABLETTE V125 ===== */

/*
  UNIQUEMENT iPad + iPhone.
  La photo FAQ retrouve un vrai cadre large 8:3 au lieu d'être
  comprimée par les anciennes hauteurs de grille.
*/
@media (max-width:1200px){

  html body .faq-hero-grid{
      display:grid !important;
      grid-template-columns:1fr !important;
      grid-template-rows:auto auto auto !important;
      height:auto !important;
      min-height:0 !important;
      overflow:visible !important;
  }

  html body .faq-hero-copy{
      grid-column:1 !important;
      grid-row:1 !important;
  }

  html body .faq-hero-photo,
  html body .faq-hero-photo.faq-hero-photo-editable,
  html body .faq-hero-photo.faq-admin-image-frame{
      grid-column:1 !important;
      grid-row:2 !important;
      position:relative !important;
      width:100% !important;
      height:auto !important;
      min-height:0 !important;
      aspect-ratio:8 / 3 !important;
      overflow:hidden !important;
      margin:0 !important;
      padding:0 !important;
      justify-self:stretch !important;
  }

  html body .faq-hero-photo > img,
  html body .faq-hero-photo.faq-hero-photo-editable > img,
  html body .faq-hero-photo.faq-admin-image-frame > img{
      position:absolute !important;
      inset:0 !important;
      width:100% !important;
      height:100% !important;
      min-height:0 !important;
      max-width:none !important;
      object-fit:cover !important;
      object-position:right center !important;
      margin:0 !important;
      transform:none !important;
  }

  html body .faq-search-wrap{
      grid-column:1 !important;
      grid-row:3 !important;
      margin:28px auto 0 !important;
  }
}

/* iPhone : le même ratio, avec largeur complète du cadre disponible. */
@media (max-width:760px){
  html body .faq-hero-photo,
  html body .faq-hero-photo.faq-hero-photo-editable,
  html body .faq-hero-photo.faq-admin-image-frame{
      aspect-ratio:8 / 3 !important;
      width:100% !important;
  }
}

/* ===== FIN FAQ PHOTO MOBILE TABLETTE V125 ===== */

/* ===== FAQ AIDE CONTACT CENTRE MOBILE TABLETTE V126 ===== */

/*
  UNIQUEMENT iPhone + iPad :
  le bouton "Nous contacter" passe sous les 3 avantages,
  centré, sans masquer le texte.
*/
@media (max-width:1200px){

  html body .faq-help-contact-v72{
      display:grid !important;
      grid-template-columns:1fr !important;
      grid-template-rows:auto auto auto !important;
      row-gap:20px !important;
      padding-bottom:28px !important;
      min-height:0 !important;
      overflow:visible !important;
  }

  html body .faq-help-contact-v72 .contact-faq-visual{
      grid-column:1 !important;
      grid-row:1 !important;
      width:100% !important;
  }

  html body .faq-help-contact-v72 .contact-faq-copy{
      grid-column:1 !important;
      grid-row:2 !important;
      width:100% !important;
      padding:24px 24px 0 !important;
      box-sizing:border-box !important;
  }

  html body .faq-help-contact-v72 .contact-faq-actions{
      grid-column:1 !important;
      grid-row:3 !important;
      width:100% !important;
      display:flex !important;
      flex-direction:column !important;
      align-items:center !important;
      justify-content:center !important;
      gap:14px !important;
      padding:0 24px !important;
      box-sizing:border-box !important;
      position:static !important;
      transform:none !important;
  }

  html body .faq-help-contact-v72 .contact-faq-actions .btn{
      width:auto !important;
      min-width:280px !important;
      max-width:90% !important;
      margin:0 auto !important;
      justify-content:center !important;
      position:static !important;
      transform:none !important;
  }

  html body .faq-help-contact-v72 .faq-centre-aide-v72{
      width:100% !important;
      justify-content:center !important;
      text-align:center !important;
      margin:0 auto !important;
  }
}

/* iPhone : bouton large mais sans coller aux bords. */
@media (max-width:760px){

  html body .faq-help-contact-v72 .contact-faq-copy{
      padding:22px 20px 0 !important;
  }

  html body .faq-help-contact-v72 .contact-faq-actions{
      padding:0 20px !important;
  }

  html body .faq-help-contact-v72 .contact-faq-actions .btn{
      width:100% !important;
      min-width:0 !important;
      max-width:340px !important;
  }
}

/* ===== FIN FAQ AIDE CONTACT CENTRE MOBILE TABLETTE V126 ===== */

/* ===== CONTACT ESPACE ICONE TEXTE MOBILE TABLETTE V127 ===== */

/*
  UNIQUEMENT iPhone + iPad.
  On augmente seulement l'espace horizontal entre
  les 3 icônes et leurs textes dans le hero Contact.
  Aucun autre élément n'est modifié.
*/
@media (max-width:1200px){

  html body .contact-promises.contact-promises-v6 > span{
      display:flex !important;
      align-items:center !important;
      column-gap:22px !important;
  }

  html body .contact-promises.contact-promises-v6 > span > .icon-shell{
      flex:0 0 auto !important;
  }
}

/* ===== FIN CONTACT ESPACE ICONE TEXTE MOBILE TABLETTE V127 ===== */

/* ===== CONTACT RESPONSIVE PROPRE V128 ===== */

/*
  UNIQUEMENT iPad + iPhone.
  1) Le haut de Contact reste complet : titre, trait, texte, 3 avantages, puis photo.
  2) Le bloc "Par e-mail" devient lisible sur petit écran.
*/
@media (max-width:1200px){

  /* HERO CONTACT : aucun contenu ne doit être coupé. */
  html body .contact-hero{
      overflow:visible !important;
  }

  html body .contact-grid{
      display:grid !important;
      grid-template-columns:1fr !important;
      grid-template-rows:auto auto !important;
      height:auto !important;
      min-height:0 !important;
      overflow:visible !important;
      align-items:start !important;
  }

  html body .contact-grid > div{
      grid-column:1 !important;
      grid-row:1 !important;
      display:flex !important;
      flex-direction:column !important;
      justify-content:flex-start !important;
      width:100% !important;
      height:auto !important;
      min-height:0 !important;
      overflow:visible !important;
      padding:34px 24px 28px !important;
      box-sizing:border-box !important;
  }

  html body .contact-grid > div > h1,
  html body .contact-grid > div > .green-rule,
  html body .contact-grid > div > p,
  html body .contact-grid .contact-promises-v6{
      display:flex !important;
      visibility:visible !important;
      opacity:1 !important;
      position:static !important;
      height:auto !important;
      max-height:none !important;
      overflow:visible !important;
  }

  html body .contact-grid > div > h1{
      display:block !important;
  }

  html body .contact-grid > div > .green-rule{
      display:block !important;
  }

  html body .contact-grid > div > p{
      display:block !important;
      margin-bottom:20px !important;
  }

  html body .contact-grid .contact-promises-v6{
      flex-wrap:wrap !important;
      gap:18px 26px !important;
      margin-top:6px !important;
  }

  html body .contact-grid > img{
      grid-column:1 !important;
      grid-row:2 !important;
      position:static !important;
      width:100% !important;
      height:auto !important;
      min-height:0 !important;
      aspect-ratio:9 / 4 !important;
      object-fit:cover !important;
      object-position:right center !important;
      margin:0 !important;
      transform:none !important;
  }

  /* La zone formulaire / e-mail passe sur une seule colonne. */
  html body .contact-v6-grid{
      display:grid !important;
      grid-template-columns:1fr !important;
      gap:24px !important;
  }

  /* Carte Par e-mail : les 3 garanties restent propres. */
  html body .contact-card-v6{
      width:100% !important;
      height:auto !important;
      min-height:0 !important;
      overflow:visible !important;
  }

  html body .contact-reassurance{
      width:100% !important;
      display:grid !important;
      grid-template-columns:repeat(3,minmax(0,1fr)) !important;
      gap:18px !important;
      align-items:start !important;
  }

  html body .contact-reassurance > div{
      display:grid !important;
      grid-template-columns:1fr !important;
      justify-items:center !important;
      text-align:center !important;
      row-gap:8px !important;
      min-width:0 !important;
  }

  html body .contact-reassurance > div > b,
  html body .contact-reassurance > div > small{
      display:block !important;
      width:100% !important;
      margin:0 !important;
      line-height:1.4 !important;
  }
}

/* iPhone : une garantie par ligne, avec vrai espace entre icône et texte. */
@media (max-width:760px){

  html body .contact-grid > div{
      padding:32px 22px 26px !important;
  }

  html body .contact-grid .contact-promises-v6{
      display:grid !important;
      grid-template-columns:1fr !important;
      gap:18px !important;
      width:100% !important;
  }

  html body .contact-reassurance{
      grid-template-columns:1fr !important;
      gap:18px !important;
  }

  html body .contact-reassurance > div{
      grid-template-columns:72px minmax(0,1fr) !important;
      grid-template-rows:auto auto !important;
      column-gap:18px !important;
      row-gap:4px !important;
      align-items:center !important;
      justify-items:start !important;
      text-align:left !important;
      padding:4px 0 !important;
  }

  html body .contact-reassurance > div > .icon-shell{
      grid-column:1 !important;
      grid-row:1 / 3 !important;
      margin:0 !important;
  }

  html body .contact-reassurance > div > b{
      grid-column:2 !important;
      grid-row:1 !important;
      margin:0 !important;
  }

  html body .contact-reassurance > div > small{
      grid-column:2 !important;
      grid-row:2 !important;
      margin:0 !important;
  }
}

/* ===== FIN CONTACT RESPONSIVE PROPRE V128 ===== */

/* ===== FAQ RECHERCHE LARGEUR MOBILE TABLETTE V132 ===== */

/* UNIQUEMENT iPad + téléphone */
@media (max-width:1200px){

  html body .faq-search-wrap{
      width:100% !important;
      max-width:none !important;
      margin:24px 0 0 !important;
      padding:0 24px !important;
      box-sizing:border-box !important;
      justify-self:stretch !important;
  }

  html body .faq-search-wrap .faq-search{
      width:100% !important;
      max-width:none !important;
      box-sizing:border-box !important;
  }
}

/* iPhone : marges latérales un peu plus petites */
@media (max-width:760px){

  html body .faq-search-wrap{
      padding:0 18px !important;
  }
}

/* ===== FIN FAQ RECHERCHE LARGEUR MOBILE TABLETTE V132 ===== */

/* ===== FAQ RECHERCHE ET CATEGORIES MOBILE TABLETTE V133 ===== */

/*
  iPhone + iPad uniquement :
  - barre de recherche sur toute la largeur utile ;
  - catégories plus aérées ;
  - icône, titre et descriptif bien séparés.
*/
@media (max-width:1200px){

  html body .faq-hero-grid .faq-search-wrap,
  html body .faq-search-wrap{
      grid-column:1 / -1 !important;
      width:100% !important;
      max-width:none !important;
      min-width:0 !important;
      justify-self:stretch !important;
      margin:24px 0 0 !important;
      padding:0 22px !important;
      box-sizing:border-box !important;
  }

  html body .faq-hero-grid .faq-search-wrap .faq-search,
  html body .faq-search-wrap .faq-search{
      display:block !important;
      width:100% !important;
      max-width:none !important;
      min-width:0 !important;
      margin:0 !important;
      box-sizing:border-box !important;
  }

  html body .faq-categories-v6,
  html body .faq-categories{
      display:grid !important;
      grid-template-columns:repeat(3,minmax(0,1fr)) !important;
      gap:18px !important;
      width:100% !important;
      align-items:stretch !important;
  }

  html body .faq-categories-v6 > span,
  html body .faq-categories > span{
      display:flex !important;
      flex-direction:column !important;
      align-items:center !important;
      justify-content:flex-start !important;
      text-align:center !important;
      gap:10px !important;
      min-height:155px !important;
      padding:20px 14px !important;
      box-sizing:border-box !important;
  }

  html body .faq-categories-v6 > span .icon-shell,
  html body .faq-categories > span .icon-shell{
      width:58px !important;
      height:58px !important;
      min-width:58px !important;
      min-height:58px !important;
      margin:0 0 4px !important;
      flex:0 0 auto !important;
  }

  html body .faq-categories-v6 > span b,
  html body .faq-categories > span b{
      display:block !important;
      margin:0 !important;
      line-height:1.25 !important;
  }

  html body .faq-categories-v6 > span small,
  html body .faq-categories > span small{
      display:block !important;
      margin:0 !important;
      line-height:1.45 !important;
      max-width:180px !important;
  }
}

/* Téléphone : pleine largeur + 2 catégories par ligne */
@media (max-width:760px){

  html body .faq-hero-grid .faq-search-wrap,
  html body .faq-search-wrap{
      padding:0 18px !important;
  }

  html body .faq-categories-v6,
  html body .faq-categories{
      grid-template-columns:repeat(2,minmax(0,1fr)) !important;
      gap:14px !important;
  }

  html body .faq-categories-v6 > span,
  html body .faq-categories > span{
      min-height:170px !important;
      padding:18px 12px !important;
      gap:9px !important;
  }
}

/* ===== FIN FAQ RECHERCHE ET CATEGORIES MOBILE TABLETTE V133 ===== */


/* ===== BLOQUER DEFILEMENT HORIZONTAL TELEPHONE V139 ===== */
/*
  Téléphone uniquement :
  - aucun déplacement horizontal de la page ;
  - défilement vertical normal ;
  - les images peuvent toujours être recadrées à l'intérieur de leurs cadres.
*/
@media (max-width:760px){
  html,
  body{
    width:100% !important;
    max-width:100% !important;
    overflow-x:hidden !important;
  }

  body{
    position:relative !important;
  }

  main,
  header,
  footer,
  .topbar,
  .container{
    max-width:100% !important;
    box-sizing:border-box !important;
  }
}
/* ===== FIN BLOQUER DEFILEMENT HORIZONTAL TELEPHONE V139 ===== */

/* ===== ADMIN OFF V142 DEBUT ===== */
/* Interface d'administration masquée. Le site public reste inchangé. */
#admin-badge,
.admin-badge,
#admin-image-button,
.admin-image-button,
.admin-images-button,
#admin-text-button,
.admin-text-button,
.admin-texts-button,
[data-admin-button],
[data-admin-toggle],
.admin-toolbar,
.admin-panel,
.admin-controls {
  display:none !important;
  visibility:hidden !important;
  pointer-events:none !important;
}
/* ===== ADMIN OFF V142 FIN ===== */

/* ===== ADMIN OFF DEFINITIF V143 DEBUT ===== */
html body #cueilleoAdminEntry,
html body .cueilleo-admin-launcher,
html body .cueilleo-admin-login,
html body .cueilleo-image-editor,
html body .cueilleo-admin-toast,
html body .faq-text-editor-btn,
html body .cueilleo-text-editor-btn,
html body [class*="admin-launcher"],
html body [class*="admin-entry"],
html body [class*="admin-toolbar"]{
    display:none !important;
    visibility:hidden !important;
    opacity:0 !important;
    pointer-events:none !important;
}
/* ===== ADMIN OFF DEFINITIF V143 FIN ===== */

/* ═══════════════════════════════════════════════════════════════════════
   LES COLLINES SUR LE SITE (09/09, sa demande) — DÉBUT
   « en bas de toutes les pages du site tu me mets la vague aussi, il faut
   que le vert du bas soit le même que le vert de la vague pour qu'on voie
   une continuité ». Puis, sur mon premier jet : « non ce n'est pas la même,
   il faut que tu fasses exactement ».

   ⚠️ IL AVAIT RAISON, ET J'AVAIS RETOUCHÉ SON IMAGE. Pour obtenir un raccord
      propre, j'avais ramené la base de la vague à une teinte unique par un
      fondu. Ça marchait, mais ce n'était plus son dessin : ses deux verts
      s'éteignaient sur le dernier tiers. C'est la même faute qu'avec les
      bosses de ce matin — quand j'ai l'original, je ne l'arrange pas.

   ⚠️ SON IMAGE EST DONC POSÉE TELLE QUELLE, au pixel. Et c'est LE PIED DE
      PAGE qui vient se caler dessus : son fond n'est plus une couleur, mais
      un dégradé horizontal dont les quarante-et-une teintes sont relevées
      une à une sur la DERNIÈRE LIGNE de la vague — #023727 à gauche,
      #084a2f au centre, #033f2b à droite. La continuité est exacte sur toute
      la largeur, et les deux verts descendent jusqu'en bas de la page.

   ⚠️ UNE SEULE RÈGLE POUR LES DIX-NEUF PAGES : le pied est stylé dans cette
      feuille commune. Une page ajoutée demain aura la vague sans qu'on y
      pense.

   ⚠️ ELLE NE RECOUVRE RIEN. La couche est en position absolue AU-DESSUS du
      pied, et le pied recule d'autant par une marge haute : la vague occupe
      une place vide qu'on lui a faite, elle ne passe pas par-dessus le
      contenu.

   ⚠️ SA HAUTEUR SUIT LA LARGEUR DE L'ÉCRAN — de 56 à 130 px. Une hauteur
      fixe donnerait une vague écrasée sur téléphone et timide sur grand
      écran ; la proportion, elle, reste la même partout.

   ⚠️ L'IMAGE EST INCRUSTÉE, en WebP, 23 Ko. Rien à déposer sur le serveur,
      rien qui puisse manquer le jour d'une mise en ligne.
   ═══════════════════════════════════════════════════════════════════════ */
/* ⚠️ 09/09 : LA HAUTEUR EST LE TOUT. Il a vu tout de suite que ce n'était pas
   la même vague, et il avait raison — mais le dessin n'y était pour rien.
   Je l'avais réglée à 56 px sur téléphone, contre 165 px dans l'application :
   la MÊME image écrasée trois fois en hauteur. Les crêtes s'aplatissent, les
   deux verts se collent, et on ne reconnaît plus rien.
   ⚠️ ELLE REPREND SES PROPORTIONS. L'image fait 1200 sur 545, soit 45,4 % de
   sa largeur ; 46vw les rend presque exactement — 179 px sur un téléphone de
   390, contre 164 px dans l'application. Les deux se ressemblent enfin.
   ⚠️ LES BORNES SONT LÀ POUR LES EXTRÊMES : 120 px au minimum sur un écran
   très étroit, 280 px au maximum sur grand écran, où 46 % de la largeur
   donnerait une vague plus haute que le pied de page lui-même. */
:root{ --vague-hauteur: clamp(120px, 46vw, 280px); }

/* ⚠️ 09/09 : LE PIED REMONTE SOUS LA VAGUE. Son relevé : « il y a trop
   d'espace entre la vague et le logo ». Le pied portait 42 px de remplissage
   haut — 48 px sur téléphone — hérités du temps où il commençait sur un bord
   net, à même le crème de la page. Il fallait alors respirer.
   ⚠️ CE N'EST PLUS LE CAS : la vague apporte déjà sa propre bande de vert
   plein sous son creux. Les deux réserves s'additionnaient, et le logo se
   retrouvait très bas. Le remplissage descend donc à 10 px ; la respiration
   est maintenant DANS la vague.
   ⚠️ ELLE PASSE PAR UNE VARIABLE pour se régler d'un seul chiffre, sans
   rouvrir la règle. */
/* ⚠️ 09/09, deuxième passe : « tu peux encore réduire de la moitié ».
   Le remplissage était déjà à 10 px — il ne restait presque rien à prendre de
   ce côté. Les cent vingt pixels qui subsistaient venaient de LA VAGUE
   ELLE-MÊME : sous son creux, son image porte une bande de vert plein, et
   c'est elle qui écartait le logo.
   ⚠️ ON NE ROGNE PAS LA VAGUE POUR AUTANT — ce serait retoucher son dessin,
   la faute déjà commise deux fois aujourd'hui. C'est le CONTENU du pied qui
   remonte s'asseoir sur cette bande, par une marge négative.
   ⚠️ VÉRIFIÉ AVANT DE POSER : à cette hauteur, le vert est plein sur TOUTE la
   largeur — le creux est à 73 px du haut de la couche, on remonte de 62 px
   depuis le bas d'une couche de 179. Aucun texte ne peut se retrouver sur le
   crème de la page.
   ⚠️ LE CONTENU PASSE AU-DESSUS DE LA VAGUE, pas dessous : la couche est un
   ::before, peinte avant les enfants du pied. Rien n'est masqué. */
:root{ --pied-haut: 10px; --pied-remonte: 62px; }

.footer{
  position:relative;
  margin-top:var(--vague-hauteur);
  padding-top:var(--pied-haut) !important;
  background:linear-gradient(to right, #023727 0.00%, #023928 2.50%, #033a28 5.00%, #013b28 7.50%, #023c29 10.00%, #013b28 12.50%, #023e2a 15.00%, #033f2b 17.50%, #034029 20.00%, #033f2b 22.50%, #04432d 25.00%, #03412c 27.50%, #04432b 30.00%, #04432d 32.50%, #04432b 35.00%, #05442d 37.50%, #03452d 40.00%, #05462e 42.50%, #06472f 45.00%, #07492e 47.50%, #084a2f 50.00%, #084a2f 52.50%, #0a4c32 55.00%, #0a4d30 57.50%, #0b5032 60.00%, #0c4e31 62.50%, #0d4f32 65.00%, #0c4d33 67.50%, #0a4d30 70.00%, #0c4e31 72.50%, #0a4c32 75.00%, #0a4c32 77.50%, #094b30 80.00%, #094b30 82.50%, #09482e 85.00%, #09482e 87.50%, #07462f 90.00%, #05442d 92.50%, #04412c 95.00%, #033f2b 97.50%, #033f2b 100.00%) !important;
}
.footer > .container{
  margin-top:calc(-1 * var(--pied-remonte));
  position:relative;
}
.footer::before{
  content:"";
  position:absolute;
  left:0; right:0; bottom:100%;
  height:var(--vague-hauteur);
  background:url("data:image/webp;base64,UklGRjBYAABXRUJQVlA4WAoAAAAQAAAArwQAIAIAQUxQSJ8vAAABHMZtGzmy1H/Xm9PdNyImIJ8UkgCsoK1ARam2BOymaZVOH565HSnn/XMlR5Ik2cqEBP9/zujBEYk2mTihDmekQADe2t3z9lq63suIgAXZatvqWLKJyquWLGOEU/7s4f+/yGm0s4IHCRbcnbZ3pd4e1BWp4VB3d1yqtKnbtXC4Q91b3D24uya4NMnOz2a+z7Pz/f1GdnZnufSPiIAEAEgQB/PmzDxraYgI2H6eBbCNbNuSpNn7KP81/zIf+qf4N/QN+LpjJoEASNvH24iQRdtq3Thn5EecTIokQEiWnbT9W8rVIv+R/8h/5D/yH/mP/Ef+I/+pwLBQrGK7HDvMQhWLVYE29RDK1SL/eQ2A/GdR//6zqpW3v4rFIaFQnZp03v6qFUkciXGP/fB8KVMPCkG1Kl2xKFc2quJ6AuhzvOqeekW9CssReF3lSQvGK8rU0+3rHWoVJzsWulwGS41iEI9fLOchXMJhk+G5nNTcloVAweBhb/mV2wIhTOu+9rAE5emrp7l2vxsEBG8z0Jetn36S2MRxD8riLVd3fkLXBiGTDV9C24IYhhLjdIubaH+tcCAEnVx+K8bWrLquqES+3XZJPXALyG1cCWgTo0FoJZePHbhoQjVxlMnNX9KnqNhtlylPmalPAP0BkfAMZoPGbcfJ+hC4EUKyh5GHWIrUTaoaKXrbVK8QAhexXOEHvcLPnciz7wib3oVLj/qc1PNNyCvz0yBSp7rV7oJmoWJo4PqiKnQvsKUCRS6c1Un43biTOQCBmu43BwbVYOUz7DHjzzcJEow8GuTOZuYdm5gI7ZKH7XhvTg4ivOOIbEpabeEbytXK3H1w6iY4Xga/NsnzxeH3iLcELnO77oEmokLczIX7b2ssyzAUiNVdcMmn8kXu1YjRPs8dNA0u+3PNpWD/rFJuujnWDp9unHVnWoqRE8q2JzwdX0atJCmCO2nelCbP4Sdem69SNHq5giDz6FRzlepT4Uiv7vFV8JEXqlV1nmb0PUhszz+c2sVwOGK5sOU0uwKFUYE07Z9DzWM0ErYtT7RM2XJly5SKRW0KpOEGM9FiFp26yvZRq1i71aU3dHv4+UHvj5zy4x8LV63flHAb8lYtm/fL5M/fePmJHte2rF0ppih0tRnnaWE5v9I1GrXr9MQ7k+fk7cg/S8GVix/ZunzuL6OGPdbliibZUVzqsHXoP1/2RSIaPvaSR96btnzncbl1NDijlBJCLceQo9gRy1EBcgFPbpr3zYdPXV+rlOJE/rECYdykhXM6PDtuWb6JWj1ToPaRMc6FY8exk8rHOC6wkb9gbL/ObSqiXdFo+kbwzicm1pMPeWErp8Yd35ifTyVEjjEhhCE8dxwhfQjPo2fXTRl4a8OYdUbRtP01WsryZ+OI7q99D74SQk8Wbnrv+4sPGQAgGOXCkJ1IgkOl5VTXqWElPTJ/RI/m1q5I2s0WywA5D8BRaNceuU+G2YoyK6dGd3y0MB8ATEYox01d8jZVWblFWyMcEq5gyXu354SsXZH02/P5v+PvtjvS0lC+la4a+lsBJBwhlMnkMdzUOdgMb7wywLmVjjLrtPbMePZfZa2IcAnQaJzNAu591rjzkw1xAIMSgmj5Ku8ADBsnF8VRWtvWFfdKqfU1hUtGtC9nEdFKfiLA5pSa94zZJQCYThyMOyJQZmE4cVKXUxlyuCnKwCgVAPrqYVckzlkryYloHlp8+nnhIzN3CABEKFNwSdj9MDxysne7YUeJACic++Klpay2Wsu8qD1kgSWqxSmtX51zGgAocczQZXjsXBTTnpCGszUA4svfutSaABkOPOV1E8gW1Zqj0/CpX08BGBalzDGt3rdO7uJyagLov3UtnwhENE1zkqfLtC9fuevUAgBBKPN3u+ge0ROcGQArH6sVCsViaR6a4dt8Qua4inR4exPqftrka6So45QC7P74ilCo1IO3oXRsJPjlE3ddg8fnEgBOuUjtkFCgeJwSgMKfbsgo6jX5cCpmuLYsct3YQwCCsqTHeMJaoTof4ZqGxhkRQH+0YpfOHjsub2jLqvScSwEI5f4m6Ht9QvK0bGrABIgLfuhBw5HEpW41bJ2wGLyEv0JOyi0MexCebIZgk+BZs51xADZXt1+x+4+nHHF4+QKLc/ehCnjiGj1H8lfijIfmShe+tRXApBbvvBC+A+EFiKAFMifZAQ7YouFQtMOkMwCMckeMqD4C9zIjSkjA/qhFQ6Eynf9iYBDmV8Z5z4RwpeKHhvSZRWUljeFIOILKEY1aOs7+HwsW7s2aFarQY7YJjPh2po8QnoHfPxypXfRA4jRqQzUt9TJPHYUaFlp5VX0yD8C/ExO9FnKaCmDpaIzKN1P52i2vvKlzz8deGvruJ1+PHj167PgJoz59u9+zj/W96+bLWtUur+AuiVpqzs6TYwyYZmafVOeVrWiyD3fhRWAAUieLSlCu/sW3P5s7c87KLQf+5oZpghPHTx3YsmrOlBFPdmrXKEsaCon6KCmTZnJiItTirb0AOuXcBYjUAcPnoElpq7Xo8sq4eduLpLbRUrERl11xPK4jF4/rRFJyZprFu+dPH9H36ibZ8l+rpE6hrEU1avPJMTCtkD2bl59+9Z83rnl/jnLNOw+dtv40R2gbJUQnCjWyli5G/AW4BKgQqGiEcgMAWPzk6qlv9rooOyZNP9CSG5410pWjjoNBEiGnjRXKznc5OhAsn4x+7rVSSrXo88mKE8JC1BJpKXOCxnIhc7vZILlIqSzR8aFwbves9x+8uobV0IXRLq2kLEUkFL55ZhEYOrMJpUd3lZT6d7656BhOSxl3pTxWCfYFYZwRwlDSwl0/9b++unVWsRKyPqnVdtz2FwNBmMVAH2CgWYTBUKP7vtln7aPWxPGkOVXDyShFCmX1LTOeujzLyjZW4hURToSu/Z4D0x3IfQgYCFsxde4evx8AFPuSuNkUm1HCAKBoxVc9G2Md2FrJVqj9tLjFlGqfPm2Cl6IOK976xV4AIIg06C+nUnQGBX8Muroy+ntqJVahKycUA4mz9O3Lo1Aivt2beQwfz7lwA8ZZalgHtglQuGnkQ401pB4yheQCJLrUYdK5RMiWc6J2/fHo8la792dr0jiah8ldcm5YQSo4COqSHvm2V+0U4gljIc2lq6bEgcYpYxJIjBLL4knejftvBhC6W1pZyDQ1qxXmjFik/+0juzez2q9UiIAsl1r/twiYTrnCC8MIGrDmjMcu/eSQpE3IB74E0so9UkIA4OBP/duVQxplfQ85Ll0y8jii7quPcqT1eXW0qBaq0Gd2USLEksbCz8sn6bkyZNBN4eIhF/tfbX+OS5eNOweCeKIUbHMSKbL6rgAwKLdv14QwkgKMRD1RsXZGA+Ds7BfaJELRSElOqN3Ec8AJEyLIIIFIZT2cB8CYsJ9r5OnPqmqdsew7V6SekQqAo9O75aCByhKaUKsvTgO36EhBBokWqULfVThvh2B4Bb0+J2SXknNGTYCtH15T2prCoJXAhD44gvJJeR+UT6cTm8r0WAJAmMPrKgwPczv6VWWxOTRfFyA++4l63hD9tXRisWIGSi1yC4DraYInNQZnlzfSZY4BceJcVpjnUIzcj8dCUGGYANg78vYKaTI5JOFs6os+zQdmcaWqY4IGNGti048c4nHm4uoKL6BZK/c9r05LMGICW/lC43Ro/ilJ6FfrmtEngRUTxrgqFASg2TN6tfiyGHRLII8bMAwPoJ/KgUgEGMChMbeUzbQpaNbC+TKPJfTx8J7YTPi6yYWJkMVDzxQ+eCBxfav2OwKUYM5bVx+G+7hyYrjiFeMo+dKXW/gyOU6QNWf/pxBbh3ra5xHoq6OeWazT7zpQnXGmDgcFqGPLPLwRTN1esF+SDAhsCtxc3JLrDE45QMHUrtl+C1je7O1X8ohX8xjFLiI7VVFiMUmr5fnDLvueWcVeszkwIklBV8QEBmgqvtQrZgEQjsX4JQ9UZ0A0uCG4cQZgrh/c0pIGpmWKHc1wBDWKmqeCM3BhY0gFr3Y+Ecrqs8oEQqSYdO3RQ77CFQefBUeasI3kwPlkZKabFZQCFIzskPgRDWdwBH3NXr9utHy1+i3bXX3jHXf3fuTplwe/8/EXo8aOGz9x4oQJY0d99eWnH+W+88aQ/s890Kn9v5rUyS5fSnXZw0h1uHY+kE+Vx1d7aTNWitlAGrTScJ7XrwJBRPJ9iepGMqPeg5afEwOKfuhWxUdZY2rUwur2sVxOs8s79nkxd+LsvK17Dp88W0wFuHP03NH9OzfnLf7hf7kvP9ilfducMupVimYg2XFHUsWnNiA1hiINzVCEWMguKM/hBOLMkU5ZPwJkCPdFZIQDrBvc3FqRT6rC464rXbDydS+8rm+/Ub8u23K4GCRnmhZbMCFE14mO1/VICbXSWU4nuh4nlAmlMl5SsGXZH5PfeeSGtjWjcnaob5oZgvY26dkPJ1IUo3yCDaw8L58NjEhPAwcDjL6CR7VJfkvCKN1zh3GU9ScXIAFhGdL6jsO4CFVa3fhI7rSFu84yeY2PjBKqWuWjguqiwhAkZIHLuiwpI5SiohqS6vDTG38f+0bfq5tmy1U3cWgmbaJ7rRc2mBCXQmn/9x7hRJ5DToGKL9UJy4THTbNgQWP2hO2H8Ob8GDXhxP/+E8tw1hClaTIyp1VoduNTuTM3nNKxHnCKdOcy+6qlLAb3ZrWP6FtQ55UVHsubPuKxDo2ytCBICo9zwk/dgdshEZJ0I6ehiT9JRLXQDWuAxLkz78PLLcTw4lQV1ZRw+Pu3+2tlLOK5tLBEgI/VuLTb4Mkr84sQEsaITqhUq3ykq4ToxTpFBg+cPbx6yuB7W5dTrNo2w2WhbzF8FxiJEPbpSbxWEKHK7xZZsQ4HXJP6ndYH3l5WhP9xwgB2fHSlZg1YZCbLZo/Ua//Ql/O2n7ZaMIPpulK1kr90LEldVKLHddQ5NfLzpve/t122TEvTMtFoi2B86RdHwMDGgjgJBY9rtxIYcSzMz0dXHMpXyyXzNCnGKQAKf+1WMZPIWgtj0YpV/t3zs7m7qWRdBaX2qFzSAN0UjkBFV6OEoJ7pqfXf9rupUSm7pFqmyOalhUrd88M5MCgTweTBkA/OQ4aDQUr/Y6HJ+9tivJMIMNc8n2OtICoj2IeGCCtd+OiYvL9NK61qIaLedzxdEjvdBLDINB0nZXv+/PzBK3LCSHN4zGIRyxSJ+2V6zjHw6idkSP8xvwqsB1DVhXVbCVIRhIdB5BDz6vYB9QOfgKZF0L7yFzz4xYrTCJujSVMD7mGdc7LLZgyT6FZSUbjlu0E31YrJbwsg00tvhSr1nWcCo75dsBeGPt+fhaW8sK69kQoPiiS2xnIVpTrAvo+u0IKbr0LDTwitSY/PV55A446SjhL/g33AwYtOSOziJkDRvl9HPNAuCzfnYU3L1KZtoUdhzovrAajjkDBSHuwXAfaKw1meSgauFLtwyQbBOSUG/P3D7QnsIRq8ERJRv/r1A38/CACGe/MqFOMufjAZ2A3pX6hpaURnkHAn877s2SyCd9mf4PveZw2G7AAgPrbNtuZ2ZDUF57BgTrxIOdKeSFIASefSZ/WuGZxZq98hSZUrn5uxmeC18rnve9rccu5trvMCXEcIlUpLnQLAwTnv3dW2tPTaJxz2sr0uesdinKDct372uJusH+EU20urrCLqmqkTEJtHXISEcxl58mkhSbHmvUevi3tpYpOHDZ2RbHA0FkB1nQOwo3Ny7/jcjUjxlHI/csOEE8CKkWkzfoaaiqzknH2kX9Y2Nae3rgs4Pfnm0uk24PxSmFXaD5511ABgxKPlHTupBqkEUqdUj8cpAPn7+9uXNzdlaVYdqnjPb8XI+gbuAvwzc2dySvNTIoVYcZMZiWZh6wuebM3tjUvRGvYcua0YEcqsyuOvps67p2USWFoVA5b/t9t/f379/Pqp0/x5x01NqPWAdQaQuLP5EP77wiXY1+Wbn6IMYNe7rZGcnuCK+cPf/O3f/cNjYtevgbLIcRQdpgOPEzMCAOKbR3VtEg7ZTJjXMg+tYBXunH4MgFKFBEAX2/ok9S6BN0s+RXUTjk2/vWwAZY2Z5rM7DPn7f/zTw3Su8dj1zONSCQ+E4JJhh3v/HH5bPfxehJCw+oxDK1iNp1cYwO2NdH9W+5dR34gNBY0DW/RoNZR1wIxB5tz24Toq5Vu4TeEjGLHj/mF6XADoOyb1bIAahljm0CWVhI03HrAZsHhlZ1AfxPGAnR0rwaazoxOATZY4wVA0Ehi9z3CzhyftIMjOQsZamGGDFZHIaCbwA5Nfal9TQ0th0DIGJq/YTV8dBlNnzmb6fFCimLiDcYP/doNglJhQMKlLJZQ8ADhRy7XvP6sAwKQK7ZT9QdLxqedH1TeIgsOiaPcPz19SBl1oLRMYicx5dCEBw9FqTVz93b/m8urNdyHctQ3EGRgb3/x3+mYFU7QZ1W8asboYQCje9w1BrYMs7lMw3zM9zkyAUwuHXF1WWnRHoNP2Q5fl7gSgOvNiGvXyPAZPYq/TWbIW7Ds5jBCAszNvxWa3pWlSmdak15jNulVrqN0Y5EY1zZSJ8G0Y6pISDnB26WddG2mIzB0OampZdtdfzoGIW9N9PBH6sP4KmVO0Xi/ZcNehBDsOfMFTDXEHJ+3OnQ63fPnXIyaYRKc8bRFJIlA6UkxMMA79MvCKSlK2gdv/jFw6YrOBHorcM06J7RckPrtrNQhnotCt5AWTetVC35RO2eZrdRr6x2kATihLcw9vHHXzjjapqGgCoDDvs+71Qr7ZlUbvtaZPzyqSRyK9ZOza/UUgXh5zPdN6b+y2ZlJiABwcdzP+Jk3T0t98xLKXP/fDAQPAsJk6ndKP3/SzltzWUcJMMA7+OOC6bEkyqvz/6w40YlmlHjOOAnDK0iPH/CKj8ozIlxZ77x1GKQBd8kT9UCiUxpb2pEViVoWpdvO7y88BIDMM0kV9keQa7kkWnNvy3jM0XSi+efR9za2bJBqVdgVX//Oq9zcBmISJ9BjKHOjKacJxA1snLk0R2jf2rpqIGUxLVz2RaMueozciTlQnlLJUh0mTwhSHY+k3R/54+dLykmDUwOp/Nn5qblxSZZ+isP2MMfIB6g323ainCAkwtn/dpQqKCKcfXTqlLxv+13EAoA4f78EKCtmoEhVt2Ze9mkWl15kaPO9QLaf7jHxp3Dlj8mB6nfdRxDe9AbRHva6Ck8qKButNYJvea29hCmkCUdAkDYE1O45YWgggiO5E2l960BE8DfUutE4Y89ifg6+rKQu/CZCYKh2/3m0C151K9wjgZk8ShoHiLkid4K3mcsHvW4rxtx1zsuF6RwGKV711XQXEXaSlhXyjzfpO2MNR7zN9aYWah+DCZrCSWKz3u6a/cmXFQFCoqOHuZ9XbPt3EwNDlyT7pCrBONjlwOGVwo3Wa6nqDgk1uk+ioDiKZBPG83JuzUhpP0KQ2ukGndxccQaJJmbMne2BvDjA8RtB74z23/ouu9eU5B+l9ynz5m75aH8csfdypN9JGJyneK3pGOFpO5vRGx9S3iR1Wbq8KtWjIbO17WFhdIiI1WbtC1a4c+PN+DiAcaC8wAqEjwtm87oCw2RSCUXVmAuz/ffgdjUunY6YwlYix+h1zV+lgqGLSGxtyvmLKtxdRuzOjq/GeK+HBpUEdUr5tYu8WMcnQhBTD56pfO+DbnRS9AEbKA4tewo6zeo7l2Y5W6roBAMcWftSxdkh6xqXZfKt3GPRLPgA2VTaJef/xj39cmYfv6joIHbjAKjXtfaEB8z/lwyk7GAeAE/PeugGRkCO+36WFIxLP/K2Dv99LAbEl8gAejEo69R+tPNsEEPtm9mufo0l6fiy2sHRooUDdXhP2UACTMeZORGlAgs3MHnGcaMWr/ToYzlFQhxdGICOq9L1TX7y8It7lU1WimiYjjjm3DfzlAAMAFtyMPn4xcATtKtr/fb9rquA5ysnljPH90xGZ+pp9zYu/HsTisy26TtJhSoqzBNQZZ+p04hSoPrhqlgNw02N2eF0EZ8Qix/y9/uuHL4yGFDNP/Jg2XO+m/t/v5ACmzDMf+GAkO4LoVACcWfdl30trhOWHXHoagQzFWj84YVMcwMQEUudVwAg8KGLlypgGUyu90NlfBx9SlWNY98LJxR91uzAb3+IJREHzw7EyslG53X2fzD8A7vC54PNs5yHZclGZHieQ2LXpz9w+raIhOWl6sahJa3DXR0tOgvTCop3XUO8bpikPHtYwQAFz+sqQjMXpP0/9MUY3+jIoZ8N/druKN/2a2/uiKvIUWIsmk4wqElbW1soX93rz+03ITFGn9n/4ZkB6z3lBdg1DUjcV8z2yrfLonyPuuaCi0lI4TUsDhso1uuutvwoAwEBav73QW+jpo3IOMwL8EHAEzkGQifbs9rorWkdn1w1Jq7OSbvvm9e7tclRWzEYironJmib9e41Ux5apf83dL332044iA6FzhNroKvAb7otgsBhCLUpCJwyAndn4/RtdL8iSMPNURPHwrYeKUOWyBz9ddMwAEAqt31wITyFQKRJ2i7s6FPugrXym7rjzLY46N9bEQROAndy3aPSwBzo0z47YGc7uwNnXx2itttf1GTZlTX4hfs81ViV22ulIa/UCr+pB7GCMrzaF3mrEy8pPbJw2tEvrLIXg/bCmpcyxUg8g1vzWAZM2nwU0r4tw718RURBvObkwUAqA/JcLjwc3nFZARuIEvxmfon0bF838+NUHOl3VolZWzI2eurKVajZue3Xn+/t9MHn+1gJkqqhp9ZHs38mPr9HZ1E5C3iiBnU/GZhiODQu0HNHjcW4CmAWbf3q3z1W1pWMj6NBUsKg+ltO249OfLziIjanQJdX1XmyZI0h8Tuc93n3Y7a7udKe1Hf3veSSjsUGc2rN22fy/fpo+5tO3B7/6wvMvvtZ/0JDhb7//8Rcjx8/8df6K9TvyzzK5jIwim2odKK3zNTeOKVcYhCAL7ka1bQrtYLNLyhmj0t1Cdi0e/ULH1tUjirVg+GJRBZY4fxRv5afQU5dVr123QZMW7DwHEjqntKg38/mReD8Ax8FVhwHcTPdVG41NuQGunWH1YXF+CouG/BdyQRx4SJNU2adlbifBXXPuTiwq54q7hSPs+szWv0Y+c0vb7JiSuOW5sFRpqWQSHSKqtqsyXKn5bY+O+G7V/rj8hKRUrVIn09lmc7DUdTE8pdJI/+InQrFTFYGpsDgHU1n8FtsGCEuzurXeNh3uNjU7KyFUWA84UrhzzoTc57teoyaDhhFmFpX/B3mauulUFMIqnGLJZMpWtVzti27uM2j0b1vPCNQco3NkXPWQ9dYHO9Q0qlXjir7Hsi/1oIROq0eKQF4WEafC+o2nJ2MP9tLWGLUGWvBSMP4+umX2xA/63X9D2/pVy0XdjDFrTvur4Qo1ml18fZ9+ueN+XXvgeLHiv9aFcXl14+hDL0RQg1T/gQTQnq+08E5yLRH1NbolyKI672n7agzPN4ferlA4O0Kl7ADY8b3bNiz9Zfynr7/wcLc7rr2sbZO6NatmV84qX7Z0TENd1Vjp0mUqVKpWq2HLSzp07Hr/0/3e+WL6rBWbdx4+LVFHTWFJBFO8OTT/34+pUUUx00HnoG1ffxUmu5JYxSrdd+Fj5/8ByG4WHbmPQ/nQ8OoXF1HuWy08fMNsqKAmOX1o58a1a9esXLl00dxZf86aPXvW3PkLFi1fs2nnoVPEsCWPEp1I9tQ7xuQDJRmwAlCZo8qNXX2M0tWuoifP/It2ir6AgHMHk4yha3qe7LsABPFy2/lJ9JGo5P+EjEM5PAK9h8c8/C1+6o9/4n7+WI//1rfj8Gha8/kDQvpQAz6BV/5FB1i56O7WAljd9VWFzEgPsabRzo1sRUr8jvaO/1WC//rXn8ff6O4xIJYd4/8wgVBhaZ/Q1YvNdEZtaujFT4HH1ENTE8NL4k/x+AmaVl6UlGKO/vEsc5BvJHK/5USHBZAuKvnvzkPY/dmthSMjNo33ydArEEHSLU5UbpLiCUA//thscxLbMv6exlRm2zesR/t3nXH/dqa2VcdLmnURb3tohTmrfwzk8PwCuArSUV1F9AndRNgEIOAxwhEGuVAGP+J0zsI9z4MX5zpeX8KzaGcCfN5c45t1ExYYDWj6lX0qKRlIA52lcI9aLNHaXiDtHg3fxsUcZoEPgqurp+ExlGJDHgugZNx7fa0DcamVKyu8ZQlZsO+B4tkh3oykO2rzQ4I2MWol/GUT1kPXPua0XeoPEXh01WnEb+WSjzWoKFRWmlbg+Fx+uZ0b6Cs7lw+RRr693PN4u1MiOwPa691lIZ+xAUiEZ7sywlT5yZWzX5LyC4Y6PHQn+UV0yZ/bxpLW56AzjA/80Bou7uocLIKL89TFOQ01EreeqoepyTVbqC86S8voBoyEmaqQkXNGDCrQfLnI+hLqRN5xC91qvkrr8x7wLbnQTYkqX/cX8BUGGjoK3t08qtSSN/MKX/Aj9nimRLj7DQAgD1zh7m0bG1lo264r+MLdxgkWWhMecXsrI6T2VAbnUPsa/MQchPjtTENPatGP44Qpbkbr4J31x2xnPKgegib84lKNpwz8QA6+YKUuZoDH53mb0LEKWKBoxAUzE+opg31IO6iHexvwkkWxrwY7YklBIfpNrhkrgXYJMRaPeBvD/Yk1T2bCW5m0XF7lqNbIO9tbFHNv03qTVbUx1KBW6hFpWEa6Bm17pq3vlE6hYKV0AJoiLmNXA8YVZKxxpStykI7qSFozld64VvLZn/1eyyh+Ob+prepECItMfmBdXavGljfCe3mckg+ofDpZLhP3lC1RFwh5RcEh88eLAT3st0sg24dRjG5AZXsCMAtlBDygay5wx+3oIfIeLepA42X94+m6sjZ8Uvlm1+v7ptjXFkfe7j0GssM36RDmzHxC0PgPVeXibKz/2T2n0nYIeSj6YRTNyIeQSHKsJs8KsD5wR15QFKufsVabrJ0YAKdp+eS3Ztqj6gIcgn576F8tASgX/vIKTRpCiRQsFKoMs6jBYUY2Ic5BUXntXkHDY+RcZ5gYDM9ZVTgKRaT6XXEgY+wT1UwmCtmbIxddII1PBONTVgADIxSB1SIAgNP/pNKdinpEnakXGZAPRJ7pKZd3NA9D56Q2i4p3+6IBh7x7S/XOClDAwxIT7xbqUVlupKNywAirtfkzkHpF0emstM1YW6oaV9cdZ2o0dqNd5rUwZLDutdFy8fSM7lUq7r7qs7aFbnqricL5yEM3PxMqebYSaXg4obNNiRTj5rtmgGSQc7DnnB6F2JVIbGylpXxI7b7hWz4Y/NyoFo2tCIPb0oIoCslAaxLVTZCnanKKve1AOVN2B6N7haG0xWETJE1ct/H8DMhiZaVRUEDU4IRyueSXnXAZ9qxNL2DgEfe1QrRzKbSDsp5BFpXLciWl5fc66sN4mhm5O4WsDylrtZ27fZKP14wZb6E/uwSgLbsFnes1/5qQOStJOMZEbWouuubAYfrN8N8OLJsjdeZgQ/kpe3oeZuxWUsp454vV9BrBo2PK25BBACWX0i5hD70tmiK+SkaVXspgpRu1C3LE1aQhGrn7+kWGYNytrIqwD4JNZ5frf3ul2TA4sWMrdYWJAoEqE2bNYVuNZEo52YEWsQQ0o+n81cvr7wDbFDvL48cHGXEpopOjR3iplROH/vTEdZGgOgeXVJhAKTqHB52yrWjlsVFCu2aH/GpyWhnX3Kgv+BqAApFwLd67dSmSL3pCr/AsvBxdmnb7DKJkjr16qZ27huVfcynfNoxf9e5ExhbYSNRr123V4nRKFamVbc8HbbFtyvoA2hqQeDeRzanEf7kXJU+Fkmsg6z978aH0tFXLWgn9ygeac2yNit4Eb3S2Okit66x8XDuQNi4BTDHihzcNtJxUQKyGjMw0Af4MqgeTj40+1HghPvOfQ6XbJ0NoXSdGid2gmnU7F6nbNuJPfpoDnlLKAwyUGSYfO40rhxpUyPJxX0qyVbwI5FfU5ARlpZhBmrM5tgcVx1M9mouYKiFsycgBCSxg5KcahwYAGftf9x2VW8Slt8olDqLLtOSeqr89aF4wrIxKpHd31yH1B78koKpf2XpTxc3Tyk+Sc2gpyBTgP4KvGBazgDwSzgtprrxTzro9Wqb83E0IICUkjcewBPW3DpF4J1uuTDen196j1VujTWc8/u5pa1LfSQ1YISEuJczJ5I6fsiv8Hr8ACQB9nNvEPtilXRFkXuKGXF+Hj/blUT5iAYAyH/kuABVYhrr3UV52bMkddI/JdkcM34lhZKwMAq841g+PKvQ/4Hs8rkD5AGL5tmkSh5ior9qJD2Ae97uGcg9JzMr6S1YDfvthi+wZcHq5VmtK30xPYk9LFgFPR9nX75vnj2JhvEPHTaSlwPMU7MODmxFnTIfQd0mN5finnEvh2Mzr2OT78LZdSlgCZm9C5ukLlKd/g60PnIWqKOOT6U5FE3eRipaRMfRXAdQlXR3IUX4sDdpmngp2/PZmgnMlWr7sr5PtaJP0NREcHQIK/+amKLv2Uaot2px7prKO/hrfieSxmgNwDgcWH8nWUWrwNSDdwzk1WCcnlwrOFXBWWxvVAbw/v1rBeREy/uKNQ5E9XLtt8d+CbPEzb10Ig3otqhhlaRz+K6OM3xavb2p0FMnb28lXeNNsOtXtKesv+NW6gLNJEBIxvAy/e/6x2rzydEufAERoAp0taFsOzdNnSTkobF4hCTICDej3yMQRHt5bGcr4tOsNFZFPu6qmQ4fj96MORNHgkVoY9EIaha6vysW82m3GsW92k+gZ/2BGDGuQXZPfuxO8WiErvS4zinNsOafe+7xrLYPZZwEMv6jhptTfRtHjIbXnCgDp7nmK4dkQ95l7Gb49ZAI81GnVfDrIaRTanJtEERj/Fkxr5/p7lGgWKlkUe/jnKRr92lPALXkoUXWK+u5QXxp1wVfGiwYPouBQpMoXAuqCLxmbn7/HQgt4gJvGC3i6rJiJ5LpCx3AESerq13xwKdVespbShntAt69TgfjUDlx9dg6wkVx/s4YHuMog7ktW2ak1aOVLUHQ332kuoV1CnVZwELE8osEV7yi2Ik9daICLjRhydlwtRUk+usPE0BBA54it3LsR/rTdPyAI8cDbMu0JyoZBl7ucIzJF4yUZl9NIdPHo2n5Mdg9LTFTaYvUoExW6NvZbbvkQSi3J43jgNRL3nCgh+53Ezh3IUCQWDARfTr9QrkX3weDDib5O/up9HxXxtvoAw3k5RtoTN7Tg4Ar5wme2INXvId8jI9c2J08RZI5PukfnTNMfu5V7simiWH9g2n23o1+2S0Qh2zULAdFXZxNl9O5yIuhZC9jMMQv4YKrfH7pFXUfxVwavKM0wgBQMX6Dn9PksH8UuRjXwb8iSMpQBXknPOauKFT6EUYMjdPoR8Iypw9Or+V/5UBJxIwaGQjqLh1e3lPdDrfEhsF67FwFuhny8vDBnlsS5AZds7ln6MDT+a88VjPIajOeXq/ElwLxpxaPdHHFX0dA06hMAxTsPhA7L2wg0kmQCfQRk/dYllMq67EOz3xOWh2w3hFHqN3iYNcGkXaWvI3wYnxkoT617ApSWk+kHOA3okJMRx7NpiM3KlUDR9ZFleLg0BoWmdqnqR+IWgZ/Cv6v0QjNO89/EEpqB7EBq/InTAchlzoApzT7wJeO7Oh3oUEpK0wC5wO+jnlwj3MNClAV8EAWee7CYBReHxicEmlCzyxABrsvvJVWWB0FordFr1r6Pq5FytktFY8PLIpG5vYrchOK252ZTcuUux0M1ln8qicBGQ6ensYRd1IGXOx8BDj2fR9VlPrhR6BSOSRH4pk+/jfCdqrNF6pMZ9oa/XyyNnau0fNS9WPCH9SgMaIKC4XxH+ZZSLyef9jaUIO5O6Bix5HXkNAhSwk5eN0fSKHZxTKAh/Wtz3OIrX7Jz+V50J8vG0XaH5wymPT4L8G5qApwC53TqsjeaRt4T+qcz45Jujg36ympvi1pshZ8ED3fyEdx6GuPBSTKRGsO9ekS13IjlDh+3rMgHoTgT2W3fCL7ruwkGUgpyjt3zjKNeZTxAL+5FKwkMMIdCx5Eo06GQwgKcZ62p98mi1StsrymjndFmz6wDgPHhbU6LnpWTjGvvbNA9dMronVOoRFWijbqtxN8G0WuF9OiX0MUMKGPGAmJztgOd6ptSKtE75CuV2RKZduqiFdM5KUFfx0pKT40HikS0kSLGLIM5tMNTIlVgEsLoHclwcth8XAVR5cU6Lc2USrPaBwgCOTVC6xgFhtLMMrAdGXXx0qZULpII8jhkqxX3UbWWXh6/0bdJQoB1UUQkzHDAIkvVXPD9nAsiEc0YmNLGBaUOxNCL9t1eCFbV6ruS9dC7zguyzGAQVaHg4olTAWIWTEYV6B8iNBm62RDQcB8gcdEvf0Ekle6GYB5otDryvMHTiJNxBCDjwbM0/TLe8lMeFIDtIojKGTbNNro+TD6TCPQy7oETlZf36k5MmMNt5PPUAmfaAFvmoNMkUmBgJKG7l/CBbUUlDX4fz5Ymv3Zgb4Nf+owIAMozeM3bOqIl07D4jUFoBqzw2FR85FJ9CBuY1iak065YIUBCjE6iGHcx1z6tU6YJKS3EU6SY5ey0NDGZmVuo2NYV6R7iVsJoU7S/DhAiqiKqlIe/VF4HT52FIumae5hxD5IGVH8ItBtQbIsSpIpHY3eQA29fXbWyqqavWeajZnLZihKEMYDMiEeh627ogYKS8MxBfqrgzc0pWR1HJyzVBhxE/HOJ5m4137OJaO4Cj8DU3eHHJWMXIOYZ6Yim1mjmLBo8wUgrbNWQU/wMV88iTClDkx753/GYwsl3Z54/4aJGsq6bLYsUiHT0ZsdiZ/xWcqvdpWyeEk3Dsu9CkLv3MiIFo6+o1gkfn19CaXg4op6KGnFIDG4hk5SDQ2I8N3+6QGKXKSsQXCSZQsRb3KutER1n+RMnUBRnQRxQNIwsqJghBNI6xilg4PxFp6cTOFQKuWtpSO+zpiAgyRU5WvYrJ51IkFW+Tht3yw5xFsE0Cn/RagtezaSA6NfRT3EdBeRRgKg4dXT7AgPnjLxNUiclE6AxZToDgGoY9KB8am2hwOE7YaYwKjxR5fU6CKz8NC0B91E7OW1XrMX45irHEDfCZINULa4slVSvbc2jn5H3IufdQBKGWGqCDpO0K8Bcy8hsyQRBVxdB7TxpG5n6uzs2awaMf1YmDU1Fj3mg0lQ4oQV2AiGlWYkJqGwlkFosf55Lil4PmgHKM4TppJxRWBwYtJREsakY7tGq6RxI3yH2pnJIK9CzYxkfu3W1xO0i2kkjb85lGVbO5sF1P6XO7pdcrTQH4PgHCF3qwXQeZqgzE0mHg1ZF4BgkaIP0buuMRW7mDIPD7jbdtgHw+A+jaRSvGNCW0M+MbYT9ZZAWJ5U0pO9DWh4C+m1DHEFhxtujwRkfqa3hpamdbmYpU6EZ22DqvedNysaBQ9KEWNkJgXPZG0V20MhEBC4/KqttLxa0BF8LHhs4BITQjddKbVPCRcwncFAXN8Tk/N62zceRbojHHfJ3faPT8t1Qqr0Asyh3YPlJaCs4payV8CtZgMnRGCifSo5hKe1hHAbdoHbDCfGi8Ka1QRDaV2IgUHNQT1euD2NzzdoduzqGY47Jwud452YRWya+4ulfX4OSoDbQdvEABiipE/fZwNtVkcLzOndqLoLseeMVenLMbLy2/OaqQLEHH4o84yYJmuRAo1lxkYmsw6GLj0zL1M9Xt1UhzjQjaiF4mmJuIUfPtOow+isS5o1FoyKmpzS907Cbumiz1kXYlo7rlN0HIvxZPy/jSGuh1brYN8xQpv5d65b4HEljKfyVVlXmBpyT7kGVCLoj+9M4C5k39jiYRyyV7A202v4efAp1Vp9NuakWyY3YW5wJdXjodDjGlXgXH015tnUhoaIGGVPgjR21yGQMPLjzV5BY5Vw0EEppAqm1vzoU9vjGiPeKTarJuSmg6CyjBhp+oj8h9Xl95odSv3PacuQq22b/JNGLlcdvzM9l77fo5wesH496/U2ifo/4GWvHf8GD2b0k/PwMcR82G58IoTqq1W/2z2az2aQteLL0vuN27k275K3iYHlnM+EBfmuA/Ef+I/+R//y//8h/5D/yH/mP/Ef+I/+R/8h/5D/yH/mP/Ef+I/+R/8h/5D/yH/mP/Ef+I/+R/8h/5D/yH/mP/Ef+I/+R/8h/5D/yH/mP/Ef+I/+R/8h/5D/yH/mP/Ef+I/+R/8h/5D/yH/mP/Ef+I/+R/8h/5D/yn6dfAABWUDggaigAAPAvAZ0BKrAEIQI+MRiLRCIhoRDMjBggAwS0t34MbLpsXhGoCn/YEXvfIg9N8e3YvXH670Wf2PwG6NXlR/wXca989WLzHv3fRYcpHru+Mhld+sXSJKW8t/fP7l/xv8P1uXQvib+ufRt+e9R/nvK8548jf/P/xPuI/KP/O/P/6AP0W/v/9P/In5r/7L14f0v/k+oX+U/27/2/573kv+H6of7H6gH9R/3///9p7/u+wB/jP+X7AH7q+rP/3P3S+DD+s/8f9zP/R8g38+/xX/y/c34AP/H6gHUD9mf7N+LP7N+pb+V/2f5J+JHcyNYegvVj3j/FvUC9XeW/9J3DWSeYv61/U+/W1ce//sAfy/+m+nH+b8Bv6t/rfYA/l/9H/8f+A91z+u/+X+V8+n5v/oP/V7gv8w/qv7F+2z7A/2D9in9Zv+YD8UBMro31NQEyujfU1ATK6N9TUBMro31NQEyujfU1ATK6N9TUBMro31NQEyujfU1ATK6N9TUBMro31NQEyujfU1ATK6N9TUBMro31NQEyujfU1ATK6N9TUBMro31NQEyujfU1ATK6N9TUBMro31NQEyujfU1ATK6N9TUBMro31NQEyujfU1ATK6N9TUBMro31NQEyujfU1ATK6N9TUBMro31NQEyujfU1ATK6N9TUBMro31NQEyujfU1ATK6N9TUBMro31NQEyujfU1ATK6N9TUBMro31NQEyujfU1ATK6N9TUBMro31NQEyujfU1ATK6N9TUBMro31NQEyujfU1ATK6N9TUBMoab7EpGbQSjSkmG+1qkPd/rKfU1ATK6N9TUBMro31NQEyujfU1ATK6N9TUBMrovFKOL7kG9XuIBfC08VQ6J54Yr+0kaDbgR8qbSS6B+Z9QVGhjr1mgLY3w3rE2gxE1oy9FAVY5pi4/IZQRvizwi1syujfU1ATK6N9TUBMro31NQEyujfTfq0e+yUDnTrQsWuPhpFkxVKl3M8hZqnovHBIo3jQqWOQESMZJGzyCNDUdhER3mzkS9f9wjTLCaBfug3ldZl4hjO6miyWfCk+MshkhDLSSl2vIlMcIYzupqAmV0b6lrM3TjF6dYt8cW/mK7COLe9S8+US+b4GgctZmNN71GaQIsggj6HB/5grTe5TXNqSj+4/fGOhjS9UYubxiwp7fWphgZbmTpa3N+YhjO6mnlbhHoN2y18I2K0GB1tbxzjPkjN5uSU+lOQbHlZLTbSuVUtnx7CjhrpbIubvcLVj023Lm9/3Iv+8A+cFxF0aziEaz5HUhw6WCMSBUVBhTnbYhRbf+8xJfx7Ycg9grHJxagUHKQ238hwGIqR9pKV8hXrQZPGBJDNXnA3dj7FVYGdbTAhBLBd2AlDXQ/vTA/iRiXJa9zyyYHBGoCLu7iQDcjznv9JPWN1bW9fnE0tzrX4UvRdKXC0NNI9dV41PP3qYNQXDCgIV7XQAhMAReJNdHofFUFgJzcN5JXAN4WX4XmR3oLp6kOdl4ArUAAnjdUTs7qaeVIzzQdfihhywgv4sxoGEib3Te71//yC2tscmokqixdf4fSxkb7aAp7ZGBOXyOBRFY8QPB/dRAOEUvt5E4d2Yflx/MvDWfxDUHJrtZ+Qo8+AiZfNbf6E/IZOpKrDlveRM/0gpzf/11cP6TCcSqyEexPAwr2XeaJa6KnBjrrh0NUrcDP92u1G/2kIQBNdbluWqSsZ9aS34tQEMwfW+Iq0GcNU9BNsO3d2blQDqGE6n3c/nwRTkBKB1TbnL/7auKX/tNBQxwQvntM+Qq60Qg8P9oIGwyb0qVaXcj3xKkGAbWDjWIqVNBeKQx6+5svN5NAPY11ujEQ/9Bc4VE/qvFTR+4BqVE5sH4cqziaxcmyBB5VDEx3uQ+7oX8faQI3wwCEG/oSArzwprYLRiNREJxbsEkShGRuN518JzXgw1tYDcr1bX9NGx0EOzz0cGjicEjaMp+FDxvM/NZ86tlG7R1ycY63yB82vc8/Bsd5n5JssUPYyYbUI+uAIlquANEPd0g2fxY1OoZ3Yp132PTlsODPFYDjaukmzy1eq768p8qn+yV/pkPMWaXoZNPqf2Mhz1XRf36CerZWKUmFp7ZmpCgei7KEyR1baIzvIjVFLOWPSaRdId2/nyCne1dhtltKylgUfXlPsywoF07lsAqBDc3K+Xsdy54nPTlHFcsTJzDI99tGDU/ZcKvW18djUA3fQnh0EPAfbnZCp9d1irg9Q+82hKRsQQ6boO14hIExjzvaOulDNONznFlfopKH0e7AJwFRWE1Bn/iUQecIRtyVlmxIiUZbFqRdwN9+B1JPUc1UOrVkaTfbamnNPTumqbvb+yBQF7ACo5OOvXeijhc3VUBZfRg20n08Y0C/GtR+kWlNWDRs4qV4KyswHmMnGrUhjvlhl5uhHNuoaWBrs7VeIWx1pB8IujeIJLPMxEG3PRRnxftikHnHgHrqumGbhgYJZuETmzt4qo/60gozIYY7VbtMUS9EBVEFGLZkMjDwcTgtZLlPnVlji5ZPMb7Qpl1vPiAL3mItNIZfXT/ky6sBkFOhHKOmmVO8LlhmxxkAUX5/vyeY32lXJ7KwaGSBl2uc4yxtjqXH7p8qgvlkc5uzlZlYNpe3t+IYEcLkZ2hhmEx0tCMlcKwV3b6IKMOEWKtrGFAN0STWGVEGSdH+2qCjDmk0307/GZ2hhl9ADYaH9Dc+dvZpxYtMxhVikI5UiQ5qvDWV5mHGzm1S/wODijM/vGZ2hg0skmxnqXgqcFg4yAKL10+6O0ZkoKMWzIZGHg4nBayXKfOrLHFyyeY32hTLrefEAXvMRaaQy+un/Jl1YDIKdCOUdNMqd4XLDNjjIAovz/fk8xvtKuT2Vg0MkDLtc5xljbHUuP3T5VBfLI5zdnKzKwbS9vb8QwI4XIztDDMJjpaEZK4Vgru30QUYcIsVbWMKAbokmsMqIMk6P9tUFGHNJpvp3+MztDDL6AGw0P6G587ezTixaZjCrFIRypEhzVeGsrzMONnNql/gcHFGZ/eMztDBpZJNjPUvBU4LBxkAUXrp90dozJQUYtmQyMPBxOC1kuU+dWWOLlk8xvtCmXW8+IAveYi00hl9dP+TLqwGQU6Eco6aZU7wuWGbHGQBRfn+/J5jfaVcnsrBoZIGXa5zjLG2OpcfunyqC+WRzm7OVmVg2l7e34hgRwuRnaGGYTHS0IyVwrBXdvogow4RYq2sYUA3RJNYZUQZJ0f7aoKMOaTTfTv8ZnaGGX0ANhofx4AA/v9TtAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGsYPMI8Fx44Xjl1Cbj2ZCMhc7pl6UaPF5PTZm4P7rt9mD4t2LhGb/MmBW47WXDAxep8PjPj3k/+8wvMbt9Hux76Z371ehmo9PqqkRuVnMrLv7bJ+zElbIEeRouTdYNMdVPIMZCwU0VAeGXbWv77B34pCigibwRdY/kCQdRDz3nmgaV6dCpcOVyCABheGp6xe/ftghzZA/1fCHHzskTOPMLhz1fKN7XZ/Kz2xdz1v/MHwtDaXt/fXnuSnXj5jsbTpj9y4F6N9ttCrXUkrWYETOJFmCiU+cXG79iQq76g//4AAAAAAiEbNEo+F40wDYIYvEUy4BgjsSrXkRLpdUGFcKEHBCkoKu7n9/ftSlntttyetVorJsb/m0RSAYdCnPNNtvzKl2fkFTGcWf60EueKpFrflXcFfRlfNmnnreGiJPIfCGt8zPOYInRAv3yXd3VeUcvs0kAP9NMAQvX70X7DjZeA8YT/efM641UDgFFyToUhKYj/oMuxyW9R6XXwOTlhqLpgxt0JpGinqa1vKRLq9G0hXT0fBqPSRueURCM1S9PfSTFkcjTq44iwMYpE84Ahc21WN7IZaM2so+Pg8YyX74Kj0zCrGqnjKbg3IAPEYqM2NqUCzQDu6STFimPuBVtsM/dtjRduMKMyasRmHtLo7WlpsPtmNfra3Ds30DMSFxWymuOcdS+dLxCfxH5cZhgfRjS7WN9Cy/tavGA5FrdEKxWoHSVrpVOZEV//6dJJ4QakBg/PyXnDidqq68EvBBC1SDjW8m3wARcmHpssDbWqXD0IyGSX5pWxGrwKqHKSZ5IcmDNxensPcuhHUpp55XsSC/Z4NklRAzbXcLzmEYe7d2pxxal1BWGSud2brLTHpB3+5gE3muRH+PD5CMUhxsxoYI0C+XdMRQUqulWDG25Rq6hNtCwEQrMv2RElqrN7+XLs0Rf1ExJgk5TyRG3ah/E4t1qCIFDINMo7PpVgnrTsSAWqhgeuZv9u5hqzeFQnqh/hfs16v5F8Em+BPe8zbGNRtyOsG5AHSchtkpf3gWX6GY0N6UhRR6QsgNwZr5YP3nRt7hIsr1qrnA806w5xAemcUJkVGpy1tGdbdAF1zh6yQbf1hSFEw/VdoBWt22aRwWsfrk5H+Z+Ha5LRql7XW+av6/UCajdimQTQnkaSsZYLik2BjmOScpXUnxrN9sXYOs5lB+m2vgCB/buMA39v21UwfO8cR7qQQcLvvDYw+kvhDDO+ZFHuRrdlIUf+zG//T0//2do0K5BektX+TnR8xzBUp4Dipo1LGK5J2bfoAAAAoxhM9zHK89cvph/L/JNMv9Oqi8HBpU6kS/9FERjLa3mVWwJu4cqQdrxUKS7HNxHsboGxSuoL7tofWOk0nixNfmRB8FPNLOoQSKgS9RFuq8h9HSiIflP59JzTfeR2377pQjeCl6W+W7KKeiqSFL4xt5o5PVXMeOFeF1ocF30PCwLBgq7Cz3T0J2akZz18cKAl2JmJb7b4kjhcOLz7Q2laHGO5ulEBh5Ea1ZTs6cfjdXvjBIcPAQ/ImykYERMyZ7VxYr+3Hz1HM93CNwyKeFHoAZ2iNA37U2ixDBIQRJqoLRRC//vBcPvvABRQ4dap8Z0gwFlQYfqzCHADko3WD9tduy7FErhBEAiKPIaFWlbS+gNmtYDNUnixcmK9owGs6fSbKvboKA1Avey2q9wz4VxjMhEF+ySZ2dEyMcmUc70NReRZsc7mbM0rZT1mxoUAUBCsOahrc2Uiz0mZ+dhHk4CFkEVEPLASN6PMu/O4KyxEfVxEjrO4uvm2IbCDdbrdfLyAoMj5Mfrn4sgppfQuA0VXS8Rdc3i1tFust3yAASKDQGVCFZTxOXDRdnN6Hi6Fe8mWTiXx9LkA3/1PSZDlnOYhSfuvnXvVs4cYJBtLyAM7VItXV22LI6VTS0W1dOWutrQszigRGNgcqPxKecZrJlKkKcLG+IABFQM3PKiwP5V7UYYJx9xE8k9mQ67Zyj0q/EaSf3rtTi4NmoI9uYq/70P0trllwsyWqvkXzKnpqvoohTTLUIkcutAYYWFu0XSNIdf7/1fr72hWYPsqg0xvaavlqJ/VK/plSPCH1T/JtGkOT9JnATZr2SuI7arzri5GiFnLf4Nu1RC8/q/quCtGZti5f12V6z73wu7PSBP+M7WdkQwAXG6/vd0fH/1d3NSoHc61mjXBNoWm38cl/1VzV8+dPowsel5o5de6x8amFwijDspIFer7L+nPgAiFLDbhjmpeKG5UEyeuBHhQuicQKFnk2NgdVLNxeH0DpKIo6gihTUh+e4K6yrkSMDINoUQi9kYFY948DsSiby1um02nxPjvOpxbF36IOTUHfIfzFyTr92Ogo09dmT1uh2af0bmluQC3JKm2hctMup4pR8AH54M85zFYd14Goqy2swVKWuvfV852MszNU8XkBkkalTCdlXN4fxz95VeuXKktOp3BEM5VI6vz1Op9k2fxtZrC9PhW4SZnnh3x3zB0NHrh3eV9HQFkl34KfE3FMEntPjhq1atelWdXykk6E9+FKDj7fUCynW70VsEkaibrVqcSJHl+oRvBZ9vXowmAfHbiqg15bIMfDpedHJMyP/7PQF3FDSvKAtuQB+goqpaqUlgecRJGPVBnf/34d7CXah5QrsMtl99SR1Cq7z8WDjjfcaT9S/1yECu3rqjwOnolkq/3DIctGRDAWgIKpJDLE7dFX9SU4Ld6Byv3Qukz48shUhLaSayEv9fhYIJ6U5UdY56GxBfHBeCL3/5hQCo/9J6yo5FswN7Lyn4r1rWZawCraY8OEgvKMgcJgtnFu8jRnjLcd4Svtj3YI59DQ/UTAXZ1ft/zH69LOQuWGmf3cdNNmwTXj5T7sRDu840Q4ElwB/lODOcHWCTvu3amYQrjTlPykWP7A3ZnmET+V2am6PSBRg7Amh1ZbgAVgPXsSxO/8/fEyKsFF/ycHWNnEQWGlv1dWtxeOxcXrT4v5L28w2f0IfaHe2ujWIex71l9eOsUnmwXtbbJuMJ/7jbiQpJP2SQ+MC8SyuVW1VdhYbF+CxxfSrsg8DhMKaN1R4SQkJhoUyGcQg3XWhgN/nfl25U2fxHUNpzB/R6S76uP2inUVPlncj0EjpRWom1LU+Pxi6nKeH3n1A1o0a/k6j2zHR/ZRDgeEHprUJ7T7VuiOATjz4fKQ+ITe4GY5G2F2cKMb29rIWvipVP03eh515zgEWKDZZDM+bMJYnsF8P6dtctSbcTWm8bUjQAS1wJ/4WntHc3X6NV0quf1eTCdm4E4pn8yyiJWzbjJfxyQy81T4CdzwLTC5MnlnldhIX5uaU/VOczVHqNvgxIU0I6gfxHqvbG70ltYAMQny6KnBBnQn1da87JyPg34itp0nAFm4MjvdDIeSW0nv6LXwLRQn+H6DNF/Rb/8zX7TMvW3HeTwrfU730FsEkJUgz7Xxb6vVFcd72JWWfrVbbGcJOSoNsP60vRb9QoGXIeGyyQ3e+FehcBm4vJGL+6LulL+CTlWVr3ARhufFPDyDmEfzoz1ve8b79iUMNLcl5XLzliGu1Ll+Hij51az61ILenzCgMSz6OhKjLxRP8e9xjzgcg3LsOzNsAnYsnCliJd8FJfny6oT0iAJc/prIEShO3YjnVoiDbmrEmAtNbdzvJ5T9r3ums9jVfATfUJZZno103ljlGNp804kX+6eVcv5SkKDVK2m5kfEu4ihhWXypfX5dfj/Y/GZ1SSfxp5GhcuvyDWyeEwAgACjUoG8G8EJW/0oeX+fVykvB/yFMBYi9dGv+rpz6n5Vfea17uLZ0wsI2hXtPuiujW5luPZyWTWw+QhFz3ARtJxq9zcaT+nVrVcAkD5/BoMZyawNqMP7Lo6tdEqo+VKNaV9oeoD1oPOTmrf1DHFp7J7NEsRv/FQPtBR/TEJ7mks79BKus+xmeX7iEdjmTYJiL3c7K3INK9+6d9IAwyRbwym3sLJwqYjwmk92ccVdEXiVEo6uO8n3HLw9AMt/Rv/+iEzw/gzIRqQG8oUFlbjSt4cEWD0CSKe/L0aYbFjRp6ZYmVDGxk+YlWTfxUt22qoPHmoQr1Q1NqY1lAXm1da2evnx0DJEyVwzzd9ooFBbT4j0fuojMFyZqppQ0bBkd42ER0ontYBbdBxBpsGiYRyDguHIFwkSTEqg1tDIAsea5RaIqmEFjpNCUyjb2FUOgKZ/0czDuARa6E56U2J8tzPx+IHIOqUAb4r5KtSbddHH8WUFsyuU5ikEQtJLA66qu8If/VvEj4wK5NdRovxdouZ167lsTbYehy5pVzZEPxzgRamTqJzFQpT+pmKXlfmOD2t49+wXNxxGIsNsyRMDJXZbECsL3nR6veVJKdGsUxn1PaTo3x4xTOGQleg1mRmOEGLH48lcUDmAnfQDBfeyByNQOPlK+FL7GYBYZLHDfGNxaUrHBLYG4n/sxv/09P/9niYsPW9aI4b79f1Yz1oBFScZPjcnDnZ0ByKsDrVEQE4/Ww5tMo1JL5zsjapVh2MsmTv+0QZDM0FARn9YbgMTqrl9is02EDfaSOX6qx3VAvx+gR+9LKpoHPLNTjR0Bz7aAhwJrCYM+UtEAh4BRpGBVHMBHrDoyVEX+Ekqxjd/FPRHjpSJCTD4eqjxLAsXa7JRzJMvbwmcrE0Yyr83HdvHPB1KZ5a+PdAk6Co8sGGmrh/PRDYRI7wrsiOf+Ve7tx5cPg72AGQkFOKUm/l1Gn2EAkC+FyCQRoPsc40x3xxACE0O4CbLYYs5o97T71CU9zps40wL/AUWf32e5kXmgAPeFKHncjLlPICltwkLre2dhTsyCJP5KrAucfSLz7XniHT0VcH9EvPTlTUtug4bKK1+401y6wZVu6nb+mP3JBOqy4PYKsjFlJY96Xx5MfbBtDiCU1hH/i1v0eUT/hrLjcv2/JzcpKHiSBcd8+NCHqskI9BXGehPiVBOrkUQnAAFqAKqj1zEtMXaViWAQ3di01j9fVXe1mHh3Ft+d9ZFTV6XCzEmhFnyFpojxii1m/scWbhC2UifcIM94Ea24Qw0UkX7h/G1hN/g875cO+h/Y+vyzNK9oM0vp0snQWZQnP1GEbpn8gH5oYQdsk8y9E+NzoNRhlOdM7V3SMw3q+1Oeoj5OJWzeJk/bXmGjcIU0xw79Os1PwGm0TA2lklUx6MG+D3Enbc5iS5Jz5nhtzAPxuTNBtljIEW6TV7Rlxj/FASPnFKiVhubBI6BStGwlxfPH/Jm+uU0684UOAOTYqq5+evLfpsd9My/s3b+LmkN8RYZSYB6wv1TUTHlnrkrW83J+3Zs9/yziStABBpIOZv9zYDZrgSOU2Rn2uOI1rIvRqSlUO7LEIzR9kkXJHIudhY2pzA89862AAvZ4bU2OrCpTmM5F5WErS734zvrgZcYLYomwP0a3hwDdPgXN/ITtTEIs+0QVc0gaaOHFoPtFtkxi26t6VpDZ8vB6sefrmvNFWF+oJkcMlIZOLX2NF3xRDpRQQ4pGfcycPKYkHwVwUbB/fjy0AuSuju7Z9xMxQ2DJhPxJ6kNys0X1XOw/hSu4eykP/cNxcfeV1rYkVYmlip0lBDY/7F3FMrULZlL0ktGy+xEg1n08ivvkpBVbLXiJspzJAGg8iRCzuG/WGe3ZdzgAegafbL1EGCjHSzEe55CF9/Uano5is/Y30Y9nSsvuIsAJD0nTXB4jJz2ykVIAbGeF9XqkLUA7449dyJ4GOHWwFDC0W65ZMVZesjT8dVqR3X5qTLDFDzAB2Tlbxa/chX8tKY6THuFPf0KF7QUMztrrm4VI5eTxyTdcpDY+RBROSiunWtzKqwuzQ0QNqFQN/cVqpfAq/WLvbDRCb24s8TYgp84BVB2Bxdd3YLmqVMvxl64EU/httepA+hAFcxZSGEZlXHdwOKJllRk/WmPX+dlRPTWgAcMKu1lb6mgz+SU0XVJfmzo9Ve3d04QD+Zv2RdPa0wtGli3EE2UXx8lpuyAXudYFr2X+ah8Kwt4FJAgyzM8Uya3WPmQjVFptdGpSZOuqagjxdes7l/pjPcUI8lqMyaFHm/0lWl6aY6g1L5nsKnrnFRN4Ixy84u3JGx/nva+C7bZl2ZbMBGf7S9NywJJGQcCaW61e3hZOt5ZvTFVVS0wnLR/QNM7XnhFtn8l3doj+efHpfwqx2HgA3Z3J7arc3QlZPlV7CEgsPMfwAIAhXn62oPWoi8AOF8MpdPWEMfFPj/CqZ+3mPNPZmpJym07tScmJrrvufxpfcpU447UpwTfcZLMWCUQjrln20WNcYdQJ7av/aMHQhB5x3okW1SjQMJsgPNd9Ol7EwqtMIFoyNzDd4hc4Q7aQiDQaAqUZs+eiM703GbSsnUToT/FcM0YnIDlPmqkcQSfK+97A45cOhYYdnhHNXho9XsLpEisjwZTEq5CaRM79mRwUiduqbl0HeRYbb21AdxkXLn/ohmmfZssQ3TlUJ6TEYukHiJfNgYhZF0aJabO49wKNDl8KLKq3Fe7CfnQT2Og7JufI8RdSIM2IRdjH6y6Z4zk9G9xF7xM0gbh2FnzBP+GY2bp2sDV05xckI9heL8UFqDZsUQF1HMHzTvaiWrvCxhUOQKqPXBEBVCf7meXOwTElkuH+os+8lCIhCl8dpBGplmQWaAtorFyn1LA7yy7dqPWPKZdzBFgy7poPmB1zfSpXQuO/MjUrAgl/Bi/3AdM7ma/SXR/24x20VRua1EGI2AS3b3I1UOeJnvOanZHE1zkUPpOPFohFt1nxAU5QIBfuIL/BTapXYkRUyByAB65rmGKTyU5EUGWRdN9WAredMoI12zlEkG/DUjPYQQT5ds440gzGs919ksOCnfWB7PSe3DzbunKKh/GFd4tYerH/b6PWMCrftZyb+Gsuxe+pgnjFRI8XO/+52CGHsrMFsVYJOpK/FAhqYT93v2VmLpKNni1JNZde9txRhotPbeqPjHieeX14fnb/mC17plr+Kz7Ji1QNmtdOLWobUZJ1oSV0+oAAZdAm2i5jsDQsEmY9N2nKHcMPKSkJ+QbZMsj2RCnjSKPowB2Reny8gdi9Af0nq7EfU6f2EMoygTAn2U+/5eUtuGuxbps05TBgzHHkAq0EwY50DVxL3xzfCBAym3rEujyfKuHe0L138IZQ6Not4PXnP4mxVfWnFRLUWe1aCjqVxGISdbpu/63P9D39B3QBub/W/Kp1ezBX8qrJkXhTMcMKukeljvZ4l9oaZOjoj+uBu5fO+XaiY0luMIB1WCUjZ244qIfCr0I2b452qJ8bz0GPZLuI8cjB3f13V1Fo+h1Zhup6LBIx9gn88ReKoXjQtB1SuLGkJWT0NL77QuU3vvbBan5qetfGNZgkilWyx/1PbQBDfH+do+vJ/J0mqs7Lp7Iz2kxIR9v8869gSfVyLnHIpfdERl1QE1reo1RFhCJvcCOoyY83rrW52Vz6hruNFoVuwyhgvi/KTe7+/U03WZbibklPPTW04o/+uUZb7+PA9reo3LEwPOiBUVqymo33abs0ibZFeYsWI/t4IlPB02xvGh8mLQwBawJ1y9EGHiBkakqFvB99+/Krkv+TO/ST24e2cQj3ivVeAShrXR4HSVdzYQuin2hwfIxV/oWvpsl6/NCTmZdf7b+gPmTBpF3nGFyp228Qq1QLS2g7vICHF+2r4ibsC1+ODJFoXwX2UEDOzrjtxNypHqZDObmTn9bGPnSCXIEFUuJTgvh5vXwaRnoZEwGuG0ZAOuHDKN8AO/vf/EquEahITtgrjkSQZ8fLpRaAZveVe7NSpIXgF6PE0cxH/3VMURtSJC8pcgo0uu7U8jxC+5I8L4TjHgU4yxA0WSq+cgmdDggj5o5LC+jtzKMEI+kcS9qs/iNfDSdMaRZgd4Cj/RJmkPYZEbjfbZTq0MgWN1tFoxBpOe65OuKtAfFDdZHVunUk2awFEENRkt8p0V5SNvyKA3risntCywmhYJTXNP8lk6fpV/d4CT5bNoJbxCtrLyPY0yY9YoVuLK3c6269jXcMxcZK+PpVCGmI/7v+K+Jr6e8iNgxOpBvsrAIceiicln+ruNahS+7ygfllWak4DWZns2VTH/sW8oyfTaR8prhKCESyxnsVcMCDOaf4EwBuG+YZY4XYPG1rf9YCNNHM8ODt9mRV/hiC6e2jd9BEwlqBsLG5ZUISAMvMdC01ZvmiNXZX8XrsFBiBG1hWzS1T1cOL8/Uh2B+OZwWOpyJIwxZXnHsYA+VknLUr329gHBU6nDCFMnfVwPVoJCqB0umO3HZxNOGItLt/OsQixJnmeqzpS5mwallJ7lYgEE0lMEMOgCck6rwaM9K4M4MDq9tFrq0DQBTJ/WsYGHLBV7oAHIuERGtsecmHeNj9dDg4B183jX8WzB4vMzFr1ikZMVbFZS4ukdt58OfIXcyxBA93lRw9H1izTgwyd73UWRRFE2ZI4W+5QaJWWrSTMcLTOIrblvvVcw0qyDXjf4oYcPorDPA7ZojQKWKaU69oH1afG6BMi5l+nAoEmY8alkHSU04RIQHK7vMfBjNeKMioWZ37Yy5yLugOMOL9ExCVmAiRiKXk7Q12owGYY7htEmvmbXMz8cuPJsgJkTX829U4L/DaSglnWoo4E+eYXp8+lXETKarpQnTyEICFSfmJKdWdQ+IRHZEoPSVfK1Jc1m6MqKbI2MzIXi6R9Zwsfw/25PDGyczvqDPODRj/u09rAPe1GQj+QwxJGUMZ4KEBRal9MQkLIprFw/OzN3T3/wk+Xo0B+kLQcOiHFRYcmokaiGhTsrD3QikYv6wbQw+4r5zsx7be+ib1fhjGSz7CG1Ez3I7gUWB1REgEMfiDv7FrvJa1ahqy3GT3AQ9LZyLEq73/khQ7rxkbc0eEt3zVFDjJTC4ehR+xFWnCWcsqWs18N5Q2+7BIz4nMkAzn4Hqv9XnobxMNie26cbmAu6li7n6pspgSWHoNo89UFrrjhhbo5ZSLn2Mzdfd+qgtOY+XkgvKcQdDNUNYhX0G5NGuBj9fuUZaRBAGRDucm0SPHVO5rgHYFVBz4sXvt+RORpkICYIIDEnl01IY4k33EdsxHaeZcK+6CFpnpM0uNjYZdmv//GrYntS9f90jfiDvvYF1oImbW7Iyi3CPSer80ls0XeIginR6MBauoOSttrLhjNdo7vG8ksZN6sUSVcc140mfzl7c/n1Adq1EJJAeHvwWxmPrHeBspa3Ygf0G+BGxktMLIYpVo1BLrsYG49/+9iOW3dFnMIU2k3uF0Qsm5ujFrfjoTTnKL8by1CaKZnmhOcsgPTwpfIRHATuSwz4XFsFsg0mxhqVJLHC0Rg/B5yshGuhANzzO2u3u8xJL5CEQbjE+qVZGWSAb1eFubu+ouMpXDOS5ejHw+sdCPL4yhkrQ40+46iiNEfvn9eyoxQXF617WPrbdhW7hRDNyVEP4c/qDmkTGp6vD9X+YmeBzUilv/Y9y+jz6B0h57Yx8v+CNP/txgpQ5V8MrbUNdFUjpy6DlIakaV7al/cTANbHLOQtk3DreTisfDNqQm6HB7CPA5xjYcPcBag0bSix3Jjpf0ybXSvak5z1SedgEKmrni9FEifWeAtchHhM1TxOyzEuISeTv66gY8UN4TEwjsp+wZVMVXNjEKASB1X6JhvsszIWReBdjZprlZz4/UGEfblnPU0KiN8CYi4tFnLYXR5u0cZO4AmodKMuS6sCzLC2bZ4KGaDnCnwFNrMLfUhbNkmbfTALnzjblR4QB4yT4ymr9ekVhdmAFCxWkYbkPqZ6/x1PAauAJnOL8glpKvGuswKGpUU7EgDWartfGerAsLJnNfXQj59EbJvpr84hrDgpEDCnjGGkBQHfY7+BzgLHw2nR4IpH5gUxLmV/jiNxrdJLeKDJv06xx0SgwF9jSDsFnAidjsJ4OLiTXVbbIcCtMd9poDFZZ3tYmwScg+CDhshnmE/ODgbEr0sHxJQWZh98Sr676G0ePJqdWQaBKXGTIGQrP7DodUIvJ3kvZLglvTEhGWESgX1KeUZvmg12iN7PgmO8yZmvxxTnU9ei/rGiXvlQ3lvw+KaoAx1I3SMaBUeKuqzb6cUCIbAgPHIqP0h52KZPoErkPMYNWHxwUV5pojqxkqZQ8Lp4WZWdPgDzo1MFyTO0K6stVuqnmRlEiXaofe4oJEUGR/5hRa4IZ4jbLndUmR1U6rdKxNeEcvH++s9qOiz8XoVvhL5UTWLsHM3kUc+1WAQ2BE2o/PrVeFSAAAAAAAAAAARDXsMhRezJAAmTi4DMAAAAgcxU8ShjdoDenAAABKe7EIzK4HQG9OAAACU92IRmVwOgN6cAAAEp7sQjMrgdAb04AAAJT3YhGZXA6A3pwAAASnuxCMyuB0BvTgAAAlPdiEZlcDoDenAAABKe7EIzK4HQG9OAAACU92IRmVwOgN6cAAAEp7sQjMrgdAb04AAAJT3YhGZXA6A3pwAAASnuxCMyuB0BvTgAAAlPdiEZlcDoDenAAA") no-repeat center bottom;
  background-size:100% 100%;
  pointer-events:none;
}
/* ═══ LES COLLINES SUR LE SITE — FIN ═══ */
