
/* Comptoir des Anges : feuille de style. Téléphone d'abord. */
:root{
  --encre:#171717; --texte:#2A2A2A; --gris:#6B6B6B; --gris-clair:#F5F5F2; --ligne:#E8E8E4;
  --champ:#8C8C87; --bleu:#81D8D0; --bleu-fonce:#1F8A82; --bleu-texte:#1A7A73; --bleu-pale:#EAF8F6;
  --sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  --titre:"Bodoni Moda","Didot","Bodoni 72",Georgia,serif;
  --r:24px; --r-petit:14px;
  --max:68rem;
}
@font-face{font-family:"Bodoni Moda";src:url("fonts/bodoni-moda.woff2") format("woff2");font-weight:400 900;font-display:swap}
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{margin:0;font-family:var(--sans);font-size:1.0625rem;line-height:1.65;color:var(--texte);background:#fff}
a{color:var(--bleu-texte);text-decoration:none}
a:hover{text-decoration:underline;text-underline-offset:3px}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--bleu-fonce);outline-offset:2px}
img{max-width:100%;height:auto;display:block}
h1,h2,h3{font-family:var(--titre);font-weight:600;color:var(--encre);line-height:1.08;margin:0 0 .5em;letter-spacing:-.01em}
h1{font-size:clamp(2.4rem,7vw,4rem)}
h2{font-size:clamp(1.8rem,4vw,2.5rem)}
h3{font-size:1.35rem}
p{margin:0 0 1em}
.sur-titre{font-size:.8rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--bleu-texte);margin:0 0 .8em}
.intro{font-size:1.125rem;color:var(--gris);max-width:36em}
.contenu{max-width:var(--max);margin:0 auto;padding:0 1.25rem}
.texte{max-width:36em}
section{padding:2.5rem 0}
.fond{background:var(--gris-clair)}

/* Bandeau */
.menu{position:sticky;top:0;z-index:10;background:rgba(255,255,255,.85);backdrop-filter:saturate(180%) blur(12px);-webkit-backdrop-filter:saturate(180%) blur(12px);border-bottom:1px solid var(--ligne);color:var(--encre)}
.menu-inner{position:relative;display:flex;flex-wrap:wrap;align-items:center;gap:.5rem 1.5rem;padding:.8rem 1.25rem;max-width:var(--max);margin:0 auto;min-height:2.5rem}
.menu-nom{display:block;line-height:0;position:absolute;left:50%;top:50%;transform:translate(-50%,-50%)}

.menu-nom img{height:auto;width:min(50vw,calc(100vw - 9.5rem),12rem)}
.menu ul{list-style:none;margin:0;padding:0;display:flex;gap:1.3rem;overflow-x:auto;scrollbar-width:none;flex:1 0 100%;order:3}
.menu ul::-webkit-scrollbar{display:none}
.menu li a{white-space:nowrap;color:var(--encre);font-size:.95rem;font-weight:500;padding:.3rem 0;border-bottom:2px solid transparent;transition:color .3s}
.menu li a:hover,.menu li a[aria-current]{text-decoration:none;border-color:var(--bleu)}
.langues{margin-left:auto;font-size:.85rem;line-height:2.1rem;color:var(--gris);white-space:nowrap;transition:color .3s}
.langues a{color:var(--gris);display:inline-block;padding:.45rem .3rem;margin:-.45rem -.3rem}
.langues .actif{color:var(--encre);font-weight:600}
.langue-bouton{display:none}
.langue-liste{display:inline}
.langue-liste .nom,.sr{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.menu-langues{display:none}
/* Bandeau de l'accueil : transparent sur la photo au départ, verre dépoli une fois replié */
.menu.accueil{position:fixed;left:0;right:0;background:transparent;border-color:transparent;backdrop-filter:none;-webkit-backdrop-filter:none;transition:background .35s,border-color .35s}
.menu.accueil .menu-nom{visibility:hidden;opacity:0;transition:opacity .3s,visibility 0s .3s}
.menu.accueil li a,.menu.accueil .langues,.menu.accueil .langues a{color:#fff;text-shadow:0 1px 6px rgba(0,0,0,.35)}
.menu.accueil .langues a{color:rgba(255,255,255,.75)}
.menu.accueil .langues .actif{color:#fff}
.menu.accueil.replie{background:rgba(255,255,255,.94);border-color:var(--ligne);backdrop-filter:saturate(180%) blur(12px);-webkit-backdrop-filter:saturate(180%) blur(12px)}
.menu.accueil.replie .menu-nom{opacity:1;visibility:visible;transition:opacity .3s}
.menu.accueil.replie li a,.menu.accueil.replie .langues,.menu.accueil.replie .langues .actif{color:var(--encre);text-shadow:none}
.menu.accueil.replie .langues a{color:var(--gris)}
.menu.accueil.replie .langues .actif{color:var(--encre)}
.replie .ouverture-texte{opacity:0;transition:opacity .3s}
.ouverture-texte{transition:opacity .3s}


/* Boutons */
.bouton{display:inline-block;background:var(--bleu);color:var(--encre);font-weight:600;padding:.85rem 1.6rem;border-radius:999px;border:0;font:inherit;font-weight:600;cursor:pointer;transition:transform .15s,background .15s}
.bouton:hover{background:#6ECFC6;text-decoration:none;transform:translateY(-1px)}
.bouton.secondaire{background:#fff;color:var(--encre);border:1.5px solid var(--ligne)}
.bouton.secondaire:hover{background:var(--gris-clair)}

/* Ouverture : photo plein écran */
:root{--p:0;--h:4.1rem;--fin:.39;--cl:1.85rem;--ecran:100vh}
@supports (height:100svh){:root{--ecran:100svh}}
/* La photo reste en place ; le contenu de la page glisse par-dessus. Le script ne déplace que des calques (transform, opacity). */
.heros{position:fixed;top:0;left:0;right:0;z-index:5;height:var(--ecran);overflow:hidden;background:#fff;opacity:calc(min(1, (1 - var(--p))*4))}
.heros-in{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;transform:translate3d(0,calc(var(--p)*(var(--h) - var(--ecran))/2),0);will-change:transform}
.heros .photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.heros .voile{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.12) 0%,rgba(0,0,0,.30) 55%,rgba(0,0,0,.42) 100%);opacity:calc(1 - .73*var(--p))}
.heros-espace{height:var(--ecran)}
.heros ~ section{position:relative;z-index:6}
.heros ~ section:not(.fond){background:#fff}
.ouverture-texte{position:relative;color:#fff;text-align:center;display:flex;flex-direction:column;align-items:center}
.ouverture-texte h1{margin:0;line-height:0;font-family:var(--sans);letter-spacing:0}
.ouverture-logo{display:block;line-height:0;transform:translateY(calc(var(--p)*(var(--cl) - var(--h)/2))) scale(calc(1 - var(--p)*(1 - var(--fin))));will-change:transform}
.ouverture-logo a{display:block;line-height:0}
.ouverture-logo img{width:min(48vw,11rem);height:auto;filter:drop-shadow(0 2px 12px rgba(0,0,0,.45))}
.ouverture-phrase{position:absolute;top:100%;left:50%;transform:translateX(-50%);white-space:nowrap;margin:1.2em 0 0;font-size:clamp(.95rem,4.4vw,1.25rem);font-weight:500;line-height:1.65;color:#fff;text-shadow:0 1px 8px rgba(0,0,0,.4);opacity:calc(1 - var(--p)*3)}
.ouverture-actions{position:absolute;top:100%;left:50%;transform:translateX(-50%);margin-top:5.2rem;display:flex;gap:.8rem;width:max-content;max-width:92vw;flex-wrap:wrap;justify-content:center;opacity:calc(1 - var(--p)*3);pointer-events:auto}
.ouverture-actions .bouton{white-space:nowrap}
.bouton.verre{background:rgba(255,255,255,.14);color:#fff;border:1.5px solid rgba(255,255,255,.7);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.bouton.verre:hover{background:rgba(255,255,255,.28);color:#fff;box-shadow:0 10px 24px rgba(0,0,0,.18)}
.replie .ouverture-actions,.replie .heros{pointer-events:none}

/* Blocs texte + photo */
.duo{display:grid;gap:2rem;align-items:center}
.duo img{border-radius:var(--r);width:100%;aspect-ratio:4/3;object-fit:cover}

/* Cartes */
.cartes{display:grid;gap:1rem}
.carte{display:block;background:var(--gris-clair);border-radius:var(--r);padding:1.3rem;color:inherit;transition:transform .2s}
a.carte:hover{text-decoration:none;transform:translateY(-3px)}
.fond .carte{background:#fff}
.carte h3{margin-bottom:.4em}
.carte p{margin:0;color:var(--gris)}
.carte img{border-radius:var(--r-petit);aspect-ratio:4/3;object-fit:cover;width:100%;margin-bottom:1rem}

/* Pastilles */
.pastilles{display:flex;gap:.6rem;flex-wrap:wrap;margin-top:1.2rem}
.pastille{background:var(--bleu-pale);color:var(--bleu-texte);font-weight:600;font-size:.85rem;padding:.4rem .9rem;border-radius:999px}

/* Galerie bento */
.bento{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem;grid-auto-flow:dense}
.bento img{width:100%;height:100%;aspect-ratio:1/1;object-fit:cover;border-radius:var(--r-petit)}
.bento .grand{grid-column:span 2;grid-row:span 2}
.bento .grand img{aspect-ratio:1/1}

/* FAQ */
details{border-top:1px solid var(--ligne);padding:1rem 0}
details:last-of-type{border-bottom:1px solid var(--ligne)}
summary{cursor:pointer;font-weight:600;color:var(--encre);list-style:none;display:flex;justify-content:space-between;align-items:center;gap:1rem}
summary::-webkit-details-marker{display:none}
summary::after{content:"+";font-size:1.4rem;line-height:1;color:var(--bleu-texte);flex:none;display:inline-block;transition:transform .4s cubic-bezier(.2,.7,.2,1)}
details[open]:not(.repli) summary::after{transform:rotate(45deg)}
details p{margin:.7rem 0 0;color:var(--gris);max-width:36em}

/* Formulaire */
form{max-width:44em;margin:0 auto}
label{display:block;margin:1.1rem 0 .35rem;font-weight:500;font-size:.95rem}
input,select,textarea{width:100%;font:inherit;padding:.8rem .95rem;border:1.5px solid var(--champ);border-radius:var(--r-petit);background:#fff;color:var(--encre)}
input:focus,select:focus,textarea:focus{border-color:var(--bleu-fonce);outline:none}
textarea{min-height:9rem;resize:vertical}
.obligatoire{color:var(--bleu-texte)}
.envoi{text-align:center;margin-top:1.6rem}
.cache{position:absolute;left:-9999px}

/* Carte OSM */
.carte-osm{width:100%;aspect-ratio:4/3;border:0;border-radius:var(--r)}

/* Sous-page : en-tête */
.entete-page{padding:3rem 0 0}
.entete-page h1{margin-bottom:.35em}
.entete-page.fond{padding:3rem 0 2.75rem}
.entete-page.fond .intro{margin-bottom:0}

/* Pied */
footer{padding:2.5rem 0 1.75rem;border-top:1px solid var(--ligne);font-size:.92rem;color:var(--gris)}
.pied-inner{max-width:var(--max);margin:0 auto;padding:0 1.25rem;display:flex;flex-wrap:wrap;gap:1.5rem 3rem;align-items:center;justify-content:space-between}
.pied-inner img{width:7.5rem}
footer ul{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:1.4rem}
footer a{color:var(--encre)}
footer p{margin:0;width:100%}

@media (min-width:44rem){
  section{padding:3.5rem 0}
  .menu-inner{display:grid;grid-template-columns:1fr auto 1fr;align-items:center}
  .menu ul{flex:0 1 auto;order:0;grid-column:1;grid-row:1;justify-self:start}
  .menu-nom{position:static;transform:none;grid-column:2;grid-row:1;justify-self:center}
  .langues{grid-column:3;grid-row:1;justify-self:end;margin-left:0}
  :root{--cl:2.1rem}
  .menu-nom img{width:16rem;max-width:100%}
  .langues{line-height:normal}
  .ouverture-logo img{width:14rem}
  .ouverture-phrase{font-size:1.5rem}
  .ouverture-actions{margin-top:5.8rem}
  .duo{grid-template-columns:1fr 1fr;gap:3rem}
  .duo>img,.duo>.trio{max-width:28rem;width:100%;justify-self:center}
  .duo.inverse > :first-child{order:2}
  .cartes{grid-template-columns:repeat(3,1fr)}
  .bento{grid-template-columns:repeat(4,1fr)}
  footer p{width:auto}
}


/* Équipe : petits carrés */
.carres{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem;margin-top:1.5rem}
.carres img{aspect-ratio:1/1;object-fit:cover;width:100%;border-radius:var(--r-petit)}
@media (min-width:44rem){.carres{grid-template-columns:repeat(4,1fr)}}

/* Trio : un carré moyen + deux petits à droite */
.trio{display:grid;grid-template-columns:2fr 1fr;grid-template-rows:1fr 1fr;gap:.75rem}
.trio img{width:100%;height:100%;object-fit:cover;border-radius:var(--r-petit)}
.trio > :first-child{grid-row:span 2;grid-column:1}
.trio > :first-child img{aspect-ratio:1/1}
.trio > :nth-child(2){grid-column:2;grid-row:1}
.trio > :nth-child(3){grid-column:2;grid-row:2}
.trio > :not(:first-child) img{aspect-ratio:1/1}

/* Démarches environnementales */
.engagements{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem 1.5rem;margin-top:1.6rem}
.engagements h3{font-size:1.05rem;margin-bottom:.25em}
.engagements p{margin:0;color:var(--gris);font-size:.95rem}
.centre{text-align:center;margin:2rem 0 0}
/* Engagements : six cartes égales avec icône au trait */
.cartes-eng{margin-top:1.4rem;gap:.7rem;grid-template-columns:1fr}
.eng{background:var(--bleu-pale);border-radius:var(--r-petit);padding:.85rem .95rem .8rem}
.eng-titre{display:flex;align-items:center;gap:.55rem;margin-bottom:.3rem}
.eng .ico{width:1.45rem;height:1.45rem;flex:none;color:var(--bleu-fonce)}
.eng h3{font-size:1rem;margin:0}
.eng p{margin:0;color:var(--texte);font-size:.88rem;line-height:1.5}
@media (min-width:30rem){.cartes-eng{grid-template-columns:repeat(2,1fr)}}

/* Entracte : bloc court, centré, en italique */
.entracte{padding:2.5rem 0}
.entracte .contenu{max-width:52em;text-align:center}
.entracte h2{margin-bottom:.6em}
.entracte h2::after{content:"";display:block;width:2.5rem;height:2px;background:var(--bleu);margin:.6rem auto 0}
.entracte p:not(.sur-titre){font-style:italic;font-size:1.1rem;color:var(--gris);line-height:1.65;margin-bottom:.8em}
.entracte p:last-child{margin-bottom:0}

/* Photo en portrait, plus petite, centrée dans sa colonne */
.duo .portrait{display:flex;justify-content:center}
.duo .portrait img{aspect-ratio:2/3;width:100%;max-width:17rem;border-radius:var(--r);object-fit:cover}

/* Cartes en quatre colonnes, plus petites */
.cartes.quatre .carte{padding:1rem}
.cartes.quatre .carte h3{font-size:1.05rem;margin-bottom:.3em}
.cartes.quatre .carte p{font-size:.9rem}
.cartes.quatre .carte img{margin-bottom:.8rem}
@media (min-width:44rem){.cartes.quatre{grid-template-columns:repeat(4,1fr)}}

/* Phrase de clôture */
.et-plus{font-style:italic;color:var(--gris);font-size:1.05rem}
p.et-plus.centre{margin-top:2.5rem}


/* Fiche recette du pan bagnat */
.recettes{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem}
.recettes span{flex:1 0 100%;color:var(--gris);font-size:.95rem;margin-bottom:.2rem}
.recettes .bouton{padding:.6rem 1.2rem;font-size:.95rem}


/* Effets légers, sans bibliothèque */
/* Apparition au défilement */
.reveal{opacity:0;transform:translateY(22px);transition:opacity .8s cubic-bezier(.2,.7,.2,1),transform .8s cubic-bezier(.2,.7,.2,1);transition-delay:var(--d,0s)}
.reveal.visible{opacity:1;transform:none}
/* Photos au survol */
.bento>div,.carres>div,.trio>div,.duo .portrait img,.duo>div>img{transition:transform .7s cubic-bezier(.2,.7,.2,1),box-shadow .7s}
.bento>div:hover,.carres>div:hover,.trio>div:hover,.duo .portrait img:hover,.duo>div>img:hover{transform:scale(1.025)}
a.carte{transition:transform .5s cubic-bezier(.2,.7,.2,1),box-shadow .5s}
a.carte:hover{transform:translateY(-4px);box-shadow:0 14px 34px rgba(0,0,0,.08)}
.carte:not(a){transition:none}
/* Menu qui s'affine et soulignement qui glisse */
.menu-inner{transition:padding .35s}
.menu-nom img{transition:width .35s}
.menu.replie .menu-inner{padding-top:.45rem;padding-bottom:.45rem}
.menu li a{border-bottom:0;background:linear-gradient(var(--bleu),var(--bleu)) left bottom/0 2px no-repeat;transition:color .3s,background-size .35s cubic-bezier(.2,.7,.2,1);padding-bottom:.35rem}
.menu li a:hover,.menu li a[aria-current]{background-size:100% 2px}
@media (min-width:44rem){.menu.replie .menu-nom img{width:14rem}}
/* Fenêtre d'ordinateur étroite : le logo prend la place qui reste entre le menu et les langues, et se réduit avec la fenêtre */
@media (min-width:44rem) and (max-width:61.99rem){.menu-inner{grid-template-columns:max-content minmax(0,1fr) max-content}.menu-nom{width:100%;text-align:center;padding:0 1.25rem;box-sizing:border-box}.menu-nom img{width:min(16rem,100%)}.menu.replie .menu-nom img{width:min(14rem,100%)}}
/* Boutons et liens */
.bouton{transition:background .3s,color .3s,transform .3s cubic-bezier(.2,.7,.2,1),box-shadow .3s}
.bouton:hover{background:var(--bleu-texte);color:#fff;transform:translateY(-2px);box-shadow:0 10px 24px rgba(31,138,130,.25)}
.bouton.secondaire:hover{background:var(--bleu-pale);color:var(--encre);box-shadow:0 10px 24px rgba(0,0,0,.06)}
main p a:not(.bouton),details a,.et-plus a{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px;transition:color .3s}
main p a:not(.bouton):hover,details a:hover,.et-plus a:hover{text-decoration-thickness:2px;color:var(--bleu-fonce)}
@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none} .bento>div,.carres>div,.trio>div,.carte,.bouton,.menu li a{transition:none}}

/* Galerie plein écran */
.galerie-zoom>div{cursor:zoom-in}
.visionneuse{position:fixed;inset:0;z-index:50;background:rgba(10,10,10,.92);display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .3s}
.visionneuse.ouverte{opacity:1}
.visionneuse img{max-width:min(94vw,1600px);max-height:88vh;width:auto;height:auto;border-radius:var(--r-petit);box-shadow:0 30px 80px rgba(0,0,0,.5);transition:opacity .25s}
.visionneuse button{position:absolute;background:rgba(255,255,255,.12);color:#fff;border:0;width:2.8rem;height:2.8rem;border-radius:50%;font:inherit;font-size:1.4rem;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .3s}
.visionneuse button:hover{background:rgba(255,255,255,.28)}
.visionneuse .fermer{top:1rem;right:1rem}
.visionneuse .prec{left:1rem;top:50%;transform:translateY(-50%)}
.visionneuse .suiv{right:1rem;top:50%;transform:translateY(-50%)}
body.verrou{overflow:hidden}
@media (max-width:44rem){.visionneuse .prec,.visionneuse .suiv{top:auto;bottom:3.4rem;transform:none}}

/* Label près du titre du pan bagnat */
.titre-label{display:flex;align-items:center;justify-content:center;gap:1.2rem;flex-wrap:wrap}
.titre-label img{width:5.5rem;height:auto;flex:none;border-radius:0}
.titre-label h2{margin:0}
.facultatif{color:var(--gris);font-weight:400;font-size:.85rem}
.tel-rang{display:flex;gap:.6rem}.tel-rang select{width:auto;flex:0 0 auto;padding-right:2rem}.tel-rang input{flex:1 1 auto;min-width:0}
.entracte{padding:3rem 0}

/* En-tête de page avec photo */
.entete-page.avec-photo{padding:2.5rem 0 3rem}
.entete-page.avec-photo .intro{margin-bottom:0}
@media (min-width:44rem){.entete-page.avec-photo{padding:3rem 0 3.25rem}}
/* Pan bagnat : photo, texte et rangée de quatre */
.pan-duo{align-items:center}
.pan-duo .texte h3{margin-top:1.6rem;margin-bottom:.35em}
.pan-duo .titre-label{justify-content:flex-start;gap:2.4rem;margin-bottom:.6rem}
.pan-duo .titre-label img{width:4.5rem}
.titre-label img{aspect-ratio:auto;object-fit:contain}
.pan-duo .pan-portrait img{max-width:32rem;aspect-ratio:1/1}
.pan-duo .recettes{display:block;text-align:center}
.pan-duo .recettes>span:first-child{display:block;text-align:left}
.recettes-boutons{display:inline-flex;flex-wrap:wrap;justify-content:center;gap:.6rem;margin-top:1rem}
.pan-duo .titre-label h2{margin-bottom:0}
.pan-carres{margin-top:1.5rem}
/* Liens de la page Contact */
.liens-contact{display:flex;gap:.5rem;justify-content:center;flex-wrap:wrap;margin-top:1.4rem}
.pan-duo .titre-label{flex-wrap:nowrap}
.pan-duo .titre-label h2{font-size:clamp(1.7rem,2.6vw,2.3rem)}

/* Galerie : en-tête resserré */
.galerie-page .entete-page{padding-top:2.25rem}
.galerie-page .entete-page h1{margin-bottom:0}
.galerie-page section{padding-top:1.75rem}

/* Pages Mentions légales et Merci */
.juridique .contenu{max-width:44em}
.juridique h2{font-size:1.35rem;margin:1.6em 0 .5em}
.juridique h2:first-of-type{margin-top:0}
.juridique p{color:var(--texte)}
.merci-duo .portrait img{max-width:22rem}
.duo .portrait-large img{max-width:22rem;aspect-ratio:1/1}

/* Téléphone : pied de page et pastilles centrés */
@media (max-width:43.99rem){
  .pied-inner{flex-direction:column;justify-content:center;text-align:center;gap:1.25rem}
  .pied-inner img{margin:0 auto}
  footer ul{justify-content:center;gap:.9rem 1.4rem}
  .pastilles{justify-content:center}
}

/* Engagements : photo à gauche, texte et bulles à droite */
.eng-duo{align-items:center}
.eng-photo{margin:0;display:flex;flex-direction:column;align-items:center}
.duo.eng-duo .eng-photo img{width:100%;max-width:24rem;aspect-ratio:4/5;object-fit:cover;border-radius:var(--r)}
.eng-photo figcaption{max-width:24rem;margin-top:.7rem;font-size:.9rem;font-style:italic;color:var(--gris)}
@media (min-width:44rem){.duo.eng-duo{grid-template-columns:2fr 3fr;gap:3rem}.eng-duo .texte>p:not(.sur-titre){font-size:1.05rem}}

@media (min-width:44rem){.recettes-boutons{position:relative;left:-1.6rem}}
/* Contact : bloc D'ici, trois cartes */
.dici{padding:2.6rem 0 1.2rem}
.cartes-dici{gap:1.4rem}
.carte-dici{background:#fff;border:1px solid var(--ligne);box-shadow:0 10px 30px rgba(23,23,23,.05);padding:1.7rem 1.6rem 1.5rem;display:flex;flex-direction:column;transition:transform .5s cubic-bezier(.2,.7,.2,1),box-shadow .5s,border-color .5s}
.carte-dici h2{color:var(--bleu-texte);font-size:1.15rem;margin-bottom:.55em;text-align:center}
.carte-dici p{font-size:.95rem;line-height:1.6;color:var(--texte);margin:0}
a.carte-dici:hover{transform:translateY(-5px);box-shadow:0 18px 40px rgba(23,23,23,.1);border-color:var(--bleu)}
/* le texte se déroule à l'apparition */
.carte-dici.reveal p{opacity:0;transform:translateY(.6rem);transition:opacity .6s ease .25s,transform .6s cubic-bezier(.2,.7,.2,1) .25s}
.carte-dici.reveal.visible p{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.carte-dici.reveal p{opacity:1;transform:none;transition:none}}
/* Formulaire : deux champs par ligne sur ordinateur */
@media (min-width:44rem){.rang{display:grid;grid-template-columns:1fr 1fr;gap:0 1rem}}
select.souligne{border-color:var(--bleu-fonce);box-shadow:0 0 0 3px var(--bleu-pale)}
/* Formulaire : erreurs */
.champ-erreur .obligatoire{color:#C0392B}
.champ-erreur input,.champ-erreur textarea{border-color:#C0392B}
.message-erreur{display:block;margin:.35rem 0 0;font-size:.85rem;color:#C0392B}
/* Bloc glaces : plus compact */
@media (min-width:44rem){#gouter{padding:2.5rem 0}}
.note{font-size:.9rem;font-style:italic;color:var(--gris);text-align:center;max-width:34em;margin-left:auto;margin-right:auto}
br.grand{display:none}
@media (min-width:44rem){br.grand{display:inline}}
.centre-bouton{text-align:center}

/* Finitions : sélection, transitions de page, ouverture vivante */
::selection{background:var(--bleu);color:var(--encre)}
@view-transition{navigation:auto}
::view-transition-old(root),::view-transition-new(root){animation-duration:.45s;animation-timing-function:ease}
.heros .photo{transform-origin:50% 60%;animation:respire 30s ease-out forwards}
@keyframes respire{from{transform:scale(1)}to{transform:scale(1.07)}}
@media (prefers-reduced-motion:reduce){@view-transition{navigation:none}.heros .photo{animation:none}}

/* Menu téléphone : bouton et voile plein écran */
.menu-bouton{display:none}
@media (max-width:43.99rem){
  .menu-inner{flex-wrap:nowrap;justify-content:space-between;gap:.5rem}
  .langues{order:1;margin-left:0;position:relative;z-index:3;line-height:1}
  .menu-nom{z-index:3}
  .menu-bouton{order:3;display:flex;flex-direction:column;justify-content:center;gap:.4rem;width:2.6rem;height:2.6rem;margin:-.25rem -.5rem -.25rem 0;padding:0 .45rem;background:none;border:0;cursor:pointer;position:relative;z-index:3}
  .menu-bouton span{display:block;height:1.5px;background:var(--encre);border-radius:2px;transition:transform .35s cubic-bezier(.2,.7,.2,1),opacity .25s,background .3s}
  .menu.accueil:not(.replie) .menu-bouton span{background:#fff;box-shadow:0 1px 4px rgba(0,0,0,.3)}
  .menu-ouvert .menu-bouton span{background:var(--encre)!important;box-shadow:none!important}
  .menu-ouvert .menu-bouton span:first-child{transform:translateY(.475rem) rotate(45deg)}
  .menu-ouvert .menu-bouton span:last-child{transform:translateY(-.475rem) rotate(-45deg)}
  .menu ul{position:absolute;top:0;left:0;width:100vw;height:100vh;height:100svh;margin:0;padding:0;background:#fff;flex-direction:column;justify-content:center;align-items:center;gap:1.4rem;overflow:hidden auto;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .35s ease,visibility .35s;z-index:2}
  .menu-ouvert .menu ul{opacity:1;visibility:visible;pointer-events:auto}
  .menu ul li{opacity:0;transform:translateY(.8rem);transition:opacity .45s ease,transform .45s cubic-bezier(.2,.7,.2,1)}
  .menu-ouvert .menu ul li{opacity:1;transform:none}
  .menu-ouvert .menu ul li:nth-child(2){transition-delay:.06s}.menu-ouvert .menu ul li:nth-child(3){transition-delay:.12s}.menu-ouvert .menu ul li:nth-child(4){transition-delay:.18s}.menu-ouvert .menu ul li:nth-child(5){transition-delay:.24s}
  .menu ul li a,.menu.accueil ul li a{font-family:var(--titre);font-size:2.1rem;font-weight:500;color:var(--encre);text-shadow:none;letter-spacing:-.01em;padding:.1rem 0;border-bottom-width:1px}
  .menu ul li a[aria-current]{border-color:var(--bleu-fonce)}
  .menu-ouvert{overflow:hidden}
  .menu-ouvert .menu{background:#fff;border-color:var(--ligne)}
  .menu-ouvert .menu.accueil .langues,.menu-ouvert .menu.accueil .langues a{color:var(--gris);text-shadow:none}
  .menu-ouvert .menu.accueil .langues .actif{color:var(--encre)}
  .menu-ouvert .menu.accueil .menu-nom{opacity:1;visibility:visible}
}
@media (prefers-reduced-motion:reduce){.menu ul,.menu ul li,.menu-bouton span{transition:none}}


/* Accueil : bloc Accès plus compact */
.bloc-acces{padding:2.25rem 0}
.bloc-acces .centre{margin-top:1.4rem}
@media (min-width:44rem){.bloc-acces{padding:2.75rem 0}.bloc-acces .duo{gap:2.5rem}.bloc-acces .duo>img{max-width:25rem}}

/* Nos spécialités : cartes à titres seuls */
.titres-seuls .carte{text-align:center}
.titres-seuls .carte h3{margin-bottom:0}
.titres-seuls .carte .note{margin:.2em 0 0;font-size:.9rem;color:var(--gris)}
.carte img{display:block}
/* Téléphone : bouton du bloc Engagements de l'accueil sous la photo */
.tel-seul{display:none}
@media (max-width:43.99rem){.ordi-seul{display:none}.tel-seul{display:block}.centre.tel-seul{margin-top:1.5rem}}
/* Téléphone : ordre des blocs et finitions */
@media (max-width:43.99rem){
  img.ordi-seul,figure.ordi-seul{display:none}
  .pan-duo{gap:0}
  .pan-duo .texte{display:contents}
  .pan-duo .sur-titre{order:1}
  .pan-duo .titre-label{order:2;margin-bottom:1.3rem;gap:1rem;justify-content:space-between}
  .pan-duo .titre-label h2{font-size:clamp(1.35rem,7vw,1.7rem);min-width:0;margin-right:-1rem}
  .pan-duo .titre-label img{width:3.6rem}
  .pan-duo .pan-portrait{order:3;margin-bottom:1.6rem}
  .pan-duo .texte>*{order:4}
  .pan-duo .texte>.sur-titre{order:1}.pan-duo .texte>.titre-label{order:2}
  .eng-photo-tel{margin-top:2.25rem}
  .plan-duo>:first-child{order:2}
  .liens-contact{flex-wrap:nowrap;gap:.4rem}
  .liens-contact .bouton{font-size:.82rem;padding:.6rem .95rem;white-space:nowrap}
}
@media (max-width:21.5rem){.liens-contact{flex-wrap:wrap}}
@media (max-width:21.5rem){.pan-duo .titre-label h2{font-size:1.28rem;margin-right:0}}
/* Listes déroulantes : flèche dessinée, décollée du bord */
select{appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8' fill='none' stroke='%231a1a1a' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M1 1.5l5 5 5-5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1rem center;background-size:.7rem auto;padding-right:2.6rem}
.tel-rang select{padding-right:2.4rem;background-position:right .95rem center}
/* Basilic sous le bouton (téléphone) : mêmes arrondis */
.eng-photo-tel .eng-photo img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:var(--r)}
/* Téléphone : effets au doigt */
@media (hover:none){
  .bouton:active{transform:scale(.95);transition-duration:.12s}
  a.carte:active,a.carte-dici:active,.galerie-zoom>div:active,.menu-bouton:active{transform:scale(.975);transition-duration:.12s}
  summary:active{opacity:.6}
}
@media (max-width:43.99rem){
  /* rangées à faire glisser */
  .cartes.glisse{display:flex;gap:.85rem;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;margin:0 -1.25rem;padding:.6rem 1.25rem 1.4rem;scroll-padding:0 1.25rem}
  .cartes.glisse::-webkit-scrollbar{display:none}
  .cartes.glisse>.carte{flex:0 0 78%;scroll-snap-align:center}
  .cartes.quatre.glisse>.carte{flex-basis:70%}
  .cartes.glisse.vivante>.carte,.cartes.glisse.vivante>.carte.reveal.visible{transform:scale(.94);opacity:.72;transition:transform .5s cubic-bezier(.2,.7,.2,1),opacity .5s,box-shadow .5s}
  .cartes.glisse.vivante>.carte.au-centre,.cartes.glisse.vivante>.carte.reveal.visible.au-centre{transform:none;opacity:1;box-shadow:0 14px 30px rgba(23,23,23,.09)}
  .points{display:flex;justify-content:center;gap:.45rem;margin:-.3rem 0 0}
  .points span{width:.4rem;height:.4rem;border-radius:50%;background:var(--ligne);transition:background .3s,width .3s}
  .points span.actif{background:var(--bleu-fonce);width:1.1rem;border-radius:999px}
  /* carte de Contact au centre de la rangée */
  .carte-dici.au-centre,.carte-dici.reveal.visible.au-centre{transform:translateY(-5px);box-shadow:0 18px 40px rgba(23,23,23,.1);border-color:var(--bleu)}
  /* photos qui respirent */
  .respire{display:block;overflow:hidden;border-radius:var(--r);width:100%}
  .pan-portrait .respire{max-width:32rem}
  .respire img{transform:scale(1.14);transition:transform 1.8s cubic-bezier(.2,.7,.2,1)}
  .respire.pose img{transform:none}
}
/* Galerie plein écran au doigt */
.visionneuse{touch-action:none}
.visionneuse .compteur{position:absolute;top:1.55rem;left:1.25rem;color:#fff;font-size:.85rem;opacity:.8;margin:0;letter-spacing:.05em}
/* Volets : ouverture en douceur */
details>p{overflow:hidden}
@media (prefers-reduced-motion:reduce){summary::after{transition:none}}
/* Itinéraire : un bouton, puis le choix de l'application sur iPhone */
.itineraire{text-align:center;margin:1.1rem 0 0}
.iti-choix{display:none;gap:.5rem;justify-content:center}
[data-itineraire].choix .iti-go{display:none}
[data-itineraire].choix .iti-choix{display:inline-flex;animation:iti .35s cubic-bezier(.2,.7,.2,1)}
@keyframes iti{from{opacity:0;transform:translateY(.4rem)}to{opacity:1;transform:none}}
@media (max-width:43.99rem){
  /* bandeau qui s'efface en descendant */
  .menu{transition:transform .4s cubic-bezier(.2,.7,.2,1),background .35s,border-color .35s}
  .descend:not(.menu-ouvert) .menu{transform:translateY(-101%)}
  /* titres qui se lèvent */
  .leve{overflow:hidden;padding:.12em 0 .14em;margin-top:-.12em}
  .leve>.leve-in{display:block;transform:translateY(112%);transition:transform 1s cubic-bezier(.2,.7,.2,1)}
  .leve.vu>.leve-in{transform:none}
  /* barre du pouce */
  .barre-pouce{position:fixed;left:50%;bottom:calc(.9rem + env(safe-area-inset-bottom,0px));z-index:9;display:flex;align-items:center;gap:.15rem;padding:.3rem;border-radius:999px;background:rgba(255,255,255,.82);backdrop-filter:saturate(180%) blur(14px);-webkit-backdrop-filter:saturate(180%) blur(14px);border:1px solid var(--ligne);box-shadow:0 12px 34px rgba(23,23,23,.16);transform:translate(-50%,160%);opacity:0;transition:transform .5s cubic-bezier(.2,.7,.2,1),opacity .4s;white-space:nowrap}
  .barre-pouce.montree{transform:translate(-50%,0);opacity:1}
  .menu-ouvert .barre-pouce,.verrou .barre-pouce{transform:translate(-50%,160%);opacity:0}
  .barre-pouce a,.barre-pouce button{display:inline-flex;align-items:center;gap:.45rem;font:inherit;font-size:.9rem;font-weight:600;color:var(--encre);background:none;border:0;padding:.65rem 1.05rem;border-radius:999px;text-decoration:none;cursor:pointer;transition:transform .15s,background .3s}
  .barre-pouce a.plein{background:var(--bleu)}
  .barre-pouce a:active,.barre-pouce button:active{transform:scale(.95)}
  .barre-pouce svg{width:1rem;height:1rem;flex:none}
  .barre-pouce .iti-choix{gap:.15rem;align-items:center}
  .barre-pouce.choix .iti-go,.barre-pouce.choix .bp-horaires{display:none}
  .barre-pouce .iti-retour{padding:.65rem .85rem;color:var(--gris)}
}

/* Version italienne : phrase d'ouverture plus longue, corps réduit sur téléphone */
@media (max-width:43.99rem){html[lang="it"] .ouverture-phrase{font-size:clamp(.82rem,3.9vw,1.25rem)}}
/* Arrivée sur une ancre : le contenu ne passe pas sous le bandeau */
@media (min-width:44rem){section[id]{scroll-margin-top:4.1rem}}
@media (max-width:43.99rem){#kiosque{scroll-margin-top:3.05rem}}
/* Tablette : le menu se resserre pour ne pas toucher le logo */
@media (min-width:44rem) and (max-width:50rem){.menu ul{gap:.8rem}.menu li a{font-size:.88rem}}
/* Réduire les animations : bandeau et barre du pouce sans glissement */
@media (prefers-reduced-motion:reduce){.menu,.barre-pouce{transition:none}}
/* Galerie : accès au clavier */
.galerie-zoom>div:focus-visible{outline:3px solid var(--bleu-fonce);outline-offset:2px}
.visionneuse button:focus-visible{outline-color:#fff}
.cartes.glisse:focus-visible{outline:3px solid var(--bleu-fonce);outline-offset:4px}
/* Plan : image d'abord, carte interactive à la demande */
.plan{margin:0;position:relative}
.plan img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:var(--r)}
.plan .carte-osm{display:block}
.plan-credit{font-size:.72rem;color:var(--gris);margin:.5rem .2rem 0;text-align:right}
.plan-credit a{color:inherit}
.bloc-acces .duo>.plan{max-width:25rem;width:100%;justify-self:center}
.plan-ouvrir{position:absolute;right:.7rem;top:.7rem;background:#fff;color:var(--encre);font-weight:600;font-size:.8rem;line-height:1;padding:.62rem .9rem;border-radius:999px;box-shadow:0 6px 18px rgba(23,23,23,.22);white-space:nowrap;transition:transform .3s,box-shadow .3s}
.plan-ouvrir:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(23,23,23,.28)}
[data-plan] img{cursor:pointer}
/* Téléphone : engagements et cartes de Contact en rangées à glisser, en cubes */
@media (max-width:43.99rem){
  .eng-duo>.texte{min-width:0}
  .cartes-eng.glisse{display:flex;align-items:stretch;gap:.75rem;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;margin:1.2rem -1.25rem 0;padding:.5rem 1.25rem 1.3rem;scroll-padding:0 1.25rem}
  .cartes-eng.glisse::-webkit-scrollbar{display:none}
  .cartes-eng.glisse>.eng{flex:0 0 66%;aspect-ratio:1/1;scroll-snap-align:center;display:flex;flex-direction:column;justify-content:center;padding:1.15rem 1.1rem}
  .cartes-eng.glisse .eng-titre{flex-direction:column;align-items:flex-start;gap:.65rem;margin-bottom:.45rem}
  .cartes-eng.glisse .ico{width:1.9rem;height:1.9rem}
  .cartes-eng.glisse.vivante>.eng,.cartes-eng.glisse.vivante>.eng.reveal.visible{transform:scale(.94);opacity:.72;transition:transform .5s cubic-bezier(.2,.7,.2,1),opacity .5s,box-shadow .5s}
  .cartes-eng.glisse.vivante>.eng.au-centre,.cartes-eng.glisse.vivante>.eng.reveal.visible.au-centre{transform:none;opacity:1;box-shadow:0 14px 30px rgba(23,23,23,.09)}
  .dici{padding-top:1rem}
  .cartes-dici.glisse>.carte{flex-basis:80%;justify-content:center;padding:1.4rem 1.25rem 1.3rem}
  .glisse:focus-visible{outline:3px solid var(--bleu-fonce);outline-offset:4px}
}

/* Téléphone : bloc Galerie de l'accueil sans la grande photo */
@media (max-width:43.99rem){.bento-accueil .grand{display:none}}

/* ===== v131 ===== */
/* Lien d'évitement (clavier, lecteurs d'écran) */
.evitement{position:absolute;left:.75rem;top:-5rem;z-index:60;background:#fff;color:var(--encre);font-weight:600;padding:.7rem 1.1rem;border-radius:999px;box-shadow:0 6px 18px rgba(23,23,23,.22)}
.evitement:focus{top:.75rem}
main:focus{outline:none}
/* Grand titre de page : le sur-titre en fait partie (même aspect qu'avant) */
h1 > .sur-titre{display:block;font-family:var(--sans);line-height:1.65}
h1 > .h1-titre{display:block}
h2.sur-titre{font-family:var(--sans);line-height:1.65;letter-spacing:.12em}
/* Bière : message sanitaire, discret */
.cartes.titres-seuls .carte p.mention-sante{margin:.55em 0 0;font-size:.68rem;line-height:1.4;color:var(--gris)}
/* Formulaire : mention sous le bouton */
.note-formulaire{margin:1.1rem auto 0;max-width:34em;text-align:center;font-size:.85rem;line-height:1.55;color:var(--gris)}
/* Pied de page : toujours au-dessus de la photo d'ouverture de l'accueil */
footer{position:relative;z-index:6;background:#fff}
/* Pied de page : zone sensible des liens de langue */
.pied-langues a{display:inline-block;padding:.35rem .3rem;margin:-.35rem -.3rem}
/* Téléphone tenu à l'horizontale : l'ouverture tient dans l'écran */
@media (orientation:landscape) and (max-height:27rem){
  :root{--fin:.767}
  .ouverture-logo img{width:7rem}
  .ouverture-phrase{margin-top:.55em;font-size:1rem}
  .ouverture-actions{margin-top:3.1rem}
  .ouverture-actions .bouton{padding:.55rem 1.2rem;font-size:.95rem}
}
@media (orientation:landscape) and (max-height:27rem) and (max-width:43.99rem){:root{--fin:.62}}
@media (max-width:43.99rem){
  /* Photo carrée du bloc Bienvenue : toute la largeur, comme les autres photos */
  .duo .portrait-large img{max-width:none}
  /* Langue : un seul bouton dans le bandeau, qui ouvre le choix */
  .langue-bouton{display:inline-flex;align-items:center;gap:.35rem;font:inherit;font-size:.85rem;font-weight:600;line-height:1;color:var(--encre);background:none;border:0;margin:-.35rem 0 -.35rem -.6rem;padding:.75rem .6rem;min-width:2.75rem;min-height:2.75rem;cursor:pointer;transition:color .3s}
  .langue-bouton svg{width:.62rem;height:auto;flex:none;transition:transform .3s cubic-bezier(.2,.7,.2,1)}
  .langues.ouverte .langue-bouton svg{transform:rotate(180deg)}
  .menu.accueil:not(.replie) .langue-bouton{color:#fff;text-shadow:0 1px 6px rgba(0,0,0,.35)}
  .menu-ouvert .menu.accueil .langue-bouton{color:var(--encre);text-shadow:none}
  .langue-liste{display:flex;flex-direction:column;position:absolute;left:-.35rem;top:calc(100% + .35rem);min-width:10rem;padding:.35rem;background:#fff;border:1px solid var(--ligne);border-radius:var(--r-petit);box-shadow:0 14px 34px rgba(23,23,23,.16);opacity:0;visibility:hidden;transform:translateY(-.4rem);transition:opacity .25s ease,transform .3s cubic-bezier(.2,.7,.2,1),visibility .25s}
  .langues.ouverte .langue-liste{opacity:1;visibility:visible;transform:none}
  .langue-liste .code,.langue-liste .sep{display:none}
  .langue-liste .nom{position:static;width:auto;height:auto;margin:0;overflow:visible;clip-path:none}
  .menu .langues .langue-liste a,.menu.accueil .langues .langue-liste a{display:block;margin:0;padding:.8rem .9rem;border-radius:10px;font-size:1rem;line-height:1.2;color:var(--encre);text-shadow:none}
  .menu .langues .langue-liste a:hover{text-decoration:none;background:var(--gris-clair)}
  .menu .langues .langue-liste a.actif,.menu.accueil .langues .langue-liste a.actif,.menu.accueil.replie .langues .langue-liste a.actif,.menu-ouvert .menu.accueil .langues .langue-liste a.actif{font-weight:600;background:var(--bleu-pale);color:var(--bleu-texte)}
  /* Langue : la même action en bas du menu */
  .menu ul li.menu-langues{display:flex;flex-direction:column;align-items:center;gap:.7rem;margin-top:1.1rem;padding-top:1.4rem;border-top:1px solid var(--ligne);min-width:13rem}
  .menu-langues-titre{font-size:.75rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--gris)}
  .menu-langues-choix{display:flex;gap:.4rem}
  .menu ul li.menu-langues a,.menu.accueil ul li.menu-langues a{font-family:var(--sans);font-size:.95rem;font-weight:500;letter-spacing:0;color:var(--encre);background:none;border:1px solid var(--ligne);border-radius:999px;padding:.55rem .95rem}
  .menu ul li.menu-langues a.actif,.menu.accueil ul li.menu-langues a.actif{background:var(--bleu-pale);border-color:var(--bleu-pale);color:var(--bleu-texte);font-weight:600}
}
@media (prefers-reduced-motion:reduce){.langue-liste,.langue-bouton svg{transition:none}}
/* Menu téléphone, écran bas (téléphone tenu à l'horizontale) : tout tient, la langue comprise */
@media (max-width:43.99rem) and (max-height:28rem){
  .menu ul{justify-content:flex-start;gap:.2rem;padding:4.2rem 0 .8rem}
  .menu ul li a,.menu.accueil ul li a{font-size:1.4rem}
  .menu ul li.menu-langues{flex-direction:row;align-items:center;gap:.9rem;margin-top:.45rem;padding-top:.7rem}
  .menu ul li.menu-langues a,.menu.accueil ul li.menu-langues a{font-size:.9rem;padding:.4rem .85rem}
}
/* v132, téléphone : ouverture plus fluide sous le doigt. Bandeau qui se replie sans animer sa marge, zoom lent de la photo en pause pendant le défilement, bouton de verre sans flou. */
@media (max-width:43.99rem){
  .menu-inner{transition:none}
  .heros.bouge .photo{animation-play-state:paused}
  .bouton.verre{backdrop-filter:none;-webkit-backdrop-filter:none}
}
/* Impression */
@media print{
  .menu,.heros,.heros-espace,.barre-pouce,.evitement,.plan-ouvrir,.itineraire,.points,.envoi,.note-formulaire,.liens-contact,footer ul{display:none!important}
  .reveal,.reveal p,.leve>.leve-in,.respire img,.cartes.glisse.vivante>.carte,.cartes-eng.glisse.vivante>.eng{opacity:1!important;transform:none!important;transition:none!important}
  .fond{background:none}
  section{padding:1.2rem 0}
  details{break-inside:avoid}
  details::details-content{content-visibility:visible;display:block;height:auto}
  .cartes.glisse,.cartes-eng.glisse{overflow:visible}
  img{break-inside:avoid}
}
