/* Plombier Aisne — surcouche du thème TheDir (palette + composants).
   Réutilise la structure/typo TheDir (Work Sans, Bootstrap), recolore et ajoute nos blocs. */
:root{
  --pa-navy:#2A4A63; --pa-blue:#4A80B0; --pa-gold:#E0B25E; --pa-tan:#C0895A;
  --pa-light:#EEF1F5; --pa-ink:#26333f; --pa-ink-soft:#5a6b78; --pa-line:#e2e8ee;
}
body{color:var(--pa-ink);font-family:"Work Sans",sans-serif}

/* Logo texte */
.pa-logo{font-family:"Work Sans",sans-serif;font-weight:800;font-size:24px;color:var(--pa-navy)!important;text-transform:none;letter-spacing:-.01em;text-decoration:none}
.pa-logo span{color:var(--pa-tan)}
.pa-logo-foot{font-size:26px;display:inline-block;margin-bottom:6px}
.pa-mobile-cta{font-size:12px;padding:8px 14px}

/* Boutons TheDir recolorés (spécificité forte pour battre style.css) */
a.btn-primary,button.btn-primary,.btn.btn-primary,.header-customize .btn-primary,#header .btn-primary,.btn-primary{background:var(--pa-navy)!important;background-color:var(--pa-navy)!important;border-color:var(--pa-navy)!important;color:#fff!important}
a.btn-primary:hover,.btn.btn-primary:hover,#header .btn-primary:hover{background:var(--pa-blue)!important;background-color:var(--pa-blue)!important;border-color:var(--pa-blue)!important}
.pa-btn-gold{background-color:var(--pa-gold)!important;border-color:var(--pa-gold)!important;color:var(--pa-navy)!important}
.pa-btn-gold:hover{background-color:var(--pa-tan)!important;color:#fff!important}
.pa-btn-outline{background:transparent!important;border:2px solid var(--pa-navy)!important;color:var(--pa-navy)!important}
.pa-btn-outline:hover{background:var(--pa-navy)!important;color:#fff!important}

/* Header : barre pleine largeur blanche, texte foncé, collée en haut */
#header.pa-static .header-wrapper{position:relative}
#header .navbar-nav .nav-link{color:var(--pa-ink)!important;font-weight:600;font-size:14px}
#header .navbar-nav .nav-link:hover,#header .navbar-nav .current-menu-item>.nav-link{color:var(--pa-navy)!important}
#header .sub-menu{background:#fff;box-shadow:0 20px 40px -18px rgba(42,74,99,.35);border-radius:10px;padding:8px;min-width:250px;max-height:440px;overflow:auto}
#header .sub-menu .nav-link{font-size:13px;padding:6px 12px}

/* Hero TheDir (home-main-intro) recoloré */
.pa-home-intro{padding:64px 0 46px}
.pa-home-intro .heading h1{font-size:clamp(2.4rem,5vw,4rem);color:var(--pa-navy);line-height:1.05}
.pa-home-intro .heading h1 .font-weight-light{color:var(--pa-blue)}
.pa-home-intro .form-search-style-02{box-shadow:0 24px 50px -24px rgba(42,74,99,.35);border-radius:10px}
.pa-home-intro .form-control-mini{font-size:16px;color:var(--pa-ink)}
.pa-tile{display:flex;flex-direction:column;align-items:center;justify-content:center;background:#fff;border:1px solid var(--pa-line);border-radius:12px;padding:16px 8px;text-decoration:none;color:var(--pa-navy);transition:.25s;height:100%}
.pa-tile:hover{transform:translateY(-4px);box-shadow:0 16px 30px -20px rgba(42,74,99,.4);border-color:var(--pa-gold)}
.pa-tile i{font-size:26px;color:var(--pa-blue);margin-bottom:8px}
.pa-tile-text{font-size:13px;font-weight:600;text-align:center;line-height:1.2}

/* Sections & conteneurs */
.pa-sec{padding:64px 0}
.pa-sec-light{background:var(--pa-light)}
.pa-sec-navy{background:var(--pa-navy);color:#fff}
.pa-sec-navy h1,.pa-sec-navy h2,.pa-sec-navy h3{color:#fff}
.pa-wrap{max-width:1180px;margin:0 auto;padding:0 20px}
.pa-narrow{max-width:860px;margin:0 auto}
.pa-eyebrow{display:inline-block;font-weight:700;text-transform:uppercase;letter-spacing:.14em;font-size:12px;color:var(--pa-tan);margin-bottom:12px}
.pa-center{text-align:center}
h1,h2,h3,h4{font-family:"Work Sans",sans-serif;font-weight:800;color:var(--pa-navy);line-height:1.2}
h1{font-size:clamp(2rem,4vw,3rem)}
h2{font-size:clamp(1.5rem,3vw,2.2rem)}
h3{font-size:1.3rem}
.pa-lead{font-size:1.2rem;color:var(--pa-ink-soft);font-weight:400;line-height:1.7}

/* Fil d'ariane */
.pa-bc{background:var(--pa-light);border-bottom:1px solid var(--pa-line)}
.pa-bc ol{max-width:1180px;margin:0 auto;padding:14px 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:#b8c4cf;margin-left:.3em}
.pa-bc a{color:var(--pa-blue);text-decoration:none}
.pa-bc a:hover{color:var(--pa-navy)}

/* Hero */
.pa-hero{background:linear-gradient(180deg,var(--pa-light),#fff);padding:56px 0 64px}
.pa-hero .pa-lead{max-width:40ch}
.pa-hero-img{border-radius:16px;overflow:hidden;box-shadow:0 24px 50px -24px rgba(42,74,99,.5)}
.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-line)}
.pa-trust b{display:block;font-size:26px;color:var(--pa-navy);line-height:1}
.pa-trust span{font-size:13px;color:var(--pa-ink-soft)}

/* Prose */
.pa-prose{max-width:820px;margin:0 auto}
.pa-prose h2{margin:1.3em 0 .5em}
.pa-prose h3{color:var(--pa-tan);margin:1.2em 0 .4em}
.pa-prose p{margin:0 0 1.1em;line-height:1.8}
.pa-prose strong{color:var(--pa-navy)}
.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:.5em}
.pa-prose ul li::before{content:"";position:absolute;left:0;top:.5em;width:10px;height:10px;border-radius:3px;background:var(--pa-gold);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:.6em;counter-increment:pa}
.pa-prose ol li::before{content:counter(pa);position:absolute;left:0;top:-.1em;width:1.6em;height:1.6em;background:var(--pa-navy);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:13px}

/* Grilles cartes */
.pa-grid{display:grid;gap:24px;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-card{background:#fff;border:1px solid var(--pa-line);border-radius:14px;padding:26px 22px;height:100%;transition:transform .3s,box-shadow .3s}
.pa-card:hover{transform:translateY(-5px);box-shadow:0 20px 40px -22px rgba(42,74,99,.35)}
.pa-ico{font-size:28px;display:block;margin-bottom:12px}
.pa-card h3{font-size:18px;margin:0 0 8px}
.pa-card p{font-size:14px;color:var(--pa-ink-soft);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}}

/* Étapes */
.pa-step .pa-num{width:50px;height:50px;border-radius:50%;background:rgba(224,178,94,.18);border:2px solid var(--pa-gold);color:var(--pa-navy);display:flex;align-items:center;justify-content:center;font-weight:800;font-size:20px;margin-bottom:12px}
.pa-sec-navy .pa-step .pa-num{background:rgba(255,255,255,.1);color:#fff}
.pa-step h4{margin:0 0 6px;color:var(--pa-navy)}
.pa-sec-navy .pa-step h4{color:#fff}
.pa-step p{font-size:14px;color:var(--pa-ink-soft);margin:0}
.pa-sec-navy .pa-step p{color:rgba(255,255,255,.8)}

/* Artisan recommandé */
.pa-artisan{display:flex;gap:22px;background:#fff;border:1px solid var(--pa-line);border-radius:16px;padding:28px;box-shadow:0 14px 34px -22px rgba(42,74,99,.3)}
.pa-artisan .pa-av{width:82px;height:82px;flex-shrink:0;border-radius:18px;background:linear-gradient(135deg,var(--pa-navy),var(--pa-blue));color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:28px}
.pa-artisan h3{margin:0 0 3px}
.pa-artisan .pa-act{color:var(--pa-tan);font-weight:600;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-navy);min-width:80px;display:inline-block;margin-right:10px}
.pa-badge-verif{display:inline-flex;align-items:center;gap:.4em;background:var(--pa-light);color:var(--pa-navy);font-weight:600;font-size:12px;padding:.4em .9em;border-radius:40px;margin-top:14px}

/* Villes voisines / chips */
.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 var(--pa-line);border-radius:12px;padding:14px 16px;transition:.25s;text-decoration:none}
.pa-nearby a:hover{border-color:var(--pa-gold);transform:translateY(-3px)}
.pa-nearby .pa-pin{width:36px;height:36px;border-radius:10px;background:var(--pa-light);display:flex;align-items:center;justify-content:center;color:var(--pa-tan);flex-shrink:0}
.pa-nearby b{display:block;color:var(--pa-navy);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-line);border-radius:40px;padding:.5em 1em;font-weight:600;font-size:14px;color:var(--pa-navy);text-decoration:none;transition:.2s}
.pa-chip:hover{background:var(--pa-navy);color:#fff!important;border-color:var(--pa-navy)}

/* FAQ accordéon */
.pa-faq{max-width:820px;margin:0 auto}
.pa-faq-item{border-bottom:1px solid var(--pa-line)}
.pa-faq-q{width:100%;background:none;border:0;text-align:left;cursor:pointer;padding:20px 40px 20px 0;position:relative;font-family:"Work Sans";font-weight:700;font-size:17px;color:var(--pa-navy)}
.pa-faq-q::after{content:"+";position:absolute;right:4px;top:50%;transform:translateY(-50%);font-size:24px;color:var(--pa-tan);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);line-height:1.7}

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

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

/* Blog cards */
.pa-post{background:#fff;border:1px solid var(--pa-line);border-radius:16px;overflow:hidden;height:100%;display:flex;flex-direction:column;transition:.3s;text-decoration:none}
.pa-post:hover{transform:translateY(-5px);box-shadow:0 20px 40px -22px rgba(42,74,99,.35)}
.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-weight:700;font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--pa-tan)}
.pa-post h3{font-size:18px;margin:6px 0}
.pa-post p{font-size:14px;color:var(--pa-ink-soft);margin:0 0 10px}

/* Villes : carrousel + grille recherche */
.pa-citycard{position:relative;border-radius:14px;overflow:hidden;display:block;text-decoration:none;aspect-ratio:3/4}
.pa-citycard img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.pa-citycard:hover img{transform:scale(1.06)}
.pa-citycard .pa-cc-label{position:absolute;left:0;right:0;bottom:0;padding:16px;background:linear-gradient(transparent,rgba(42,74,99,.85));color:#fff}
.pa-citycard .pa-cc-label b{font-size:18px;display:block}
.pa-citycard .pa-cc-label span{font-size:12px;opacity:.9}
.pa-search{max-width:560px;margin:0 auto 30px;position:relative}
.pa-search input{width:100%;padding:15px 18px;border:1px solid var(--pa-line);border-radius:40px;font-family:inherit;font-size:16px}

/* Footer */
.pa-footer{background:var(--pa-navy);color:rgba(255,255,255,.75)}
.pa-footer a{color:rgba(255,255,255,.75);text-decoration:none}
.pa-footer a:hover{color:var(--pa-gold)}
.pa-footer .pa-logo{color:#fff!important}
.pa-footer .pa-foot-title{color:#fff;font-weight:700;text-transform:uppercase;letter-spacing:.06em;font-size:13px;margin-bottom:14px}
.pa-footer .pa-foot-list{list-style:none;padding:0;margin:0;display:grid;gap:8px;font-size:14px}
.pa-footer .pa-foot-cols{columns:2;column-gap:20px}
.pa-footer .pa-foot-copy{border-top:1px solid rgba(255,255,255,.14);padding-top:20px;font-size:13px;color:rgba(255,255,255,.55)}

/* Révélations */
.pa-reveal{opacity:0;transform:translateY(22px);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:860px){.pa-nearby{grid-template-columns:1fr 1fr}.pa-artisan{flex-direction:column}.pa-footer .pa-foot-cols{columns:1}}
