
/*
Theme Name: AB Plomberie
Author: AB Plomberie
Description: Site vitrine professionnel AB Plomberie — plomberie, chauffage et dépannage à Armentières et 10 km autour.
Version: 4.0.0
*/
:root{--navy:#062a4d;--blue:#0878d1;--sky:#eaf5ff;--red:#ed2e24;--orange:#f36b21;--ink:#13243a;--muted:#617084;--line:#e5ebf2;--bg:#f7f9fc;--white:#fff;--shadow:0 12px 35px rgba(6,42,77,.10)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;line-height:1.65;background:#fff}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto}.container{width:min(1180px,92%);margin:auto}
.topbar{background:var(--navy);color:#fff;font-size:13px}.topbar .container{display:flex;justify-content:space-between;gap:20px;padding:8px 0}.topbar a{font-weight:800;color:#fff}
.site-header{background:#fff;position:sticky;top:0;z-index:100;box-shadow:0 2px 18px rgba(6,42,77,.12)}.header-inner{min-height:92px;display:flex;align-items:center;gap:28px}.brand img{display:block;width:170px;height:auto}.nav{margin-left:auto;display:flex;gap:22px;align-items:center;font-size:14px;font-weight:800}.nav a:hover,.nav .current-menu-item>a{color:var(--blue)}.header-phone{background:var(--blue);color:#fff!important;padding:12px 17px;border-radius:9px}.menu-toggle{display:none;background:transparent;border:0;font-size:28px;color:var(--navy)}
.hero{min-height:650px;display:flex;align-items:center;background:linear-gradient(90deg,rgba(3,25,47,.95) 0%,rgba(3,31,57,.82) 48%,rgba(3,31,57,.20) 100%),url("https://images.unsplash.com/photo-1607472586893-edb57bdc0e39?auto=format&fit=crop&w=2000&q=85") center/cover}.hero-content{padding:75px 0}.eyebrow{font-weight:900;letter-spacing:1.7px;text-transform:uppercase;color:var(--blue);font-size:13px}.hero .eyebrow{color:#fff}.hero h1{color:#fff;font-size:clamp(42px,6vw,72px);line-height:1.02;max-width:780px;margin:14px 0}.hero h1 span{color:#49b8ff}.hero p{color:#fff;max-width:650px;font-size:19px}.actions{display:flex;flex-wrap:wrap;gap:13px;margin:28px 0}.btn{display:inline-flex;align-items:center;justify-content:center;border:0;padding:14px 22px;border-radius:9px;font-weight:900;cursor:pointer}.btn-blue{background:var(--blue);color:#fff}.btn-red{background:var(--red);color:#fff}.btn-light{background:#fff;color:var(--navy)}.btn-outline{border:2px solid #fff;color:#fff}.trust{display:flex;flex-wrap:wrap;gap:18px;color:#fff;font-weight:800;font-size:14px}
.quick{margin-top:-55px;position:relative;z-index:3}.quick-grid{display:grid;grid-template-columns:repeat(4,1fr);background:#fff;border-radius:13px;box-shadow:var(--shadow);padding:22px}.quick-item{padding:4px 22px;border-right:1px solid var(--line)}.quick-item:last-child{border:0}.quick-item strong{display:block}.quick-item small{color:var(--muted)}
.section{padding:88px 0}.section.alt{background:var(--bg)}.section-title{margin-bottom:36px;max-width:760px}.section-title h2{font-size:42px;line-height:1.12;margin:7px 0}.section-title h2 span{color:var(--blue)}.section-title p{color:var(--muted)}
.services{display:grid;grid-template-columns:repeat(5,1fr);gap:18px}.service{overflow:hidden;background:#fff;border:1px solid var(--line);border-radius:13px;box-shadow:0 7px 22px rgba(6,42,77,.07);transition:.2s}.service:hover{transform:translateY(-5px);box-shadow:var(--shadow)}.service img{display:block;width:100%;height:175px;object-fit:cover}.service-body{padding:19px}.service h3{margin:0 0 7px;font-size:20px}.service p{margin:0 0 16px;color:var(--muted);font-size:14px}.learn{font-weight:900;color:var(--blue);font-size:14px}
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:55px;align-items:center}.photo{border-radius:15px;overflow:hidden;box-shadow:var(--shadow)}.photo img{display:block;width:100%;height:450px;object-fit:cover}.checks{list-style:none;padding:0}.checks li{margin:12px 0;font-weight:700}.checks li:before{content:"✓";display:inline-grid;place-items:center;width:24px;height:24px;margin-right:9px;border-radius:50%;background:var(--sky);color:var(--blue);font-weight:900}
.area{background:var(--navy);color:#fff}.area h2{font-size:44px;line-height:1.1}.area h2 span{color:#48b8ff}.area p{color:#d8e4ee}.area-grid{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center}.map-card{background:#fff;border-radius:14px;overflow:hidden}.map-card iframe{width:100%;height:350px;border:0;display:block}
.realisations{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.realisations img{width:100%;height:240px;object-fit:cover;border-radius:12px;display:block}
.cta{padding:35px 0;background:linear-gradient(90deg,var(--red),var(--orange));color:#fff}.cta-inner{display:flex;justify-content:space-between;align-items:center;gap:20px}.cta h2{margin:0;font-size:28px}
.contact-grid{display:grid;grid-template-columns:1fr 1.25fr;gap:35px}.contact-card,.form-card{border:1px solid var(--line);border-radius:14px;padding:30px;background:#fff;box-shadow:0 8px 28px rgba(6,42,77,.06)}.contact-line{margin:18px 0}.contact-line strong{display:block}.contact-line a{color:var(--blue);font-weight:800}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px}.field{margin-bottom:17px}.field.full{grid-column:1/-1}.field label{display:block;font-weight:800;margin-bottom:6px}.field input,.field textarea,.field select{width:100%;border:1px solid #cfd8e3;border-radius:8px;padding:12px;font:inherit}.field textarea{min-height:145px;resize:vertical}.consent{font-size:13px;color:var(--muted)}.notice{padding:14px 16px;border-radius:9px;background:#eef8ee;border:1px solid #c9e4ca;color:#1f5b26;margin-bottom:18px}.error{background:#fff1f0;border-color:#f1c1bd;color:#8a1e19}
.footer{background:#061f3b;color:#fff;padding:55px 0 20px}.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:35px}.footer img{width:155px;background:#fff;border-radius:4px}.footer h4{margin-top:0}.footer a{display:block;color:#dbe7f0;margin:7px 0}.copyright{border-top:1px solid rgba(255,255,255,.15);margin-top:35px;padding-top:18px;color:#aebdca;display:flex;justify-content:space-between;font-size:13px}
.page-hero{background:var(--navy);color:#fff;padding:75px 0}.page-hero h1{font-size:52px;line-height:1.1;margin:0}.legal{max-width:850px}.legal h2{margin-top:35px}
@media(max-width:1050px){.services{grid-template-columns:repeat(3,1fr)}.nav{gap:13px}.header-phone{padding:10px 12px}}
@media(max-width:760px){.topbar .container{display:block;text-align:center}.header-inner{min-height:76px}.brand img{width:135px}.menu-toggle{display:block;margin-left:auto}.nav{display:none;position:absolute;left:0;right:0;top:76px;background:#fff;box-shadow:0 12px 20px rgba(6,42,77,.13);padding:18px;flex-direction:column;align-items:flex-start}.nav.open{display:flex}.header-phone{font-size:0;padding:9px 12px}.header-phone:before{content:"☎";font-size:20px}.hero{min-height:650px}.hero h1{font-size:44px}.quick{margin-top:-30px}.quick-grid{grid-template-columns:1fr 1fr}.quick-item{border:0;margin:4px 0}.services{grid-template-columns:1fr 1fr}.two-col,.area-grid,.contact-grid{grid-template-columns:1fr}.realisations{grid-template-columns:1fr 1fr}.footer-grid{grid-template-columns:1fr 1fr}.cta-inner{display:block}.cta .btn{margin-top:15px}}
@media(max-width:480px){.services,.quick-grid,.realisations,.footer-grid,.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.section{padding:65px 0}.section-title h2,.area h2{font-size:34px}.photo img{height:330px}.copyright{display:block}}

/* Design final AB Plomberie — inspiré de la maquette validée */
:root{--navy:#061f46;--blue:#075bd6;--ink:#111d33;--muted:#5f6b7c;--line:#e6ebf2;--bg:#f8fafc;--white:#fff}
body{font-family:Arial,Helvetica,sans-serif;color:var(--ink)}
.topbar{background:#061f46}.topbar-inner{min-height:43px;display:flex;align-items:center;justify-content:space-between;font-size:14px}.topbar a{color:#fff}.site-header{position:relative;box-shadow:0 2px 12px rgba(0,0,0,.05)}.header-inner{min-height:112px}.brand{display:flex;align-items:center;gap:12px}.brand img{width:72px;height:72px;object-fit:contain;background:#fff}.brand-copy{display:flex;flex-direction:column}.brand-copy strong{font-size:27px;line-height:1;color:#0c2044;letter-spacing:.2px}.brand-copy small{margin-top:7px;color:#667085;font-size:12px;letter-spacing:.7px}.nav{font-size:16px;gap:29px}.header-phone{background:#075bd6;padding:15px 22px;border-radius:8px;font-size:16px}
.hero{min-height:440px;background:#fff}.hero-grid{display:grid;grid-template-columns:1fr 1.05fr;min-height:440px}.hero-copy{display:flex;flex-direction:column;justify-content:center;padding:50px 35px 50px 0}.hero .eyebrow{color:#075bd6}.hero h1{color:#111d33;font-size:48px;line-height:1.12;margin:12px 0 20px;max-width:650px}.hero h1 span{color:#111d33}.hero p{color:#4e5b6f;max-width:680px;font-size:18px;line-height:1.65}.hero-photo{background:#fff url("assets/accueil-complete.png") center center/contain no-repeat}.actions{margin:24px 0 0}.btn-blue{background:#075bd6}.btn-outline-blue{border:1.5px solid #075bd6;color:#075bd6;background:#fff}.benefits{background:#061f46;color:#fff}.benefits-grid{display:grid;grid-template-columns:repeat(4,1fr);padding:22px 0}.benefits-grid>div{display:flex;align-items:center;gap:14px;padding:8px 35px;border-right:1px solid rgba(255,255,255,.25)}.benefits-grid>div:last-child{border-right:0}.benefits-grid b{font-size:30px;font-weight:400}.benefits-grid span{display:flex;flex-direction:column}.benefits-grid strong{font-size:16px}.benefits-grid small{font-size:13px;color:#dce6f5;margin-top:2px}.section{padding:70px 0}.centered{text-align:center;margin-left:auto;margin-right:auto}.centered .eyebrow{color:#075bd6}.section-title h2{font-size:34px}.services.four{grid-template-columns:repeat(5,1fr);gap:20px}.service-simple{min-height:170px;display:flex;align-items:flex-start;gap:18px;padding:25px;background:#fff;border:1px solid #e8edf4;border-radius:14px;box-shadow:0 6px 22px rgba(10,31,70,.06)}.service-simple:hover{transform:none}.service-icon{font-size:34px;color:#075bd6;line-height:1}.service-simple h3{font-size:18px;margin:0 0 8px}.service-simple p{font-size:14px;line-height:1.6}.footer img{width:130px;height:auto;background:#fff}.footer{background:#061f46}
@media(max-width:1050px){.nav{gap:15px}.brand-copy strong{font-size:22px}.services.four{grid-template-columns:repeat(3,1fr)}.benefits-grid{grid-template-columns:repeat(2,1fr)}.benefits-grid>div:nth-child(2){border-right:0}.benefits-grid>div:nth-child(-n+2){border-bottom:1px solid rgba(255,255,255,.25)}}
@media(max-width:760px){.topbar-inner{display:none}.header-inner{min-height:78px}.brand img{width:55px;height:55px}.brand-copy strong{font-size:19px}.brand-copy small{font-size:9px}.hero-grid{grid-template-columns:1fr}.hero-photo{min-height:260px;order:-1}.hero-copy{padding:45px 0}.hero h1{font-size:39px}.benefits-grid{grid-template-columns:1fr 1fr}.benefits-grid>div{padding:14px}.services.four{grid-template-columns:repeat(2,1fr)}.header-phone{font-size:0;padding:11px 13px}.header-phone span{display:none}.header-phone:before{content:"☎";font-size:20px}}
@media(max-width:480px){.benefits-grid{grid-template-columns:1fr}.benefits-grid>div{border-right:0!important;border-bottom:1px solid rgba(255,255,255,.2)!important}.benefits-grid>div:last-child{border-bottom:0!important}}

@media(max-width:480px){.services.four{grid-template-columns:1fr}}

/* Photo différente sur mobile uniquement */
@media(max-width:760px){
  .hero-photo{
    background:#fff url("assets/accueil-complete.png") center center/contain no-repeat;
  }
}


/* Ajustements PC : téléphone sur une seule ligne et icônes de services bien visibles */
@media(min-width:761px){
  .header-phone{
    white-space:nowrap;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:185px;
    padding:15px 18px;
    font-size:16px;
    line-height:1.2;
    flex-shrink:0;
  }
}
.service-icon{
  display:flex;
  align-items:center;
  justify-content:center;
  width:48px;
  min-width:48px;
  height:48px;
  font-size:38px;
  line-height:1;
}
.service-icon.wrench{font-family:"Segoe UI Emoji","Apple Color Emoji","Noto Color Emoji",sans-serif;}
.service-icon.snowflake{font-family:Arial,Helvetica,sans-serif;font-size:42px;font-weight:700;color:#075bd6;}

/* Clé à molette plus petite et entièrement visible sur PC */
@media(min-width:761px){
  .service-icon.wrench{font-size:28px; transform:scale(.9);}
}


/* Correctif final PC : cadre téléphone toujours sur une seule ligne */
@media (min-width: 761px){
  .header-inner{flex-wrap:nowrap;}
  .header-phone{
    white-space:nowrap !important;
    min-width:190px;
    flex:0 0 auto;
    display:inline-flex;
  }
  .header-phone span{white-space:nowrap !important;}
}
