html{scroll-padding-top:calc(var(--header-h) + 12px)}.only-mobile{display:none}.br-mobile{display:none}@media(max-width:860px){.only-mobile{display:block}.hide-mobile{display:none!important}.br-mobile{display:inline}}@media(max-width:1080px){:root{--header-h:66px}.topbar{display:none!important}.site-header .wrap-full{display:flex!important;align-items:center;justify-content:space-between;gap:12px;min-height:var(--header-h)}.site-header .head-side{display:none!important}.nav{display:none!important}.site-header .logo{gap:10px}.site-header .logo svg{width:40px;height:40px}.site-header .logo-word{font-size:1.1rem}.site-header .logo-word span{font-size:.53rem;letter-spacing:.15em;margin-top:4px}.burger{display:grid!important;place-items:center;margin:0;width:46px;height:46px;border-radius:14px;background:var(--paper);color:var(--forest);transition:background-color .2s ease}.burger:active{background:var(--mint)}}@media(max-width:360px){.site-header .logo-word span{display:none}.site-header .logo-word{font-size:1.02rem}}.mnav-backdrop,.mnav{display:none}@media(max-width:1080px){.mnav-backdrop{display:block;position:fixed;inset:0;z-index:98;background:rgba(8,24,14,.55);opacity:0;visibility:hidden;transition:opacity .3s ease,visibility .3s ease}.mnav-backdrop.is-open{opacity:1;visibility:visible}.mnav{display:flex;flex-direction:column;position:fixed;top:0;right:0;bottom:0;z-index:99;width:100%;background:#fff;transform:translateX(101%);visibility:hidden;transition:transform .34s cubic-bezier(.3,.85,.3,1),visibility .34s ease;box-shadow:-24px 0 70px rgba(8,24,14,.34);overscroll-behavior:contain}.mnav.is-open{transform:none;visibility:visible}}.mnav-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px 14px 20px;border-bottom:1px solid var(--line);flex:0 0 auto}.mnav-head .logo-word{font-size:1.02rem}.mnav-head .logo-word span{font-size:.5rem}.mnav-close{width:44px;height:44px;flex:0 0 auto;border:0;padding:0;cursor:pointer;display:grid;place-items:center;border-radius:14px;background:var(--paper);color:var(--forest)}.mnav-body{flex:1 1 auto;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:6px 0 4px}.mnav-links{list-style:none;margin:0;padding:0}.mnav-links a{display:flex;align-items:center;justify-content:space-between;padding:15px 20px;text-decoration:none;font-weight:700;font-size:1.02rem;color:var(--forest);border-bottom:1px solid var(--line)}.mnav-links a::after{content:"";width:8px;height:8px;flex:0 0 auto;border-right:2px solid var(--muted);border-bottom:2px solid var(--muted);transform:rotate(-45deg);opacity:.55}.mnav-links a[aria-current="page"]{color:var(--green);background:rgba(123,179,63,.09)}.mnav-links a[aria-current="page"]::after{border-color:var(--green);opacity:1}.mnav-links a:active{background:var(--paper)}.mnav-foot{flex:0 0 auto;padding:18px 20px calc(20px + env(safe-area-inset-bottom));border-top:1px solid var(--line);background:var(--paper)}.mnav-foot .btn{width:100%;padding:15px 20px;font-size:1rem}.mnav-foot .btn + .btn{margin-top:10px}.mnav-meta{margin:16px 0 0;font-size:.84rem;line-height:1.5;color:var(--muted)}.mnav-meta a{color:var(--forest);font-weight:700;text-decoration:none}.mnav-socials{display:flex;gap:10px;margin-top:14px}.mnav-socials a{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:#fff;border:1px solid var(--line);color:var(--forest)}.mbar{display:none}@media(max-width:860px){.mbar{display:flex;gap:9px;position:fixed;left:0;right:0;bottom:0;z-index:80;padding:9px 12px calc(9px + env(safe-area-inset-bottom));background:rgba(255,255,255,.93);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-top:1px solid var(--line);transform:translateY(130%);transition:transform .32s cubic-bezier(.3,.85,.3,1)}.mbar.is-in{transform:none}.mbar a{display:flex;align-items:center;justify-content:center;gap:8px;height:50px;border-radius:40px;text-decoration:none;font-weight:700;font-size:.98rem;line-height:1}.mbar .m-call{flex:1 1 0;background:var(--forest);color:#fff}.mbar .m-quote{flex:1 1 0;background:var(--green);color:#fff}.mbar a:active{transform:scale(.98)}.site-footer{padding-bottom:calc(104px + env(safe-area-inset-bottom))!important}}@media(max-width:860px){:root{--gutter:18px}section{padding:46px 0}main>section{padding-block:46px!important}h1,h2,h3,h4,.page-hero h1,.prose h2,.bg-head h2{text-wrap:wrap}h2{font-size:1.6rem}.prose h2{font-size:1.62rem!important}.bg-head h2{font-size:1.62rem}h3{font-size:1.1rem}.lead{font-size:1rem}.sec-head{margin-bottom:24px}.eyebrow{font-size:.82rem;margin-bottom:.6rem}p{font-size:1rem}.btn{padding:15px 24px;font-size:.98rem}}@media(max-width:860px){.hero{min-height:0;padding:36px 0 46px}.hero-media img{object-position:60% 18%!important}.hero-media::after{background:linear-gradient(180deg,rgba(8,24,14,.92) 0%,rgba(8,24,14,.78) 46%,rgba(8,24,14,.62) 100%)!important}.hero .kicker{font-size:.68rem;letter-spacing:.13em;margin-bottom:.9rem}.hero .kicker::before{width:22px}.hero h1{font-size:2.05rem;line-height:1.13;margin-bottom:.55em}.hero p{font-size:1rem;line-height:1.6}.hero-actions{flex-direction:column!important;gap:10px!important;margin-top:24px!important;width:100%;align-items:center}.hero-actions .btn{width:min(100%,250px);padding:13px 18px;font-size:.94rem}.hero-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-top:24px;width:100%}.hstat{flex-direction:column;align-items:center;justify-content:flex-start;text-align:center;gap:3px;padding:11px 6px 12px;border-radius:13px}.hero-stats .hstat b,.hero-stats .hstat b>span,.hero-stats .hstat b [data-count]{font-size:1.22rem!important;line-height:1.1!important}.hstat span{font-size:.63rem;line-height:1.25}.hstat .stars{font-size:.6rem;letter-spacing:.5px;margin-bottom:1px}.hstat .hstat-link{text-underline-offset:2px}.stars{font-size:.8rem;letter-spacing:1px}}@media(max-width:860px){.page-hero{padding:44px 0 42px!important}.page-hero h1{font-size:1.95rem!important;line-height:1.14}.page-hero .lead{font-size:1rem!important;line-height:1.58}.page-hero .hero-kicker{font-size:.68rem!important;letter-spacing:.13em!important;margin-bottom:.85rem!important}.page-hero .hero-actions{flex-direction:column!important;gap:10px!important;margin-top:24px!important;width:100%;align-items:center!important}.page-hero .hero-actions .btn{width:min(100%,250px);padding:13px 18px;font-size:.94rem}.crumbs{font-size:.8rem}}@media(max-width:860px){.trust ul{grid-template-columns:1fr!important}.trust li{padding:20px 10px;flex-direction:column;align-items:center;justify-content:center;gap:9px;text-align:center;border-right:0!important;border-bottom:1px solid var(--line)}.trust li>span:last-child{display:block}.trust li:last-child{border-bottom:0}.trust .ico{width:34px;height:34px;border-radius:11px}.trust .ico svg{width:18px;height:18px}.trust b{font-size:.9rem;line-height:1.2}.trust span{font-size:.78rem;margin-top:2px}}@media(max-width:1080px){.split{display:flex!important;flex-direction:column!important}.split .split-media,.split .mosaic{order:-1!important}.split .prose,.split>div:not(.split-media):not(.mosaic){order:1}.nursery .cols{display:flex!important;flex-direction:column!important}.nursery .mosaic{order:-1!important}.nursery .cols>div:not(.mosaic){order:1}.about .cols{display:flex!important;flex-direction:column!important}.about .about-media{order:-1!important}}@media(max-width:860px){.split-media img{aspect-ratio:4/3!important;max-height:none!important;border-radius:24px 8px 24px 8px}.about-media img{min-height:0!important;height:auto!important;aspect-ratio:4/3;border-radius:24px 8px 24px 8px}.about-badge{right:14px;bottom:-16px;padding:13px 20px;border-radius:16px}.about-badge b{font-size:1.55rem}.about-badge span{font-size:.72rem}.about .cols{gap:34px}.feat{gap:11px;margin-top:26px}.feat div{padding:16px 18px;border-radius:16px}.feat h4{font-size:.96rem}.feat p{font-size:.86rem}}@media(max-width:860px){.mosaic{display:grid!important;grid-template-columns:1fr 1fr!important;grid-template-rows:none!important;height:auto!important;gap:9px}.mosaic figure{grid-row:auto!important;grid-column:auto!important;border-radius:14px;cursor:zoom-in}.mosaic figure:nth-child(n+3){display:none}.mosaic img{aspect-ratio:3/4!important;height:auto!important}.mosaic figcaption{font-size:.74rem;line-height:1.25;padding:22px 10px 9px}.varieties li{padding-left:14px;margin-bottom:.7rem}.varieties b{font-size:.98rem}.varieties span{font-size:.88rem}}@media(max-width:860px){.svc-grid{gap:14px}.svc{border-radius:26px 8px 26px 8px}.svc-img{aspect-ratio:16/10}.svc-body{padding:20px 20px 24px}.svc-body>p{font-size:.93rem;margin-bottom:.8rem}.svc ul{font-size:.9rem;margin-bottom:18px}.tax .cols{gap:26px}.tax-card{padding:26px 20px;border-radius:24px}.tax-num{font-size:4rem}.tax-card h3{font-size:1.1rem;margin:14px 0 8px}.tax-list{gap:13px;margin-bottom:26px}.tax-list li{padding-left:36px;font-size:.95rem}.tax-card .simu b{font-size:1.3rem}.steps{gap:11px}.step{padding:20px 18px;border-radius:16px}.step .num{width:42px;height:42px;border-radius:13px;font-size:1.05rem;margin-bottom:14px}.step h3{font-size:1.04rem}.step p{font-size:.9rem}.bg-steps li,.bg-cards li,.bg-season li{padding:18px 17px}.bg-steps b,.bg-season b{font-size:.99rem}.bg-steps span.t,.bg-season span,.bg-cards p{font-size:.9rem}.bg-panel>div{padding:20px 18px}.checklist li{padding-left:34px;font-size:.94rem}.prose>.btn,.nursery .cols>div>.btn{display:flex;width:min(100%,340px);margin-inline:auto}.cta-band .wrap{flex-direction:column;align-items:flex-start;gap:18px}.cta-band .btn{width:100%}}@media(max-width:860px){.gallery-grid{grid-template-columns:1fr 1fr!important;grid-auto-rows:auto!important;gap:9px}.gallery figure{border-radius:14px}.gallery figure.g-big{grid-column:span 2!important;grid-row:auto!important}.gallery img{aspect-ratio:1;height:auto}.gallery figure.g-big img{aspect-ratio:16/10}.gallery figcaption{opacity:1;transform:none;font-size:.75rem;line-height:1.25;padding:24px 11px 9px}}@media(max-width:860px){.reviews-top{gap:16px}.reviews-top{flex-direction:column;align-items:flex-start}.score{width:auto;max-width:100%;padding:14px 18px;gap:14px;border-radius:16px}.score b{font-size:2rem}.score small{font-size:.83rem}.score .stars{font-size:.95rem;letter-spacing:2px}.rev{padding:22px 20px;border-radius:18px}.rev p{font-size:.94rem;margin:12px 0 18px}.rev-grid{gap:12px}}.zone-mobile,.zone-note{display:none}@media(max-width:860px){.zone .map-shell,.zone .town-list,.zone .zone-info{display:none!important}.zone-mobile{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:22px 0 0;padding:0;list-style:none}.zone-mobile li{display:flex;align-items:center;justify-content:space-between;gap:8px;background:var(--paper);border:1px solid var(--line);border-radius:13px;padding:11px 13px}.zone-mobile b{font-size:.87rem;font-weight:700;color:var(--forest);line-height:1.2}.zone-mobile span{font-size:.76rem;color:var(--muted);white-space:nowrap;flex:0 0 auto}.zone-note{display:block;margin:16px 0 0;font-size:.84rem;color:var(--muted)}.zone .btn{width:100%;margin-top:18px}}@media(max-width:860px){.faq .acc{margin-top:1.5rem!important}.acc summary{font-size:.96rem;padding:17px 34px 17px 0;line-height:1.38;text-wrap:pretty}.acc summary::after{right:4px}.acc .answer{padding:0 4px 20px 0;font-size:.93rem}}@media(max-width:860px){.contact .cols{gap:22px}.quote-form{padding:22px 18px;border-radius:22px}.quote-form h3{font-size:1.24rem}.quote-form>p{font-size:.9rem;margin-bottom:18px}.f-row{grid-template-columns:1fr;gap:0}.field{margin-bottom:14px}input,select,textarea{font-size:16px!important;padding:13px 14px}textarea{min-height:108px}.consent{margin-bottom:18px}.consent label{font-size:.83rem;line-height:1.45}.btn-block{padding:16px 20px}.form-note{font-size:.88rem}.info-list{margin-top:22px;gap:15px}.info-list li{gap:13px}.info-list .ico{width:40px;height:40px}.info-list .ico svg{width:17px;height:17px}.info-list a,.info-list span{font-size:.93rem}}.f-legal{display:flex;flex-direction:column;gap:5px}@media(max-width:1080px){.f-cols{grid-template-columns:1fr 1fr}}@media(max-width:860px){.site-footer{padding-top:44px;font-size:.93rem}.f-cols{grid-template-columns:1fr!important;gap:0;padding-bottom:26px}.f-cols>div{padding:28px 0 26px}.f-cols>div:first-child{padding-top:0}.f-cols>div:last-child{padding-bottom:8px}.f-cols>div + div{border-top:1px solid rgba(255,255,255,.12)}.site-footer .logo svg{width:42px;height:42px}.site-footer .logo-word{font-size:1.12rem}.site-footer h4{font-size:.95rem;margin-bottom:.75rem}.site-footer ul{gap:10px}.site-footer .f-cols>div:first-child p{font-size:.9rem;line-height:1.6}.socials{margin-top:16px}.socials a{width:40px;height:40px}.f-cols>div:last-child .btn{width:100%;margin-top:16px!important;padding:14px 20px!important}.f-bottom{flex-direction:column;align-items:flex-start;gap:16px;padding:20px 0 22px;font-size:.85rem}.f-bottom ul{order:-1;flex-wrap:wrap;gap:10px 20px}.f-legal{gap:6px}.f-credit{color:rgba(255,255,255,.5)}}@media(max-width:860px){.legal{max-width:none}.legal h2{font-size:1.3rem}.scroll-hint{display:none}.svc:hover,.rev:hover,.step:hover,.score:hover,.feat div:hover{transform:none;box-shadow:none}}@media(hover:none){.btn:hover{transform:none}}@media(hover:none){.step:hover{background:rgba(255,255,255,.05)!important;border-color:rgba(255,255,255,.12)!important;transform:none!important}.step:hover::before{opacity:0!important}.step:hover .num{background:rgba(216,180,90,.16)!important;transform:none!important}.svc:hover{transform:none!important;box-shadow:none!important;border-color:var(--line)!important}.svc:hover .svc-img img,.mosaic figure:hover img,.gallery figure:hover img{transform:none!important}.rev:hover,.score:hover,.feat div:hover,.hstat:hover{transform:none!important;box-shadow:none!important}.trust li:hover{background:transparent!important}.trust li:hover .ico{transform:none!important}.varieties li:hover{transform:none!important;border-color:var(--sprout)!important}.info-list li:hover{transform:none!important}.bg-steps li:hover,.bg-cards li:hover,.bg-season li:hover,.bg-steps li:focus-within,.bg-cards li:focus-within,.bg-season li:focus-within{transform:none!important;box-shadow:none!important;border-color:rgba(18,50,29,.11)!important}.bg-steps li:hover .num{background:#12321D!important;transform:none!important}}.tax-cta{display:none}@media(max-width:1080px){.tax .cols{display:flex!important;flex-direction:column!important}.tax .cols>div:first-child{order:0}.tax .cols .tax-card{order:1}.tax .cols>.tax-cta{order:2;display:flex;justify-content:center;width:100%;margin-top:4px}.tax .cols>.tax-cta .btn{width:min(100%,340px)}}.form-legal{margin:14px 0 0;font-size:.83rem;line-height:1.5;color:var(--muted);text-align:center}.quote-form h3,.contact.on-dark .quote-form h3{color:var(--forest)!important;margin-bottom:18px}.bg-sec{border-top:1px solid rgba(18,50,29,.12)}.bg-mint{background:var(--mint)}.bg-warm{border-top-color:rgba(18,50,29,.12)}.mzoom{position:fixed;inset:0;z-index:9999;display:flex;align-items:center;justify-content:center;background:rgba(8,24,14,.94);opacity:0;transition:opacity .25s ease;padding:16px}.mzoom[hidden]{display:none}.mzoom.is-open{opacity:1}.mzoom figure{margin:0;max-width:min(1100px,94vw);display:flex;flex-direction:column;align-items:center;gap:12px}.mzoom img{max-width:100%;max-height:78vh;width:auto;height:auto;border-radius:14px;display:block}.mzoom figcaption{color:rgba(255,255,255,.85);font-size:.92rem;text-align:center}.mzoom-close{position:absolute;top:18px;right:18px;width:46px;height:46px;display:grid;place-items:center;border-radius:50%;border:1px solid rgba(255,255,255,.28);background:rgba(255,255,255,.08);color:#fff;cursor:pointer}.mzoom-prev,.mzoom-next{position:absolute;top:50%;transform:translateY(-50%);width:46px;height:46px;display:grid;place-items:center;border-radius:50%;border:1px solid rgba(255,255,255,.28);background:rgba(255,255,255,.08);color:#fff;cursor:pointer}.mzoom-prev{left:12px}.mzoom-next{right:12px}#contact,#credit,#zone,#services{scroll-margin-top:calc(var(--header-h) + 6px)}@media(max-width:860px){.bg-head .eyebrow,.bg-head h2,.bg-head p,.split-media img,.mosaic figure,.trust li,.checklist li,.bg-steps li,.bg-cards li,.bg-season li,.bg-panel>div,.faq .acc details,.varieties li{animation:none!important;animation-timeline:none!important}.mrise{opacity:0!important;transform:translateY(24px)!important;transition:opacity .7s cubic-bezier(.22,.9,.3,1),transform .7s cubic-bezier(.22,.9,.3,1)}.mrise.mrise-in{opacity:1!important;transform:none!important}}@media(prefers-reduced-motion:reduce){.mrise{opacity:1!important;transform:none!important;transition:none!important}}a[x-apple-data-detectors],a[x-apple-data-detectors] *{color:inherit!important;text-decoration:none!important;font-size:inherit!important;font-weight:inherit!important;line-height:inherit!important;pointer-events:none}.feat h3{font-size:1.05rem;font-weight:700;margin-bottom:.35em;line-height:1.25}.trust>.wrap-full{width:100%;margin-inline:0}.trust li{padding-inline:clamp(14px,2vw,28px)}@media(max-width:860px){.trust li{padding-inline:var(--gutter)}}@media(max-width:860px){.trust{display:none}body.p-accueil .trust{display:block}}

/* =========================================================================
   27. HARMONISATION DES TEXTES ET DES ESPACEMENTS (toutes pages)
   Les pages intérieures reprennent le gabarit de l'accueil : même taille
   de titre, même filet doré, listes calées sur la marge du texte.
   ========================================================================= */
.prose .eyebrow,.bg-head .eyebrow{margin:0 0 .8rem!important}
.prose h2,.bg-head h2{font-size:clamp(1.9rem,3.1vw,3rem)!important;line-height:1.1!important;margin:0 0 .55em!important}
.prose > p{margin:0 0 1.15em}
.bg-head{max-width:min(100%,1000px)}
.bg-head p{max-width:64ch}
.prose ul.checklist,.checklist{padding-left:0!important;margin:1.6rem 0 0!important;gap:16px}
.checklist li{margin:0!important;padding-left:38px;line-height:1.5;font-size:1rem}
.checklist li::before{top:0}
.prose .btn{margin-top:2.2rem!important}
main > section > .wrap.split{gap:clamp(40px,5vw,96px)}
/* galerie : la phrase d'intro tient sur une ligne sur ordinateur */
.gallery .sec-head{max-width:none}
.gallery .sec-head p{max-width:none}

/* Crédit d'impôt : montants et flèche sur le même axe */
.tax-card .simu > div{display:flex;flex-direction:column;align-items:center;text-align:center}
.tax-card .simu .arrow{display:flex;justify-content:center;align-items:center;transform:none!important}
.tax-card .simu .arrow svg{display:block}
@media(max-width:720px){
  .tax-card .simu{gap:10px}
  .tax-card .simu .arrow svg{transform:rotate(90deg)}
}

@media(max-width:860px){
  .prose h2,.bg-head h2{font-size:1.7rem!important;margin:0 0 .6em!important}
  .prose .eyebrow,.bg-head .eyebrow{margin:0 0 .7rem!important}
  .prose ul.checklist,.checklist{margin:1.4rem 0 0!important;gap:14px}
  .checklist li{padding-left:36px;font-size:.97rem}
  .prose .btn,.prose > .btn{margin-top:1.9rem!important}
  .split{gap:30px!important}

  /* Avis : défilement horizontal au lieu d'une pile */
  .rev-grid{
    display:flex!important;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;
    margin-inline:calc(var(--gutter) * -1);padding:4px var(--gutter) 14px;
    scroll-padding-inline:var(--gutter);scrollbar-width:none;-webkit-overflow-scrolling:touch;
  }
  .rev-grid::-webkit-scrollbar{display:none}
  .rev-grid .rev{flex:0 0 84%;scroll-snap-align:start;opacity:1!important;transform:none!important}
}
@media(max-width:1080px){
  /* photos et textes sur la même marge, carte « 50 % » pleine largeur */
  .split > *,.nursery .cols > *,.about .cols > *{width:100%;align-self:stretch}
  .tax .cols .tax-card{width:100%;align-self:stretch}
}

/* =========================================================================
   28. PÉPINIÈRE / LISTES À FILET : même alignement que l'accueil
   ========================================================================= */
.prose ul.varieties,.varieties{padding-left:0!important;margin:1.6rem 0 1.8rem!important;gap:18px}
.varieties li{margin:0!important;animation:none!important;opacity:1!important;translate:none!important}
@media(min-width:1081px){
  /* les photos occupent toute la hauteur du texte, haut aligné sur le titre */
  .split:has(> .mosaic){align-items:stretch!important}
  .split > .mosaic{height:auto!important;min-height:min(76vh,640px)}
}

/* =========================================================================
   29. CARTE DE LA ZONE D'INTERVENTION
   ========================================================================= */
.map-shell{background:linear-gradient(160deg,#F7FAF2 0%,var(--mint) 100%);padding:clamp(18px,2vw,30px) clamp(18px,2vw,30px) clamp(16px,1.6vw,22px)}
.map-shell svg{overflow:visible}
.map-ringlabel rect{fill:#fff;stroke:rgba(63,122,34,.25);stroke-width:.3}
.map-ringlabel text{fill:var(--green);font-weight:700}
.map-north path{fill:var(--forest);opacity:.55}
.map-north text{fill:var(--forest);opacity:.55;font-weight:800}
.map-town{cursor:pointer;outline:none}
.map-town .map-pt{fill:#fff;stroke:var(--green);stroke-width:.85;transition:fill .2s ease}
.map-town .map-ring{fill:rgba(63,122,34,.14);stroke:var(--green);stroke-width:.35;opacity:0;transition:opacity .25s ease}
.map-town .map-name{fill:var(--muted);font-weight:600;transition:fill .2s ease}
.map-town:hover .map-pt,.map-town:focus-visible .map-pt{fill:var(--sprout)}
.map-town:hover .map-name,.map-town:focus-visible .map-name{fill:var(--forest)}
.map-town.is-active .map-pt{fill:var(--green);stroke:#fff;stroke-width:.7}
.map-town.is-active .map-ring{opacity:1}
.map-town.is-active .map-name{fill:var(--forest);font-weight:800}
.map-route{stroke:var(--green);stroke-width:.6;stroke-dasharray:1.5 1.2;stroke-linecap:round;opacity:0;transition:opacity .25s ease}
.map-route.is-on{opacity:1}
.map-km{transition:transform .35s cubic-bezier(.2,.8,.3,1),opacity .25s ease}
.map-km rect{fill:var(--forest)}
.map-km text{fill:#fff;font-weight:700}
.map-shell .map-note{margin-top:10px;font-size:.8rem;line-height:1.5}

/* =========================================================================
   30. GRANDS ÉCRANS : les textes utilisent toute la largeur disponible
   Au-delà de 1280 px, plus de colonnes de texte artificiellement étroites :
   titres et chapeaux tiennent sur une ligne quand la place le permet.
   ========================================================================= */
@media(min-width:1280px){
  .sec-head,.bg-head{max-width:none!important}
  .sec-head p,.bg-head p,.sec-head .lead,.bg-head .lead{max-width:none!important}
  .prose > p,.cols p,.split p,.contact p,.quote-form > p{max-width:none!important}
  .prose h2,.cols h2,.split h2,.contact h2{text-wrap:pretty}
}

/* Titres coupés à un endroit choisi sur grand écran (span.l = une ligne) */
@media(min-width:1280px){
  h2 .l{display:block;text-wrap:balance}
  .about .cols{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr)}
}
@media(min-width:1280px) and (max-width:1599px){
  .contact h2 .l{display:inline}
}
/* libellés de la carte lisibles même quand le trait passe dessous */
.map-home text,.map-town .map-name{paint-order:stroke;stroke:#EDF3E4;stroke-width:1.1px;stroke-linejoin:round}
/* bouts de phrase à garder sur une même ligne */
.nw{white-space:nowrap}

/* =========================================================================
   31. HÉROS D'ACCUEIL SUR ÉCRAN DE PORTABLE (peu de hauteur)
   Les trois chiffres (avis, crédit d'impôt, expérience) restent visibles
   sans défiler : titre sur trois lignes à taille réduite, marges resserrées.
   ========================================================================= */
@media(min-width:1081px) and (max-height:1000px){
  .hero{padding:clamp(28px,5vh,56px) 0 clamp(28px,4.5vh,48px)}
  .hero-inner{max-width:min(820px,56vw)}
  .hero h1{font-size:min(clamp(2.4rem,4.6vw,4.4rem),6.6vh);margin-bottom:.4em;max-width:12.2em}
  .hero .kicker{margin-bottom:min(1.4rem,2.2vh)}
  .hero p{font-size:clamp(1rem,1.1vw,1.1rem);line-height:1.6;max-width:62ch}
  .hero-actions{margin-top:min(34px,3.4vh)}
  .hero-stats{margin-top:min(56px,4.6vh)}
  .hero-stats .hstat{padding:12px 20px}
  .hero-stats .hstat b,.hero-stats .hstat b > span,.hero-stats .hstat b [data-count]{font-size:min(2rem,4.2vh)!important}
  .scroll-hint{display:none}
}
@media(max-width:1080px){.site-header .logo{gap:3px}.site-header .logo .logo-img{height:48px}.site-header .logo-stems{height:54px;width:27px}}.mnav-head .logo{gap:3px}.mnav-head .logo .logo-img{height:44px}.mnav-head .logo-stems{height:50px;width:25px}@media(max-width:360px){.site-header .logo .logo-img{height:42px}.site-header .logo-stems{height:48px;width:23px}}@media(max-width:860px){.site-footer .logo .logo-img{height:58px}.site-footer .logo-stems{height:66px;width:33px}}@media(max-width:860px){.lieu-grid{grid-template-columns:1fr 1fr;grid-auto-rows:auto;gap:9px}.lieu-grid figure{border-radius:14px}.lieu-grid figure.l-big{grid-column:span 2;grid-row:auto}.lieu-grid img{aspect-ratio:1;height:auto}.lieu-grid figure.l-big img{aspect-ratio:4/3}.lieu-grid figcaption{font-size:.75rem;line-height:1.25;padding:24px 11px 9px}.lieu-foot{flex-direction:column;align-items:stretch}.lieu-foot .btn{width:min(100%,340px);margin-inline:auto}.lieu-grid figure:hover img{transform:none}}@media(max-width:860px){.lieu-grid figure:last-child{grid-column:span 2}.lieu-grid figure:last-child img{aspect-ratio:16/10}}@media(max-width:860px){.lieu-strip{grid-template-columns:1fr 1fr;gap:9px}.lieu-strip figure{border-radius:14px}.lieu-strip figure:first-child{grid-column:span 2}.lieu-strip figcaption{font-size:.75rem;padding:22px 10px 8px}}@media(max-width:1080px){.site-header .wrap-full{display:grid!important;grid-template-columns:46px 1fr 46px;justify-content:initial}.site-header .logo{grid-column:2;justify-self:center;margin:0}.site-header .burger{grid-column:3;justify-self:end}.site-header .logo .logo-img{height:40px}.site-header .logo-stems{height:46px;width:23px}}@media(max-width:360px){.site-header .logo .logo-img{height:36px}.site-header .logo-stems{height:42px;width:21px}}@media(max-width:860px){.site-footer .f-cols>div:first-child .logo{display:flex;justify-content:center;width:100%}}
/* Agrandissement des photos : le focus est porté par l'image (rôle button) */
.mosaic figure:has(img:focus-visible),.gallery-grid figure:has(img:focus-visible){outline:3px solid #3F7A22;outline-offset:3px}.mosaic figure img:focus-visible,.gallery-grid figure img:focus-visible{outline:none}
