/* Espaces : la police Euphemia UCAS a des espaces anormalement larges (surtout en gras),
   que Safari sur iPhone mesure mal (texte coupe a droite, espace avalee avant un mot en
   gras). Seuls les caracteres d'espacement sont dessines avec une police systeme ; toutes
   les lettres restent en Euphemia UCAS. */
@font-face{font-family:'Vigaro Espaces'; src:local('Helvetica Neue'), local('HelveticaNeue'), local('Helvetica'), local('Arial'), local('ArialMT'), local('Roboto'); unicode-range:U+0020, U+00A0, U+2009, U+202F; font-weight:100 900;}
/* Feuille de style commune a toutes les pages du site VIGARO. */
/* ===================================================================
     Palette stricte : 3 couleurs de marque uniquement.
     --light (#d3d3d1), --dark (#2b2b2c), --ocre (#bca949).
     Le thème (clair/sombre) suit le système, et inverse simplement
     les rôles clair/sombre — aucune couleur supplémentaire n'est
     introduite, seules des variantes d'opacité des 3 teintes.
     =================================================================== */
  :root{
    --light:#d3d3d1;
    --dark:#2b2b2c;
    --ocre:#bca949;

    /* rôle "page" (thème clair par défaut) */
    --bg:var(--light);
    --text:var(--dark);
    --text-muted:rgba(43,43,44,.64);
    --border:rgba(43,43,44,.18);
    --surface:rgba(43,43,44,.045);

    /* rôle "bandeau contrasté" — toujours l'inverse de la page,
       ce qui conserve le rythme visuel clair/sombre quel que soit le thème */
    --band-bg:var(--dark);
    --band-text:var(--light);
    --band-text-muted:rgba(211,211,209,.68);
    --band-border:rgba(211,211,209,.18);
    --band-surface:rgba(211,211,209,.06);

    /* accent constant dans les deux thèmes */
    --accent:var(--ocre);
    --accent-ink:var(--dark);

    --radius:2px;
    --maxw:1556px;
    --shadow:0 1px 2px rgba(0,0,0,.09), 0 10px 26px rgba(0,0,0,.08);
  }
@media (prefers-color-scheme: dark){
    :root:not([data-theme="light"]){
      --bg:var(--dark);
      --text:var(--light);
      --text-muted:rgba(211,211,209,.68);
      --border:rgba(211,211,209,.18);
      --surface:rgba(211,211,209,.06);

      --band-bg:var(--light);
      --band-text:var(--dark);
      --band-text-muted:rgba(43,43,44,.64);
      --band-border:rgba(43,43,44,.18);
      --band-surface:rgba(43,43,44,.045);
    }
  }
:root[data-theme="dark"]{
    --bg:var(--dark);
    --text:var(--light);
    --text-muted:rgba(211,211,209,.68);
    --border:rgba(211,211,209,.18);
    --surface:rgba(211,211,209,.06);

    --band-bg:var(--light);
    --band-text:var(--dark);
    --band-text-muted:rgba(43,43,44,.64);
    --band-border:rgba(43,43,44,.18);
    --band-surface:rgba(43,43,44,.045);
  }
*,*::before,*::after{box-sizing:border-box;}
html{scroll-behavior:smooth;}
@media (prefers-reduced-motion: reduce){
    html{scroll-behavior:auto;}
    *,*::before,*::after{animation-duration:0.001ms !important; animation-iteration-count:1 !important; transition-duration:0.001ms !important;}
  }
body{
    margin:0;
    background:var(--bg);
    color:var(--text);
    font-family:'Vigaro Espaces','Euphemia UCAS','Segoe UI',Calibri,'Helvetica Neue',Arial,sans-serif;
    font-size:16px;
    line-height:1.65;
    -webkit-font-smoothing:antialiased;
  }
img,svg{max-width:100%; display:block;}
a{color:inherit;}
ul{list-style:none; margin:0; padding:0;}
:focus-visible{outline:2px solid var(--ocre); outline-offset:3px;}
h1,h2,h3,h4{
    margin:0;
    font-weight:600;
    text-wrap:balance;
    letter-spacing:-0.01em;
    color:var(--text);
  }
p{margin:0;}
.container{max-width:var(--maxw); margin:0 auto; padding:0 28px;}
.eyebrow{
    display:inline-flex; align-items:center; gap:10px;
    font-size:0.94rem; font-weight:600; letter-spacing:0.1em; text-transform:uppercase;
    color:var(--accent);
  }
.eyebrow::before,.eyebrow::after{content:"–"; font-weight:400; opacity:0.7;}
section[id],#contact,#top{scroll-margin-top:var(--header-h,132px);}
main > section:not(:first-child){border-top:1px solid var(--border);}
footer{border-top:1px solid var(--border);}
.section{padding:96px 0;}
.section-head{max-width:640px; margin:0 0 48px; display:flex; flex-direction:column; gap:14px;}
.section-head h2{font-size:clamp(1.7rem,3vw,2.35rem);}
.section-head p{color:var(--text-muted); font-size:1.05rem;}
/* bandeau contrasté : réassigne les rôles pour tout ce qu'il contient */
  .band{
    --bg:var(--band-bg); --text:var(--band-text); --text-muted:var(--band-text-muted);
    --border:var(--band-border); --surface:var(--band-surface);
    background:var(--bg); color:var(--text);
  }
.band h1,.band h2,.band h3,.band h4{color:var(--text);}
/* léger changement de plan sans nouvelle couleur (juste un voile) */
  .tint{background:var(--surface);}
/* ---------- Buttons ---------- */
  .btn{
    display:inline-flex; align-items:center; justify-content:center; gap:10px;
    padding:14px 26px; font-family:inherit; font-size:0.95rem; font-weight:600; letter-spacing:0.01em;
    border-radius:var(--radius); border:1px solid transparent; cursor:pointer; text-decoration:none;
    transition:filter .18s ease, background-color .18s ease, color .18s ease, border-color .18s ease, transform .18s ease;
    white-space:nowrap;
  }
.btn svg{width:18px; height:18px; flex-shrink:0;}
.btn-primary{background:var(--accent); color:var(--accent-ink);}
.btn-primary:hover{filter:brightness(0.92); transform:translateY(-1px);}
.btn-outline{background:transparent; border-color:var(--text); color:var(--text);}
.btn-outline:hover{background:var(--text); color:var(--bg);}
/* ---------- Icons ---------- */
  .icon{width:22px; height:22px; stroke:currentColor; fill:none; stroke-width:1.6; stroke-linecap:round; stroke-linejoin:round;}
/* ---------- Email picker (choix Gmail / appli mail) ---------- */
  /* Même technique fiable que les fiches services : case à cocher masquée +
     étiquette, donc le menu s'ouvre au clic/tap sans dépendre du JS. */
  .email-picker{position:relative; display:inline-flex;}
.email-picker-toggle{position:absolute; opacity:0; width:1px; height:1px; margin:-1px; pointer-events:none;}
.email-picker-overlay{display:none; position:fixed; inset:0; z-index:150; cursor:default;}
.email-picker-toggle:checked ~ .email-picker-overlay{display:block;}
.email-picker-trigger{width:100%;}
.email-picker-menu{
    position:absolute; top:calc(100% + 8px); left:0; z-index:160;
    background:var(--bg); border:1px solid var(--border); border-radius:12px;
    box-shadow:var(--shadow); padding:8px; min-width:230px;
    display:flex; flex-direction:column; gap:2px;
    opacity:0; pointer-events:none; transform:translateY(-6px);
    transition:opacity .15s ease, transform .15s ease;
  }
.email-picker--up .email-picker-menu{top:auto; bottom:calc(100% + 8px);}
.email-picker-toggle:checked ~ .email-picker-menu{opacity:1; pointer-events:auto; transform:translateY(0);}
.email-picker-menu a, .email-picker-menu button{
    display:flex; align-items:center; gap:10px; text-align:left; width:100%;
    padding:10px 12px; border-radius:8px;
    font-size:0.88rem; font-family:inherit; text-decoration:none; color:var(--text);
    background:none; border:none; cursor:pointer;
  }
.email-picker-menu a:hover, .email-picker-menu button:hover{background:rgba(188,169,73,.14); color:var(--ocre);}
.email-picker-menu .email-copy-btn{border-top:1px solid var(--border); margin-top:2px; padding-top:11px; border-radius:0 0 8px 8px;}
.footer-contact .email-picker-trigger{font-size:0.92rem; opacity:0.92; cursor:pointer;}
.footer-contact .email-picker-trigger:hover{color:var(--ocre); opacity:1;}
/* ================= COOKIE BANNER ================= */
  .cookie-banner{
    position:fixed; left:0; right:0; bottom:0; z-index:200;
    background:var(--bg); border-top:1px solid var(--border);
    box-shadow:0 -1px 2px rgba(0,0,0,.09), 0 -10px 26px rgba(0,0,0,.08);
    padding:14px 28px;
    animation:rise .5s ease both;
    /* Garde le bandeau compact : il reste au-dessus du contenu tant qu'il est affiché,
       donc plus il est court, moins il risque de recouvrir un bouton en dessous. */
    max-height:40vh; overflow:auto;
  }
.cookie-banner[hidden]{display:none;}
.cookie-banner-inner{
    max-width:var(--maxw); margin:0 auto;
    display:flex; align-items:center; justify-content:space-between; gap:20px; flex-wrap:wrap;
  }
.cookie-banner p{margin:0; font-size:0.85rem; line-height:1.45; color:var(--text-muted); max-width:70ch;}
.cookie-banner p a{color:var(--text); text-decoration:underline;}
.cookie-banner-actions{display:flex; gap:10px; flex-shrink:0;}
@media (max-width:640px){
    .cookie-banner{padding:12px 16px;}
    .cookie-banner-inner{gap:12px;}
    .cookie-banner p{font-size:0.8rem; line-height:1.4;}
    .cookie-banner-actions{width:100%; justify-content:stretch;}
    .cookie-banner-actions .btn{flex:1; padding-top:10px; padding-bottom:10px; font-size:0.85rem;}
  }
/* ================= HEADER ================= */
  header{
    position:sticky; top:0; z-index:50;
    background:var(--bg);
    border-bottom:1px solid var(--border);
  }
.header-row{
    display:flex; align-items:center; justify-content:space-between;
    padding:14px 28px; max-width:var(--maxw); margin:0 auto; gap:20px;
  }
.logo{display:flex; align-items:center; text-decoration:none; color:var(--text);}
.logo-img{height:88px; width:auto; display:block;}
.logo-img-ondark{display:none;}
@media (prefers-color-scheme: dark){
    :root:not([data-theme="light"]) .logo-img-onlight{display:none;}
    :root:not([data-theme="light"]) .logo-img-ondark{display:block;}
  }
:root[data-theme="dark"] .logo-img-onlight{display:none;}
:root[data-theme="dark"] .logo-img-ondark{display:block;}
nav.primary-nav{display:flex; align-items:center; gap:32px;}
nav.primary-nav a{
    font-size:0.92rem; font-weight:500; text-decoration:none; color:var(--text);
    position:relative; padding:4px 0; opacity:0.82;
  }
nav.primary-nav a::after{
    content:""; position:absolute; left:0; right:100%; bottom:0; height:1px; background:var(--accent);
    transition:right .2s ease;
  }
nav.primary-nav a:hover{opacity:1;}
nav.primary-nav a:hover::after{right:0;}
.header-actions{display:flex; align-items:center; gap:16px;}
.phone-link{display:flex; align-items:center; gap:8px; font-size:0.92rem; font-weight:600; text-decoration:none; color:var(--text);}
.phone-link .icon{width:18px; height:18px; color:var(--accent);}
.nav-toggle{display:none;}
.nav-toggle-label{display:none; cursor:pointer; padding:6px; color:var(--text);}
@media (max-width:900px){
    .phone-link span.txt{display:none;}
    nav.primary-nav{
      position:absolute; top:100%; left:0; right:0; background:var(--bg); border-bottom:1px solid var(--border);
      flex-direction:column; align-items:flex-start; gap:0;
      max-height:0; overflow:hidden; transition:max-height .25s ease;
    }
    nav.primary-nav a{width:100%; padding:14px 28px; border-top:1px solid var(--border);}
    nav.primary-nav a:first-child{border-top:none;}
    nav.primary-nav a::after{display:none;}
    .nav-toggle:checked ~ nav.primary-nav{max-height:400px;}
    .nav-toggle-label{display:flex; align-items:center; flex-shrink:0; padding:8px; margin-right:-8px;}
    .nav-toggle-label .icon{width:42px; height:42px; stroke-width:2;}
  }
/* ================= HERO ================= */
  .hero{padding:64px 0 0; overflow:hidden;}
.hero-grid{display:grid; grid-template-columns:1.15fr 0.85fr; gap:56px; align-items:center; padding-bottom:64px;}
.hero-copy{display:flex; flex-direction:column; gap:22px; animation:rise .7s ease both;}
.hero-copy .tagline{font-size:1.15rem; color:var(--text-muted); max-width:46ch;}
.hero-ctas{display:flex; gap:14px; flex-wrap:wrap; margin-top:6px;}
.hero-card{
    background:var(--bg); border:1px solid var(--border); border-radius:var(--radius);
    box-shadow:var(--shadow); padding:30px; display:flex; flex-direction:column; gap:22px;
    animation:rise .8s ease .1s both;
  }
.rating-row{display:flex; align-items:center; gap:12px;}
.stars{display:flex; gap:3px; color:var(--accent);}
.stars .icon{width:16px; height:16px;}
.rating-num{font-size:1.4rem; font-weight:700;}
.rating-sub{font-size:0.82rem; color:var(--text-muted);}
.hero-facts{display:flex; flex-direction:column; gap:14px; border-top:1px solid var(--border); padding-top:18px;}
.hero-fact{display:flex; align-items:flex-start; gap:12px; font-size:0.92rem;}
.hero-fact .icon{width:18px; height:18px; color:var(--accent); margin-top:2px;}
.hero-photo{
    aspect-ratio:16/10; border-radius:var(--radius); overflow:hidden;
    background:linear-gradient(135deg, rgba(43,43,44,.9), rgba(188,169,73,.55)), var(--surface);
    display:flex; align-items:flex-end; padding:22px;
  }
.hero-photo span{color:var(--light); font-size:0.8rem; letter-spacing:0.08em; text-transform:uppercase; font-weight:600;}
@keyframes rise{from{opacity:0; transform:translateY(14px);} to{opacity:1; transform:translateY(0);}}
@media (max-width:900px){.hero-grid{grid-template-columns:1fr; gap:36px;}}
/* ================= STATS BAND ================= */
  .stats-band{padding:52px 0;}
.stats-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:0;}
.stat .num{font-size:2rem; font-weight:700; color:var(--accent);}
.stat .label{font-size:0.86rem; color:var(--text-muted);}
@media (max-width:820px){
    .stats-grid{grid-template-columns:repeat(2,1fr); row-gap:32px;}
    .stat:nth-child(3){border-left:none;}
  }
/* ================= ABOUT ================= */
  .about-grid{display:grid; grid-template-columns:0.85fr 1.15fr; gap:60px; align-items:center;}
.about-photo{
    aspect-ratio:4/5; border-radius:var(--radius);
    background:linear-gradient(160deg, rgba(43,43,44,.92), rgba(188,169,73,.4)), var(--surface);
    display:flex; align-items:flex-end; padding:24px; position:relative;
  }
.about-photo span{color:var(--light); font-size:0.8rem; letter-spacing:0.06em;}
.about-copy{display:flex; flex-direction:column; gap:20px;}
.about-copy p{color:var(--text); opacity:0.88; font-size:1.02rem;}
.badge-row{display:flex; flex-wrap:wrap; gap:10px; margin-top:8px;}
.badge{
    display:flex; align-items:center; gap:8px; padding:9px 14px;
    background:var(--surface); border:1px solid var(--border);
    border-radius:100px; font-size:0.82rem; font-weight:600;
  }
.badge .icon{width:15px; height:15px; color:var(--accent);}
@media (max-width:900px){.about-grid{grid-template-columns:1fr;}}
/* ================= WHY (comparison) ================= */
  .compare-grid{display:grid; grid-template-columns:1fr 1fr; gap:24px;}
.compare-card{border-radius:var(--radius); padding:34px; display:flex; flex-direction:column; gap:18px;}
.compare-card.negative{background:var(--surface); border:1px solid var(--border);}
.compare-card.positive{background:var(--band-bg); color:var(--band-text);}
.compare-card h3{font-size:1.15rem;}
.compare-card.positive h3{color:var(--band-text);}
.compare-list{display:flex; flex-direction:column; gap:14px;}
.compare-item{display:flex; align-items:flex-start; gap:12px; font-size:0.95rem;}
.compare-item .icon{width:17px; height:17px; margin-top:2px; flex-shrink:0;}
.compare-card.negative .icon{color:var(--text-muted);}
.compare-card.positive .icon{color:var(--ocre);}
@media (max-width:820px){.compare-grid{grid-template-columns:1fr;}}
/* ================= SERVICES ================= */
  /* Le dépliage "En savoir plus" est géré en CSS pur (case à cocher masquée +
     label = toute la carte), sans dépendre d'un clic JavaScript : c'est la
     technique la plus fiable qui soit sur mobile, garantie de fonctionner au
     premier tap, sur n'importe quel navigateur, sans délai ni quiproquo tactile. */
  .services-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:24px;}
.service-toggle{position:absolute; opacity:0; width:1px; height:1px; margin:-1px;}
.service-card{
    position:relative;
    background:var(--bg); border:1px solid var(--border); border-radius:var(--radius);
    padding:30px; display:flex; flex-direction:column; gap:16px;
    transition:transform .2s ease, box-shadow .2s ease; cursor:pointer;
  }
@media (hover:hover){
    .service-card:hover{transform:translateY(-3px); box-shadow:var(--shadow);}
  }
.service-icon{
    width:46px; height:46px; border-radius:100%; background:rgba(188,169,73,.16);
    display:flex; align-items:center; justify-content:center; color:var(--accent);
  }
.service-card h3{font-size:1.05rem;}
.service-card p{color:var(--text-muted); font-size:0.92rem;}
.service-card .service-desc{
    display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:3; overflow:hidden;
  }
.service-toggle:checked ~ .service-desc{-webkit-line-clamp:unset; overflow:visible;}
@media (hover:hover){
    .service-card:hover .service-desc{-webkit-line-clamp:unset; overflow:visible;}
  }
.service-more-btn{
    display:inline-flex; align-items:center; gap:6px; margin:-6px -10px -10px;
    background:none; border:none; padding:8px 10px 10px;
    font-size:0.82rem; font-weight:600; color:var(--accent); font-family:inherit;
    align-self:flex-start;
  }
.service-more-btn .icon{width:13px; height:13px; transform:rotate(90deg); transition:transform .2s ease;}
.service-toggle:checked ~ .service-more-btn .icon{transform:rotate(-90deg);}
@media (hover:hover){
    .service-card:hover .service-more-btn .icon{transform:rotate(-90deg);}
  }
@media (max-width:900px){.services-grid{grid-template-columns:1fr 1fr;}}
@media (max-width:600px){.services-grid{grid-template-columns:1fr;}}
/* ================= PROCESS ================= */
  .process-list{display:flex; flex-direction:column;}
.process-item{display:grid; grid-template-columns:64px 1fr; gap:24px; padding:26px 0; border-bottom:1px solid var(--border);}
.process-item:first-child{padding-top:0;}
.process-item:last-child{border-bottom:none; padding-bottom:0;}
.process-num{font-size:1.6rem; font-weight:700; color:var(--accent); font-variant-numeric:tabular-nums;}
.process-body h3{font-size:1.05rem; margin-bottom:6px; display:flex; align-items:center; gap:10px; flex-wrap:wrap;}
.process-body p{color:var(--text-muted); font-size:0.94rem; max-width:62ch;}
.price-tag{
    font-size:0.72rem; font-weight:700; letter-spacing:0.04em; text-transform:uppercase;
    color:var(--accent-ink); background:var(--accent); padding:3px 9px; border-radius:100px;
  }
.free-tag{
    font-size:0.72rem; font-weight:700; letter-spacing:0.04em; text-transform:uppercase;
    color:var(--text); background:var(--surface); border:1px solid var(--border); padding:3px 9px; border-radius:100px;
  }
/* ================= PROJECTS TEASER ================= */
  .projects-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:20px;}
.project-tile{
    position:relative; aspect-ratio:4/3.1; border-radius:var(--radius); overflow:hidden;
    background:linear-gradient(150deg, rgba(43,43,44,.85), rgba(188,169,73,.35)), var(--surface);
  }
.project-tile .veil{position:absolute; inset:0; background:linear-gradient(0deg, rgba(0,0,0,.55), rgba(0,0,0,0) 55%);}
.project-tile .tag{position:absolute; left:16px; bottom:14px; color:var(--light); font-size:0.86rem; font-weight:600;}
@media (max-width:900px){.projects-grid{grid-template-columns:1fr 1fr;}}
@media (max-width:600px){.projects-grid{grid-template-columns:1fr;}}
.section-foot{display:flex; justify-content:center; margin-top:44px;}
/* ================= REVIEWS ================= */
  .reviews-top{display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:20px; margin-bottom:36px;}
.google-badge{display:flex; align-items:center; gap:16px; padding:16px 22px; background:var(--bg); border:1px solid var(--border); border-radius:var(--radius);}
.google-badge .big-num{font-size:2rem; font-weight:700;}
.review-card .stars{color:var(--accent);}
.review-who{display:flex; align-items:center; gap:12px; margin-top:auto;}
.avatar{
    width:38px; height:38px; border-radius:100%; background:var(--band-bg); color:var(--band-text);
    display:flex; align-items:center; justify-content:center; font-size:0.85rem; font-weight:700;
  }
.review-who .name{font-size:0.88rem; font-weight:600;}
.review-who .place{font-size:0.78rem; color:var(--text-muted);}
/* ================= ZONES ================= */
  .zones-wrap{display:grid; grid-template-columns:0.9fr 1.1fr; gap:56px; align-items:start;}
.zone-groups{display:flex; flex-direction:column; gap:26px;}
.zone-label{display:block; font-size:1rem; font-weight:700; letter-spacing:0.02em; color:var(--text); margin-bottom:12px;}
.zone-chips{display:flex; flex-wrap:wrap; gap:12px;}
.zone-chip{
    display:flex; align-items:center; gap:8px; padding:11px 18px;
    border:1px solid var(--border); border-radius:100px; font-size:0.9rem; font-weight:600; background:var(--surface);
  }
.zone-chip .icon{width:15px; height:15px; color:var(--accent);}
.zone-chip-more{border-style:dashed; color:var(--text-muted); background:transparent; font-weight:500;}
@media (max-width:900px){.zones-wrap{grid-template-columns:1fr;}}
/* ================= PRESS ================= */
  .press-band{display:flex; align-items:center; justify-content:center; gap:28px; flex-wrap:wrap; padding:44px 0; text-align:center;}
.press-wordmark{font-size:1.3rem; font-weight:700; letter-spacing:0.05em; border:1px solid var(--border); padding:14px 24px;}
.press-band p{color:var(--text-muted); font-size:0.95rem;}
.press-band a{text-decoration:underline; text-underline-offset:3px; font-weight:600; color:var(--text);}
/* ================= FAQ ================= */
  .faq-list{display:flex; flex-direction:column; gap:12px; max-width:820px;}
.faq-item{background:var(--bg); border:1px solid var(--border); border-radius:var(--radius);}
.faq-item summary{
    list-style:none; cursor:pointer; padding:20px 24px;
    display:flex; align-items:center; justify-content:space-between; gap:16px;
    font-weight:600; font-size:1rem;
  }
.faq-item summary::-webkit-details-marker{display:none;}
.faq-item summary .plus{width:22px; height:22px; flex-shrink:0; position:relative;}
.faq-item summary .plus::before,.faq-item summary .plus::after{
    content:""; position:absolute; background:var(--accent); transition:transform .2s ease;
  }
.faq-item summary .plus::before{left:0; top:50%; width:100%; height:2px; transform:translateY(-50%);}
.faq-item summary .plus::after{top:0; left:50%; width:2px; height:100%; transform:translateX(-50%);}
.faq-item[open] summary .plus::after{transform:translateX(-50%) rotate(90deg); opacity:0;}
.faq-item .faq-a{padding:0 24px 22px; color:var(--text-muted); font-size:0.95rem; max-width:70ch;}
/* ================= FINAL CTA ================= */
  .final-cta{padding:88px 0; text-align:center;}
.final-cta .section-head{margin:0 auto 32px; align-items:center; text-align:center;}
.final-cta-ctas{display:flex; gap:14px; justify-content:center; flex-wrap:wrap;}
/* ================= FOOTER ================= */
  footer{padding:64px 0 32px;}
.footer-grid{display:grid; grid-template-columns:1.7fr 1.1fr 1fr 0.7fr; gap:40px; padding-bottom:40px; border-bottom:1px solid var(--border);}
.footer-brand{display:flex; flex-direction:column; align-items:center; text-align:center;}
.footer-brand .logo-img{height:172px;}
.footer-col h4{font-size:0.82rem; letter-spacing:0.08em; text-transform:uppercase; color:var(--text-muted); margin-bottom:16px;}
.footer-col .footer-title{display:block; font-size:0.82rem; font-weight:600; line-height:1.65; letter-spacing:0.08em; text-transform:uppercase; color:var(--text-muted); margin:0 0 16px;}
.footer-col ul{display:flex; flex-direction:column; gap:11px;}
.footer-col a{font-size:0.92rem; text-decoration:none; opacity:0.92;}
.footer-col a:hover{color:var(--ocre); opacity:1;}
.footer-cookie-link{font:inherit; font-size:0.92rem; opacity:0.92; background:none; border:none; padding:0; margin:0; color:inherit; text-align:left; cursor:pointer;}
.footer-cookie-link:hover{color:var(--ocre); opacity:1;}
.footer-contact li{display:flex; gap:10px; align-items:flex-start; font-size:0.92rem;}
.footer-contact .icon{width:16px; height:16px; margin-top:3px; color:var(--ocre); flex-shrink:0;}
.footer-contact a{color:inherit; text-decoration:none;}
.footer-contact a:hover{text-decoration:underline;}
.social-row{display:flex; gap:12px; margin-top:18px;}
.social-row a{
    width:36px; height:36px; border:1px solid var(--border); border-radius:100%;
    display:flex; align-items:center; justify-content:center; text-decoration:none;
  }
.social-row .icon{width:16px; height:16px;}
.social-row a[aria-label="Facebook"] .icon{width:19px; height:19px;}
.social-row .social-logo-mask{
    width:12px; height:19.7px;
    background-color:currentColor;
    -webkit-mask-image:url(data:image/png;base64,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);
    mask-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAKAAAAEGCAYAAADi/Z5qAAAWPUlEQVR42u2de7RcVX3HPzNnJhGMCSEIFIyACLRUKA8rhfJoQSIgLbSAbam8Kmqta0FXWwIWoa1SaoFa29RVBTHxFUBAsZTnAqrVBVrRVd6WIGiwXcgjPBJIcmfmTP/Yv1/OzsnMvXOTe/bZZ87vu9ZZM3dyb87MOZ/5Pfb+7d8Gk8lkMplMJlPd1Jjk3xKgWdHP1Rvhd1K7/XEDOO5qypfMVzf3c98QCQ9gIhbkbOBQeZ5U5PP05TMtAZ6V58MgenqE/6/t/b89gzIMgG2gA9wAnDSGn1khXZ6DdB3wKWBCXlsjzwdds8Rz9QZkQQBeDZwubqlVsc+1ue93nUDVBH4MXC+wrQI+I9dr3RB33pS40mLLGQJwGXBGRQEcRV3PGurjZJ/zOYHsPuBOAVOtaP6aNuXRLKQBOG33zIC4bxicz4pFXA48CtwPPDYgpu6bZZxZV1WHL6RasjycvpvdXh4vkMdXgJ8An5AY8jYvs27J/2Ewjpj5LZOL1fEunB0bH6lYya4kLPl/fwi4Bth/gFVsGmqDh1cSubAnAvvJc7tYwy2mWsrEA68n121H4G24Ia2DgbnAeuAZ+b3E+zuTWcAZP3pesuMfNw6wii1qODFglq3465t4MGpW/LvAD4FrgcXAPA/UpllAs4BFHx1x0frz08B5wNZDEiCzgKYZH31oeFbxTcBlwArgEC/BaRmApqKTQHXRXWAn4JvAdcCve0M4TQPQVHQ2reOEbeA9AuIHga08a9gwAE1Fg6gJSws3//wAcPK4JikGYJwQJl6ysgduMPtMSVLGKjY0AOMGsU02EbAUuB14q1jDpgFoCnWPmuKWDwMexxWJpGRDZgagKUjGrAPZy8Qld4BZVU5OrBqmehBqkrJUXluWS2DMApoKjw2bAttS4GPAdmRFtQagKQiEOpNyEa7ucHsqOFZoAFbfJa8D3g58RWLClgG4eUoLOsZdswW8w4Gz5HllsuNWDb4MnSlcWTLk9Sq5Y53G+7x86b5AtkrPABxBfWBlARdsa2CHLYDWB7QROYRITLhMfv6C3N+uATg5eA1gLbAvblHPTGpb4PcHZIg6ZLEzrly+72WWC4a4MK1YaRJnpwhNTFLcmu6vAy/HbgnLXpapYLwmMLxE+PGsWTkA9weOls+9C3Ca3MA3DPjbrsAYk3Xsyfu5FzhBvtSVWp8csiJaq4JfBbYpwNVpfDTsGMWSzceVzJ8KXA7c7d1Q/3N0iaviug982vuSYQCGB3A6rstf4daWIxmSLO0kVvJzwP+x6SKkHuUvF52Q0OZEb8jGAIwQwFEBTYbEhjviqpdvyX22si2inv9BYA4VGqQ2AEcDsjkAyMOAW4EnPQi6bLwAqQxX/PkIh90MwBkEMp8ZLwD+bMhnDe2KO5KI7EWEHRlsKm5mMnlt0dEUK/MC8EngKOAOD9ReCV+OhmTwi733aBZwjCzgsBvvW8RTcZ20+iUkKJqhrwaOqILhMQBnTr7LmwfcQzmL/RX6p4DXxXSNzQUXPyicCogvA8cIhC0mn6Mu4j5PAAuBdzN1M04DcAxBbAp0x+AGs9slQJgA7/Q8jwFYI6ViefIQhioW0LZ7ZwG7xZKQGIDhIdQVbscBd5EtNgqRGKW4+sGLBX4DsKYQJhKTne/dhxAuUTPzU7zsuGEA1k9aYfRD4L24rqkh4rKGd+4/yEFpANYQwjauw/43vBitaPXFDR8u5zcLaO6YSyU5CQGDDr+818vEGwZgPaXFow/h+kY3A2TFmozMwo0JlsqBARiHFewDfyuPrUDnTIBjDUCTNhl6FNcZtR/ACirkJwFvFjfcNADr7YpT4BKGLxUtQnMJX6FjAEYoXRS1EvhfL04rGvo+cC4lduU3AOMCcLXEgr0AAOqKxJ0osfWvARiXGwb4Im5gWrsdFCVt9XaoxIGlzIoYgPFJS7eKlq6/3gV4I1mxhAFYYzfcxq3f+Bd5rRvovKssCTH56gSEvgEc71lFA9DA47PAz8Ui9gsGENzmiQagaYPW4AoGQmk1Jc0HG4DxSZdSPpyzUkWqtBJ9AzDOLLgHXCU/9wo+V4rr6LAPJZTpG4DxaivCFKj2cX0U51NCp30DMG4AQ8EQogDCAKyIdAruLuB5shmLEHGnAWjaAODDuAHiUAuWMABN+XvTqsOHNMVrCUNavo8YgKYytcAANJWpjgFoKlOWBZvqmWmZTFDS4iQD0KSaawCaytQtBqCpTN1oAJrKzErNBZs2ku4iYEmIqRTLtwNuw+3+OH9YAzA++W10dybbJLtoa2sl+aaNFLJAtEFJewobgPFqTYBzaNf+R4DH5XlqANZbCsXxAe6RtuP4EW7j7eDFrwZgnAC2CNs+dwFWjGDyNEG4BkUA3y4rETEA45ICsTfwesIty1zmZcMGYI2lW+X+Nm772hBbKDTItso1F1xz69cB5gDvkdeKXJSkW0TcBayg+IaYBmAF1Md1R90755KLzIBX4ZoTNQ3AekvvxYk5C1WUtC/MjXIemws2AAE4CteaLQ1wvibwn9hUnMV/Ev/9Am4PNz8hKcr9gtuts0OJ3RcMwDjUEgj/Ajf8UvQ8sC56/w/gBcL0nzEAI3a9XWBH4INefFZkopMI8Fd78SYGYH3dbx/Yl2zwuVEwgA3gKeCnlNz8yAAsHz5NBi4mTBV0ipvq+zjwmgFYbyWSBFwGHEK2jWqR1q8lLnd52e7XACw/9usDBwF/RJj+zArbv5NV3fQNwHq6XgXis7j+zASK/SaAvxbL24/hW2gqx/U2gH8C3iZZcNF7BPfkHDfhNsdulu1+DcBy1BbgTgLO8eKyIqWWbi1uU+wmJRWgGoDlqiWubw9JPLqB7oHGe/8GPBRD8uFfEFMYzZL4a0/gW7iB55RwSy5fBf4ugKs3ACNMOJoC314C3w5eTFa0enKf3w88QLYTUzRDAaZik42+3PBLS4BPXe8K4AZ5nsZ0gcwCFvvF7uF2I78QONeDIgR8Cv564CLcOuPSig4MwHDg+dNphwLXS7ynCUcor9ORuPMa4DrJvjtVuIhah7ZMLmbHC2Rn+ki9AHkbL2aqoqv13/cRuEpj/ZzdAq/hoKMnj/cC28k9jfK6mgXcMujUpWpQfyRubO+32HiSP2TmqaX8DwKLxPU2iLTLlgE4feD8+Ep1FPCnwHG5+C/0kIdawAT4K4EvatdrAA4fNslnk/mhi0XAAcCZuLG9hgdmUhJ8/pDLTWQD3xiAcYDVGOH1LoPHyd4lrx8ulu7AAa6vDPDw4mmF73PyvBv7TWlF9l7aBcQrWgUyavXHHOCXBajdgQ/gNo8+eIBV1JmMBuXNMPiW7wMCX2Uy3lgA7OM2Zy5Sc4A3eUAq6NtL/KY/70W2MJycZfSz9ITyB/Lz8F1VJfhiAFBv5mzgy7jpqpmWNl18h1i26WSS/YjDlcrDF9NFbQF/GOimDQPOBzaJ/L5pvOnHfJWDL7ZvddEB82SzEFVKxnQqrwt8qMrwxZiEmCZXR2D7Lq6D1tNkC5swAE1Fqw3cBxyNm76sxFDLVG7JFLd0jO8l4HTceORastL+SsssYDVivibwFeBLA2JBba1WyR2VzALGL63h+zDwP7jC0rfjWnn0yCpt2kS02Mgs4HhJK2v2lOMkef0bwA+AzwDPyWs6l51W5ds16LUU16lzP8IsnDFNrQbZ9J/Ghr8E/CZwKvAWXPXzk2SzPdFVQI+aaUGYglQ7tuzosmmx682SJfvgRjuwbpat+vFhwsZV18cDdwK3SsasU3ZRxocG4Pi451YuIz4WuB24AziGbPlDEhOIBuB4WkUfxEXAbbj9QLbzXk8MQFMIEDVxOQr4PnA+2drklgFoCnGPtRPWrsAncAvkf03ixlaZHBiA9bKIqUC3F25O+UL5ubShNgOwftaw5bnlS4Cv4pYepGW4ZAOw3m65C5wC3C0QhmiUaQCaNqiFWwaxi2TJv+glJw0D0BRCs8T97orbuuvvQ1rCmIoRyuxZV7kqkgI+f4pbfrpYXjufbEuHfh0ALHtgdKrizkEL25tjBqFO6QWDMBYAU9wgabekb/5+uG2ypiu9YY0BQFYRzgbZAqfF8vNiCtxNqWwAtWxoLa6XXlkl5nsDuzF4nzZtaXsCbvBWK5H7wD4M31a1R7YreeLd4CpIITxPPueFFLT4qTHJyZcBZ5CNlhcJ4GvAm3HrHspoJba58ee7cB1QU2Ce3DC9prsO+P2O98WvAox67w+UBGXGF0HFloT0SgJwlM6l6YAvzh253/lX7/kZwBtw7UDeJxZk/gAgY14Ir2OF18uX7QkCVFtbh9TpJU4t7xim2WIpLwI+htskOn8tOl6wH9Oh7+kpXBFD4XPHBuDMeZfWEOs2F1dK/w+4Hs75a9KNDMIJebw0xIiFAVhMdqkZ5iBLeRBu9/IVA0BMI4FQOfho0Vm+ARgGyCbZUkrVNsCvANey6dqPGEBcL48neOGHATgGag4YztlPgv88iGXHgylw/0zdK5sLjkOpfNHVMraA/8ZVqhwkIGpLtgnKW2qpGfABZDt9JmYBx9cqJrk48WsDstPQR+odb2RwU3ezgGNiFXueRfyeWMRzcG3Zmp5LDh2/quG4gwIG1c0CxjvmqJoFfHHAdQy9KL4PnOwNO5kFHGP1PAMxgWvVdgGwyrNKoS1hH7hYvhD9zTEeBmD1pMlKgisePRZ4kWzlW8gYVQsyTvbCBQOwBtIkZDbwX7jOBy+SrXwLaQW7uL6Fe8j7ahqA9dF6cckK4UuEbc3m10EuZjOWdxqA4+GSFcJFwOoSIOwD++NK+qeVSBqA4wNhC1dVfmRgCNXtH4jrzNWdDlcG4PhIi0fvx1XaPEc2PBMqLv1L3JZo5oJrDOFsXNvevyFbUBTCCvZwhRQHCYwtA7C+iUkLuFKy0yQQhFpydtyWWl6bCam+/Gv4BNm0XtFzxD3gZVzv6pEMnFnA8ZS6wAauHVuImRJtijkXt7dywwCst3SB13JcpXWIrFhnR95PNlhuANbYCuqS18sDAghuLxN/c3ADsKbSRfTXAo8HcMU6Nbct2WY6LQOw3lYQ3MD05YTZuEZnRuaNcj4DsD5W8DrggQCuWJujn0O2l13DALRYcDVunQkB3HAP2BpXKjYpZwZgfaxgA1hCmK27erjChF/1rKIBaFaQp4EfBbCCCty+uKnBngFoALaAZ4HvBMiGlauTcA2aesPiQAOwPtJk4CovMSlaa3DjkJYFmzZYwp8Qpie27uK+u5ecGIA1l87PPu9BUtR5tDTsQ5MlIgZgvTLhFvAMsNRzy0XrVXPBpkEWKpTmYOOApgFQFC2tKz0b2ImsHbEBWHM3DPBNprl4aAs0ae8YA7CeAH4dV7ofojgBiwFNg1xwFEsfDMB6W8LSOTMATSG0xgA0lSEtQjhzGG8GoKlIaYLzDnlsGICmMvSquWBTlMmuAWiKk0zTWCv0GGDfADT5Wh/4fLMNQJNv+XYja6MR4nxPDrOEBmC9pEWhfwy8jinW7M7g+ZbIY2oAmgDWmgs2lZl4vt6SEFMZ4HWAHXHt02DTLWKLUDrVmzLVD8R24PPZQLRpg0LtsKmW7zGybSMsC7YMmD8hWzZZpLQS5ibchoqJAVhfac++Obj+zfpaCG2FrQkxAMXibQe8U2BMAp17a8uCTWqBTiPbUqFIKeATwJdzLtkArCmAs3FbeDUCJSHaifX7HpQGYE2Tjx7wVuAwed4KdO4JccGYC663+sDRAcHTDPufcRtpt80C1jv2WwD8OVmr3tDZt1nAmqopLvcs3MYxaaB73gTWAQ9PFv8ZgPWwfvNxWyaEgk8z4A5ug5yhGbABWI/k4yxgYUAAdVfOKyXmbJkFrCd8XeAQ4FKy3dRDSOPMlYzQgcsAHE/X28BNu12CG/8LlXhoN/4XgbtzGbEBWBO15Kafixt47hBu2q0vTD0DPOJZRAOwRvB1gMOBC+R5K+D5e3JcJmxNeW4DcLxcr+6I9HGyHoCh3G+KG3D+GW6T7D4jlHwZgOOhpgfgjWIBQ065qfvtA9/CTcE1Rn3jpvGArwF8FfgdsTxJ4Peh1nf5dNgyAKutxLM01+H2Zgsd96n7bQJPAD8gm4EZKWg1VTvbBbjBg69dwnvR2Y/LcbswJYxYc2gWsJrJxiyB793AtwW+bknwqaVbgZt6azGNglezgNWL91IJ8o/BbbfQLiHhGBQKXAG8wjS3fjALWB2rp3v8bocbZrlZ4Csj4fBjv0Tivmum43rNAlYnyfDXcPwebpJ/rhd7lX0P+/K+VrMZG98YgPGC58dX2+KGWI6SnzXTLXOzGS1wWI7bg3iWhAYYgNWN7xo58BbhptT2BHb2rEu75Peqwy4/Bi6Un2dspZ1+uGXygTtko9wzfaTy+CqwjRfv1Am6QXOmvwHck7tWvQLvw3SP9fJ42pZ+IcwChk8mfPA6nkVZiFu59lHgSO91nWGIJWHsiLu9GviSwNcxAKsFnFaNLAT2wVUtHw5sn3PBSWSfR4tNn8TVGo4842EAhgFNoWnIjUlzwG2FW6NxMHAscIqX0foWL4n0c3bF+l0giYc/G2MABoAsGXJT+rmfVfMFvFOB3SW2OyDnTjW+S4h7XDYV+K7AVdxsMXyxAdjyhhZCbaLcm8a5JqtvmyX/Phv4sMC0N3CinGPugP+r51nL2A1BR74cVwDnyfPuTN30GNTHTWLHrNm4XR8Tz02mwOnAW+R5C7cIfJD18K1cFaDzLXob+J7A12YGewvGchHawNkyHBPCAuqc6vs8eJojXKuFI96wPhu3pm1SzWlPnWN+DtfYMpmm14gewIbnwq6qwA0ZNNyQ5JKQcYmr1WI/j+sp+KD3xWVcAJwsmA+hJtMb+G5TDyl8q3Bjkg+xheN9VUlCTHFY+TbwgmTtD5OttivEAphMvuVri9s9woOvsIbmBqBJs3RdwH6lWL5HiobP3J4JbwTAH+dT41T0Vg4GYM2lNX0/BT4lh67pSEO8AQOwvlZPB85X4tr3riDrqhV0GMJUP6unNYgX4+amV5Atbgoqs4D1tHorcNOK93qGqFPGmzIA6wEeXqLxEWAp8HO5/71Q8Z4BWC/1c2HWPbi2aXfIz8HjPQOwHlKLptOGdwGfBG7zwEvLiPcMwPEHL/GOV3AVRtd7lrARC3gG4Pi4WR88gFuB+4EluCk1XdDUi/EDGIDVtXbqTvUe3gL8I1lzcLV6aazwGYDVsnSaqfprU34GfAdXS3lP7t9LzW4NwOor9R5bbLwg6k4B70rccIqCpw2MulX5kAZgfMD12HjNSFMs4HdxjSjvk8O/hylhNqI2AMfIpeaTCH/9CMDjuGY/n8aVw9/r/X3i/X23yhfCAAwDmlq4NGfd/JYbK4E1uMHiHq7rVDoAOmJOKgzAcjNTBazPpgvN/aGSVfI7j+HG6Z4n6y7vywe0N44XrTXFBe1W3cQHvG4Jm3ZOWEtW8Hkz8Khc1yW4DlPrJvm/u56LrtWFVM0j61Zgmjx5aOKmvB72Xn8E+JpnEVcN+ft2Lpbr1v2brHHH7RKT9Ii3WU5Zcd3luJa0Dc/tPj3F32ns51s17b9YWzWMpxlVOwdqb0hCYhoBwNi7NZWdcAyyjAaZyWQymUwmk8k0hf4f207Fy3Fod+4AAAAASUVORK5CYII=);
    -webkit-mask-repeat:no-repeat; mask-repeat:no-repeat;
    -webkit-mask-position:center; mask-position:center;
    -webkit-mask-size:contain; mask-size:contain;
    display:block;
  }
.footer-bottom{display:flex; justify-content:space-between; flex-wrap:wrap; gap:12px; padding-top:26px; font-size:0.82rem; color:var(--text-muted);}
@media (max-width:560px){.footer-grid{grid-template-columns:1fr;}}
/* Agrandissement des photos (téléphone) : le glisser horizontal sert à changer
   de photo ; on évite que le navigateur l'interprète comme un « retour ». */
.lightbox, .ba-lightbox{touch-action:pan-y pinch-zoom;}
/* Curseurs avant / apres agrandis : tout le glisser sert au curseur (pas de defilement a gerer). */
.ba-lightbox-stage .ba-slider-inner, .ba-lightbox-stage .ba-slider-triple{touch-action:none;}
/* Téléphone : rien ne doit pouvoir faire défiler la page sur le côté (zone vide à droite),
   et le carrousel d'avis ne doit pas entraîner la page quand on arrive au dernier avis. */
html, body{overflow-x:clip;}
.reviews-track{overscroll-behavior-x:contain;}
/* Menu téléphone : les 3 traits se transforment en croix quand le menu est ouvert,
   et le menu s'ouvre / se replie vers l'icône avec un fondu + zoom, façon macOS. */
.nav-toggle-label .burger path{transition:transform .35s cubic-bezier(.65,0,.35,1), opacity .2s ease; transform-box:fill-box; transform-origin:center;}
.nav-toggle:checked ~ .nav-toggle-label .burger .b1{transform:translateY(5px) rotate(45deg);}
.nav-toggle:checked ~ .nav-toggle-label .burger .b2{opacity:0; transform:scaleX(.2);}
.nav-toggle:checked ~ .nav-toggle-label .burger .b3{transform:translateY(-5px) rotate(-45deg);}
@media (max-width:900px){
  nav.primary-nav{
    max-height:none;
    background:var(--bg);
    background:color-mix(in srgb, var(--bg) 90%, transparent);
    -webkit-backdrop-filter:saturate(1.6) blur(16px); backdrop-filter:saturate(1.6) blur(16px);
    box-shadow:0 18px 40px rgba(0,0,0,.18);
    transform-origin:top right;
    opacity:0; visibility:hidden; pointer-events:none;
    transform:translateY(-12px) scale(.94);
    transition:opacity .22s ease, transform .3s cubic-bezier(.4,0,.2,1), visibility 0s linear .3s;
  }
  .nav-toggle:checked ~ nav.primary-nav{
    max-height:none; opacity:1; visibility:visible; pointer-events:auto; transform:none;
    transition:opacity .2s ease, transform .42s cubic-bezier(.2,1.25,.35,1), visibility 0s;
  }
  nav.primary-nav a{transform:translateY(-6px); transition:transform .35s cubic-bezier(.2,1,.3,1), opacity .2s ease, color .2s ease;}
  .nav-toggle:checked ~ nav.primary-nav a{transform:none;}
  .nav-toggle:checked ~ nav.primary-nav a:nth-child(2){transition-delay:.03s;}
  .nav-toggle:checked ~ nav.primary-nav a:nth-child(3){transition-delay:.06s;}
  .nav-toggle:checked ~ nav.primary-nav a:nth-child(4){transition-delay:.09s;}
  .nav-toggle:checked ~ nav.primary-nav a:nth-child(5){transition-delay:.12s;}
  .nav-toggle:checked ~ nav.primary-nav a:nth-child(6){transition-delay:.15s;}
}
.nav-toggle-label{-webkit-tap-highlight-color:transparent;}
