/* ==========================================================================
   Wollmath Group — direction artistique
   Principes retenus après benchmark des sites de construction les mieux notés
   (Turner, DPR, Webcor, Suffolk) :
     · la photographie réelle est le sujet, pas la décoration
     · la retenue lit comme de la confiance — pas de cartes, pas d'ombres,
       pas d'icônes décoratives, angles francs
     · contraste typographique fort : serif éditoriale / grotesque
     · le site a un point de vue, écrit à la première personne
   ========================================================================== */

@import url('https://fonts.googleapis.com/css2?family=Fraunces:opsz,wght@9..144,400;9..144,600;9..144,700&family=Archivo:wght@400;500;600;700&display=swap');

:root{
  --encre:#111111;
  --encre-70:#4A4A4A;
  --encre-40:#8A8A8A;
  --papier:#FBFAF8;
  --papier-2:#F2F0EC;
  --filet:#DDD9D2;
  --or:#B8963F;
  --urgence:#D2401A;
  --whatsapp:#25D366;
  --serif:'Fraunces',Georgia,serif;
  --sans:'Archivo',-apple-system,'Segoe UI',sans-serif;
  --gouttiere:clamp(20px,5vw,64px);
}

*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{
  font-family:var(--sans);
  background:var(--papier);
  color:var(--encre);
  font-size:17px;
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
}
img{display:block;max-width:100%;height:auto}
a{color:inherit;text-decoration:none}
.wrap{max-width:1320px;margin:0 auto;padding:0 var(--gouttiere)}

/* Étiquettes discrètes, alignées à gauche — jamais centrées */
.eyebrow{
  font-size:.72rem;letter-spacing:.22em;text-transform:uppercase;
  font-weight:600;color:var(--encre-40);
  display:flex;align-items:center;gap:12px;margin-bottom:22px;
}
.eyebrow::after{content:"";flex:1;height:1px;background:var(--filet)}

h1,h2,h3{font-family:var(--serif);font-weight:600;line-height:1.02;letter-spacing:-.02em}
h1{font-size:clamp(2.6rem,7vw,5.6rem)}
h2{font-size:clamp(2rem,4.4vw,3.4rem)}
h3{font-size:clamp(1.2rem,2vw,1.5rem);line-height:1.15}
p{margin-bottom:1em}
.mesure{max-width:58ch}

/* ---------- Liens d'action ---------- */
.act{
  display:inline-flex;align-items:center;gap:10px;
  font-family:var(--sans);font-weight:600;font-size:1rem;
  padding:17px 30px;border:1px solid transparent;
  transition:background .16s ease,color .16s ease,border-color .16s ease;
}
.act-appel{background:var(--urgence);color:#fff}
.act-appel:hover{background:#B0330F}
.act-wa{background:transparent;color:#fff;border-color:rgba(255,255,255,.45)}
.act-wa:hover{background:#fff;color:var(--encre);border-color:#fff}
.act-sombre{background:var(--encre);color:#fff}
.act-sombre:hover{background:#000}
.act-fil{border-color:var(--encre);color:var(--encre)}
.act-fil:hover{background:var(--encre);color:#fff}

/* ---------- Barre supérieure + navigation ---------- */
.bandeau{
  background:var(--encre);color:#CFCBC4;
  font-size:.78rem;letter-spacing:.06em;padding:10px 0;
}
.bandeau .wrap{display:flex;gap:26px;flex-wrap:wrap;justify-content:space-between}
.bandeau b{color:var(--or);font-weight:600}

.tete{
  position:sticky;top:0;z-index:50;background:var(--papier);
  border-bottom:1px solid var(--filet);
}
.tete .wrap{display:flex;align-items:center;gap:26px;height:92px}
.marque{display:flex;align-items:center;gap:12px;flex-shrink:0}
.marque img{height:56px;width:auto}
.marque-nom{display:flex;flex-direction:column;line-height:1}
.marque-nom b{
  font-family:var(--serif);font-size:1.42rem;font-weight:600;
  letter-spacing:-.02em;color:var(--encre);
}
.marque-nom i{
  font-style:normal;font-size:.66rem;letter-spacing:.3em;
  text-transform:uppercase;color:var(--or);font-weight:600;margin-top:3px;
}
.menu{margin-left:auto;display:flex;align-items:center;gap:22px}
.menu a{
  font-size:.8rem;font-weight:500;letter-spacing:.04em;
  text-transform:uppercase;padding-bottom:3px;white-space:nowrap;
  border-bottom:1px solid transparent;
}
.menu a:hover{border-color:var(--encre)}
.langue{display:flex;gap:2px;font-size:.76rem;letter-spacing:.08em;font-weight:600}
.langue a,.langue .actif{border:1px solid var(--filet);padding:5px 9px;text-transform:uppercase}
.langue .actif{background:var(--encre);color:#fff;border-color:var(--encre)}
.langue a:hover{border-color:var(--encre)}
.tel-tete{background:var(--encre);color:#fff;padding:13px 20px;font-weight:600;font-size:.88rem;white-space:nowrap;flex-shrink:0}
.tel-tete:hover{background:var(--urgence)}
.hamburger{display:none;margin-left:auto;background:none;border:0;font-size:1.5rem;cursor:pointer}

/* ---------- Ouverture : la photographie est le sujet ---------- */
.ouverture{position:relative;min-height:min(84vh,760px);display:flex;align-items:flex-end;overflow:hidden}
.ouverture .fond{position:absolute;inset:0}
.ouverture .fond img{width:100%;height:100%;object-fit:cover}
.ouverture .voile{
  position:absolute;inset:0;
  background:linear-gradient(105deg,rgba(10,10,10,.94) 0%,rgba(10,10,10,.78) 42%,rgba(10,10,10,.28) 100%);
}
.ouverture .wrap{position:relative;padding-top:96px;padding-bottom:64px;width:100%}
.ouverture h1{color:#fff;max-width:16ch}
.ouverture h1 em{font-style:normal;color:var(--or)}
.ouverture .sous{
  color:#D8D4CD;font-size:clamp(1.02rem,1.5vw,1.2rem);
  max-width:52ch;margin:26px 0 34px;
}
.ouverture .actions{display:flex;flex-wrap:wrap;gap:14px}
.ouverture .meta{
  display:flex;flex-wrap:wrap;gap:8px 34px;margin-top:44px;
  padding-top:22px;border-top:1px solid rgba(255,255,255,.2);
  color:#B8B4AD;font-size:.82rem;letter-spacing:.08em;text-transform:uppercase;
}
.ouverture .meta b{color:#fff;font-weight:600}

/* ---------- Prise de position ---------- */
.position{background:var(--encre);color:#fff;padding:clamp(64px,9vw,120px) 0}
.position .texte{
  font-family:var(--serif);font-size:clamp(1.7rem,3.6vw,2.9rem);
  line-height:1.18;max-width:22ch;letter-spacing:-.02em;
}
.position .texte span{color:var(--or)}
.position .wrap{display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(30px,6vw,90px);align-items:end}
.position .appui{color:#B8B4AD;font-size:1.02rem;max-width:44ch}
.position .eyebrow{color:#7E7A73}
.position .eyebrow::after{background:#333}

/* ---------- Services : liste éditoriale, pas de cartes ---------- */
.metiers{padding:clamp(64px,9vw,120px) 0}
.metier{
  display:grid;grid-template-columns:70px minmax(0,1.05fr) minmax(0,1.15fr) 130px;
  gap:clamp(16px,3vw,44px);align-items:start;
  padding:34px 0;border-top:1px solid var(--filet);
  transition:background .18s ease;
}
.metier:last-of-type{border-bottom:1px solid var(--filet)}
.metier:hover{background:var(--papier-2)}
.metier .rang{font-family:var(--serif);font-size:1.1rem;color:var(--or)}
.metier h3{margin-bottom:6px}
.metier .quoi{color:var(--encre-70);font-size:.97rem;margin:0}
.metier .details{
  color:var(--encre-70);font-size:.93rem;margin:0;
  columns:2;column-gap:26px;
}
.metier .details span{display:block;padding:2px 0}
.metier .aller{
  justify-self:end;align-self:center;font-size:.82rem;font-weight:600;
  letter-spacing:.1em;text-transform:uppercase;white-space:nowrap;
  border-bottom:1px solid var(--encre);padding-bottom:3px;
}
.metier .aller:hover{color:var(--urgence);border-color:var(--urgence)}

/* ---------- Chantiers : défilement horizontal plein bord ---------- */
.chantiers{padding:clamp(64px,9vw,110px) 0 clamp(50px,7vw,90px);background:var(--papier-2)}
.piste{
  display:flex;gap:20px;overflow-x:auto;padding:0 var(--gouttiere) 20px;
  scroll-snap-type:x mandatory;scrollbar-width:thin;
}
.piste figure{flex:0 0 min(78vw,470px);scroll-snap-align:start}
.piste img{width:100%;aspect-ratio:4/3;object-fit:cover}
.piste figcaption{
  margin-top:12px;font-size:.8rem;letter-spacing:.1em;
  text-transform:uppercase;color:var(--encre-40);
}

/* ---------- Territoire ---------- */
.territoire{padding:clamp(64px,9vw,120px) 0}
.territoire .haut{display:grid;grid-template-columns:1fr 1fr;gap:clamp(24px,5vw,80px);align-items:end;margin-bottom:56px}
.secteurs{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(24px,4vw,56px)}
.secteur h4{
  font-family:var(--sans);font-size:.76rem;letter-spacing:.18em;
  text-transform:uppercase;color:var(--or);font-weight:600;
  padding-bottom:12px;border-bottom:1px solid var(--filet);margin-bottom:14px;
}
.secteur a{
  display:block;padding:7px 0;font-size:1.02rem;
  border-bottom:1px solid transparent;
}
.secteur a:hover{color:var(--urgence)}
.secteur a::after{content:" →";opacity:0;transition:opacity .15s}
.secteur a:hover::after{opacity:1}

/* ---------- Artisan ---------- */
.artisan{background:var(--encre);color:#fff;padding:clamp(64px,9vw,120px) 0}
.artisan .wrap{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(30px,6vw,90px)}
.artisan .eyebrow{color:#7E7A73}
.artisan .eyebrow::after{background:#333}
.artisan h2{color:#fff}
.artisan p{color:#C4C0B9}
.artisan strong{color:#fff;font-weight:600}
.artisan .signature{
  font-family:var(--serif);font-size:1.5rem;color:var(--or);
  margin-top:10px;
}
.engagements{margin-top:34px;border-top:1px solid #2E2E2E}
.engagement{padding:20px 0;border-bottom:1px solid #2E2E2E;display:grid;grid-template-columns:1fr 1.5fr;gap:20px}
.engagement b{font-family:var(--serif);font-weight:600;font-size:1.16rem;color:#fff}
.engagement span{color:#A9A59E;font-size:.96rem}

/* ---------- Contact ---------- */
.contact{padding:clamp(64px,9vw,120px) 0}
.contact .wrap{display:grid;grid-template-columns:1fr 1fr;gap:clamp(30px,6vw,90px);align-items:start}
.champ{margin-bottom:22px}
.champ label{
  display:block;font-size:.74rem;letter-spacing:.16em;text-transform:uppercase;
  font-weight:600;color:var(--encre-40);margin-bottom:8px;
}
.champ input,.champ textarea{
  width:100%;border:0;border-bottom:1px solid var(--encre);
  background:transparent;padding:11px 0;font:inherit;font-size:1.05rem;color:var(--encre);
}
.champ input:focus,.champ textarea:focus{outline:0;border-color:var(--urgence)}
.contact .note{font-size:.85rem;color:var(--encre-40);margin-top:16px}
.direct{border-top:1px solid var(--filet);margin-top:36px;padding-top:26px}
.direct a{display:flex;justify-content:space-between;gap:20px;padding:15px 0;border-bottom:1px solid var(--filet);font-size:1.05rem}
.direct a b{font-weight:600}
.direct a span{color:var(--encre-40);font-size:.82rem;letter-spacing:.1em;text-transform:uppercase;align-self:center}
.direct a:hover b{color:var(--urgence)}

/* ---------- Pied ---------- */
.pied{background:var(--encre);color:#8E8A83;padding:70px 0 30px;font-size:.92rem}
.pied .colonnes{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:40px}
.pied img{height:84px;margin-bottom:18px;background:#fff;padding:8px}
.pied h5{
  font-family:var(--sans);color:#fff;font-size:.72rem;letter-spacing:.18em;
  text-transform:uppercase;margin-bottom:14px;font-weight:600;
}
.pied a{display:block;padding:4px 0}
.pied a:hover{color:#fff}
.pied .bas{
  border-top:1px solid #2E2E2E;margin-top:44px;padding-top:20px;
  display:flex;flex-wrap:wrap;gap:10px 30px;font-size:.8rem;letter-spacing:.04em;
}

/* ---------- Contenu en attente ---------- */
.attente{
  border-left:2px solid var(--or);padding:14px 0 14px 18px;
  font-size:.9rem;color:#A9A59E;margin-top:26px;
}
.attente b{display:block;color:var(--or);font-weight:600;margin-bottom:3px;
  font-size:.72rem;letter-spacing:.16em;text-transform:uppercase}

/* ---------- Actions permanentes ---------- */
.wa-flottant{
  position:fixed;right:22px;bottom:22px;z-index:60;
  width:54px;height:54px;background:var(--whatsapp);
  display:flex;align-items:center;justify-content:center;border-radius:50%;
}
.wa-flottant svg{width:29px;height:29px;fill:#fff}
.barre-mobile{position:fixed;left:0;right:0;bottom:0;z-index:70;display:none}
.barre-mobile a{
  padding:17px;text-align:center;color:#fff;font-weight:600;font-size:.98rem;
  letter-spacing:.04em;
}
.barre-mobile .a{background:var(--urgence)}
.barre-mobile .w{background:var(--whatsapp)}

/* ---------- Adaptations ---------- */
@media (max-width:1080px){
  .metier{grid-template-columns:44px 1fr;row-gap:12px}
  .metier .details{grid-column:2;columns:2}
  .metier .aller{grid-column:2;justify-self:start;align-self:start}
  .secteurs{grid-template-columns:1fr 1fr}
  .pied .colonnes{grid-template-columns:1fr 1fr}
}
@media (max-width:1180px){
  .menu{display:none}
  .hamburger{display:block}
}
@media (max-width:860px){
  .hamburger{display:block}
  .position .wrap,.artisan .wrap,.contact .wrap,.territoire .haut{grid-template-columns:1fr}
  .position .texte{max-width:none}
  .barre-mobile{display:grid;grid-template-columns:1fr 1fr}
  .wa-flottant{display:none}
  body{padding-bottom:58px}
  .ouverture{min-height:auto}
  .ouverture .wrap{padding-top:80px;padding-bottom:52px}
  .engagement{grid-template-columns:1fr;gap:4px}
  .metier .details{columns:1}
  .secteurs{grid-template-columns:1fr}
}

/* ==========================================================================
   PAGES INTÉRIEURES
   ========================================================================== */

/* Fil d'Ariane */
.fil{border-bottom:1px solid var(--filet);font-size:.8rem;letter-spacing:.06em}
.fil .wrap{display:flex;flex-wrap:wrap;gap:8px;padding-top:14px;padding-bottom:14px;color:var(--encre-40)}
.fil a:hover{color:var(--encre);text-decoration:underline}
.fil a::after,.fil span::after{content:"";margin-left:8px}
.fil a::after{content:"/";color:var(--filet);margin-left:8px}
.fil span{color:var(--encre)}

/* En-tête de page intérieure */
.tete-page{padding:clamp(46px,6vw,80px) 0 clamp(40px,5vw,64px);border-bottom:1px solid var(--filet)}
.tete-page .wrap{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(28px,5vw,72px);align-items:center}
.tete-page.etroite .wrap{grid-template-columns:1fr;max-width:900px}
.tete-page h1{margin-bottom:20px;font-size:clamp(2.1rem,5vw,4rem)}
.tete-page .chapo{font-size:clamp(1.04rem,1.5vw,1.2rem);color:var(--encre-70);max-width:54ch;margin-bottom:28px}
.tete-page .actions{display:flex;flex-wrap:wrap;gap:12px}
.tete-image img{width:100%;aspect-ratio:4/3;object-fit:cover}
.note-langue{margin-top:22px;font-size:.9rem;color:var(--encre-40)}
.note-langue a{border-bottom:1px solid var(--filet)}
.note-langue a:hover{color:var(--urgence);border-color:var(--urgence)}

/* Corps : texte + colonne latérale */
.corps-page{padding:clamp(50px,7vw,90px) 0}
.corps-page .wrap{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(0,.75fr);gap:clamp(30px,5vw,72px);align-items:start}
.corps-page.pleine .wrap{grid-template-columns:1fr}
.colonne-texte{max-width:70ch}
.colonne-texte h2{font-size:clamp(1.5rem,2.6vw,2.1rem);margin:38px 0 14px}
.colonne-texte h2:first-child{margin-top:0}
.colonne-texte p{color:var(--encre-70);font-size:1.04rem}
.colonne-texte .bloc{padding:22px 0;border-top:1px solid var(--filet)}
.colonne-texte .bloc h3{margin-bottom:8px}
.colonne-texte .bloc p{margin:0}
.etapes{counter-reset:e;list-style:none;margin:0}
.etapes li{counter-increment:e;padding:20px 0 20px 52px;border-top:1px solid var(--filet);position:relative;color:var(--encre-70)}
.etapes li::before{content:counter(e,decimal-leading-zero);position:absolute;left:0;top:20px;font-family:var(--serif);color:var(--or);font-size:1.05rem}

.encadre{border-left:3px solid var(--or);padding:18px 0 18px 22px;margin:34px 0;background:var(--papier-2)}
.encadre b{display:block;font-size:.74rem;letter-spacing:.16em;text-transform:uppercase;color:var(--or);margin-bottom:6px}
.encadre p{margin:0;color:var(--encre-70)}
.attente-clair{border-left:2px dashed var(--or);padding:14px 0 14px 18px;margin-top:30px;color:var(--encre-40);font-size:.92rem}
.attente-clair b{display:block;color:var(--or);font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;margin-bottom:4px}
.attente-clair p{margin:0}

/* Colonne latérale */
.marge{position:sticky;top:108px;display:grid;gap:18px}
.carte-marge{border:1px solid var(--filet);padding:24px}
.carte-marge h4{font-family:var(--sans);font-size:.74rem;letter-spacing:.16em;text-transform:uppercase;color:var(--encre-40);font-weight:600;margin-bottom:14px}
.carte-marge.sombre{background:var(--encre);color:#fff;border-color:var(--encre)}
.carte-marge.sombre h4{color:var(--or)}
.carte-marge.sombre p{color:#B4B0A9;font-size:.95rem;margin-bottom:16px}
.liste-mots{list-style:none}
.liste-mots li{padding:7px 0;border-bottom:1px solid var(--filet);font-size:.95rem;color:var(--encre-70)}
.liste-mots li:last-child{border:0}
.fiche{display:grid;grid-template-columns:auto 1fr;gap:8px 16px;font-size:.93rem}
.fiche dt{color:var(--encre-40)}
.fiche dd{font-weight:500}
.carte-marge.sombre .fiche dt{color:#87837C}
.carte-marge.sombre .fiche dd{color:#fff}

/* Bande image pleine largeur */
.bande-image img{width:100%;max-height:min(58vh,540px);object-fit:cover}

/* Grilles de liens */
.liens-communes{padding:clamp(48px,6vw,80px) 0;background:var(--papier-2)}
.grille-communes{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}
.grille-communes a{border:1px solid var(--filet);background:#fff;padding:10px 18px;font-size:.95rem}
.grille-communes a:hover{background:var(--encre);color:#fff;border-color:var(--encre)}

.autres-services{padding:clamp(48px,6vw,80px) 0}
.grille-autres{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:0;margin-top:22px;border-top:1px solid var(--filet)}
.grille-autres a{padding:24px 24px 24px 0;border-bottom:1px solid var(--filet);border-right:1px solid var(--filet)}
.grille-autres a:last-child{border-right:0}
.grille-autres a:hover b{color:var(--urgence)}
.grille-autres b{display:block;font-family:var(--serif);font-size:1.22rem;font-weight:600;margin-bottom:6px}
.grille-autres span{color:var(--encre-70);font-size:.93rem}

/* Page zones */
.corps-zones{padding:clamp(48px,6vw,84px) 0}
.bloc-secteur{margin-bottom:52px}
.bloc-secteur h2{font-size:clamp(1.4rem,2.4vw,1.9rem);padding-bottom:14px;border-bottom:1px solid var(--encre);margin-bottom:0}
.liste-communes{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}
.liste-communes a{display:flex;justify-content:space-between;align-items:baseline;gap:14px;padding:16px 20px 16px 0;border-bottom:1px solid var(--filet)}
.liste-communes a b{font-size:1.08rem;font-weight:500}
.liste-communes a span{font-size:.8rem;color:var(--encre-40);letter-spacing:.04em;white-space:nowrap}
.liste-communes a:hover b{color:var(--urgence)}

/* FAQ */
.corps-faq{padding:clamp(40px,5vw,70px) 0;max-width:920px;margin:0 auto}
.qr{border-top:1px solid var(--filet)}
.qr:last-child{border-bottom:1px solid var(--filet)}
.qr summary{cursor:pointer;padding:22px 40px 22px 0;font-family:var(--serif);font-size:clamp(1.08rem,1.9vw,1.35rem);font-weight:600;position:relative;list-style:none}
.qr summary::-webkit-details-marker{display:none}
.qr summary::after{content:"+";position:absolute;right:6px;top:20px;color:var(--or);font-size:1.5rem;font-family:var(--sans);font-weight:400}
.qr[open] summary::after{content:"–"}
.qr .rep{padding:0 40px 24px 0}
.qr .rep p{color:var(--encre-70);margin:0}

/* Conseils */
.grille-conseils{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:0;border-top:1px solid var(--filet)}
.carte-conseil{padding:30px 30px 30px 0;border-bottom:1px solid var(--filet);border-right:1px solid var(--filet)}
.carte-conseil:last-child{border-right:0}
.carte-conseil h3{margin-bottom:10px}
.carte-conseil p{color:var(--encre-70);font-size:.96rem}
.carte-conseil:hover h3{color:var(--urgence)}

.lien-suite{font-size:.84rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;border-bottom:1px solid var(--encre);padding-bottom:3px}
.lien-suite::after{content:" →"}
.lien-suite:hover{color:var(--urgence);border-color:var(--urgence)}

/* Bloc de rappel */
.rappel{background:var(--encre);color:#fff;padding:clamp(46px,6vw,74px) 0}
.rappel .wrap{display:grid;grid-template-columns:1.3fr .7fr;gap:30px;align-items:center}
.rappel h2{color:#fff;font-size:clamp(1.5rem,2.8vw,2.2rem);margin-bottom:10px}
.rappel p{color:#B4B0A9;margin:0;max-width:50ch}
.rappel-actions{display:flex;flex-wrap:wrap;gap:12px;justify-content:flex-end}
.act-fil-clair{border-color:rgba(255,255,255,.45);color:#fff}
.act-fil-clair:hover{background:#fff;color:var(--encre)}

/* Formulaire */
.formulaire .champ{margin-bottom:22px}
.contact-page{padding-top:clamp(40px,5vw,64px)}
.contact-page h1{font-size:clamp(2rem,4.4vw,3.4rem);margin-bottom:18px}

/* Menu mobile déployé */
@media (max-width:860px){
  .menu.ouvert{
    display:flex;flex-direction:column;align-items:stretch;gap:0;
    position:absolute;left:0;right:0;top:100%;background:var(--papier);
    border-bottom:1px solid var(--filet);padding:8px var(--gouttiere) 20px;
  }
  .menu.ouvert a{padding:14px 0;border-bottom:1px solid var(--filet)}
  .menu.ouvert .langue{margin-top:14px}
  .menu.ouvert .tel-tete{margin-top:14px;text-align:center}
  .tete .wrap{position:relative}
  .tete-page .wrap,.corps-page .wrap,.rappel .wrap{grid-template-columns:1fr}
  .tete-image{order:-1}
  .marge{position:static}
  .rappel-actions{justify-content:flex-start}
  .grille-autres a,.carte-conseil{border-right:0;padding-right:0}
}

/* Page active dans le menu */
.menu a.ici{border-bottom-color:var(--or);color:var(--or)}

/* Citation d'ouverture dans la section artisan */
.citation{
  font-family:var(--serif);font-size:clamp(1.3rem,2.4vw,1.8rem);
  line-height:1.28;color:#fff;letter-spacing:-.01em;margin-bottom:22px;
}

/* En-tête de page commune : image un peu plus contenue */
.tete-commune .tete-image img{aspect-ratio:3/2}

/* Marque : repli sur petits écrans */
@media (max-width:520px){
  .marque img{height:46px}
  .marque-nom b{font-size:1.18rem}
  .marque-nom i{font-size:.58rem;letter-spacing:.24em}
  .tete .wrap{height:78px;gap:14px}
}

/* ---------- Vidéo de réalisation ---------- */
.video-section{padding:clamp(48px,6vw,86px) 0;background:var(--papier-2)}
.video-cadre{
  position:relative;cursor:pointer;overflow:hidden;
  max-width:900px;aspect-ratio:16/9;background:var(--encre);
}
.video-cadre img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}
.video-cadre:hover img{transform:scale(1.03)}
.video-cadre iframe{width:100%;height:100%;border:0;display:block}
.video-play{
  position:absolute;inset:0;display:flex;align-items:center;justify-content:center;
  font-size:2rem;color:#fff;background:rgba(17,17,17,.34);
  transition:background .2s ease;
}
.video-cadre:hover .video-play{background:rgba(17,17,17,.14)}
.video-cadre:focus-visible{outline:3px solid var(--urgence);outline-offset:3px}
.video-legende{margin-top:14px;color:var(--encre-70);font-size:.95rem;max-width:60ch}
.video-attente{
  border:2px dashed var(--or);background:#FDF9F0;padding:26px;max-width:760px;
  color:#6B5A2E;font-size:.95rem;
}
.video-attente b{
  display:block;color:var(--or);font-size:.72rem;letter-spacing:.16em;
  text-transform:uppercase;margin-bottom:8px;
}
.video-attente p{margin:0}

/* ---------- Avis clients ---------- */
.avis-section{padding:clamp(48px,6vw,86px) 0}
.grille-avis{
  display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
  gap:0;border-top:1px solid var(--filet);margin-top:22px;
}
.avis{padding:28px 30px 28px 0;border-bottom:1px solid var(--filet);border-right:1px solid var(--filet)}
.avis:last-child{border-right:0}
.avis blockquote{
  font-family:var(--serif);font-size:1.12rem;line-height:1.35;
  margin-bottom:16px;letter-spacing:-.01em;
}
.avis figcaption b{display:block;font-weight:600;font-size:.96rem}
.avis figcaption span{font-size:.85rem;color:var(--encre-40)}
@media (max-width:860px){
  .avis{border-right:0;padding-right:0}
}
