/* Plombier Ain — surcouche du thème Salient (couleurs plomberie + composants).
   On réutilise la structure Salient (.container/.row/.col, .nectar-button, .toggle),
   on ne fait qu'ajuster couleurs et quelques modules maison. */

:root{
  --pa-plum:#4E3A52; --pa-mauve:#8E7089; --pa-rose:#D49BA2; --pa-rose-d:#C4818A;
  --pa-cream:#ECE4D7; --pa-cream-2:#F5F0E8; --pa-taupe:#C7BDB7; --pa-ink:#2E2632; --pa-ink-soft:#5c5560;
}

/* Barre supérieure urgence */
.pa-topbar-wp{background:#4E3A52;color:#fff;font-family:'Poppins',sans-serif;font-weight:500;font-size:13px;text-align:center;padding:8px 16px;position:relative;z-index:1000}
.pa-topbar-wp a{color:#D49BA2;font-weight:600}
.pa-topbar-wp a:hover{color:#fff}

/* Logo texte */
#logo .pa-logo-txt{font-family:'Poppins',sans-serif;font-weight:700;font-size:22px;color:#4E3A52;letter-spacing:-.01em}
#header-outer[data-format] #logo{display:flex;align-items:center}

/* Boutons : on garde le style Salient, on recolore l'accent */
:root{--nectar-accent-color:#4E3A52;}
.nectar-button.regular-button, body .nectar-button[class*="extra-color"]{background-color:#4E3A52;}
.nectar-button.regular-button span,.nectar-button.regular-button{color:#fff;}
/* 2e bouton (secondaire) : contour plum, texte plum, se remplit au survol — bien visible */
a.nectar-button.see-through-2,.nectar-button.see-through-2{background-color:transparent!important;border:2px solid var(--pa-plum)!important;color:var(--pa-plum)!important;box-shadow:none!important}
.nectar-button.see-through-2 span{color:var(--pa-plum)!important}
.nectar-button.see-through-2:hover{background-color:var(--pa-plum)!important;border-color:var(--pa-plum)!important}
.nectar-button.see-through-2:hover span,.nectar-button.see-through-2:hover{color:#fff!important}

/* Hero maison (dans la structure Salient) */
.pa-hero{background:var(--pa-cream);padding:60px 0 70px;position:relative;overflow:hidden}
.pa-hero .pa-eyebrow{display:inline-block;font-family:'Poppins',sans-serif;font-weight:600;text-transform:uppercase;letter-spacing:.16em;font-size:12px;color:var(--pa-rose-d);margin-bottom:14px}
.pa-hero h1{color:var(--pa-plum);margin-bottom:.35em}
.pa-hero .pa-lead{font-size:20px;color:var(--pa-ink-soft);line-height:1.6}
.pa-hero-img{border-radius:16px;overflow:hidden;box-shadow:0 20px 50px -20px rgba(78,58,82,.4)}
.pa-hero-img img{width:100%;display:block}
.pa-trust{display:flex;gap:26px;flex-wrap:wrap;margin-top:26px;padding-top:20px;border-top:1px solid var(--pa-taupe)}
.pa-trust b{display:block;font-family:'Poppins',sans-serif;font-size:26px;color:var(--pa-plum);line-height:1}
.pa-trust span{font-size:13px;color:var(--pa-ink-soft)}

/* Centrage fiable du contenu étroit — l'offset Salient n'est pas fiable ici,
   on force les colonnes étroites à se centrer à 880px max. */
.col.span_8.offset_2,
.col.span_10.offset_1{
  width:100%!important;max-width:880px!important;
  margin-left:auto!important;margin-right:auto!important;
  float:none!important;left:auto!important;right:auto!important;
}
.pa-narrow{max-width:880px;margin-left:auto;margin-right:auto}
/* garantit que chaque section a une largeur cohérente et centrée */
.pa-sec > .container,.pa-hero > .container{max-width:1280px;margin-left:auto;margin-right:auto;padding-left:24px;padding-right:24px}
.pa-sec > .row{max-width:1280px;margin-left:auto;margin-right:auto;padding-left:24px;padding-right:24px}
/* le conteneur principal Salient ne doit pas trop brider nos sections */
#ajax-content-wrap .container-wrap .container.main-content{max-width:1280px}

/* Eyebrow générique + sections */
.pa-eyebrow{display:inline-block;font-family:'Poppins',sans-serif;font-weight:600;text-transform:uppercase;letter-spacing:.16em;font-size:12px;color:var(--pa-rose-d);margin-bottom:12px}
.pa-sec{padding:56px 0}
.pa-sec-cream{background:var(--pa-cream)}
.pa-sec-cream2{background:var(--pa-cream-2)}
.pa-sec-plum{background:var(--pa-plum);color:#fff}
.pa-sec-plum h2,.pa-sec-plum h3{color:#fff}
.pa-sec-plum .pa-eyebrow{color:var(--pa-rose)}
.pa-center{text-align:center}

/* ===== Header : barre pleine largeur, collante, fond blanc, texte foncé (aucun chevauchement) ===== */
#header-outer{position:sticky!important;top:0!important;left:auto!important;right:auto!important;
  width:100%!important;max-width:100%!important;margin:0!important;border-radius:0!important;
  background-color:#fff!important;box-shadow:0 2px 14px rgba(78,58,82,.08)!important;z-index:9999!important;transform:none!important}
#header-space{display:none!important}
#ajax-content-wrap{margin-top:0!important;top:0!important}
#header-outer .buttons.sf-menu .menu-title-text{white-space:nowrap}
#header-outer .sf-menu > li > a{white-space:nowrap}
#header-outer.transparent,#header-outer.transparent #top,
body[data-force-header-trans-color] #header-outer.transparent{background-color:#fff!important}
#header-outer #logo,#header-outer #logo .pa-logo-txt{color:var(--pa-plum)!important}
#header-outer .sf-menu > li > a,#header-outer .sf-menu > li > a .menu-title-text{color:var(--pa-ink)!important}
#header-outer .sf-menu > li.current-menu-item > a .menu-title-text,
#header-outer .sf-menu > li > a:hover .menu-title-text{color:var(--pa-plum)!important}
#header-outer .slide-out-widget-area-toggle a .lines,
#header-outer .slide-out-widget-area-toggle a .lines:before,
#header-outer .slide-out-widget-area-toggle a .lines:after{background-color:var(--pa-plum)!important}

/* ===== Grilles CSS Grid — remplissent la largeur, points de rupture progressifs ===== */
.pa-grid{display:grid;gap:26px;align-items:stretch}
.pa-grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.pa-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.pa-grid > .pa-card,.pa-grid > .pa-step,.pa-grid > .pa-post{height:100%;margin:0}
@media (max-width:1150px){.pa-grid-4{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:860px){.pa-grid-4,.pa-grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:540px){.pa-grid-4,.pa-grid-3{grid-template-columns:1fr}}

/* Cartes services */
.pa-card{background:#fff;border:1px solid rgba(199,189,183,.55);border-radius:14px;padding:26px 22px;height:100%;transition:transform .3s,box-shadow .3s}
.pa-card h3,.pa-post h3{font-family:'Poppins',sans-serif}
.pa-card:hover{transform:translateY(-5px);box-shadow:0 18px 40px -22px rgba(78,58,82,.4)}
.pa-card .pa-ico{font-size:30px;margin-bottom:12px;display:block}
.pa-card h3{font-size:19px;margin:0 0 8px;color:var(--pa-plum)}
.pa-card p{font-size:15px;color:var(--pa-ink-soft);margin:0}

/* Étapes */
.pa-step{padding-top:8px}
.pa-step .pa-num{width:50px;height:50px;border-radius:50%;background:rgba(212,155,162,.18);border:2px solid var(--pa-rose);color:var(--pa-plum);display:flex;align-items:center;justify-content:center;font-family:'Poppins',sans-serif;font-weight:700;font-size:20px;margin-bottom:14px}
.pa-sec-plum .pa-step .pa-num{background:rgba(255,255,255,.08);color:#fff}
.pa-step h4{margin:0 0 6px}
.pa-step p{font-size:14px;color:var(--pa-ink-soft);margin:0}
.pa-sec-plum .pa-step p{color:rgba(255,255,255,.8)}

/* Grille tarifaire transparente */
.pa-pricing{background:#fff;border:1px solid rgba(199,189,183,.5);border-radius:16px;overflow:hidden;box-shadow:0 18px 45px -25px rgba(78,58,82,.35)}
.pa-pricing-head{background:linear-gradient(135deg,var(--pa-plum),var(--pa-mauve));color:#fff;padding:22px 26px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px}
.pa-pricing-head h3{color:#fff;margin:0}
.pa-badge{display:inline-flex;align-items:center;gap:.4em;background:rgba(255,255,255,.18);border:1px solid rgba(255,255,255,.3);padding:.4em .9em;border-radius:40px;font-family:'Poppins',sans-serif;font-weight:600;font-size:12px}
.pa-price-row{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:15px 26px;border-bottom:1px solid rgba(199,189,183,.4)}
.pa-price-row:nth-child(even){background:var(--pa-cream-2)}
.pa-price-row:last-child{border-bottom:0}
.pa-price-row b{display:block;font-family:'Poppins',sans-serif;color:var(--pa-plum);font-size:15px}
.pa-price-row .pa-sub{font-size:13px;color:var(--pa-ink-soft)}
.pa-price-tag{font-family:'Poppins',sans-serif;font-weight:700;color:var(--pa-rose-d);white-space:nowrap}
.pa-pricing-note{padding:14px 26px;font-size:13px;color:var(--pa-ink-soft);background:var(--pa-cream)}

/* Diagnostic interactif */
.pa-diag{background:#fff;border:1px solid rgba(199,189,183,.5);border-radius:16px;overflow:hidden;box-shadow:0 18px 45px -25px rgba(78,58,82,.35)}
.pa-diag-head{background:var(--pa-plum);color:#fff;padding:22px 26px}
.pa-diag-head h3{color:#fff;margin:0 0 4px}
.pa-diag-head p{margin:0;color:rgba(255,255,255,.75);font-size:14px}
.pa-diag-body{padding:26px}
.pa-diag-opts{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.pa-diag-opt{display:flex;align-items:center;gap:12px;padding:14px 16px;border:2px solid var(--pa-taupe);border-radius:12px;background:#fff;cursor:pointer;text-align:left;font-family:'Poppins',sans-serif;font-size:15px;color:var(--pa-ink);transition:.2s;width:100%}
.pa-diag-opt:hover{border-color:var(--pa-rose);background:var(--pa-cream-2);transform:translateY(-2px)}
.pa-diag-opt .pa-e{font-size:22px}
.pa-diag-verdict{background:var(--pa-cream);border-left:4px solid var(--pa-rose);border-radius:0 10px 10px 0;padding:14px 18px;margin:14px 0}
.pa-diag-back{background:none;border:0;color:var(--pa-mauve);font-family:'Poppins',sans-serif;font-weight:600;cursor:pointer;padding:0;margin-top:8px}

/* Bloc artisan */
.pa-artisan{display:flex;gap:22px;background:#fff;border:1px solid rgba(199,189,183,.5);border-radius:16px;padding:28px;box-shadow:0 12px 30px -20px rgba(78,58,82,.3)}
.pa-artisan .pa-av{width:80px;height:80px;flex-shrink:0;border-radius:18px;background:linear-gradient(135deg,var(--pa-plum),var(--pa-mauve));color:#fff;display:flex;align-items:center;justify-content:center;font-family:'Poppins',sans-serif;font-weight:700;font-size:28px}
.pa-artisan h3{margin:0 0 3px}
.pa-artisan .pa-act{color:var(--pa-mauve);font-family:'Poppins',sans-serif;font-weight:500;font-size:15px;margin-bottom:14px}
.pa-artisan ul{list-style:none;margin:0;padding:0;display:grid;gap:7px}
.pa-artisan li{font-size:14px;color:var(--pa-ink-soft)}
.pa-artisan li b{color:var(--pa-plum);font-family:'Poppins',sans-serif;min-width:78px;display:inline-block;margin-right:10px}
.pa-verified{display:inline-flex;align-items:center;gap:.4em;background:var(--pa-cream);color:var(--pa-plum);font-family:'Poppins',sans-serif;font-weight:600;font-size:12px;padding:.4em .9em;border-radius:40px;margin-top:14px}

/* Villes voisines */
.pa-nearby{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.pa-nearby a{display:flex;align-items:center;gap:12px;background:#fff;border:1px solid rgba(199,189,183,.5);border-radius:12px;padding:14px 16px;transition:.25s}
.pa-nearby a:hover{border-color:var(--pa-rose);transform:translateY(-3px)}
.pa-nearby .pa-pin{width:36px;height:36px;border-radius:10px;background:var(--pa-cream);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.pa-nearby b{display:block;font-family:'Poppins',sans-serif;color:var(--pa-plum);font-size:15px;line-height:1.1}
.pa-nearby span{font-size:12px;color:var(--pa-ink-soft)}
.pa-chips{display:flex;flex-wrap:wrap;gap:9px}
.pa-chip{display:inline-block;background:#fff;border:1px solid var(--pa-taupe);border-radius:40px;padding:.5em 1em;font-family:'Poppins',sans-serif;font-weight:500;font-size:14px;color:var(--pa-plum);transition:.2s}
.pa-chip:hover{background:var(--pa-plum);color:#fff!important;border-color:var(--pa-plum)}

/* Fil d'Ariane */
.pa-bc{background:var(--pa-cream-2);border-bottom:1px solid rgba(199,189,183,.5);font-family:'Poppins',sans-serif}
.pa-bc ol{max-width:1100px;margin:0 auto;padding:12px 20px;list-style:none;display:flex;flex-wrap:wrap;gap:.5em;font-size:13px;align-items:center}
.pa-bc li{display:flex;align-items:center;gap:.5em;color:var(--pa-ink-soft)}
.pa-bc li:not(:last-child)::after{content:"›";color:var(--pa-taupe);margin-left:.3em}
.pa-bc a{color:var(--pa-mauve)}
.pa-bc a:hover{color:var(--pa-plum)}

/* Bande CTA */
.pa-cta{background:linear-gradient(135deg,var(--pa-plum),var(--pa-mauve));color:#fff;border-radius:16px;padding:40px;text-align:center}
.pa-cta h2{color:#fff;margin-bottom:.3em}
.pa-cta p{color:rgba(255,255,255,.85);max-width:52ch;margin:0 auto 1.4em}

/* Vidéo */
.pa-video{border-radius:16px;overflow:hidden;box-shadow:0 20px 50px -22px rgba(78,58,82,.5);background:#000}
.pa-video video{width:100%;display:block}

/* Blog cards */
.pa-post{background:#fff;border:1px solid rgba(199,189,183,.5);border-radius:16px;overflow:hidden;height:100%;display:flex;flex-direction:column;transition:.3s}
.pa-post:hover{transform:translateY(-5px);box-shadow:0 18px 40px -22px rgba(78,58,82,.4)}
.pa-post .pa-thumb{aspect-ratio:16/10;overflow:hidden}
.pa-post .pa-thumb img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.pa-post:hover .pa-thumb img{transform:scale(1.06)}
.pa-post .pa-pb{padding:20px}
.pa-post .pa-tag{font-family:'Poppins',sans-serif;font-weight:600;font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--pa-rose-d)}
.pa-post h3{font-size:18px;margin:6px 0 6px;color:var(--pa-plum)}
.pa-post p{font-size:14px;color:var(--pa-ink-soft);margin:0 0 10px}

/* Formulaire de commentaires (blog) */
.pa-comments{max-width:800px;margin:0 auto}
.pa-comments h3{color:var(--pa-plum)}
.pa-comment{display:flex;gap:14px;padding:18px 0;border-bottom:1px solid rgba(199,189,183,.4)}
.pa-comment .pa-cav{width:44px;height:44px;border-radius:50%;background:var(--pa-cream);flex-shrink:0}
.pa-cform{display:grid;gap:14px;margin-top:20px}
.pa-cform input,.pa-cform textarea{width:100%;padding:12px 14px;border:1px solid var(--pa-taupe);border-radius:10px;font-family:inherit;font-size:15px}
.pa-cform .pa-row2{display:grid;grid-template-columns:1fr 1fr;gap:14px}

/* Listes du corps rédactionnel */
.pa-prose h2{color:var(--pa-plum);margin-top:1.3em}
.pa-prose h3{color:var(--pa-mauve);margin-top:1.2em}
.pa-prose ul{list-style:none;padding:0;margin:0 0 1.2em}
.pa-prose ul li{position:relative;padding-left:1.7em;margin-bottom:.55em}
.pa-prose ul li::before{content:"";position:absolute;left:0;top:.55em;width:10px;height:10px;border-radius:3px;background:var(--pa-rose);transform:rotate(45deg)}
.pa-prose ol{counter-reset:pa;list-style:none;padding:0;margin:0 0 1.2em}
.pa-prose ol li{position:relative;padding-left:2.4em;margin-bottom:.7em;counter-increment:pa}
.pa-prose ol li::before{content:counter(pa);position:absolute;left:0;top:-.05em;width:1.6em;height:1.6em;background:linear-gradient(135deg,var(--pa-plum),var(--pa-mauve));color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:'Poppins',sans-serif;font-weight:600;font-size:13px}

/* FAQ accordéon */
.pa-faq{max-width:820px;margin:0 auto}
.pa-faq-item{border-bottom:1px solid var(--pa-taupe)}
.pa-faq-q{width:100%;background:none;border:0;text-align:left;cursor:pointer;padding:20px 40px 20px 0;position:relative;font-family:'Poppins',sans-serif;font-weight:600;font-size:17px;color:var(--pa-plum)}
.pa-faq-q::after{content:"+";position:absolute;right:4px;top:50%;transform:translateY(-50%);font-size:24px;color:var(--pa-rose-d);transition:.3s}
.pa-faq-item.pa-open .pa-faq-q::after{transform:translateY(-50%) rotate(45deg)}
.pa-faq-a{max-height:0;overflow:hidden;transition:max-height .35s ease}
.pa-faq-a-in{padding:0 0 20px;color:var(--pa-ink-soft)}

/* Footer surcouche */
#footer-outer .pa-footer-row h4{color:#fff;font-family:'Poppins',sans-serif;font-size:15px;margin-bottom:14px}
#footer-outer .pa-foot-list{list-style:none;padding:0;margin:0;display:grid;gap:8px}
#footer-outer .pa-foot-cities{columns:2;column-gap:18px}
#footer-outer .pa-footer-copy{margin-top:30px;padding-top:18px;border-top:1px solid rgba(255,255,255,.14);font-size:13px}

/* Révélations douces */
.pa-reveal{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s ease}
.pa-reveal.pa-in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.pa-reveal{opacity:1;transform:none}}

@media (max-width:999px){
  .pa-nearby{grid-template-columns:1fr 1fr}
  .pa-diag-opts{grid-template-columns:1fr}
}
@media (max-width:690px){
  .pa-nearby{grid-template-columns:1fr}
  .pa-artisan{flex-direction:column}
  .pa-cform .pa-row2{grid-template-columns:1fr}
  #footer-outer .pa-foot-cities{columns:1}
}
