/* ============================================
   MIDDLF - Composant : Hero plein ecran
   ============================================ */
.hero-block{
  position:relative;
  height:calc(100vh - var(--site-header-height));
  min-height:500px;
  margin-top:var(--site-header-height);
  overflow:hidden;
}

.page-hero{position:relative; height:100%; display:flex; align-items:flex-end;}

.hero-slider{position:absolute; inset:0;}

.hero-bg{
  position:absolute; inset:0;
  background:var(--green-tint);
  background-size:cover;
  background-position:center;
}

.hero-slider .hero-bg{
  opacity:0;
  transform:scale(1.02);
  transition:opacity .9s ease, transform 6s ease;
}

.hero-slider .hero-bg.is-active{
  opacity:1;
  transform:scale(1);
}

.hero-bg::before{
  content:'';
  position:absolute;
  inset:0;
  background:repeating-linear-gradient(135deg, rgba(22,75,59,0.10) 0px, rgba(22,75,59,0.10) 1px, transparent 1px, transparent 16px);
}

.hero-bg.has-photo::before{display:none;}

.hero-image-label{
  position:absolute; top:50%; left:50%; transform:translate(-50%,-50%);
  font-family:'IBM Plex Mono', monospace; font-size:12px; color:var(--green);
  background:#fff; border:1px solid var(--line); padding:6px 14px; border-radius:2px;
  text-align:center; max-width:80%;
}

.hero-overlay{
  position:absolute;
  inset:0;
  background:
    linear-gradient(180deg, rgba(9,28,22,0.14) 0%, rgba(9,28,22,0.06) 30%, rgba(9,28,22,0.80) 100%),
    linear-gradient(90deg, rgba(9,28,22,0.28) 0%, rgba(9,28,22,0.16) 34%, rgba(9,28,22,0.04) 68%, rgba(9,28,22,0.02) 100%);
}

body[data-page="accueil"] .hero-overlay{
  background:
    linear-gradient(180deg, rgba(9,28,22,0.10) 0%, rgba(9,28,22,0.02) 24%, rgba(9,28,22,0.56) 100%),
    linear-gradient(90deg, rgba(9,28,22,0.22) 0%, rgba(9,28,22,0.14) 34%, rgba(9,28,22,0.05) 62%, rgba(9,28,22,0.02) 100%);
}

.hero-content{position:relative; z-index:2; padding-bottom:72px; color:#fff;}
.hero-eyebrow{
  font-family:'IBM Plex Mono', monospace; font-size:12px; letter-spacing:0.08em;
  text-transform:uppercase; color:#F6D36A; margin-bottom:14px; display:block;
  text-shadow:0 2px 14px rgba(0,0,0,0.45);
}
.hero-h1{
  font-size:48px; line-height:1.08; letter-spacing:-0.01em; margin-bottom:10px; color:#fff;
  text-shadow:0 6px 24px rgba(0,0,0,0.34);
}
.hero-h2{
  font-family:'Inter', sans-serif; font-weight:600; font-size:17px; color:#F5F8F7; margin-bottom:20px;
  text-shadow:0 4px 18px rgba(0,0,0,0.32);
}
.hero-desc{
  font-size:14px;
  color:#EEF5F2;
  max-width:560px;
  padding-top:16px;
  border-top:1px solid rgba(255,255,255,0.42);
  text-shadow:0 4px 18px rgba(0,0,0,0.30);
}

body[data-page="accueil"] .hero-content{
  max-width:640px;
  padding-bottom:48px;
}

body[data-page="accueil"] .hero-h2{margin-bottom:0;}

@media (max-width:800px){
  .hero-h1{font-size:30px;}
  .hero-block{height:calc(100vh - var(--site-header-height));}
  .hero-content{padding-bottom:56px;}
  body[data-page="accueil"] .hero-content{padding-bottom:42px; max-width:100%;}
  body[data-page="accueil"] .hero-overlay{
    background:
      linear-gradient(180deg, rgba(9,28,22,0.08) 0%, rgba(9,28,22,0.02) 18%, rgba(9,28,22,0.58) 100%),
      linear-gradient(180deg, rgba(9,28,22,0.12) 0%, rgba(9,28,22,0.04) 55%);
  }
}
