/* =====================================================
   LUNI HUNT — amélioration visuelle commune
   Animations, photos immersives, micro-interactions
   ===================================================== */
:root{
  --lh-ease:cubic-bezier(.2,.7,.2,1);
  --lh-glow:0 18px 60px rgba(217,120,66,.16);
  --lh-photo-1:url('assets/marais-hero.jpg');
  --lh-photo-2:url('assets/marais-aube.jpg');
  --lh-photo-3:url('assets/marais-canards.jpg');
  --lh-photo-4:url('assets/photos/gabion-nuit.jpg');
  --lh-photo-5:url('assets/photos/appelants.jpg');
  --lh-photo-6:url('assets/photos/roseaux.jpg');
}
html{scroll-behavior:smooth}
body{background-attachment:fixed}
body::before{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  z-index:1;
  background:
    radial-gradient(70% 45% at 15% 5%, rgba(217,120,66,.055), transparent 62%),
    radial-gradient(60% 45% at 85% 10%, rgba(155,194,214,.045), transparent 66%),
    linear-gradient(180deg, transparent 0%, rgba(7,10,5,.18) 100%);
  mix-blend-mode:screen;
}
body>*{position:relative;z-index:2}
/* bruit cinématique fin */
body::after{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  z-index:9999;
  opacity:.055;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.55'/%3E%3C/svg%3E");
}

/* HERO plus vivant */
.site-hero-simple,.hero{
  isolation:isolate;
}
.site-hero-simple::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  background:
    linear-gradient(90deg, rgba(14,18,13,.84), rgba(14,18,13,.52) 48%, rgba(14,18,13,.82)),
    var(--lh-photo-1) center/cover no-repeat;
  opacity:.22;
  transform:scale(1.04);
  animation:lhHeroDrift 24s var(--lh-ease) infinite alternate;
  pointer-events:none;
}
.site-hero-simple .wrap{position:relative;z-index:2}
@keyframes lhHeroDrift{
  from{transform:scale(1.04) translate3d(-10px,-6px,0)}
  to{transform:scale(1.10) translate3d(12px,8px,0)}
}
@keyframes lhFloat{
  0%,100%{transform:translateY(0)}
  50%{transform:translateY(-7px)}
}
@keyframes lhPulseDot{
  0%,100%{box-shadow:0 0 0 4px rgba(217,120,66,.18)}
  50%{box-shadow:0 0 0 10px rgba(217,120,66,.04)}
}
.banner.amber,.pill .dot,.nav ul a.active::before{animation:lhPulseDot 2.2s ease-in-out infinite}

/* Scroll reveal harmonisé */
.reveal,.lh-reveal{
  opacity:0;
  transform:translateY(28px);
  transition:opacity .85s var(--lh-ease), transform .85s var(--lh-ease), filter .85s var(--lh-ease);
  filter:blur(4px);
}
.reveal.in,.lh-reveal.in{
  opacity:1;
  transform:none;
  filter:none;
}
.reveal.d1{transition-delay:.08s}.reveal.d2{transition-delay:.16s}.reveal.d3{transition-delay:.24s}

/* Cartes plus tactiles */
.choice-card,.tool-card,.tool-big,.article,.panel-card,.stat,.group-card,.member-card,.nat-card,.metric,.home-top-card,.home-idea-card,.ideas-home-panel{
  transition:transform .25s var(--lh-ease), border-color .25s var(--lh-ease), background .25s var(--lh-ease), box-shadow .25s var(--lh-ease), filter .25s var(--lh-ease);
}
.choice-card:hover,.tool-card:hover,.tool-big:hover,.article:hover,.panel-card:hover,.stat:hover,.group-card:hover,.nat-card:hover,.home-top-card:hover,.home-idea-card:hover{
  transform:translateY(-4px);
  box-shadow:var(--lh-glow);
  border-color:rgba(217,120,66,.48) !important;
}
.choice-card,.tool-big,.article,.panel-card,.home-top-card,.home-idea-card{position:relative;overflow:hidden}
.choice-card::after,.tool-big::after,.article::after,.panel-card::after,.home-top-card::after,.home-idea-card::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(120deg, transparent 0%, rgba(239,230,210,.065) 42%, transparent 70%);
  transform:translateX(-120%);
  transition:transform .75s var(--lh-ease);
  pointer-events:none;
}
.choice-card:hover::after,.tool-big:hover::after,.article:hover::after,.panel-card:hover::after,.home-top-card:hover::after,.home-idea-card:hover::after{transform:translateX(120%)}

/* Cartes outils avec fonds photo légers */
.tools-grid .tool-big:nth-child(1)::before,
.tools-grid .tool-big:nth-child(2)::before,
.tools-grid .tool-big:nth-child(3)::before,
.tools-grid .tool-big:nth-child(4)::before,
.tools-grid .tool-big:nth-child(5)::before,
.tools-grid .tool-big:nth-child(6)::before{
  content:"";
  position:absolute;
  inset:0;
  opacity:.15;
  z-index:0;
  background-size:cover;
  background-position:center;
  transform:scale(1.05);
  transition:opacity .25s var(--lh-ease), transform .8s var(--lh-ease);
  pointer-events:none;
}
.tools-grid .tool-big>*{position:relative;z-index:1}
.tools-grid .tool-big:hover::before{opacity:.27;transform:scale(1.11)}
.tools-grid .tool-big:nth-child(1)::before{background-image:linear-gradient(rgba(14,18,13,.55),rgba(14,18,13,.88)),var(--lh-photo-2)}
.tools-grid .tool-big:nth-child(2)::before{background-image:linear-gradient(rgba(14,18,13,.48),rgba(14,18,13,.88)),var(--lh-photo-1)}
.tools-grid .tool-big:nth-child(3)::before{background-image:linear-gradient(rgba(14,18,13,.48),rgba(14,18,13,.88)),var(--lh-photo-4)}
.tools-grid .tool-big:nth-child(4)::before{background-image:linear-gradient(rgba(14,18,13,.48),rgba(14,18,13,.88)),var(--lh-photo-6)}
.tools-grid .tool-big:nth-child(5)::before{background-image:linear-gradient(rgba(14,18,13,.48),rgba(14,18,13,.88)),var(--lh-photo-3)}
.tools-grid .tool-big:nth-child(6)::before{background-image:linear-gradient(rgba(14,18,13,.48),rgba(14,18,13,.88)),var(--lh-photo-5)}

/* Bande photo immersive */
.lh-photo-strip{padding:95px 0;background:linear-gradient(180deg,rgba(14,18,13,.0),rgba(27,36,24,.35));border-top:1px solid var(--line);border-bottom:1px solid var(--line);overflow:hidden}
.lh-photo-strip .lh-strip-head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:28px;flex-wrap:wrap}
.lh-photo-strip h2{font-family:var(--font-display);font-size:clamp(42px,6vw,92px);line-height:.9;text-transform:uppercase;color:var(--cream)}
.lh-photo-strip h2 .accent{font-family:var(--font-italic);font-style:italic;text-transform:lowercase;font-weight:300;color:var(--amber-2)}
.lh-photo-strip p{max-width:520px;color:var(--cream-2);font-family:var(--font-italic);font-style:italic;font-size:18px;line-height:1.45;opacity:.86}
.lh-photo-track{display:flex;gap:16px;width:max-content;animation:lhPhotoScroll 42s linear infinite}
.lh-photo-strip:hover .lh-photo-track{animation-play-state:paused}
.lh-photo-card{width:min(420px,72vw);height:260px;flex:0 0 auto;position:relative;overflow:hidden;border:1px solid var(--line);border-radius:12px;background:#0e120d;box-shadow:0 18px 60px rgba(0,0,0,.25)}
.lh-photo-card::before{content:"";position:absolute;inset:0;background:var(--photo) center/cover no-repeat;filter:saturate(.86) contrast(1.05);transform:scale(1.04);transition:transform 1.2s var(--lh-ease),filter .3s var(--lh-ease)}
.lh-photo-card::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 30%,rgba(7,10,5,.78) 100%)}
.lh-photo-card:hover::before{transform:scale(1.12);filter:saturate(1) contrast(1.08)}
.lh-photo-card span{position:absolute;left:18px;bottom:16px;z-index:1;font-family:var(--font-mono);font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--cream);background:rgba(14,18,13,.64);border:1px solid var(--line-strong);padding:7px 10px;border-radius:999px}
@keyframes lhPhotoScroll{to{transform:translateX(-50%)}}

/* Journal plus magazine */
.journal .journal-scroll,.journal-list{scroll-snap-type:x mandatory;scroll-behavior:smooth}
.article,.article-link{scroll-snap-align:start}
.journal .article h3,.journal-list .article h3{letter-spacing:.01em}
.journal .article .read,.article .read{position:relative;z-index:2}

/* Barre mobile plus douce */
.mobile-bottom-nav{box-shadow:0 -12px 42px rgba(0,0,0,.38);backdrop-filter:blur(16px)}
.mobile-bottom-nav a.add{animation:lhFloat 3s ease-in-out infinite}

/* Petites pastilles live */
.lh-live-badge{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-mono);font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--cream-2)}
.lh-live-badge::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--amber);animation:lhPulseDot 2s ease-in-out infinite}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
  .reveal,.lh-reveal{opacity:1;transform:none;filter:none}
}
@media(max-width:720px){
  .lh-photo-strip{padding:70px 0}
  .lh-photo-card{height:210px;width:78vw}
  .site-hero-simple::after{opacity:.18}
}
