.ha-home-hero{
  --ha-home-hero-primary:var(--ha-primary, #006bb4);
  --ha-home-hero-accent:var(--ha-accent, #ec6701);
  --ha-home-hero-accent-strong:var(--ha-accent-strong, #d95e00);
  --ha-home-hero-ink:var(--ha-ink, #24364f);
  --ha-home-hero-text:var(--ha-text, #31455d);
  --ha-home-hero-shadow:0 28px 70px rgba(14, 32, 58, .18);
  position:relative;
  display:grid;
  gap:18px;
  margin:0 auto;
}

.ha-home-hero__stage{
  position:relative;
  isolation:isolate;
  min-height:clamp(460px, 72vh, 760px);
  overflow:hidden;
  border-radius:18px;
  background:
    linear-gradient(135deg, rgba(6, 44, 78, .94) 0%, rgba(5, 44, 72, .68) 44%, rgba(19, 56, 92, .44) 100%),
    linear-gradient(180deg, rgba(255,255,255,.08) 0%, rgba(255,255,255,0) 34%);
  box-shadow:var(--ha-home-hero-shadow);
}

.ha-home-hero__media-layer{
  position:absolute;
  inset:0;
  z-index:1;
}

.ha-home-hero__media-item{
  position:absolute;
  inset:0;
  overflow:hidden;
  opacity:0;
  visibility:hidden;
}

.ha-home-hero__media-item.is-active,
.ha-home-hero__media-item.is-entering,
.ha-home-hero__media-item.is-leaving{
  visibility:visible;
}

.ha-home-hero__picture,
.ha-home-hero__image{
  width:100%;
  height:100%;
}

.ha-home-hero__picture{
  display:block;
}

.ha-home-hero__image{
  display:block;
  object-fit:cover;
}

.ha-home-hero__media-preload{
  position:absolute;
  inset:0;
  z-index:-1;
  opacity:0;
  pointer-events:none;
}

.ha-home-hero__media-item[data-slide-id="fische"] .ha-home-hero__picture{
  display:flex;
  align-items:center;
  justify-content:center;
  padding:clamp(24px, 4vw, 48px);
}

.ha-home-hero__media-item[data-slide-id="fische"] .ha-home-hero__image{
  width:auto;
  height:auto;
  max-width:100%;
  max-height:100%;
  object-fit:contain;
  object-position:center;
  transform:scaleX(-1);
}

.ha-home-hero__placeholder{
  width:100%;
  height:100%;
  background:
    radial-gradient(circle at 20% 24%, rgba(242, 132, 27, .32) 0%, rgba(242, 132, 27, 0) 28%),
    radial-gradient(circle at 78% 18%, rgba(0, 107, 180, .34) 0%, rgba(0, 107, 180, 0) 34%),
    linear-gradient(135deg, rgba(8, 35, 62, .96) 0%, rgba(10, 57, 97, .86) 50%, rgba(17, 85, 129, .74) 100%);
}

.ha-home-hero__stage-overlay,
.ha-home-hero__stage-glow{
  position:absolute;
  inset:0;
  pointer-events:none;
}

.ha-home-hero__stage-overlay{
  z-index:2;
  background:
    linear-gradient(90deg, rgba(9, 22, 41, .84) 0%, rgba(9, 22, 41, .52) 32%, rgba(9, 22, 41, .20) 66%, rgba(9, 22, 41, .42) 100%),
    linear-gradient(180deg, rgba(8, 18, 34, .18) 0%, rgba(8, 18, 34, .06) 28%, rgba(8, 18, 34, .58) 100%);
}

.ha-home-hero__stage-glow{
  z-index:2;
  background:
    radial-gradient(circle at 78% 24%, rgba(242, 132, 27, .24) 0%, rgba(242, 132, 27, 0) 26%),
    radial-gradient(circle at 32% 82%, rgba(255,255,255,.12) 0%, rgba(255,255,255,0) 34%);
  mix-blend-mode:screen;
  opacity:.8;
}

.ha-home-hero__content-shell{
  position:relative;
  z-index:3;
  display:flex;
  align-items:flex-end;
  min-height:inherit;
  padding:clamp(28px, 4vw, 46px);
}

.ha-home-hero__content-stack{
  position:relative;
  width:min(100%, 640px);
  min-height:260px;
}

.ha-home-hero__content-item{
  display:grid;
  gap:16px;
  align-content:end;
  max-width:100%;
  opacity:0;
  visibility:hidden;
}

.ha-home-hero__content-item.is-active,
.ha-home-hero__content-item.is-entering,
.ha-home-hero__content-item.is-leaving{
  visibility:visible;
}

.ha-home-hero__kicker{
  display:inline-flex;
  align-items:center;
  width:max-content;
  max-width:100%;
  min-height:34px;
  padding:8px 14px;
  border-radius:999px;
  background:rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.16);
  backdrop-filter:blur(12px);
  color:#fff;
  font-size:12px;
  font-weight:800;
  letter-spacing:.12em;
  text-transform:uppercase;
}

.ha-home-hero__headline{
  margin:0;
  color:#fff;
  font-size:clamp(34px, 5vw, 64px);
  line-height:.98;
  letter-spacing:-.04em;
  text-wrap:balance;
}

.ha-home-hero__text{
  margin:0;
  max-width:54ch;
  color:rgba(255,255,255,.92);
  font-size:clamp(16px, 1.7vw, 19px);
  line-height:1.66;
}

.ha-home-hero__actions{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
}

.ha-home-hero__cta{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:54px;
  padding:14px 24px;
  border-radius:12px;
  background:linear-gradient(180deg, #f2841b 0%, var(--ha-home-hero-accent) 100%);
  color:#fff;
  text-decoration:none;
  font-size:15px;
  font-weight:900;
  letter-spacing:.01em;
  box-shadow:0 16px 34px rgba(236,103,1,.28);
  transition:transform .18s ease, box-shadow .18s ease, background .18s ease;
}

.ha-home-hero__cta:hover{
  transform:translateY(-1px);
  box-shadow:0 20px 38px rgba(236,103,1,.34);
  background:linear-gradient(180deg, #f49031 0%, var(--ha-home-hero-accent-strong) 100%);
  color:#fff;
}

.ha-home-hero__cta:focus-visible,
.ha-home-hero__nav-button:focus-visible{
  outline:2px solid rgba(255,255,255,.95);
  outline-offset:3px;
}

.ha-home-hero__nav{
  display:grid;
  grid-template-columns:repeat(4, minmax(0, 1fr));
  gap:12px;
}

.ha-home-hero__nav-button{
  appearance:none;
  display:grid;
  gap:8px;
  align-content:center;
  justify-items:center;
  min-height:102px;
  padding:16px 18px;
  border:1px solid rgba(36,54,79,.10);
  border-radius:14px;
  background:#fff;
  color:var(--ha-home-hero-ink);
  text-align:center;
  cursor:pointer;
  box-shadow:0 14px 26px rgba(15, 34, 56, .08);
  transition:transform .16s ease, box-shadow .16s ease, border-color .16s ease, background .16s ease;
}

.ha-home-hero__nav-button:hover{
  transform:translateY(-1px);
  box-shadow:0 18px 30px rgba(15, 34, 56, .12);
}

.ha-home-hero__nav-button.is-active{
  border-color:rgba(0,107,180,.28);
  background:linear-gradient(180deg, rgba(255,255,255,1) 0%, rgba(245,249,253,1) 100%);
  box-shadow:0 18px 34px rgba(0,107,180,.12);
}

.ha-home-hero__nav-button[aria-selected="true"]::after{
  content:"";
  width:38px;
  height:3px;
  border-radius:999px;
  background:linear-gradient(90deg, var(--ha-home-hero-primary) 0%, var(--ha-home-hero-accent) 100%);
}

.ha-home-hero__nav-label{
  display:block;
  font-size:20px;
  font-weight:800;
  line-height:1.1;
  letter-spacing:-.02em;
}

.ha-home-hero__nav-kicker{
  display:block;
  color:var(--ha-home-hero-text);
  font-size:13px;
  line-height:1.45;
}

.ha-home-hero.is-enhanced .ha-home-hero__media-item,
.ha-home-hero.is-enhanced .ha-home-hero__content-item{
  transition:
    opacity .78s cubic-bezier(.22, 1, .36, 1),
    transform .92s cubic-bezier(.22, 1, .36, 1),
    filter .92s cubic-bezier(.22, 1, .36, 1),
    clip-path .92s cubic-bezier(.22, 1, .36, 1),
    visibility 0s linear .92s;
}

.ha-home-hero.is-enhanced .ha-home-hero__media-item{
  opacity:0;
  transform:scale(1.08) translate3d(2%, 0, 0);
  filter:brightness(.82) saturate(.92);
  clip-path:inset(0 round 18px);
}

.ha-home-hero.is-enhanced .ha-home-hero__media-item.is-active,
.ha-home-hero.is-enhanced .ha-home-hero__media-item.is-entering{
  opacity:1;
  transform:scale(1) translate3d(0, 0, 0);
  filter:brightness(1) saturate(1);
  clip-path:inset(0 round 18px);
  transition-delay:0s;
}

.ha-home-hero.is-enhanced .ha-home-hero__media-item.is-leaving{
  opacity:0;
  transform:scale(.96) translate3d(-2%, 0, 0);
  filter:brightness(.72) saturate(.82) blur(6px);
  clip-path:inset(0 14% 0 0 round 18px);
}

.ha-home-hero.is-enhanced .ha-home-hero__content-item{
  position:absolute;
  inset:0 auto 0 0;
  opacity:0;
  transform:translate3d(0, 24px, 0);
}

.ha-home-hero.is-enhanced .ha-home-hero__content-item.is-active,
.ha-home-hero.is-enhanced .ha-home-hero__content-item.is-entering{
  opacity:1;
  transform:translate3d(0, 0, 0);
  transition-delay:.08s;
}

.ha-home-hero.is-enhanced .ha-home-hero__content-item.is-leaving{
  opacity:0;
  transform:translate3d(0, -18px, 0);
}

.ha-home-hero.ha-home-hero--simple .ha-home-hero__media-item,
.ha-home-hero.ha-home-hero--simple .ha-home-hero__content-item{
  transition-duration:.42s;
}

.ha-home-hero.ha-home-hero--simple .ha-home-hero__media-item{
  transform:none;
  filter:none;
  clip-path:inset(0 round 18px);
}

.ha-home-hero.ha-home-hero--simple .ha-home-hero__media-item.is-leaving{
  transform:none;
  filter:none;
  clip-path:inset(0 round 18px);
}

.ha-home-hero.ha-home-hero--simple .ha-home-hero__content-item{
  transform:none;
}

@media (max-width: 1080px){
  .ha-home-hero__nav{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 767px){
  .ha-home-hero{
    gap:10px;
  }

  .ha-home-hero__stage,
  body.home .ha-front-hero-row .ha-home-hero .ha-home-hero__stage{
    min-height:min(460px, 68svh);
  }

  .ha-home-hero__content-shell{
    padding:20px;
    align-items:center;
  }

  .ha-home-hero__content-stack{
    min-height:0;
  }

  .ha-home-hero.ha-home-hero--simple .ha-home-hero__content-item{
    position:relative;
    inset:auto;
  }

  .ha-home-hero__kicker{
    min-height:30px;
    padding:7px 12px;
    font-size:11px;
  }

  .ha-home-hero__headline{
    font-size:clamp(26px, 8.6vw, 36px);
    line-height:1.02;
  }

  .ha-home-hero__text{
    font-size:14px;
    line-height:1.5;
  }

  .ha-home-hero__actions{
    width:100%;
  }

  .ha-home-hero__cta{
    width:100%;
    min-height:46px;
    padding:11px 16px;
    border-radius:11px;
    font-size:14px;
  }

  .ha-home-hero__nav{
    display:grid;
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap:10px;
    overflow:visible;
    padding:0;
  }

  .ha-home-hero__nav::-webkit-scrollbar{
    display:none;
  }

  .ha-home-hero__nav-button{
    width:100%;
    min-height:76px;
    margin:0;
    padding:10px 8px;
    gap:4px;
    border-radius:12px;
    box-shadow:0 10px 20px rgba(15, 34, 56, .07);
  }

  .ha-home-hero__nav-label{
    font-size:clamp(14px, 4.1vw, 16px);
    line-height:1.08;
    letter-spacing:0;
  }

  .ha-home-hero__nav-kicker{
    font-size:9.5px;
    line-height:1.25;
  }

  .ha-home-hero__media-item[data-slide-id="fische"] .ha-home-hero__picture{
    padding:18px;
  }
}

@media (max-width: 420px){
  .ha-home-hero__stage,
  body.home .ha-front-hero-row .ha-home-hero .ha-home-hero__stage{
    min-height:min(430px, 62svh);
  }

  .ha-home-hero__content-shell{
    padding:18px;
  }

  .ha-home-hero__headline{
    font-size:clamp(25px, 8.2vw, 34px);
  }

  .ha-home-hero__text{
    font-size:13.5px;
  }

  .ha-home-hero__nav-button{
    min-height:70px;
    padding:9px 7px;
  }

  .ha-home-hero__nav-label{
    font-size:clamp(13px, 4vw, 15px);
  }

  .ha-home-hero__nav-kicker{
    font-size:9px;
  }
}

@media (prefers-reduced-motion: reduce){
  .ha-home-hero.is-enhanced .ha-home-hero__media-item,
  .ha-home-hero.is-enhanced .ha-home-hero__content-item,
  .ha-home-hero__cta,
  .ha-home-hero__nav-button{
    transition:none !important;
  }

  .ha-home-hero__stage-glow{
    opacity:.45;
  }
}
