:root{
  --heches-red:#8b0d18;
  --heches-red-dark:#650a12;
  --heches-gold:#d4af37;
  --heches-gold-dark:#b8860b;
  --heches-white:#fff;
}
/* Correctifs mobiles pages intérieures — Heches Couverture */
@media (max-width: 991px) {
  /* Le bandeau image reste un bloc autonome. */
  body.heches-site .inner-hero-shell.hero-with-form .inner-hero {
    min-height: 520px !important;
    padding: 42px 0 48px !important;
    overflow: hidden !important;
    display: flex !important;
    align-items: center !important;
  }
  body.heches-site .inner-hero-shell.hero-with-form .inner-hero-grid {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    padding: 0 16px !important;
    margin: 0 auto !important;
  }
  body.heches-site .inner-hero-shell.hero-with-form .inner-hero-text {
    width: calc(100% - 8px) !important;
    max-width: 620px !important;
    margin: 0 auto 0 0 !important;
    padding: 24px 20px !important;
    transform: none !important;
    left: auto !important;
    right: auto !important;
    box-sizing: border-box !important;
    overflow-wrap: anywhere !important;
  }
  body.heches-site .inner-hero-text h1,
  body.heches-site .inner-hero-text p,
  body.heches-site .inner-hero-text li,
  body.heches-site .inner-hero-text span {
    max-width: 100% !important;
    overflow-wrap: anywhere !important;
  }
  body.heches-site .inner-hero-text h1 {
    font-size: clamp(27px, 7vw, 42px) !important;
    line-height: 1.08 !important;
  }
  body.heches-site .inner-hero-text .hero-checks {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 8px !important;
  }
  body.heches-site .inner-hero-desktop-picture { display: none !important; }
  body.heches-site .inner-hero-mobile-picture {
    display: block !important;
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    overflow: hidden !important;
  }
  body.heches-site .inner-hero-mobile-picture img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center center !important;
  }

  /* Formulaire déplacé sous le bandeau par JS, centré et sans débordement. */
  body.heches-site .inner-hero-shell.hero-with-form > .hero-form-zone.mobile-detached {
    position: relative !important;
    z-index: 3 !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 24px 14px 38px !important;
    background: #fff !important;
    transform: none !important;
    box-sizing: border-box !important;
  }
  body.heches-site .inner-hero-shell.hero-with-form > .hero-form-zone.mobile-detached .modern-form-card {
    width: 100% !important;
    max-width: 720px !important;
    margin: 0 auto !important;
    padding: 24px 18px !important;
    border-radius: 16px !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
  }
  body.heches-site .hero-form-zone.mobile-detached .ajax-contact-form {
    margin-left: -7px !important;
    margin-right: -7px !important;
  }
  body.heches-site .hero-form-zone.mobile-detached .ajax-contact-form > [class*="col-"] {
    padding-left: 7px !important;
    padding-right: 7px !important;
    min-width: 0 !important;
  }
  body.heches-site .hero-form-zone.mobile-detached .form-control,
  body.heches-site .hero-form-zone.mobile-detached .vdo-category-select,
  body.heches-site .hero-form-zone.mobile-detached textarea,
  body.heches-site .hero-form-zone.mobile-detached select {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
  }
  body.heches-site .hero-form-zone.mobile-detached #js-contact-btn {
    width: 100% !important;
    min-height: 56px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    padding: 0 14px !important;
    line-height: 1.15 !important;
  }
  body.heches-site .hero-form-zone.mobile-detached .captcha-col {
    width: 100% !important;
    max-width: 100% !important;
    overflow: visible !important;
  }

  /* Seule la page courante reçoit l'état actif. */
  body.heches-site .site-header-redesign nav > ul > li:not(.active):not(.current-menu-item) > a,
  body.heches-site .site-header-redesign nav > ul > li:not(.active):not(.current-menu-item) > a[href="nos-realisations.html"] {
    background: transparent !important;
    border-color: transparent !important;
    box-shadow: none !important;
    color: #fff !important;
  }
  body.heches-site .site-header-redesign nav > ul > li.active > a,
  body.heches-site .site-header-redesign nav > ul > li.current-menu-item > a {
    color: #fff !important;
    background: linear-gradient(180deg,#d4af37 0%,var(--heches-gold) 100%) !important;
    border-color: var(--heches-gold-dark) !important;
  }
}

@media (max-width: 575px) {
  body.heches-site .inner-hero-shell.hero-with-form .inner-hero {
    min-height: 500px !important;
    padding: 34px 0 42px !important;
  }
  body.heches-site .inner-hero-shell.hero-with-form .inner-hero-grid { padding: 0 12px !important; }
  body.heches-site .inner-hero-shell.hero-with-form .inner-hero-text {
    width: 100% !important;
    padding: 20px 16px !important;
  }
  body.heches-site .inner-hero-shell.hero-with-form > .hero-form-zone.mobile-detached { padding: 18px 10px 30px !important; }
  body.heches-site .inner-hero-shell.hero-with-form > .hero-form-zone.mobile-detached .modern-form-card { padding: 20px 14px !important; }
}
