/* BMTPI V3.4.0 — direction premium consolidée */

:root{
  --bmtpi-red:#e3192b;
  --bmtpi-red-dark:#a90f1b;
  --bmtpi-night:#070a0e;
  --bmtpi-panel:#0e141c;
  --bmtpi-panel-2:#141b24;
  --bmtpi-copy:#d6dbe2;
  --bmtpi-muted:#99a2ae;
}

/* Base : neutralise l'ancien hack de zoom qui causait les découpes. */
@media (min-width:961px){
  html,body{zoom:1!important;width:auto!important;max-width:none!important}
  .shell{width:min(1280px,calc(100% - 64px))}
  .section{padding:92px 0}
  .navin{height:80px}
  .brand-logo{width:215px;max-height:62px;object-fit:contain}
  .links{gap:24px}
  .links a{font-size:12px}
}

/* Focus accessible et cohérent. */
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{
  outline:3px solid rgba(227,25,43,.85);
  outline-offset:3px;
}

/* ===== HOME : HERO DESKTOP — V3.4.4 FRONTAGE ===== */
@media (min-width:961px){
  body[data-home="1"]{background:var(--bmtpi-night)}
  body[data-home="1"] .microbar{background:#05070a}
  body[data-home="1"] .nav{background:rgba(6,9,13,.97);box-shadow:0 16px 46px rgba(0,0,0,.22)}
  body[data-home="1"] .trustbar{display:none!important}

  body[data-home="1"] .hero{
    position:relative!important;
    min-height:680px!important;
    height:clamp(680px,56.25vw,860px)!important;
    max-height:860px!important;
    display:flex!important;
    align-items:center!important;
    overflow:hidden!important;
    background:#06090d!important;
    border-bottom:1px solid rgba(255,255,255,.08)!important;
    isolation:isolate!important;
  }

  body[data-home="1"] .hero-bg{
    position:absolute!important;
    inset:0!important;
    width:100%!important;
    height:100%!important;
    transform:none!important;
    border-radius:0!important;
    background-image:url('/assets/img/hero-frontage-v344.webp')!important;
    background-repeat:no-repeat!important;
    background-size:cover!important;
    background-position:center 56%!important;
    filter:saturate(1.02) contrast(1.04) brightness(.88)!important;
    box-shadow:none!important;
  }
  body[data-home="1"] .hero-bg::before,
  body[data-home="1"] .hero-bg::after{content:none!important}

  body[data-home="1"] .hero::before{
    content:""!important;
    position:absolute!important;
    inset:0!important;
    z-index:1!important;
    pointer-events:none!important;
    background:
      linear-gradient(90deg,rgba(4,7,10,.97) 0%,rgba(4,7,10,.94) 23%,rgba(4,7,10,.79) 37%,rgba(4,7,10,.42) 50%,rgba(4,7,10,.08) 68%,rgba(4,7,10,.02) 100%),
      linear-gradient(180deg,rgba(5,8,12,.08) 0%,rgba(5,8,12,0) 54%,rgba(5,8,12,.42) 100%)!important;
  }
  body[data-home="1"] .hero::after{
    content:""!important;
    position:absolute!important;
    inset:0!important;
    z-index:1!important;
    pointer-events:none!important;
    background:radial-gradient(circle at 75% 55%,rgba(227,25,43,.05),transparent 30%)!important;
  }

  body[data-home="1"] .hero-content{
    position:relative!important;
    z-index:2!important;
    width:100%!important;
    max-width:none!important;
    padding:48px 0 40px!important;
  }
  body[data-home="1"] .hero-content>*{max-width:600px!important}
  body[data-home="1"] .hero .kicker{font-size:10px!important;letter-spacing:.19em!important;color:#f2bdc2!important}
  body[data-home="1"] .hero h1{
    font-size:clamp(58px,5vw,84px)!important;
    line-height:.90!important;
    letter-spacing:-.035em!important;
    margin:18px 0 20px!important;
    text-shadow:0 14px 36px rgba(0,0,0,.46)!important;
  }
  body[data-home="1"] .hero p{
    max-width:560px!important;
    margin:0!important;
    font-size:15px!important;
    line-height:1.62!important;
    color:#eef1f5!important;
    text-shadow:0 2px 14px rgba(0,0,0,.35)!important;
  }
  body[data-home="1"] .hero-single-action{
    display:grid!important;
    grid-template-columns:1.08fr .9fr 1fr!important;
    gap:10px!important;
    max-width:545px!important;
    margin-top:24px!important;
  }
  body[data-home="1"] .hero-single-action .btn{
    min-width:0!important;
    min-height:54px!important;
    padding:0 18px!important;
    border-radius:9px!important;
    font-size:12px!important;
    white-space:nowrap!important;
  }
  body[data-home="1"] .hero-call{box-shadow:0 16px 42px rgba(227,25,43,.30)!important}
  body[data-home="1"] .hero-quote{background:rgba(24,31,40,.92)!important;border-color:rgba(255,255,255,.22)!important;color:#fff!important}
  body[data-home="1"] .hero-wa{background:#159b55!important;border-color:#159b55!important;color:#fff!important}

  body[data-home="1"] .mobile-hero-services{
    display:grid!important;
    width:600px!important;
    max-width:600px!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    margin-top:26px!important;
    padding-top:18px!important;
    border-top:1px solid rgba(255,255,255,.16)!important;
  }
  body[data-home="1"] .mobile-hero-services a{min-width:0!important;padding:0 12px!important}
  body[data-home="1"] .mobile-hero-services a:first-child{padding-left:0!important}
  body[data-home="1"] .mobile-hero-services b{font-size:13px!important}
  body[data-home="1"] .mobile-hero-services a>span:last-child{font-size:9px!important;color:#c0c6ce!important}
  body[data-home="1"] .hero-mobile-script{display:none!important}

  body[data-home="1"] .hero-proof{background:#090e14!important;border-top:1px solid rgba(255,255,255,.07)!important}
  body[data-home="1"] .proof{min-height:78px!important;padding:16px 20px!important}
  body[data-home="1"] .proof b{font-size:19px!important}
  body[data-home="1"] .proof span{font-size:10px!important}
}

@media (min-width:1500px){
  body[data-home="1"] .hero-bg{background-position:center 58%!important}
  body[data-home="1"] .hero-content>*{max-width:630px!important}
}

/* ===== HOME : MÉTIERS ===== */
@media (min-width:961px){
  body[data-home="1"] .section.warm{background:#090d12!important;color:#fff!important;padding:96px 0!important}
  body[data-home="1"] .section.warm .sub{color:#a9b1bc!important}
  body[data-home="1"] .section.warm h2{color:#fff!important}
  body[data-home="1"] .services{grid-template-columns:1.2fr .8fr .8fr;grid-template-rows:300px 300px;gap:16px}
  body[data-home="1"] .service-card{border-radius:20px;border:1px solid rgba(255,255,255,.08);box-shadow:0 22px 60px rgba(0,0,0,.28)}
  body[data-home="1"] .service-card img{filter:saturate(.94) contrast(1.04)}
  body[data-home="1"] .service-card::after{background:linear-gradient(0deg,rgba(5,7,10,.98),rgba(5,7,10,.06) 68%)}
  body[data-home="1"] .service-copy{left:25px;right:25px;bottom:24px}
  body[data-home="1"] .service-copy h3{font-size:28px}
}

/* ===== HOME : CABINE PEINTURE ===== */
@media (min-width:961px){
  body[data-home="1"] .feature{
    width:min(1420px,calc(100% - 64px))!important;
    min-height:620px!important;
    margin:92px auto!important;
    grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr)!important;
    border-radius:28px!important;
    overflow:hidden!important;
    background:#0a0f15!important;
    border:1px solid rgba(255,255,255,.08)!important;
    box-shadow:0 30px 80px rgba(0,0,0,.28)!important;
  }
  body[data-home="1"] .feature-photo{
    min-height:620px!important;
    position:relative!important;
    background-image:url('/assets/img/paint-booth.webp')!important;
    background-size:cover!important;
    background-position:center 34%!important;
    filter:saturate(.94) contrast(1.03)!important;
  }
  body[data-home="1"] .feature-photo::after{
    content:""!important;
    position:absolute!important;
    inset:0!important;
    background:linear-gradient(90deg,rgba(7,10,14,.04) 0%,rgba(7,10,14,.02) 66%,rgba(7,10,14,.62) 100%)!important;
  }
  body[data-home="1"] .feature-photo::before{
    content:"CABINE OMIA · HÉLIA 320";
    position:absolute;
    left:24px;
    bottom:24px;
    z-index:2;
    padding:10px 14px;
    border-radius:999px;
    background:rgba(7,10,14,.82);
    border:1px solid rgba(255,255,255,.15);
    color:#fff;
    font-size:10px;
    font-weight:900;
    letter-spacing:.11em;
    text-transform:uppercase;
    backdrop-filter:blur(8px);
  }
  body[data-home="1"] .feature-text{
    min-width:0!important;
    padding:62px clamp(42px,4.5vw,72px)!important;
    background:linear-gradient(145deg,#111821,#090d12)!important;
    overflow:hidden!important;
  }
  body[data-home="1"] .feature-text h2{font-size:clamp(48px,4vw,66px)!important;line-height:.96!important}
  body[data-home="1"] .feature-text p{font-size:14px;line-height:1.68;color:#aeb7c2;max-width:560px}
  body[data-home="1"] .spec-list{margin:24px 0 28px!important}
  body[data-home="1"] .spec{
    display:grid!important;
    grid-template-columns:minmax(115px,.55fr) minmax(0,1fr)!important;
    align-items:center!important;
    gap:24px!important;
    min-width:0!important;
    padding:14px 0!important;
  }
  body[data-home="1"] .spec b{font-size:12px!important;white-space:nowrap}
  body[data-home="1"] .spec span{
    min-width:0!important;
    text-align:right!important;
    color:#d7dce4!important;
    font-size:12px!important;
    line-height:1.35!important;
    white-space:normal!important;
    overflow-wrap:anywhere!important;
  }
}

/* ===== AVANT / APRÈS ===== */
.ba-compare{max-width:1120px!important}
.ba-stage{border-radius:24px!important;background:#080b10!important;border:1px solid rgba(255,255,255,.12)!important}
.ba-after-wrap{width:100%!important;clip-path:inset(0 calc(100% - var(--split)) 0 0)!important;transition:clip-path .02s linear}
.ba-after-wrap .ba-after{width:100%!important;max-width:none!important;height:100%!important}
.ba-img{object-fit:cover!important;object-position:center 48%!important}
.ba-handle{left:var(--split)!important;background:#fff!important;width:2px!important}
.ba-handle span{background:#fff!important;color:#111!important;border-color:var(--bmtpi-red)!important}
.ba-range{cursor:ew-resize!important}
.ba-help{color:#aeb6c1!important}

/* ===== GALERIE / COULISSES ===== */
@media (min-width:961px){
  body[data-home="1"] .backstage-section{background:#070a0e!important;padding:94px 0!important;color:#fff!important}
  body[data-home="1"] .backstage-section h2{color:#fff!important}
  body[data-home="1"] .gallery-strip{grid-template-columns:1.25fr .9fr .95fr;gap:16px}
  body[data-home="1"] .gallery-strip figure{height:360px!important;border-radius:20px!important;border:1px solid rgba(255,255,255,.09);box-shadow:0 18px 48px rgba(0,0,0,.28)}
  body[data-home="1"] .gallery-strip img{filter:saturate(.95) contrast(1.03)}
}

/* ===== OCCASIONS ===== */
@media (min-width:961px){
  body[data-home="1"] .vehicles-sec{background:#f4f2ed!important;padding:96px 0!important}
  .vehicle{border-radius:18px!important;overflow:hidden!important;box-shadow:0 14px 42px rgba(12,16,22,.08)!important}
  .vehicle:hover{transform:translateY(-5px)!important;box-shadow:0 22px 60px rgba(12,16,22,.13)!important}
  .vehicle-photo{height:250px!important}
}

/* ===== FAQ ===== */
body[data-home="1"] .faq details{transition:border-color .22s,transform .22s,background .22s}
@media (hover:hover) and (pointer:fine){body[data-home="1"] .faq details:hover{transform:translateY(-2px);border-color:rgba(227,25,43,.35)!important}}

/* ===== PAGES INTERNES ===== */
@media (min-width:961px){
  body:not([data-home="1"]){background:#f4f3f0}
  .page-hero{padding:78px 0 66px!important;background:
    radial-gradient(circle at 82% 24%,rgba(227,25,43,.13),transparent 26%),
    linear-gradient(135deg,#070a0e,#111821)!important;border-bottom:1px solid rgba(255,255,255,.08)}
  .page-hero h1{font-size:clamp(54px,5vw,78px)!important;line-height:.94!important}
  .page-hero p{font-size:14px;max-width:700px}
  .content-grid{gap:56px!important}
  .rounded-photo{border-radius:22px!important;box-shadow:0 22px 60px rgba(12,16,22,.14)!important}
  .rounded-photo img{height:520px!important}
  .form,.contact-card,.admin-card{border-radius:20px!important}
  .footer{padding-top:52px!important}
}

/* Barre flottante WhatsApp : plus discrète sur PC. */
@media (min-width:961px){
  .whatsapp-float{right:22px!important;bottom:20px!important;box-shadow:0 12px 34px rgba(0,0,0,.22)!important}
}

/* Mobile : aucune régression — on ne touche qu'à quelques détails sûrs. */
@media (max-width:960px){
  .ba-after-wrap{clip-path:inset(0 calc(100% - var(--split)) 0 0)!important}
  .ba-after-wrap .ba-after{width:100%!important;max-width:none!important}
}


/* V3.4.4 — mobile: preserve validated composition, avoid CTA overload */
@media (max-width:960px){
  body[data-home="1"] .hero-call,
  body[data-home="1"] .hero-wa{display:none!important}
  body[data-home="1"] .hero-single-action{display:flex!important;max-width:none!important}
  body[data-home="1"] .hero-quote{width:100%!important;background:var(--red)!important;border-color:var(--red)!important;color:#fff!important}
}
