/* Lise Vernhes Photographie, exemple Tabnet. Styles communs à toutes les pages. */
@font-face{font-family:"Instrument Sans";src:url("/fonts/instrument-sans-latin-400-normal.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Instrument Sans";src:url("/fonts/instrument-sans-latin-500-normal.woff2") format("woff2");font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:"Instrument Sans";src:url("/fonts/instrument-sans-latin-600-normal.woff2") format("woff2");font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:"Bricolage Grotesque";src:url("/fonts/bricolage-grotesque-latin-800-normal.woff2") format("woff2");font-weight:800;font-style:normal;font-display:swap}

:root{
  --fond:#F6F1E9;
  --papier:#FBF8F3;
  --sable:#EDE3D5;
  --encre:#211C19;
  --doux:#5B524B;
  --accent:#A4492F;
  --accent-fonce:#8F3E27;
  --rose:#D9A58F;
  --ligne:#DCCFBE;
  --noir:#050A08;
  --serif:Georgia,"Times New Roman",serif;
  --sans:"Instrument Sans",system-ui,-apple-system,"Segoe UI",sans-serif;
  --wrap:1240px;
  --gout:clamp(1rem,4vw,2.5rem);
}
*,*::before,*::after{box-sizing:border-box}
html{background:var(--fond);-webkit-text-size-adjust:100%;overflow-x:clip;scroll-behavior:smooth}
body{margin:0;color:var(--encre);font:400 1.0625rem/1.65 var(--sans);overflow-x:clip;min-height:100vh;position:relative}
img{max-width:100%;height:auto;display:block}
a{color:var(--accent);text-underline-offset:.2em;text-decoration-thickness:1px}
a:hover{color:var(--accent-fonce)}
:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:2px}
h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.08;letter-spacing:-.015em;margin:0 0 .5em;text-wrap:balance}
h1 em,h2 em,h3 em{color:var(--accent);font-style:italic}
h1{font-size:clamp(2.6rem,6.2vw,5.6rem);line-height:1.02}
h2{font-size:clamp(2rem,4vw,3.4rem)}
h3{font-size:clamp(1.35rem,2vw,1.7rem)}
p{margin:0 0 1em}
.wrap{width:100%;max-width:var(--wrap);margin:0 auto;padding-left:var(--gout);padding-right:var(--gout)}
.skip{position:absolute;left:-999px;top:0;background:var(--encre);color:#fff;padding:.6rem 1rem;z-index:100}
.skip:focus{left:1rem;top:1rem;color:#fff}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* Animation d'arrière-plan : lumière dorée de fin de journée qui glisse lentement */
body::before,body::after{content:"";position:fixed;z-index:-1;pointer-events:none;border-radius:50%;will-change:transform,opacity}
body::before{width:90vmax;height:90vmax;left:-30vmax;top:-35vmax;background:radial-gradient(closest-side,rgba(238,196,128,.42),rgba(238,196,128,.14) 55%,rgba(238,196,128,0));animation:lueur 42s ease-in-out infinite alternate}
body::after{width:70vmax;height:70vmax;right:-28vmax;bottom:-30vmax;background:radial-gradient(closest-side,rgba(217,150,128,.26),rgba(217,150,128,.08) 55%,rgba(217,150,128,0));animation:lueur2 56s ease-in-out infinite alternate}
@keyframes lueur{0%{transform:translate3d(0,0,0) scale(1);opacity:.75}50%{opacity:1}100%{transform:translate3d(55vw,28vh,0) scale(1.12);opacity:.8}}
@keyframes lueur2{0%{transform:translate3d(0,0,0) scale(1.1);opacity:.6}100%{transform:translate3d(-40vw,-22vh,0) scale(.95);opacity:1}}

/* Bandeau Tabnet */
.tabnet{background:var(--noir);color:#E9ECEA;font:500 .8125rem/1.3 var(--sans);min-height:40px;display:flex;align-items:center;position:relative;z-index:30}
.tabnet .wrap{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding-top:.45rem;padding-bottom:.45rem}
.tabnet a{color:#fff;white-space:nowrap;font-weight:600;text-decoration:none;border-bottom:1px solid rgba(255,255,255,.45)}
.tabnet a:hover{color:#fff;border-color:#fff}
.tabnet a:focus-visible{outline-color:#fff}
.tabnet .court{display:none}
@media (max-width:820px){.tabnet .long{display:none}.tabnet .court{display:inline}}
@media (max-width:420px){.tabnet{font-size:.75rem}.tabnet .wrap{gap:.5rem}}

/* En-tête */
.entete{position:sticky;top:0;z-index:20;background:rgba(246,241,233,.9);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid rgba(220,207,190,.7)}
.entete .wrap{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;min-height:76px}
.logo{display:flex;flex-direction:column;text-decoration:none;color:var(--encre);line-height:1}
.logo b{font:italic 400 1.65rem/1 var(--serif);letter-spacing:-.01em}
.logo small{font:600 .66rem/1 var(--sans);letter-spacing:.32em;text-transform:uppercase;color:var(--doux);margin-top:.4rem}
.logo:hover{color:var(--encre)}
.nav{display:flex;gap:2rem;align-items:center}
.nav a{color:var(--encre);text-decoration:none;font-weight:500;font-size:.98rem;padding:.35rem 0;border-bottom:1px solid transparent}
.nav a:hover{border-color:var(--encre);color:var(--encre)}
.nav a[aria-current="page"]{color:var(--accent);border-color:var(--accent)}
.outils{display:flex;align-items:center;gap:.75rem}
.menu-btn{display:none;align-items:center;gap:.5rem;background:none;border:1px solid var(--encre);color:var(--encre);font:600 .9rem/1 var(--sans);padding:.6rem .9rem;border-radius:999px;cursor:pointer;min-height:44px}
.menu-btn .ico-fermer{display:none}
.ouvert .menu-btn .ico-fermer{display:block}
.ouvert .menu-btn .ico-ouvrir{display:none}
@media (max-width:1039px){
  .menu-btn{display:inline-flex}
  .outils .reserver{display:none}
  .nav{display:none;position:absolute;left:0;right:0;top:100%;flex-direction:column;align-items:stretch;gap:0;background:var(--papier);border-bottom:1px solid var(--ligne);padding:.5rem var(--gout) 1.5rem;box-shadow:0 20px 40px -20px rgba(33,28,25,.25)}
  .ouvert .nav{display:flex}
  .nav a{font:400 1.6rem/1.2 var(--serif);padding:.85rem 0;border-bottom:1px solid var(--ligne)}
  .nav a[aria-current="page"]{font-style:italic}
}

/* Boutons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;font:600 .98rem/1 var(--sans);text-decoration:none;padding:1rem 1.6rem;border-radius:999px;border:1px solid transparent;min-height:48px;transition:background-color .2s,color .2s,border-color .2s;cursor:pointer}
.btn-plein{background:var(--accent);color:#fff}
.btn-plein:hover{background:var(--accent-fonce);color:#fff}
.btn-ligne{border-color:var(--encre);color:var(--encre);background:transparent}
.btn-ligne:hover{background:var(--encre);color:var(--fond)}
.btn-petit{padding:.7rem 1.15rem;min-height:44px;font-size:.9rem}
.lien-fleche{font-weight:600;text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:2px}
.actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:2rem}

/* Typo éditoriale */
.kicker{font:600 .75rem/1.3 var(--sans);letter-spacing:.24em;text-transform:uppercase;color:var(--accent);margin:0 0 1.25rem;display:flex;align-items:center;gap:.8rem}
.kicker::before{content:"";width:2.2rem;height:1px;background:currentColor;flex:none}
.chapo{font-size:clamp(1.1rem,1.5vw,1.3rem);line-height:1.6;color:var(--doux);max-width:36rem}
.lettrine::first-letter{font-family:var(--serif);float:left;font-size:4.2em;line-height:.82;padding:.08em .12em 0 0;color:var(--accent)}
.section{padding:clamp(4.5rem,9vw,8.5rem) 0}
.section-sable{background:rgba(237,227,213,.72)}
.entete-section{display:grid;gap:1rem 3rem;margin-bottom:clamp(2.5rem,5vw,4rem)}
@media (min-width:900px){.entete-section{grid-template-columns:1.1fr .9fr;align-items:end}.entete-section p{margin:0}}
.legende{font-size:.85rem;color:var(--doux);margin-top:.7rem;display:flex;flex-wrap:wrap;gap:.6rem;align-items:baseline}
.legende i{font-family:var(--serif);font-size:1rem;color:var(--encre)}
figure{margin:0}
.cadre{overflow:hidden;background:var(--sable)}
.cadre img{width:100%;height:100%;object-fit:cover}

/* Hero accueil */
.hero{padding:clamp(2.5rem,6vw,5rem) 0 clamp(3rem,7vw,6rem)}
.hero .wrap{display:grid;gap:2.5rem}
.hero .chapo{margin-top:1.5rem}
.hero-img{aspect-ratio:3/2}
.hero-meta{display:flex;flex-wrap:wrap;gap:.4rem 1.6rem;margin:2.25rem 0 0;padding:0;list-style:none;font-size:.9rem;color:var(--doux)}
.hero-meta li{display:flex;align-items:center;gap:.5rem}
.hero-meta li::before{content:"";width:5px;height:5px;border-radius:50%;background:var(--accent)}
@media (min-width:1000px){
  .hero .wrap{grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:center;gap:4rem}
  .hero-img{aspect-ratio:4/5;margin-right:calc(-1 * var(--gout))}
  .hero h1{font-size:clamp(3.4rem,5.6vw,5.4rem)}
}

/* Présentation */
.presente{display:grid;gap:2.5rem;align-items:center}
.presente .portrait{aspect-ratio:4/5;max-width:520px}
.chiffres{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin:2.5rem 0 0;padding:1.5rem 0 0;border-top:1px solid var(--ligne);list-style:none}
.chiffres b{display:block;font:400 clamp(2rem,3.6vw,2.8rem)/1 var(--serif);color:var(--encre)}
.chiffres span{font-size:.85rem;color:var(--doux);display:block;margin-top:.4rem;line-height:1.35}
@media (min-width:900px){.presente{grid-template-columns:5fr 6fr;gap:5rem}}

/* Prestations aperçu (liste magazine) */
.liste-presta{list-style:none;margin:0;padding:0;border-top:1px solid var(--encre)}
.liste-presta li{border-bottom:1px solid var(--ligne)}
.liste-presta a{display:grid;grid-template-columns:auto 1fr;gap:.3rem 1.25rem;align-items:baseline;padding:1.6rem 0;text-decoration:none;color:var(--encre)}
.liste-presta .num{font:italic 400 1rem/1 var(--serif);color:var(--accent);grid-row:span 2}
.liste-presta h3{margin:0;font-size:clamp(1.7rem,3.2vw,2.6rem);transition:color .2s}
.liste-presta p{margin:0;color:var(--doux);grid-column:2}
.liste-presta .prix{grid-column:2;font-weight:600;font-size:.95rem;color:var(--encre)}
.liste-presta a:hover h3{color:var(--accent)}
@media (min-width:900px){
  .liste-presta a{grid-template-columns:4rem minmax(0,1.2fr) minmax(0,1.4fr) 10rem;align-items:center;gap:2rem}
  .liste-presta .num{grid-row:auto}
  .liste-presta p{grid-column:auto}
  .liste-presta .prix{grid-column:auto;text-align:right}
}

/* Sélection photos, mosaïque magazine */
.mosaique{display:grid;gap:1rem}
@media (min-width:760px){
  .mosaique{grid-template-columns:repeat(12,1fr);gap:1.25rem}
  .m1{grid-column:1/6;grid-row:1/3}
  .m2{grid-column:6/13}
  .m3{grid-column:6/10}
  .m4{grid-column:10/13}
  .m1 .cadre{aspect-ratio:auto;height:calc(100% - 2.2rem)}
  .m2 .cadre{aspect-ratio:16/8}
  .m3 .cadre,.m4 .cadre{aspect-ratio:4/5}
}
@media (max-width:759px){.mosaique .cadre{aspect-ratio:4/3}.m1 .cadre{aspect-ratio:4/5}}

/* Citation pleine largeur */
.citation{padding:clamp(4rem,9vw,8rem) 0;text-align:center}
.citation blockquote{margin:0 auto;max-width:52rem;font:italic 400 clamp(1.7rem,3.4vw,2.9rem)/1.25 var(--serif)}
.citation p.sign{font-size:.9rem;color:var(--doux);margin-top:1.5rem;letter-spacing:.08em}

/* Avis Google */
.avis{display:grid;gap:2.5rem}
.note{display:flex;flex-direction:column;gap:.6rem}
.note .grosse{font:400 clamp(4.5rem,9vw,7rem)/.9 var(--serif);color:var(--encre)}
.note .grosse small{font-size:.35em;color:var(--doux)}
.etoiles{display:inline-flex;gap:3px;color:#B7791F}
.etoiles svg{width:20px;height:20px}
.note .source{font-size:.9rem;color:var(--doux)}
.note .source b{color:var(--encre)}
.cartes-avis{display:grid;gap:1rem}
.carte-avis{background:var(--papier);border:1px solid var(--ligne);padding:1.75rem;display:flex;flex-direction:column;gap:1rem}
.carte-avis blockquote{margin:0;font:400 1.14rem/1.55 var(--serif)}
.carte-avis footer{margin-top:auto;display:flex;justify-content:space-between;gap:1rem;font-size:.88rem;color:var(--doux);border-top:1px solid var(--ligne);padding-top:1rem;flex-wrap:wrap}
.carte-avis footer b{color:var(--encre);font-weight:600}
.carte-avis .etoiles svg{width:16px;height:16px}
@media (min-width:1000px){.avis{grid-template-columns:3fr 9fr;gap:4rem}.cartes-avis{grid-template-columns:repeat(3,1fr)}}
@media (min-width:640px) and (max-width:999px){.cartes-avis{grid-template-columns:repeat(2,1fr)}}

/* Liens villes */
.villes{display:grid;gap:1rem;list-style:none;margin:0;padding:0}
.villes a{display:flex;flex-direction:column;gap:.5rem;padding:1.75rem;border:1px solid var(--ligne);background:rgba(251,248,243,.7);text-decoration:none;color:var(--encre);height:100%;transition:border-color .2s,transform .2s}
.villes a:hover{border-color:var(--accent);color:var(--encre)}
.villes .v-nom{font:400 1.9rem/1.1 var(--serif)}
.villes .v-nom em{color:var(--accent)}
.villes .v-txt{color:var(--doux);font-size:.95rem}
.villes .v-lien{margin-top:auto;padding-top:.75rem;font-weight:600;font-size:.9rem;color:var(--accent)}
@media (min-width:800px){.villes{grid-template-columns:repeat(3,1fr)}}

/* Appel à l'action */
.cta{background:var(--encre);color:#F3ECE3;padding:clamp(4.5rem,9vw,8rem) 0;position:relative;overflow:hidden}
.cta h2{color:#F3ECE3;max-width:46rem}
.cta h2 em{color:var(--rose)}
.cta p{color:#CFC4B8;max-width:36rem}
.cta .btn-plein{background:#F3ECE3;color:var(--encre)}
.cta .btn-plein:hover{background:#fff;color:var(--encre)}
.cta .btn-ligne{border-color:#F3ECE3;color:#F3ECE3}
.cta .btn-ligne:hover{background:#F3ECE3;color:var(--encre)}
.cta a:focus-visible{outline-color:#F3ECE3}
.cta .grille-cta{display:grid;gap:2rem;align-items:end}
@media (min-width:900px){.cta .grille-cta{grid-template-columns:7fr 5fr}.cta .actions{justify-content:flex-end}}

/* En-tête de page intérieure */
.page-tete{padding:clamp(3rem,7vw,6rem) 0 clamp(2rem,5vw,4rem)}
.page-tete .wrap{display:grid;gap:1.5rem}
.page-tete h1{max-width:18ch}
@media (min-width:1000px){.page-tete .wrap{grid-template-columns:7fr 5fr;align-items:end;gap:4rem}.page-tete .chapo{margin:0}}
.ariane{font-size:.85rem;color:var(--doux);margin-bottom:1.5rem}
.ariane a{color:var(--doux)}
.ariane span{margin:0 .4rem}
.bandeau-img{aspect-ratio:21/9}
@media (max-width:699px){.bandeau-img{aspect-ratio:4/3}}

/* Prestations détaillées */
.presta{display:grid;gap:2rem;padding:clamp(3rem,6vw,5rem) 0;border-top:1px solid var(--ligne)}
.presta:first-child{border-top:0;padding-top:0}
.presta .cadre{aspect-ratio:4/5}
.presta .prix-bloc{display:flex;flex-wrap:wrap;gap:1rem 2.5rem;margin:1.5rem 0;padding:1.25rem 0;border-top:1px solid var(--ligne);border-bottom:1px solid var(--ligne)}
.prix-bloc div{display:flex;flex-direction:column}
.prix-bloc span{font-size:.8rem;letter-spacing:.14em;text-transform:uppercase;color:var(--doux)}
.prix-bloc b{font:400 1.9rem/1.2 var(--serif)}
.inclus{list-style:none;margin:0;padding:0;display:grid;gap:.55rem}
.inclus li{padding-left:1.6rem;position:relative}
.inclus li::before{content:"";position:absolute;left:0;top:.7em;width:.8rem;height:1px;background:var(--accent)}
.formules{display:grid;gap:1rem;margin:1.5rem 0}
.formule{border:1px solid var(--ligne);background:var(--papier);padding:1.5rem}
.formule h4{font:400 1.45rem/1.2 var(--serif);margin:0 0 .25rem}
.formule .p{font-weight:600;color:var(--accent);margin-bottom:1rem}
@media (min-width:700px){.formules{grid-template-columns:1fr 1fr}}
@media (min-width:1000px){.presta{grid-template-columns:4fr 7fr;gap:4.5rem;align-items:start}.presta .cadre{position:sticky;top:110px}.presta.inverse{grid-template-columns:7fr 4fr}.presta.inverse figure{order:2}}
.delai{font-size:.92rem;color:var(--doux);margin-top:1.25rem}
.delai b{color:var(--encre)}

/* FAQ */
.faq{max-width:52rem}
.faq details{border-bottom:1px solid var(--ligne)}
.faq details:first-of-type{border-top:1px solid var(--encre)}
.faq summary{cursor:pointer;list-style:none;padding:1.4rem 2.5rem 1.4rem 0;position:relative;font:400 1.3rem/1.35 var(--serif)}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:.25rem;top:1.2rem;font:300 1.6rem/1 var(--sans);color:var(--accent);transition:transform .2s}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq details p{color:var(--doux);margin:0 0 1.5rem;max-width:44rem}

/* Portfolio */
.filtres{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:2.5rem}
.filtres button{font:500 .92rem/1 var(--sans);padding:.75rem 1.2rem;border-radius:999px;border:1px solid var(--ligne);background:transparent;color:var(--encre);cursor:pointer;min-height:44px}
.filtres button:hover{border-color:var(--encre)}
.filtres button[aria-pressed="true"]{background:var(--encre);border-color:var(--encre);color:var(--fond)}
.galerie{display:grid;gap:2.5rem 1.5rem}
.galerie figure[hidden]{display:none}
.galerie .cadre{aspect-ratio:4/5}
.galerie .large .cadre{aspect-ratio:3/2}
.galerie figcaption{margin-top:.9rem;display:flex;justify-content:space-between;gap:1rem;align-items:baseline;border-top:1px solid var(--ligne);padding-top:.7rem}
.galerie figcaption b{font:italic 400 1.15rem/1.3 var(--serif)}
.galerie figcaption span{font-size:.82rem;color:var(--doux);text-align:right;letter-spacing:.04em}
@media (min-width:760px){
  .galerie{grid-template-columns:repeat(12,1fr);gap:4rem 2rem}
  .g1{grid-column:1/8}.g2{grid-column:8/13;align-self:end}
  .g3{grid-column:2/7}.g4{grid-column:7/13;align-self:center}
  .g5{grid-column:1/6;align-self:start}.g6{grid-column:6/13;align-self:end}
  .galerie.filtre figure{grid-column:auto / span 6;align-self:start}
}
.note-famille{margin-top:3rem;padding:1.5rem 1.75rem;border-left:2px solid var(--accent);background:rgba(251,248,243,.7);max-width:46rem}
.note-famille p{margin:0}

/* Zone */
.cercles{display:grid;gap:1rem;list-style:none;margin:0;padding:0}
.cercle{padding:2rem;border:1px solid var(--ligne);background:rgba(251,248,243,.75)}
.cercle .tag{font:600 .72rem/1 var(--sans);letter-spacing:.2em;text-transform:uppercase;color:var(--accent)}
.cercle h3{margin:.8rem 0 .6rem}
.cercle p{color:var(--doux);margin:0 0 1rem}
.cercle .communes{font-size:.92rem;color:var(--encre);margin:0}
@media (min-width:900px){.cercles{grid-template-columns:repeat(3,1fr)}}
.carte-zone{display:grid;gap:3rem;align-items:center}
.carte-zone svg{width:100%;height:auto;max-width:520px;margin:0 auto}
@media (min-width:900px){.carte-zone{grid-template-columns:6fr 5fr}}

/* Contact */
.contact-grille{display:grid;gap:3rem}
@media (min-width:1000px){.contact-grille{grid-template-columns:4fr 7fr;gap:5rem}}
.coord{list-style:none;margin:0;padding:0;border-top:1px solid var(--encre)}
.coord li{padding:1.25rem 0;border-bottom:1px solid var(--ligne)}
.coord span{display:block;font-size:.75rem;letter-spacing:.2em;text-transform:uppercase;color:var(--doux);margin-bottom:.35rem}
.coord a,.coord b{font:400 1.45rem/1.3 var(--serif);color:var(--encre);text-decoration:none;word-break:break-word}
.coord a:hover{color:var(--accent)}
.formulaire{background:var(--papier);border:1px solid var(--ligne);padding:clamp(1.5rem,4vw,3rem)}
.champs{display:grid;gap:1.25rem}
@media (min-width:700px){.champs{grid-template-columns:1fr 1fr}.champs .plein{grid-column:1/-1}}
.champ label{display:block;font-weight:600;font-size:.92rem;margin-bottom:.45rem}
.champ input,.champ select,.champ textarea{width:100%;font:400 1rem/1.4 var(--sans);color:var(--encre);background:#fff;border:1px solid #B5A796;border-radius:4px;padding:.8rem .9rem;min-height:48px}
.champ textarea{min-height:150px;resize:vertical}
.champ input:focus-visible,.champ select:focus-visible,.champ textarea:focus-visible{outline:2px solid var(--accent);outline-offset:1px;border-color:var(--accent)}
.aide{font-size:.85rem;color:var(--doux);margin-top:.35rem}
.envoi{display:flex;flex-wrap:wrap;gap:1rem;align-items:center;margin-top:1.75rem}
.message-demo{margin-top:1.25rem;padding:1rem 1.25rem;background:#F3E4DC;border-left:3px solid var(--accent);font-weight:600}

/* Pages villes */
.lieux{display:grid;gap:0;list-style:none;margin:0;padding:0;counter-reset:l;border-top:1px solid var(--encre)}
.lieux li{display:grid;gap:.4rem 2rem;padding:1.75rem 0;border-bottom:1px solid var(--ligne);counter-increment:l}
.lieux h3{margin:0;display:flex;gap:1rem;align-items:baseline}
.lieux h3::before{content:"0" counter(l);font:italic 400 1rem/1 var(--serif);color:var(--accent);min-width:1.8rem}
.lieux p{margin:0;color:var(--doux)}
@media (min-width:900px){.lieux li{grid-template-columns:5fr 7fr;align-items:baseline}}
.duo{display:grid;gap:3rem;align-items:center}
.duo .cadre{aspect-ratio:4/5}
@media (min-width:900px){.duo{grid-template-columns:1fr 1fr;gap:5rem}.duo.inverse figure{order:2}}
.horaires{display:grid;gap:1rem;margin:2rem 0 0;padding:0;list-style:none}
.horaires li{display:grid;grid-template-columns:7.5rem 1fr;gap:1rem;padding-bottom:1rem;border-bottom:1px solid var(--ligne)}
.horaires b{font:italic 400 1.15rem/1.4 var(--serif);color:var(--accent)}
.conseils{display:grid;gap:1rem;counter-reset:c}
.conseil{padding:1.75rem;background:rgba(251,248,243,.8);border:1px solid var(--ligne)}
.conseil h3{font-size:1.4rem}
.conseil p{margin:0;color:var(--doux)}
@media (min-width:800px){.conseils{grid-template-columns:repeat(3,1fr)}}
.avis-seul{max-width:52rem;margin:0 auto;text-align:center}
.avis-seul blockquote{margin:1.25rem 0;font:italic 400 clamp(1.4rem,2.6vw,2rem)/1.4 var(--serif)}
.avis-seul p{color:var(--doux);font-size:.92rem}

/* Pied de page */
.pied{background:var(--sable);padding:clamp(3.5rem,7vw,5.5rem) 0 2rem;border-top:1px solid var(--ligne);font-size:.95rem}
.pied .grille{display:grid;gap:2.5rem}
.pied .marque{font:italic 400 2rem/1 var(--serif);display:block;margin-bottom:.75rem}
.pied h2{font:600 .75rem/1 var(--sans);letter-spacing:.2em;text-transform:uppercase;color:var(--doux);margin:0 0 1rem}
.pied ul{list-style:none;margin:0;padding:0;display:grid;gap:.55rem}
.pied a{color:var(--encre);text-decoration:none}
.pied a:hover{color:var(--accent);text-decoration:underline}
.pied p{color:var(--doux)}
.mention{margin:3rem 0 0;padding-top:1.5rem;border-top:1px solid var(--ligne);font-size:.88rem}
.mention a{text-decoration:underline}
@media (min-width:700px){.pied .grille{grid-template-columns:1fr 1fr}}
@media (min-width:1040px){.pied .grille{grid-template-columns:1.6fr 1fr 1fr 1.2fr}}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  body::before,body::after{animation:none}
  *{transition:none!important}
}
.bandeau-img img{object-position:50% 35%}
