/* Hero accueil Gramo v2 — photo terrain plein cadre, identité éditoriale. */
.home-page .site-header{
  position:absolute;inset:0 0 auto;z-index:60;
  color:#fff;background:linear-gradient(180deg,rgba(3,9,6,.72),rgba(3,9,6,.18) 58%,rgba(3,9,6,0));
  border:0;box-shadow:none;backdrop-filter:none
}
.home-page .brand-name{font-family:Chivo,sans-serif;font-weight:800;letter-spacing:-.045em;text-transform:lowercase}
.home-page .brand-name{color:#fff;text-shadow:0 1px 12px rgba(0,0,0,.4)}
.home-page .brand img{filter:none;opacity:1;box-shadow:0 2px 12px rgba(0,0,0,.35)}
.home-page .site-nav a{color:#fff;text-shadow:0 1px 14px rgba(0,0,0,.32)}
.home-page .site-nav a:not(.button):hover{color:var(--grain)}
.home-page .nav-cta{border-color:rgba(255,255,255,.55);background:rgba(4,12,8,.28);color:#fff;backdrop-filter:blur(9px)}
.home-page .nav-toggle{background:rgba(5,14,9,.5);border-color:rgba(255,255,255,.5);backdrop-filter:blur(6px)}

.home-hero-v2{
  position:relative;display:block;min-height:max(760px,100svh);overflow:hidden;
  color:#fff;background:#10130e;isolation:isolate
}
.home-hero-v2::before,.home-hero-v2::after{display:none}
.home-hero-photo,.home-hero-photo img{position:absolute;inset:0;width:100%;height:100%}
.home-hero-photo{z-index:-3;margin:0}
.home-hero-photo img{display:block;object-fit:cover;object-position:center 48%}
.home-hero-shade{
  position:absolute;inset:0;z-index:-2;
  background:
    linear-gradient(180deg,rgba(3,8,5,.34) 0%,rgba(3,8,5,.04) 32%,rgba(3,8,5,.12) 54%,rgba(3,8,5,.78) 100%),
    linear-gradient(90deg,rgba(3,8,5,.16),transparent 43%,rgba(3,8,5,.18))
}
.home-hero-word{
  position:absolute;z-index:-1;top:clamp(104px,13.5vh,148px);left:50%;
  width:max-content;transform:translateX(-50%);
  font:850 clamp(9rem,25vw,23rem)/.72 Chivo,sans-serif;
  letter-spacing:-.085em;color:#fff;text-shadow:0 8px 45px rgba(0,0,0,.22);
  user-select:none
}
.home-hero-stage{
  position:relative;z-index:2;display:flex;justify-content:flex-end;align-items:flex-end;
  min-height:max(760px,100svh);padding-top:clamp(300px,45vh,470px);padding-bottom:34px
}
.home-hero-copy{
  width:min(100%,610px);padding:26px 28px 28px;
  border:1px solid rgba(255,255,255,.24);border-radius:20px;
  background:rgba(5,14,9,.73);box-shadow:0 24px 70px rgba(0,0,0,.26);
  backdrop-filter:blur(13px);-webkit-backdrop-filter:blur(13px)
}
.home-hero-copy .eyebrow{margin:0 0 12px;color:var(--grain);font-weight:850;letter-spacing:.13em}
.home-hero-copy h1{max-width:560px;margin:0 0 14px;font:800 clamp(2.15rem,4vw,4rem)/.98 Chivo,sans-serif;letter-spacing:-.055em}
.home-hero-copy .lead{max-width:530px;margin:0;color:rgba(255,255,255,.78);font-size:clamp(1rem,1.25vw,1.17rem);line-height:1.5}
.home-hero-copy .hero-actions{margin-top:22px}
.home-hero-secondary{border-color:rgba(255,255,255,.6);background:transparent;color:#fff}
.home-hero-secondary:hover{background:#fff;color:var(--ink)}
.home-hero-v2 .hero-caption{right:auto;bottom:8px;left:12px;z-index:4;color:rgba(255,255,255,.42)}

@media(max-width:980px){
  .home-page .site-nav{background:rgba(252,252,247,.98);box-shadow:0 20px 45px rgba(0,0,0,.2)}
  .home-page .site-nav a{color:var(--ink);text-shadow:none}
  .home-page .site-nav .nav-cta{background:var(--ink);color:#fff;border-color:var(--ink)}
  .home-page .nav-toggle{border-color:rgba(255,255,255,.6)}
  .home-page .nav-toggle span,.home-page .nav-toggle::before,.home-page .nav-toggle::after{background:#fff}
  .home-hero-stage{padding-top:clamp(310px,48vh,460px)}
  .home-hero-copy{width:min(100%,650px)}
}

@media(max-width:680px){
  .home-page .brand-name{font-size:1.3rem}
  .home-hero-v2{min-height:980px;display:block;background:#10130e}
  .home-hero-photo,.home-hero-photo img{height:100%;inset:0}
  .home-hero-photo img{object-position:center top}
  .home-hero-word{top:106px;font-size:clamp(6.5rem,30vw,8.5rem);letter-spacing:-.095em}
  .home-hero-shade{display:block;background:linear-gradient(180deg,rgba(3,8,5,.2) 0%,rgba(3,8,5,0) 28%,rgba(3,8,5,.28) 50%,rgba(3,8,5,.94) 72%,#07140d 100%)}
  .home-hero-stage{display:flex;flex-direction:column;justify-content:flex-end;min-height:980px;padding-top:390px;padding-bottom:30px}
  .home-hero-copy{width:100%;padding:22px 20px 23px;border-radius:17px;background:rgba(5,14,9,.78)}
  .home-hero-copy h1{font-size:clamp(2.15rem,10.5vw,3rem);line-height:1.02}
  .home-hero-copy .lead{font-size:1rem}
  .home-hero-copy .hero-actions{display:grid;grid-template-columns:1fr;margin-top:19px}
  .home-hero-copy .button{width:100%}

  .home-hero-v2 .hero-caption{display:none}
}

@media(max-width:390px){
  .home-hero-v2,.home-hero-stage{min-height:940px}
  .home-hero-word{font-size:28vw}
  .home-hero-copy{padding:19px 17px 20px}
}

/* Hero « capteur vedette » : le capteur occupe la gauche, le mot se range à droite. */
@media(min-width:981px){
  .home-hero-sensor .home-hero-photo img{object-position:center 46%}
  .home-hero-sensor .home-hero-word{
    left:auto;right:clamp(22px,3.4vw,58px);transform:none;text-align:right;
    top:clamp(96px,12vh,138px);font-size:clamp(6.5rem,16.5vw,16rem);letter-spacing:-.092em
  }
  .home-hero-sensor .home-hero-shade{
    background:
      linear-gradient(180deg,rgba(3,8,5,.34) 0%,rgba(3,8,5,.05) 34%,rgba(3,8,5,.1) 56%,rgba(3,8,5,.74) 100%),
      linear-gradient(90deg,rgba(3,8,5,.5),rgba(3,8,5,.08) 38%,rgba(3,8,5,.22))
  }
}
