/* Bannière d'accueil : photo contenue dans la largeur utile de la page. */
.hero-chantier{background:#fff!important;min-height:657px!important;position:relative!important;overflow:hidden!important;isolation:isolate!important;clip-path:inset(0)!important}
.hero-chantier .hero-photo{display:block!important;position:absolute!important;inset:0 0 0 48%!important;left:48%!important;right:0!important;top:0!important;bottom:0!important;width:52%!important;height:100%!important;max-width:none!important;max-height:none!important;background-image:url('../images/photo-chantier.jpg?v=17')!important;background-repeat:no-repeat!important;background-position:center center!important;background-size:cover!important;background-color:transparent!important;opacity:.52!important;z-index:0!important}
.hero-chantier::after{content:""!important;position:absolute!important;inset:0!important;background:linear-gradient(90deg,rgba(255,255,255,.97) 0%,rgba(255,255,255,.91) 38%,rgba(255,255,255,.26) 68%,rgba(255,255,255,.04) 100%)!important;z-index:0!important;pointer-events:none!important}
.hero-chantier .hero-content{position:relative!important;z-index:1!important}

/* Ordinateur : visuel moins envahissant, décalé vers la gauche et contenu dans la grille. */
@media(min-width:901px){
  .hero-chantier .hero-photo{
    inset:36px auto 36px max(430px,calc((100% - 1160px)/2 + 500px))!important;
    left:max(430px,calc((100% - 1160px)/2 + 500px))!important;
    right:auto!important;
    top:36px!important;
    bottom:36px!important;
    width:min(620px,calc(58% - 20px))!important;
    height:auto!important;
    border-radius:24px!important;
    background-position:center center!important;
    opacity:.44!important;
  }
  .hero-chantier::after{background:linear-gradient(90deg,rgba(255,255,255,.99) 0%,rgba(255,255,255,.94) 39%,rgba(255,255,255,.42) 61%,rgba(255,255,255,.08) 100%)!important}
  .hero-chantier .hero-content{padding-right:600px!important}
}

@media(min-width:621px) and (max-width:900px){
  .hero-chantier .hero-photo{inset:24px auto 24px 42%!important;left:42%!important;right:auto!important;width:55%!important;height:auto!important;border-radius:20px!important;opacity:.24!important}
}

@media(max-width:620px){
  .hero-chantier{min-height:555px!important}
  .hero-chantier .hero-photo{inset:24px 0 24px 38%!important;left:38%!important;right:0!important;top:24px!important;bottom:24px!important;width:62%!important;height:auto!important;background-size:cover!important;background-position:center center!important;opacity:.16!important}
  .hero-chantier::after{background:linear-gradient(90deg,rgba(255,255,255,.97) 0%,rgba(255,255,255,.86) 48%,rgba(255,255,255,.35) 100%)!important}
  .hero-chantier .hero-content{padding-top:62px!important;padding-bottom:40px!important}
}

.home-trust{background:#071d3d;color:#fff;padding:26px 0;border-top:3px solid #d49a16}
.home-trust-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:rgba(255,255,255,.2)}
.home-trust-grid>div{display:flex;flex-direction:column;gap:4px;text-align:center;padding:18px 14px;background:#071d3d}
.home-trust-grid strong{color:#e2aa2d;font-size:1.15rem}
.home-trust-grid span{font-size:.9rem;color:rgba(255,255,255,.86)}
.home-final-cta .cta{align-items:center}
.home-final-cta .cta p{max-width:700px}
.home-final-cta .actions{display:flex;gap:12px;flex-wrap:wrap;justify-content:center}
@media(max-width:780px){.home-trust-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:460px){.home-trust-grid{grid-template-columns:1fr}.home-final-cta .actions{width:100%}.home-final-cta .actions .btn{width:100%;text-align:center}}

/* V24 — Titres d'accueil moins imposants, texte mieux équilibré */
.hero-chantier h1{font-size:clamp(2.55rem,3.45vw,3.85rem)!important;line-height:1.08!important}
.hero-chantier .hero-intro{font-size:1.12rem!important;line-height:1.62!important}
#services .section-head h2{font-size:clamp(1.85rem,3vw,2.8rem)!important;line-height:1.12!important}
#services .section-head>p{max-width:520px;line-height:1.75}
#services .card-body p{line-height:1.68}
@media(max-width:620px){
  .hero-chantier h1{font-size:clamp(2.05rem,10vw,2.55rem)!important;line-height:1.08!important}
  .hero-chantier .hero-intro{font-size:1rem!important}
  #services .section-head h2{font-size:clamp(1.75rem,8.5vw,2.1rem)!important}
}
