
/* =========================================================
   V20 — Homepage Editorial Scroll Reveal (überarbeitet)
   Änderungen:
   - Intro-Flächen jetzt einheitlich statt zweifarbig
   - neues, eigenes Stillleben im Hintergrund
   - sanftere Kanten / weniger sichtbare Mittelnaht
   ========================================================= */

.home-intro{
  position:relative;
  height:165vh;
  min-height:980px;
  background:#eceee7;
}

.home-intro-stage{
  --intro-progress:0;
  position:sticky;
  top:0;
  height:100vh;
  min-height:620px;
  overflow:hidden;
  isolation:isolate;
  background:#f2f0e9;
}

.home-intro-background{
  position:absolute;
  inset:-3%;
  z-index:0;
  background:
    linear-gradient(rgba(57,62,52,.22),rgba(57,62,52,.24)),
    url("assets/home-intro-stilllife-v20.png") center center / cover no-repeat;
  transform:scale(1.06);
  will-change:transform,filter;
  filter:saturate(.82) contrast(.94);
}

.home-intro-panel{
  position:absolute;
  top:0;
  bottom:0;
  z-index:2;
  width:50.5%;
  background:#f2f0e9;
  will-change:transform;
  box-shadow:none;
}

.home-intro-panel-left{ left:0; }
.home-intro-panel-right{ right:0; }

.home-intro-panel-line{
  position:absolute;
  top:11%;
  bottom:11%;
  width:1px;
  background:linear-gradient(
    transparent,
    rgba(114,125,101,.14) 16%,
    rgba(114,125,101,.14) 84%,
    transparent
  );
}

.home-intro-panel-left .home-intro-panel-line{ right:11%; }
.home-intro-panel-right .home-intro-panel-line{ left:11%; }

.home-intro-brand{
  position:absolute;
  inset:0;
  z-index:4;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:24px;
  padding:42px;
  pointer-events:none;
  will-change:transform,opacity;
}

.home-intro-brand img{
  width:min(570px,70vw);
  max-height:58vh;
  object-fit:contain;
  filter:brightness(0) saturate(100%) invert(47%) sepia(10%) saturate(777%) hue-rotate(39deg) brightness(91%) contrast(86%);
  opacity:.98;
  transition:filter .16s linear;
}

.home-intro-brand p{
  margin:0;
  color:#66705d;
  text-transform:uppercase;
  letter-spacing:.34em;
  font-size:clamp(8px,.75vw,11px);
  font-weight:600;
}

.home-intro-scroll{
  position:absolute;
  z-index:5;
  left:50%;
  bottom:32px;
  transform:translateX(-50%);
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:12px;
  color:#65705e;
  text-transform:uppercase;
  letter-spacing:.22em;
  font-size:8px;
  pointer-events:none;
  will-change:opacity;
}

.home-intro-scroll i{
  display:block;
  width:1px;
  height:38px;
  position:relative;
  overflow:hidden;
  background:rgba(114,125,101,.20);
}

.home-intro-scroll i::after{
  content:"";
  position:absolute;
  top:-55%;
  left:0;
  width:1px;
  height:55%;
  background:#727d65;
  animation:homeScrollCue 1.8s ease-in-out infinite;
}

@keyframes homeScrollCue{
  0%{transform:translateY(0)}
  70%,100%{transform:translateY(280%)}
}

.scroll-reveal{
  opacity:0;
  transform:translateY(32px);
  transition:
    opacity .75s cubic-bezier(.2,.7,.2,1),
    transform .75s cubic-bezier(.2,.7,.2,1);
  transition-delay:var(--reveal-delay,0ms);
}

.scroll-reveal.reveal-left{transform:translateX(-34px)}
.scroll-reveal.reveal-right{transform:translateX(34px)}

.scroll-reveal.is-visible{
  opacity:1;
  transform:translate3d(0,0,0);
}

.hero-media{
  overflow:hidden;
}

.hero-media .hero-image{
  transform:scale(1.035);
  transition:transform 1.15s cubic-bezier(.2,.7,.2,1);
}

.hero-media.is-visible .hero-image{
  transform:scale(1);
}

.service-card.scroll-reveal,
.audience-card.scroll-reveal{
  transition-duration:.68s;
}

@media(max-width:900px){
  .home-intro{
    height:150vh;
    min-height:850px;
  }

  .home-intro-stage{
    min-height:560px;
  }

  .home-intro-brand{
    padding:28px;
  }

  .home-intro-brand img{
    width:min(520px,82vw);
    max-height:54vh;
  }

  .home-intro-brand p{
    letter-spacing:.21em;
    text-align:center;
  }

  .home-intro-panel-left .home-intro-panel-line{right:13%}
  .home-intro-panel-right .home-intro-panel-line{left:13%}
}

@media(max-width:560px){
  .home-intro{
    min-height:760px;
  }

  .home-intro-stage{
    min-height:520px;
  }

  .home-intro-brand img{
    width:88vw;
  }

  .home-intro-scroll{
    bottom:22px;
  }
}

@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}

  .home-intro{
    height:auto;
    min-height:72vh;
  }

  .home-intro-stage{
    position:relative;
    height:72vh;
    min-height:560px;
  }

  .home-intro-panel{
    display:none;
  }

  .home-intro-background{
    inset:0;
    transform:none !important;
  }

  .home-intro-brand img{
    filter:brightness(0) invert(1);
  }

  .home-intro-brand p,
  .home-intro-scroll{
    color:#fff;
  }

  .home-intro-scroll{
    display:none;
  }

  .scroll-reveal,
  .scroll-reveal.reveal-left,
  .scroll-reveal.reveal-right{
    opacity:1;
    transform:none;
    transition:none;
  }

  .hero-media .hero-image{
    transform:none;
    transition:none;
  }
}
