/* =========================================================
   Hello Deboucheur - style.css (V1)
   Palette : #022F69 #01529F #F9111B #FFFFFF + fond #F4F5F4
   Police : Outfit | Mobile first | min font 14px
   ========================================================= */

:root{
  --green:#022F69;
  --mint:#01529F;
  --orange:#F9111B;
  --white:#FFFFFF;
  --bg:#F4F5F4;

  --text:#022F69;
  --radius:12px;
  --radius-sm:8px;
  --max:1180px;
  --shadow:0 6px 24px rgba(2,30,60,.10);
  --shadow-sm:0 2px 10px rgba(2,30,60,.08);

  --s1:.5rem; --s2:1rem; --s3:1.5rem; --s4:2.25rem; --s5:3.5rem;
}

/* ---- Reset ---- */
*,*::before,*::after{box-sizing:border-box}
*{margin:0}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{
  font-family:'Outfit',system-ui,-apple-system,Segoe UI,Roboto,sans-serif;
  font-size:18px;line-height:1.6;color:var(--text);background:var(--white);
  min-height:100vh;-webkit-font-smoothing:antialiased;
}
img,video,svg{display:block;max-width:100%}
ul,ol{list-style:none;padding:0}
a{color:inherit;text-decoration:none}
button{font:inherit;cursor:pointer;border:0;background:none;color:inherit}

/* ---- Typo ---- */
h1{font-size:26px;line-height:1.25;font-weight:800}
h2{font-size:24px;line-height:1.3;font-weight:700}
h3{font-size:22px;line-height:1.3;font-weight:700}
h4{font-size:20px;font-weight:600}
p{font-size:18px}
small,.small{font-size:14px}

/* ---- Layout ---- */
.container{width:100%;max-width:var(--max);margin:0 auto;padding:0 var(--s2)}
section{padding:var(--s5) 0}
.section-title{text-align:center;color:var(--green)}
.section-intro{text-align:center;max-width:60ch;margin:var(--s2) auto var(--s4);color:#4a564d}
.bg-alt{background:var(--bg)}
.ratio-16-9{position:relative;aspect-ratio:16/9;overflow:hidden;border-radius:var(--radius);background:var(--green)}
.ratio-16-9>*{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.rich-text p{margin-bottom:var(--s2)}
.rich-text h2,.rich-text h3{margin:var(--s3) 0 var(--s2);color:var(--green)}

/* ---- Boutons ---- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5em;
  padding:.85em 1.5em;border-radius:var(--radius-sm);font-weight:700;font-size:18px;
  text-align:center;transition:transform .12s,box-shadow .12s,opacity .12s;line-height:1.2}
.btn:hover{transform:translateY(-1px)}
.btn-lg{padding:1em 1.8em;font-size:19px}
.btn-xl{padding:1.1em 2em;font-size:20px}
.btn-call{background:var(--orange);color:var(--white);box-shadow:var(--shadow-sm)}
.btn-primary{background:var(--mint);color:var(--white)}
.btn-outline{background:transparent;border:2px solid var(--white);color:var(--white)}
.btn-outline-green{background:transparent;border:2px solid var(--green);color:var(--green)}

/* ---- Header ---- */
.site-header{position:sticky;top:0;z-index:50;background:var(--white);box-shadow:var(--shadow-sm)}
.header-inner{display:flex;align-items:center;justify-content:space-between;gap:var(--s2);padding:.6rem var(--s2)}
.logo-img{height:44px;width:auto}
.header-call{padding:.55em 1em}
.header-call-ico{font-size:20px}
.header-call-txt{display:flex;flex-direction:column;line-height:1.1}
.header-call-label{font-size:14px;font-weight:600;opacity:.95}
.header-call-num{font-size:18px;font-weight:800}

/* ---- Nav ---- */
.nav-toggle{display:flex;flex-direction:column;gap:5px;padding:.3em}
.nav-toggle span{width:26px;height:3px;background:var(--green);border-radius:2px}
.nav-menu{display:none;position:absolute;top:100%;left:0;right:0;background:var(--white);
  flex-direction:column;box-shadow:var(--shadow);padding:var(--s2);gap:.3em}
.main-nav.open .nav-menu{display:flex}
.nav-menu a{display:block;padding:.6em .4em;font-weight:600;font-size:18px}
.sub-menu{padding-left:var(--s2)}
.sub-menu a{font-weight:500;font-size:16px;color:#4a564d}

/* ---- Emergency banner ---- */
.emergency-banner{background:var(--orange);color:var(--white)}
.emergency-banner .container{display:flex;gap:var(--s2);justify-content:center;align-items:center;
  flex-wrap:wrap;padding:.5em var(--s2);text-align:center}
.emergency-text{font-weight:700;font-size:16px}
.emergency-call{font-weight:800;font-size:18px;text-decoration:underline}

/* ---- Hero ---- */
.hero{background:var(--green);color:var(--white)}
.hero .container{display:grid;gap:var(--s3);padding-top:var(--s5);padding-bottom:var(--s5)}
.hero h1{color:var(--white)}
.hero-sub{font-size:19px;color:#cfe0f2;max-width:55ch}
.hero-cta{display:flex;flex-direction:column;gap:var(--s2);margin-top:var(--s2)}
.hero-cta .btn{width:100%}
.hero-rea{display:flex;flex-wrap:wrap;gap:.5em var(--s3);margin-top:var(--s2);font-size:16px}
.hero-rea li{display:flex;align-items:center;gap:.4em;color:#cfe0f2}
.hero-rea .ck{color:var(--mint);font-weight:800}
.hero-media{border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow)}
.hero-media img{width:100%;height:100%;object-fit:cover}

/* ---- Trust ---- */
.trust-block{background:var(--white)}
.trust-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--s2)}
.trust-item{display:flex;flex-direction:column;align-items:center;text-align:center;gap:.3em;
  background:var(--bg);border-radius:var(--radius);padding:var(--s3) var(--s2)}
.trust-icon{font-size:26px;color:var(--mint)}
.trust-title{color:var(--green);font-size:18px}
.trust-desc{font-size:14px;color:#4a564d}

/* ---- Services ---- */
.services-block{background:var(--bg)}
.services-grid{display:grid;grid-template-columns:1fr;gap:var(--s2)}
.card{background:var(--white);border-radius:var(--radius);box-shadow:var(--shadow-sm)}
.service-card-link{display:block;padding:var(--s3);height:100%}
.service-card-title{color:var(--green);margin-bottom:.4em;font-size:20px}
.service-card-text{font-size:16px;color:#4a564d;margin-bottom:.6em}
.service-card-more{color:var(--orange);font-weight:700;font-size:16px}
.service-card:hover{box-shadow:var(--shadow);transform:translateY(-2px);transition:.15s}

/* ---- Steps ---- */
.steps-block{background:var(--white)}
.steps-grid{display:grid;grid-template-columns:1fr;gap:var(--s3);counter-reset:step}
.step-item{display:flex;gap:var(--s2);align-items:flex-start}
.step-num{flex:0 0 auto;display:grid;place-items:center;width:2.4em;height:2.4em;border-radius:50%;
  background:var(--mint);color:var(--white);font-weight:800;font-size:18px}
.step-title{color:var(--green);font-size:20px;margin-bottom:.2em}
.step-item p{font-size:16px;color:#4a564d}

/* ---- Video ---- */
.img-placeholder{min-height:200px;display:grid;place-items:center;background:var(--green);color:var(--mint);
  font-size:16px;text-align:center;padding:var(--s2);border-radius:var(--radius)}

/* ---- Zones ---- */
.zones-block{background:var(--white)}
.zones-grid{display:grid;grid-template-columns:1fr 1fr;gap:.6em}
.zone-item a{display:block;padding:.8em;background:var(--bg);border-radius:var(--radius-sm);
  text-align:center;font-weight:600;font-size:16px;color:var(--green);transition:.15s}
.zone-item a:hover{background:var(--mint);color:var(--white)}
.zone-cp{font-size:14px;color:#4a564d}

/* ---- FAQ statique (Q + R toujours visibles) ---- */
.faq-block{background:var(--bg)}
.faq-list{max-width:820px;margin:0 auto;display:flex;flex-direction:column;gap:var(--s2)}
.faq-item{background:var(--white);border:1px solid #e6e9e6;border-left:4px solid var(--mint);
  border-radius:var(--radius);padding:var(--s3);box-shadow:var(--shadow-sm)}
.faq-q{display:flex;align-items:flex-start;gap:.6em;font-size:18px;font-weight:700;color:var(--green);
  line-height:1.35;margin-bottom:.5em}
.faq-q-ico{flex:0 0 auto;display:inline-grid;place-items:center;width:1.5em;height:1.5em;border-radius:50%;
  background:var(--mint);color:var(--white);font-size:14px;font-weight:800}
.faq-a{font-size:16px;color:#4a564d;line-height:1.7;margin:0;padding-left:2.1em}

/* ---- Testimonials ---- */
.testimonials-block{background:var(--white)}
.testimonials-grid{display:grid;grid-template-columns:1fr;gap:var(--s2)}
.testimonial{padding:var(--s3)}
.stars{color:var(--orange);letter-spacing:3px;font-size:18px;margin-bottom:.4em}
.testimonial-text{font-size:16px;color:#3a463d;margin-bottom:.6em}
.testimonial-meta{font-size:14px;font-weight:700;color:var(--green)}

/* ---- CTA call ---- */
.cta-call{background:var(--green);color:var(--white);text-align:center}
.cta-call-inner{display:flex;flex-direction:column;align-items:center;gap:var(--s2)}
.cta-call-title{color:var(--white)}
.cta-call p{color:#cfe0f2;font-size:18px;max-width:50ch}

/* ---- Service / city page ---- */
.page-intro{background:var(--white)}
.page-intro .container{display:grid;gap:var(--s3)}
.page-media{border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow-sm)}
.page-media img{width:100%;height:auto}
.avant-apres{display:grid;grid-template-columns:1fr 1fr;gap:var(--s2)}
.avant-apres figcaption{font-size:14px;text-align:center;padding:.4em;color:#4a564d}

/* ---- Contact ---- */
.contact-main{background:var(--bg)}
.contact-grid{display:grid;grid-template-columns:1fr;gap:var(--s4)}
.tel-giant{display:inline-block;font-size:26px;font-weight:800;color:var(--mint);margin-top:var(--s2)}
.contact-nap{font-size:18px;line-height:1.9}

/* ---- Forms ---- */
.form-contact{background:var(--white);padding:var(--s3);border-radius:var(--radius);box-shadow:var(--shadow-sm)}
.form-row{display:flex;flex-direction:column;gap:.3em;margin-bottom:var(--s2)}
.form-row label{font-size:14px;font-weight:600;color:var(--green)}
.form-contact input,.form-contact select,.form-contact textarea{
  padding:.75em;border:2px solid #d7ddd8;border-radius:var(--radius-sm);font-size:16px;background:var(--white)}
.form-contact input:focus,.form-contact select:focus,.form-contact textarea:focus{outline:none;border-color:var(--mint)}
.form-contact .btn{width:100%}
.form-or{text-align:center;font-size:16px;margin-top:var(--s2)}
.form-or a{color:var(--orange);font-weight:700}
.alert-success{background:#e7f9f2;border:2px solid var(--mint);color:var(--green);
  padding:var(--s2);border-radius:var(--radius-sm);margin-bottom:var(--s2);font-size:16px}

/* ---- Sticky mobile ---- */
.sticky-mobile-call{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:60;box-shadow:0 -4px 16px rgba(2,30,60,.18)}
.sticky-btn{flex:1;text-align:center;padding:1em;font-weight:800;font-size:18px;color:var(--white)}
.sticky-call{background:var(--orange)}
.sticky-devis{background:var(--green)}

/* ---- Footer ---- */
.site-footer{background:var(--green);color:var(--white);padding-top:var(--s5)}
.footer-grid{display:grid;grid-template-columns:1fr;gap:var(--s3)}
.footer-about p{font-size:16px;color:#cfd8d1}
.footer-nap a,.site-footer a{color:var(--mint)}
.footer-title{display:block;margin-bottom:var(--s1);font-size:18px}
.footer-col li{margin-bottom:.4em}
.footer-col a{font-size:16px;color:#cfd8d1}
.footer-col a:hover{color:var(--mint)}
.footer-bottom{border-top:1px solid rgba(255,255,255,.15);margin-top:var(--s4);padding:var(--s2) 0;text-align:center}
.footer-bottom small{color:#cfd8d1}

/* ---- 404 / legal ---- */
.error-404,.legal{text-align:left}
.error-404{text-align:center}
.error-404 .hero-cta{flex-direction:row;justify-content:center;flex-wrap:wrap;margin-top:var(--s3)}

/* ---- LP ---- */

/* ---- Utilities ---- */
.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.text-center{text-align:center}

/* =========================================================
   DESKTOP (>= 768px)
   ========================================================= */
@media (min-width:768px){
  h1{font-size:40px}
  h2{font-size:30px}
  h3{font-size:24px}

  .nav-toggle{display:none}
  .nav-menu{display:flex;position:static;flex-direction:row;box-shadow:none;padding:0;gap:var(--s3);background:none}
  .nav-menu .has-sub{position:relative}
  .nav-menu .sub-menu{display:none;position:absolute;top:100%;left:0;background:var(--white);
    box-shadow:var(--shadow);min-width:260px;padding:var(--s1);border-radius:var(--radius-sm)}
  .nav-menu .has-sub:hover .sub-menu{display:block}

  .hero .container{grid-template-columns:1.1fr .9fr;align-items:center}
  .hero-cta{flex-direction:row}
  .hero-cta .btn{width:auto}

  .trust-grid{grid-template-columns:repeat(4,1fr)}
  .services-grid{grid-template-columns:repeat(3,1fr)}
  .steps-grid{grid-template-columns:repeat(4,1fr)}
  .step-item{flex-direction:column;text-align:center;align-items:center}
  .zones-grid{grid-template-columns:repeat(4,1fr)}
  .testimonials-grid{grid-template-columns:repeat(3,1fr)}
  .cta-call-inner{flex-direction:row;justify-content:space-between;text-align:left}
  .cta-call p{margin:0}

  .page-intro .container{grid-template-columns:1fr 1fr;align-items:center}
  .hero-contact .container{grid-template-columns:1fr;text-align:center}
  .hero-contact .hero-sub{margin-left:auto;margin-right:auto}
  .contact-grid{grid-template-columns:1.1fr .9fr}
  .footer-grid{grid-template-columns:2fr 1fr 1fr 1fr}

  .sticky-mobile-call{display:none}
  body{padding-bottom:0}
}

/* Sticky visible mobile => espace bas */
@media (max-width:767px){ body{padding-bottom:62px} }

/* =========================================================
   V2 - refonte SEO local + conversion
   ========================================================= */

/* Topbar reassurance */
.topbar{background:var(--green);color:var(--white);font-size:14px}
.topbar-inner{display:flex;gap:var(--s3);justify-content:center;align-items:center;padding:.4em var(--s2);flex-wrap:wrap}
.topbar-item{display:inline-flex;align-items:center;gap:.35em;color:#cfe0f2}
.tb-stars{color:var(--mint);letter-spacing:1px}
@media (max-width:600px){ .topbar-hide-sm{display:none} }

/* Hero V2 */
.hero-eyebrow{display:inline-block;background:rgba(255,255,255,.16);color:#ffffff;
  font-size:14px;font-weight:600;padding:.35em .8em;border-radius:999px;margin-bottom:.6em}
.hero-rating{margin-top:var(--s2);font-size:16px;color:#cfe0f2}
.hero-rating .rating-stars{color:var(--mint);letter-spacing:2px}
.hero-rating strong{color:var(--white)}

/* Badge urgence sur cartes services (au-dessus du titre, sans chevauchement) */
.badge-urgence{display:inline-block;background:var(--orange);color:var(--white);
  font-size:14px;font-weight:700;padding:.25em .7em;border-radius:999px;margin-bottom:.5em}

/* Pourquoi nous */

/* Notre experience */
.exp-block{background:var(--white)}
.exp-grid{display:grid;gap:var(--s3)}
.exp-text h2{color:var(--green)}
.exp-points{display:flex;flex-wrap:wrap;gap:.5em var(--s3);margin:var(--s2) 0}
.exp-points li{display:flex;align-items:center;gap:.4em;font-size:16px;font-weight:600;color:var(--green)}
.exp-points .ck{color:var(--mint);font-weight:800}
.exp-media img{width:100%;height:auto;border-radius:var(--radius)}

/* Galerie videos PORTRAIT */
.video-gallery{background:var(--green)}
.video-gallery .section-title,.video-gallery .section-intro{color:var(--white)}
.video-gallery .section-intro{color:#cfe0f2}
.ratio-9-16{position:relative;aspect-ratio:9/16;overflow:hidden;border-radius:var(--radius);background:#02213f}
.vgrid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--s2)}
.vcard{display:flex;flex-direction:column;gap:.5em}
.vframe{position:relative}
.vframe video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;background:#02213f}
.vplay{position:absolute;inset:0;margin:auto;width:62px;height:62px;border-radius:50%;
  background:var(--orange);color:var(--white);font-size:24px;display:grid;place-items:center;
  box-shadow:var(--shadow);transition:transform .12s}
.vplay:hover{transform:scale(1.06)}
.vframe.playing .vplay{display:none}
.vcap{font-size:16px;font-weight:600;color:var(--white);text-align:center}

/* Rating head (avis) */
.rating-note{font-size:40px;font-weight:800;color:var(--green);line-height:1}
.rating-stars{color:var(--orange);letter-spacing:2px;font-size:22px}
.rating-note-info{text-align:center;max-width:60ch;margin:0 auto var(--s4);font-size:16px;color:#4a564d;font-style:italic}

/* Footer CTA band */
.footer-logo{height:46px;width:auto;margin-bottom:var(--s2)}

/* Map iframe */
.map-frame{margin-top:var(--s2)}
.map-frame iframe{border:0;width:100%;height:100%}

/* Legal */
.legal h2{color:var(--green);margin:var(--s3) 0 var(--s1)}
.legal p{font-size:16px;color:#3a463d;margin-bottom:var(--s2)}

@media (min-width:768px){
  .exp-grid{grid-template-columns:1fr 1fr;align-items:center}
  .vgrid{grid-template-columns:repeat(3,1fr)}
  .rating-note{font-size:54px}
}

@media (min-width:1024px){
  .vgrid{grid-template-columns:repeat(4,1fr)}
}
/* Renfort portrait 9:16 (anti-cache) */
.vframe.ratio-9-16{aspect-ratio:9/16 !important;height:auto}
.vframe video{object-fit:cover}

/* ---- Badge de confiance Google ---- */
.avis-head{display:flex;flex-direction:column;align-items:center;gap:var(--s2);margin-bottom:var(--s4)}
.google-badge{width:190px;background:var(--white);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden;text-align:center}
.gb-head{background:var(--orange);color:var(--white);font-weight:800;font-size:18px;padding:.7em .6em;line-height:1.15}
.gb-body{padding:var(--s3) var(--s2)}
.gb-stars{color:var(--mint);font-size:22px;letter-spacing:3px}
.gb-score{color:var(--green);font-size:40px;font-weight:800;line-height:1.1;margin:.1em 0}
.gb-label{color:#4a564d;font-size:14px;font-weight:600;text-transform:uppercase;letter-spacing:1px}
.google-badge.badge-inline{width:150px}
.google-badge.badge-inline .gb-score{font-size:30px}

/* Tag Google sur les avis */
.testimonial-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:.4em}
.gtag{display:inline-grid;place-items:center;width:26px;height:26px;border-radius:50%;
  background:var(--mint);color:var(--white);font-weight:800;font-size:16px}
.testimonial-src{display:block;font-size:14px;color:#7a857d;font-weight:600;margin-top:.15em}
.avis-head .rating-note-info{margin:0}

/* Badge flottant sur le hero */
.hero-media{position:relative}
.badge-float{position:absolute;left:var(--s2);bottom:var(--s2);width:120px;box-shadow:0 8px 24px rgba(0,0,0,.25)}
.badge-float .gb-head{font-size:15px;padding:.5em .4em}
.badge-float .gb-body{padding:var(--s2) var(--s1)}
.badge-float .gb-score{font-size:26px;margin:0}
.badge-float .gb-stars{font-size:17px}
.badge-float .gb-label{font-size:14px}
@media (max-width:480px){ .badge-float{width:100px} }

/* =========================================================
   V3 - densite metier
   ========================================================= */

/* Check-list reutilisable */
.check-list li{display:flex;gap:.5em;align-items:flex-start;font-size:16px;color:#3a463d;margin-bottom:.5em}
.check-list .ck{color:var(--mint);font-weight:800;flex:0 0 auto}

/* Cas frequents + moyens (pages services) */
.cas-grid{display:grid;grid-template-columns:1fr;gap:var(--s2)}
.cas-col{padding:var(--s3)}
.cas-col h2{color:var(--green);font-size:22px;margin-bottom:var(--s2)}

/* Engagements */

/* Maillage interne */
.related-cols{display:grid;grid-template-columns:1fr;gap:var(--s3);max-width:900px;margin:0 auto}
.related-h{color:var(--green);font-size:20px;margin-bottom:var(--s2)}
.related-list li{margin-bottom:.5em}
.related-list a{color:var(--green);font-weight:600;font-size:16px}
.related-list a:hover{color:var(--orange)}

/* Quartiers Le Mans */
.quartiers-block{background:var(--bg)}
.quartiers-grid{display:grid;grid-template-columns:1fr 1fr;gap:.6em;max-width:820px;margin:0 auto}
.quartiers-grid li{display:flex;gap:.5em;align-items:center;font-size:16px;font-weight:600;color:var(--green);
  background:var(--white);border-radius:var(--radius-sm);padding:.7em .9em}
.quartiers-grid .ck{color:var(--mint);font-weight:800}

@media (min-width:768px){
  .cas-grid{grid-template-columns:1fr 1fr}
  .related-cols{grid-template-columns:1fr 1fr}
  .quartiers-grid{grid-template-columns:repeat(3,1fr)}
}

/* =========================================================
   Page Realisations - avant/apres + galerie photos
   ========================================================= */
.aa-grid{display:grid;grid-template-columns:1fr;gap:var(--s3)}
.aa-card{padding:var(--s2)}
.aa-pair{display:grid;grid-template-columns:1fr 1fr;gap:.5em}
.aa-img{position:relative;border-radius:var(--radius-sm);overflow:hidden}
.aa-img img{width:100%;height:100%;object-fit:cover;aspect-ratio:4/3}
.aa-tag{position:absolute;top:.5em;left:.5em;font-size:14px;font-weight:700;color:var(--white);
  padding:.2em .6em;border-radius:999px}
.aa-before{background:var(--green)}
.aa-after{background:var(--orange)}
.aa-card figcaption{text-align:center;font-weight:600;font-size:18px;color:var(--green);margin-top:var(--s2)}

.photo-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--s2)}
.photo-item{border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow-sm)}
.photo-item img{width:100%;height:100%;object-fit:cover;aspect-ratio:4/3}

@media (min-width:768px){
  .aa-grid{grid-template-columns:repeat(3,1fr)}
  .photo-grid{grid-template-columns:repeat(3,1fr)}
}

/* =========================================================
   V4 - profondeur services + reduction repetition
   ========================================================= */

/* Causes (puces neutres) */
.check-list--neutral .ck{color:var(--orange)}

/* Pour qui + conseil prevention */
.cp-block{background:var(--white)}
.cp-grid{display:grid;grid-template-columns:1fr;gap:var(--s3)}
.cp-col h2{color:var(--green);font-size:22px;margin-bottom:var(--s2)}
.tag-list{display:flex;flex-wrap:wrap;gap:.5em}
.tag-list li{background:var(--bg);color:var(--green);font-size:16px;font-weight:600;
  padding:.5em .9em;border-radius:999px;border:1px solid #e0e4e1}
.cp-tip{background:var(--green);color:var(--white);border-radius:var(--radius);padding:var(--s4)}
.cp-tip h2{color:var(--mint)}
.cp-tip p{font-size:18px;color:#eaf2ee}

/* Tag type sur les videos */
.vtype{position:absolute;top:.6em;left:.6em;z-index:2;background:var(--green);color:var(--white);
  font-size:14px;font-weight:700;padding:.25em .7em;border-radius:999px}

/* Actions avis (compact) */
.avis-actions{margin-top:var(--s3);display:flex;gap:var(--s2);justify-content:center;flex-wrap:wrap}


@media (min-width:768px){
  .cp-grid{grid-template-columns:1.3fr 1fr;align-items:stretch}
}

/* Cas-block : 3 colonnes (symptomes / causes / moyens) */
@media (min-width:768px){
  .cas-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}
}

/* =========================================================
   V5 - bloc unique, hierarchie, premium, FAQ propre
   ========================================================= */

/* Bloc ATOUTS (fusion) */
.atouts-block{background:var(--bg)}
.atouts-grid{display:grid;grid-template-columns:1fr;gap:var(--s2)}
.atout-item{display:flex;gap:var(--s2);align-items:flex-start;padding:var(--s3)}
.atout-icon{font-size:28px;color:var(--mint);flex:0 0 auto;line-height:1}
.atout-title{color:var(--green);font-size:20px;margin-bottom:.2em}
.atout-item p{font-size:16px;color:#4a564d}

/* Services en LISTE (pages villes) */
.services-list{background:var(--white)}
.sl-grid{display:grid;grid-template-columns:1fr;gap:.5em;max-width:880px;margin:0 auto}
.sl-grid a{display:flex;align-items:center;gap:.6em;padding:.8em 1em;background:var(--bg);
  border-radius:var(--radius-sm);font-weight:600;font-size:16px;color:var(--green);transition:.15s}
.sl-grid a:hover{background:var(--mint)}
.sl-ck{color:var(--orange);font-weight:800}
.sl-note{text-align:center;margin-top:var(--s3);font-size:16px;color:#4a564d}
.sl-note a{color:var(--orange);font-weight:700}

/* Hero ville secondaire (1 colonne) */
/* hero-ville : 2 colonnes comme les autres heros (camion) */
.hero-ville .hero-text{max-width:760px}

/* Contenu local (villes) */
.local-content{background:var(--white)}
.local-content .rich-text{max-width:820px}
.local-cta{display:flex;gap:var(--s2);flex-wrap:wrap;margin-top:var(--s3)}

/* Problemes frequents (Le Mans) */
.probs-block{background:var(--bg)}
.probs-grid{display:grid;grid-template-columns:1fr;gap:.7em;max-width:900px;margin:0 auto}
.prob-item{display:flex;gap:.6em;align-items:flex-start;background:var(--white);border-radius:var(--radius-sm);
  padding:.9em 1em;font-size:16px;color:#3a463d;box-shadow:var(--shadow-sm)}
.prob-ico{color:var(--orange);flex:0 0 auto}
.quartiers-block{background:var(--white)}

/* Stats band (realisations) */
.stats-band{background:var(--mint);color:var(--white);padding:var(--s4) 0}
.stats-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--s3);text-align:center}
.stat{display:flex;flex-direction:column;gap:.2em}
.stat-num{font-size:34px;font-weight:800;color:var(--white);line-height:1}
.stat-lab{font-size:14px;color:#cfe0f2;font-weight:700;text-transform:uppercase;letter-spacing:1px}
.hero-realisations .hero-cta .btn-outline{border-color:var(--mint);color:var(--mint)}

/* Photo caption (premium) */
.photo-item{position:relative}
.photo-cap{position:absolute;left:0;right:0;bottom:0;background:linear-gradient(transparent,rgba(2,30,60,.85));
  color:var(--white);font-size:14px;font-weight:600;padding:1.2em .8em .6em;text-align:left}


/* Footer allege */
.footer-grid{grid-template-columns:1fr;gap:var(--s3)}
.footer-about .footer-nap{font-size:15px;line-height:1.8}

@media (min-width:768px){
  .atouts-grid{grid-template-columns:repeat(3,1fr)}
  .sl-grid{grid-template-columns:1fr 1fr}
  .probs-grid{grid-template-columns:1fr 1fr}
  .stats-grid{grid-template-columns:repeat(4,1fr)}
  .stat-num{font-size:42px}
  .footer-grid{grid-template-columns:2fr 1fr 1.3fr}
}

/* Message d'erreur formulaire */
.alert-error{background:#fdece7;border:2px solid var(--orange);color:var(--green);
  padding:var(--s2);border-radius:var(--radius-sm);margin-bottom:var(--s2);font-size:16px;
  display:flex;flex-direction:column;gap:.2em}

/* Fil d'Ariane */
.breadcrumb{background:var(--bg);border-bottom:1px solid #e6e9e6}
.bc-list{display:flex;flex-wrap:wrap;gap:.3em;padding:.7em 0;font-size:14px}
.bc-item{display:flex;align-items:center;gap:.3em;color:#4a564d}
.bc-item a{color:var(--green);font-weight:600}
.bc-item a:hover{color:var(--orange)}
.bc-sep{color:#9aa39c;margin:0 .2em}
.bc-item [aria-current]{color:#4a564d}

/* Bande preuve sociale compacte (sps) */
.sps{background:var(--bg)}
.sps-inner{display:flex;flex-direction:column;gap:var(--s2);align-items:center;text-align:center;
  background:var(--white);border-radius:var(--radius);box-shadow:var(--shadow-sm);padding:var(--s3)}
.sps-rating{display:flex;align-items:center;gap:.5em;font-size:20px;color:var(--green)}
.sps-stars{color:var(--orange);letter-spacing:1px}
.sps-count{font-size:16px;color:#4a564d}
.sps-text{font-size:14px;color:#4a564d;font-style:italic;margin:0}

/* Lien preuve terrain (pages services) */
.proof-link{}
.proof-link-inner{display:flex;flex-direction:column;gap:var(--s2);align-items:flex-start}
.proof-link h2{color:var(--green)}
.proof-link p{font-size:16px;color:#4a564d}

@media (min-width:768px){
  .sps-inner{flex-direction:row;justify-content:space-between;text-align:left}
  .proof-link-inner{flex-direction:row;justify-content:space-between;align-items:center}
}

/* Reperes locaux (bandeau) + signal local (encart) - pages villes */
.local-reperes{background:var(--green);color:#cfe0f2}
.local-reperes .container{padding:.7em var(--s2);font-size:14px;display:flex;gap:.5em;align-items:flex-start}
.local-reperes .lr-ico{color:var(--mint);flex:0 0 auto}
.local-signal{background:var(--bg);border-left:4px solid var(--mint);border-radius:var(--radius-sm);
  padding:var(--s2) var(--s3);font-size:16px;color:var(--green);font-weight:600;display:flex;gap:.6em;align-items:flex-start}
.local-signal .ls-ico{color:var(--orange);flex:0 0 auto}

/* CTA final slim (pages villes) */
.ville-cta{background:var(--green);color:var(--white)}
.ville-cta-inner{display:flex;flex-direction:column;gap:var(--s2);align-items:center;text-align:center}
.ville-cta p{font-size:20px;font-weight:700;color:var(--white);margin:0}
@media (min-width:768px){ .ville-cta-inner{flex-direction:row;justify-content:space-between;text-align:left} }

/* =========================================================
   LANDING PAGES ADS (call-first)
   ========================================================= */
.lp .lp-h2{font-size:22px;color:var(--green);text-align:center;margin-bottom:var(--s3)}
.lp section{padding:var(--s4) 0}

/* Hero call-first */
.lp-hero{background:var(--green);color:var(--white)}
.lp-hero-grid{display:grid;gap:var(--s3)}
.lp-hero h1{color:var(--white);font-size:26px}
.lp-sub{font-size:18px;color:#cfe0f2;margin:var(--s2) 0}
.lp-callbtn{display:flex;flex-direction:column;gap:.1em;width:100%;padding:1em;line-height:1.2}
.lp-callbtn .lp-callnum{font-size:24px;font-weight:800}
.lp-rea{display:flex;flex-direction:column;gap:.4em;margin-top:var(--s2);font-size:16px}
.lp-rea span{display:flex;align-items:center;gap:.4em;color:#cfe0f2}
.lp-rea .ck{color:var(--mint);font-weight:800}
.lp-rating{margin-top:var(--s2);font-size:16px;color:#cfe0f2}
.lp-rating .rating-stars{color:var(--mint)}
.lp-rating strong{color:var(--white)}
.lp-hero-media{border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow)}
.lp-hero-media img{width:100%;height:100%;object-fit:cover}

/* Problemes */
.lp-probs{background:var(--white);text-align:center}
.lp-probs-grid{display:grid;grid-template-columns:1fr;gap:.6em;max-width:760px;margin:0 auto var(--s3)}
.lp-probs-grid li{display:flex;gap:.5em;align-items:flex-start;background:var(--bg);border-radius:var(--radius-sm);
  padding:.8em 1em;font-size:16px;color:#3a463d;text-align:left}
.lp-probs-grid .ck{color:var(--mint);font-weight:800;flex:0 0 auto}
.lp-inline-cta{margin-top:var(--s1)}

/* Steps */
.lp-steps{background:var(--bg)}
.lp-steps-grid{display:grid;grid-template-columns:1fr;gap:var(--s2);max-width:820px;margin:0 auto}
.lp-steps-grid li{display:grid;grid-template-columns:auto 1fr;gap:.2em var(--s2);align-items:center;
  background:var(--white);border-radius:var(--radius);padding:var(--s2) var(--s3);box-shadow:var(--shadow-sm)}
.lp-step-num{grid-row:span 2;display:grid;place-items:center;width:2.2em;height:2.2em;border-radius:50%;
  background:var(--mint);color:var(--white);font-weight:800}
.lp-steps-grid strong{color:var(--green);font-size:18px}
.lp-steps-grid li span:last-child{font-size:15px;color:#4a564d}

/* Avis */
.lp-avis{background:var(--white)}
.lp-avis-grid{display:grid;grid-template-columns:1fr;gap:var(--s2)}
.lp-avis .card{padding:var(--s3)}
.lp-avis .stars{color:var(--orange);letter-spacing:2px;margin-bottom:.3em}
.lp-avis .card p{font-size:15px;color:#3a463d;margin-bottom:.5em}
.lp-avis .card strong{font-size:14px;color:var(--green)}
.lp-avis-note{text-align:center;font-size:14px;color:#4a564d;font-style:italic;margin-top:var(--s2)}

/* Final + rappel discret */
.lp-final{background:var(--green);color:var(--white)}
.lp-final-inner{display:grid;gap:var(--s3)}
.lp-final h2{color:var(--white)}
.lp-final p{color:#cfe0f2;margin:.3em 0 var(--s2)}
.lp-callback{background:var(--white);border-radius:var(--radius);padding:var(--s3);display:flex;flex-direction:column;gap:.6em}
.lp-callback-t{color:var(--green);font-weight:700;font-size:16px;margin:0}
.lp-callback input{padding:.75em;border:2px solid #d7ddd8;border-radius:var(--radius-sm);font-size:16px}
.lp-callback .btn{width:100%}

/* Footer minimal LP */
.lp-footer{background:var(--green);color:#cfd8d1;font-size:14px;padding:var(--s3) 0;text-align:center;border-top:1px solid rgba(255,255,255,.15)}
.lp-footer a{color:var(--mint)}

@media (min-width:768px){
  .lp-hero h1{font-size:34px}
  .lp-hero-grid{grid-template-columns:1.1fr .9fr;align-items:center}
  .lp-callbtn{width:auto;flex-direction:row;align-items:baseline;gap:.6em}
  .lp-rea{flex-direction:row;flex-wrap:wrap;gap:.5em var(--s3)}
  .lp-probs-grid{grid-template-columns:1fr 1fr}
  .lp-steps-grid{grid-template-columns:repeat(3,1fr)}
  .lp-avis-grid{grid-template-columns:repeat(3,1fr)}
  .lp-final-inner{grid-template-columns:1.2fr .8fr;align-items:center}
}

/* =========================================================
   Bloc TARIFS indicatifs
   ========================================================= */
.pricing{background:var(--white)}
.pricing-card{max-width:680px;margin:0 auto;background:var(--bg);border:1px solid #e6e9e6;
  border-radius:var(--radius);box-shadow:var(--shadow-sm);padding:var(--s3)}
.pricing-list{margin-bottom:var(--s2)}
.pricing-row{display:flex;justify-content:space-between;align-items:baseline;gap:var(--s2);
  padding:.7em 0;border-bottom:1px dashed #d7ddd8}
.pricing-row:last-child{border-bottom:0}
.pricing-label{font-size:16px;color:var(--green);font-weight:600}
.pricing-price{font-size:16px;font-weight:800;color:var(--orange);white-space:nowrap;flex:0 0 auto}
.pricing-price.is-devis{color:var(--green);font-weight:700;font-style:italic}
.pricing-note{font-size:14px;color:#4a564d;line-height:1.6;background:var(--white);
  border-left:3px solid var(--mint);border-radius:var(--radius-sm);padding:.8em 1em;margin-bottom:var(--s3)}
.pricing-cta{display:flex;flex-direction:column;gap:var(--s2)}
.pricing-cta .btn{width:100%}

/* Version compacte (LP) */
.pricing--compact{padding:var(--s4) 0}
.pricing--compact .pricing-card{padding:var(--s3)}
.pricing--compact .pricing-cta{display:none}

@media (min-width:560px){
  .pricing-cta{flex-direction:row;justify-content:center}
  .pricing-cta .btn{width:auto}
}

/* Bloc "Bon a savoir" (aggravation + cas batiment) - services prioritaires */
.know-block{background:var(--white)}
.know-grid{display:grid;grid-template-columns:1fr;gap:var(--s3)}
.know-col{background:var(--bg);border-radius:var(--radius);padding:var(--s3);box-shadow:var(--shadow-sm)}
.know-col h2{color:var(--green);font-size:22px;margin-bottom:.3em}
.know-intro{font-size:15px;color:#4a564d;margin-bottom:var(--s2)}
.know-alert{border-left:4px solid var(--orange)}
.know-warn{color:var(--orange)!important}
@media (min-width:768px){ .know-grid{grid-template-columns:1fr 1fr} }

/* Bloc(s) editorial(aux) utiles (pages villes) */
.edito-block{background:var(--white)}
.edito-stack{display:grid;grid-template-columns:1fr;gap:var(--s3);align-items:start}
.edito-card{background:var(--bg);border-radius:var(--radius);padding:var(--s4);box-shadow:var(--shadow-sm);
  border-top:4px solid var(--mint)}
.edito-card.edito-b{border-top-color:var(--orange)}
.edito-card h2{color:var(--green);font-size:22px;margin-bottom:var(--s2)}
.edito-intro{font-size:16px;color:#3a463d;line-height:1.7;margin-bottom:var(--s2)}
.edito-list{margin-bottom:var(--s2)}
.edito-list li{font-size:16px}
.edito-link a{color:var(--orange);font-weight:700;font-size:16px}
/* mini-FAQ editoriale */
.edito-faq-item{margin-bottom:var(--s2)}
.edito-faq-item:last-child{margin-bottom:var(--s2)}
.edito-faq-q{font-size:16px;font-weight:700;color:var(--green);margin-bottom:.2em}
.edito-faq-a{font-size:15px;color:#4a564d;line-height:1.6}
@media (min-width:900px){
  .edito-stack:has(.edito-b){grid-template-columns:1fr 1fr}
}

/* Bloc "Erreurs a eviter" (services prioritaires) */
.erreurs-block{}
.erreurs-list{max-width:760px;margin:0 auto;display:flex;flex-direction:column;gap:.6em}
.erreurs-list li{display:flex;gap:.6em;align-items:flex-start;background:var(--white);
  border-radius:var(--radius-sm);padding:.9em 1em;font-size:16px;color:#3a463d;box-shadow:var(--shadow-sm)}
.erreurs-x{flex:0 0 auto;display:inline-grid;place-items:center;width:1.5em;height:1.5em;border-radius:50%;
  background:var(--orange);color:var(--white);font-size:14px;font-weight:800}

/* =========================================================
   Page TARIFS
   ========================================================= */
.niv-block{background:var(--white)}
.niv-grid{display:grid;grid-template-columns:1fr;gap:var(--s3)}
.niv-card{padding:var(--s4);position:relative;border-top:4px solid var(--mint)}
.niv-card:nth-child(2){border-top-color:var(--orange)}
.niv-card:nth-child(3){border-top-color:var(--green)}
.niv-num{display:inline-grid;place-items:center;width:2em;height:2em;border-radius:50%;
  background:var(--green);color:var(--white);font-weight:800;font-size:18px;margin-bottom:.4em}
.niv-card h3{color:var(--green);font-size:20px}
.niv-prix{font-size:20px;font-weight:800;color:var(--orange);margin:.3em 0}
.niv-card:nth-child(3) .niv-prix{color:var(--green);font-size:18px;font-style:italic}
.niv-desc{font-size:15px;color:#4a564d;margin-bottom:var(--s2)}
.niv-note{text-align:center;font-size:14px;color:#4a564d;font-style:italic;margin-top:var(--s3)}

.tar-grille{}
.fact-block{background:var(--white)}
.fact-grid{display:grid;grid-template-columns:1fr;gap:var(--s2)}
.fact-item{display:flex;gap:var(--s2);align-items:flex-start;padding:var(--s3)}
.fact-ico{font-size:26px;flex:0 0 auto;line-height:1}
.fact-item h3{color:var(--green);font-size:18px;margin-bottom:.2em}
.fact-item p{font-size:15px;color:#4a564d}

.tar-reassure .reassure-list{max-width:680px;margin:0 auto;display:flex;flex-direction:column;gap:.7em}
.tar-reassure .reassure-list li{display:flex;gap:.6em;align-items:flex-start;font-size:17px;color:#3a463d}
.tar-reassure .reassure-list .ck{color:var(--mint);font-weight:800;flex:0 0 auto}

@media (min-width:768px){
  .niv-grid{grid-template-columns:repeat(3,1fr)}
  .fact-grid{grid-template-columns:1fr 1fr}
}

/* Bloc "L'oeil de l'expert" (services secondaires) */
.focus-block{background:var(--white)}
.focus-card{max-width:760px;margin:0 auto;background:var(--bg);border-radius:var(--radius);
  padding:var(--s4);box-shadow:var(--shadow-sm);border-left:4px solid var(--orange)}
.focus-tag{display:inline-block;background:var(--orange);color:var(--white);font-size:14px;font-weight:700;
  padding:.25em .8em;border-radius:999px;margin-bottom:.6em}
.focus-card h2{color:var(--green);font-size:22px;margin-bottom:.4em}
.focus-intro{font-size:16px;color:#3a463d;line-height:1.7;margin-bottom:var(--s2)}

/* =========================================================
   Avis - design carrousel (reference) + WhatsApp + FAB
   ========================================================= */

/* Bouton WhatsApp (mint = palette) */
.btn-wa{background:var(--mint);color:var(--white)}

/* En-tete du bloc avis */
.tst{background:var(--white)}
.tst-head{display:flex;flex-direction:column;gap:var(--s3);margin-bottom:var(--s3)}
.tst-pill{display:inline-block;border:2px solid var(--mint);color:var(--green);font-size:14px;
  font-weight:700;letter-spacing:1px;text-transform:uppercase;padding:.3em 1em;border-radius:999px;margin-bottom:.6em}
.tst-title{color:var(--green);font-size:24px;border-left:5px solid var(--orange);padding-left:.5em;text-align:left}
.tst-intro{font-size:16px;color:#3a463d;margin-top:.6em}
.tst-leave{color:var(--orange);font-weight:700;text-decoration:underline}
.tst-note{font-size:14px;color:#4a564d;font-style:italic;margin-top:.4em}
.tst-head-badge{align-self:center}

/* Carrousel a glissement (sans JS) */
.tst-track{display:flex;gap:var(--s2);overflow-x:auto;scroll-snap-type:x mandatory;
  padding:4px 4px var(--s2);-webkit-overflow-scrolling:touch;scrollbar-width:thin}
.tst-card{flex:0 0 85%;max-width:320px;scroll-snap-align:start;background:var(--white);
  border:1px solid #e6e9e6;border-radius:var(--radius);box-shadow:var(--shadow-sm);
  padding:var(--s3);display:flex;flex-direction:column}
.tst-stars{color:var(--orange);letter-spacing:3px;font-size:18px;margin-bottom:.5em}
.tst-text{font-size:15px;color:#3a463d;line-height:1.6;flex:1}
.tst-meta{display:flex;align-items:center;gap:.5em;margin-top:var(--s2);color:var(--green);font-size:15px}
.tst-quote{display:inline-grid;place-items:center;width:1.8em;height:1.8em;border-radius:50%;
  background:var(--bg);color:var(--orange);font-size:16px;font-weight:800}

/* Barre mobile : 3 boutons */
.sticky-wa{background:var(--mint);color:var(--white)}

/* Pile flottante desktop */
.fab-stack{display:none;position:fixed;right:0;top:50%;transform:translateY(-50%);z-index:60;
  flex-direction:column}
.fab{display:grid;place-items:center;width:48px;height:48px;background:var(--orange);color:var(--white);
  font-size:20px;border-bottom:1px solid rgba(255,255,255,.25);transition:.15s}
.fab:first-child{border-radius:var(--radius-sm) 0 0 0}
.fab:last-child{border-radius:0 0 0 var(--radius-sm);border-bottom:0}
.fab:hover{background:var(--green);opacity:1}
.fab-wa:hover{background:var(--mint);color:var(--white)}

@media (min-width:768px){
  .tst-head{flex-direction:row;justify-content:space-between;align-items:center}
  .tst-card{flex-basis:300px}
  .fab-stack{display:flex}
}

/* Slogan footer */
.footer-slogan{font-size:16px;font-weight:700;color:var(--mint);margin-bottom:.5em}

/* Marque dans le hero (home) - pas un heading, purement visuel */
.hero-brand{display:inline-flex;align-items:center;gap:.55em;background:var(--white);
  border-radius:999px;padding:.4em 1.1em .4em .55em;margin-bottom:var(--s2);
  box-shadow:var(--shadow-sm);flex-wrap:wrap;font-size:16px;line-height:1.2}
.hero-brand img{height:26px;width:auto}
.hero-brand strong{color:var(--green);font-weight:800;letter-spacing:.01em}
.hero-brand span{color:var(--orange);font-weight:700}
.hero-brand span::before{content:"\2022";color:var(--mint);margin-right:.55em;font-weight:800}
@media (max-width:480px){.hero-brand{font-size:14px}.hero-brand img{height:22px}}

/* Bloc 3 tarifs en cartes */
.tc-grid{display:grid;grid-template-columns:1fr;gap:var(--s3);align-items:stretch}
.tc-card{position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;
  padding:var(--s4) var(--s3);border:1px solid #e6e9e6}
.tc-card--top{border:2px solid var(--orange)}
.tc-badge{position:absolute;top:-14px;left:50%;transform:translateX(-50%);background:var(--orange);
  color:var(--white);font-size:14px;font-weight:800;padding:.25em .9em;border-radius:999px;white-space:nowrap}
.tc-titre{color:var(--green);font-size:20px;margin-bottom:.4em;min-height:2.6em;display:flex;align-items:center}
.tc-desc{font-size:16px;color:#4a564d;margin-bottom:var(--s2)}
.tc-prix{background:var(--mint);color:var(--white);font-size:24px;font-weight:800;
  padding:.35em 1.2em;border-radius:var(--radius-sm);margin-bottom:.6em}
.tc-card--top .tc-prix{background:var(--orange);color:var(--white)}
.tc-pro{font-size:14px;color:#4a564d;margin-bottom:var(--s2)}
.tc-link{margin-top:auto;color:var(--orange);font-weight:700;font-size:16px;border:1.5px solid var(--orange);
  border-radius:var(--radius-sm);padding:.5em 1.2em;transition:.15s}
.tc-link:hover{background:var(--orange);color:var(--white)}
.tc-actions{display:flex;flex-direction:column;gap:var(--s2);align-items:center;margin-top:var(--s4)}
@media (min-width:760px){
  .tc-grid{grid-template-columns:repeat(3,1fr)}
  .tc-actions{flex-direction:row;justify-content:center}
}

/* Hero image carree (camion de marque) */
.hero-media:has(.hero-img-sq){aspect-ratio:1/1}
.hero-img-sq{aspect-ratio:1/1;object-fit:cover}

/* "Le bon réflexe" - conclusion actionnable des blocs editoriaux */
.edito-action{background:rgba(1,82,159,.10);border-left:4px solid var(--mint);border-radius:var(--radius-sm);
  padding:.9em 1.1em;margin-top:var(--s2);font-size:16px;color:var(--green);line-height:1.55}
.edito-action-tag{display:block;font-weight:800;color:var(--green);margin-bottom:.25em;font-size:16px}

/* Paire avant/apres dans l'intro des pages services */
.pair-media{display:grid;grid-template-columns:1fr 1fr;gap:var(--s2)}
.pair-fig{position:relative;border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow-sm);aspect-ratio:3/4}
.pair-fig img{width:100%;height:100%;display:block;object-fit:cover;object-position:center 65%}
.pair-fig--apres img{object-position:center}
@media (min-width:760px){.pair-media{grid-template-columns:1fr 1fr}.pair-fig{aspect-ratio:3/4}}
.pair-tag{position:absolute;top:.8em;left:.8em;padding:.25em .9em;border-radius:999px;
  font-size:14px;font-weight:800;color:var(--white);background:var(--orange)}
.pair-fig--apres .pair-tag{background:var(--green)}

/* Bandeau cookies (consentement GA4/Ads) */
.cookie-banner{position:fixed;left:var(--s2);right:var(--s2);bottom:calc(64px + var(--s2));z-index:90;
  background:var(--white);border:1px solid #e6e9e6;border-radius:var(--radius);box-shadow:var(--shadow);
  padding:var(--s3);max-width:480px;margin:0 auto}
.cookie-txt{font-size:14px;color:#4a564d;margin-bottom:var(--s2);line-height:1.5}
.cookie-actions{display:flex;align-items:center;gap:var(--s2);flex-wrap:wrap}
.cookie-btn{padding:.6em 1.3em;font-size:16px}
.cookie-more{font-size:14px;color:var(--green);text-decoration:underline}
@media (min-width:900px){.cookie-banner{left:auto;right:var(--s3);bottom:var(--s3)}}
