/* Mobile rules shared by the Wilde Alpentouren page templates. */
@media (max-width: 767px) {
  body.wal2026 main h1,
  body.wal2026 main h2,
  body.wal2026 main h3,
  body.wal2026 main .tz-name,
  body.wal2026 main .blockkopf,
  body.wal2026 .wal-mobile a,
  body.wal2026 .fuss a {
    max-width: 100%;
    hyphens: auto;
    overflow-wrap: break-word;
  }
  body.wal2026 main :is(.feld, .katfeld, .tourfeld, .restfeld, .tz, .blockkopf) {
    min-width: 0;
  }
  body.wal2026 .wal-menu-toggle {
    min-width: 44px;
    min-height: 44px;
  }
  body.wal2026 .wal-mobile a {
    display: flex;
    align-items: center;
    min-height: 44px;
    white-space: normal;
  }
}

/* The home poster remains visible before the blue text field on phones. */
@media (max-width: 767px) and (orientation: portrait) {
  :is(body.wal2026-info, body.wal2026-ratgeber, body.wal2026-ueberuns, body.wal2026-blog, body.wal2026-packliste) .buehne {
    display: block;
    min-height: 0;
  }
  :is(body.wal2026-info, body.wal2026-ratgeber, body.wal2026-ueberuns, body.wal2026-blog, body.wal2026-packliste) .buehne-bild {
    position: absolute;
    inset: 0 0 auto;
    width: 100%;
    height: max(50svh, 340px);
    min-height: 0;
  }
  :is(body.wal2026-info, body.wal2026-ratgeber, body.wal2026-ueberuns, body.wal2026-blog, body.wal2026-packliste) .buehne-innen {
    margin: 0;
    padding: calc(max(50svh, 340px) - 28px) 16px 0;
  }
  :is(body.wal2026-info, body.wal2026-ratgeber, body.wal2026-ueberuns, body.wal2026-blog, body.wal2026-packliste) .buehne-innen > .breit {
    width: 100%;
    padding-inline: 0;
  }
  :is(body.wal2026-info, body.wal2026-ratgeber, body.wal2026-ueberuns, body.wal2026-blog, body.wal2026-packliste) .buehne-marke {
    display: none;
  }
  :is(body.wal2026-info, body.wal2026-ratgeber) .sprungband ul {
    scrollbar-width: none;
  }
  :is(body.wal2026-info, body.wal2026-ratgeber) .sprungband ul::-webkit-scrollbar {
    display: none;
  }
  body.wal2026 .katkopf img.katkopf-bild {
    position: absolute;
    inset: 0 0 auto;
    width: 100%;
    height: max(50svh, 340px);
  }
  body.wal2026-home .buehne {
    display: block;
    min-height: 0;
  }
  body.wal2026-home .buehne-bild {
    position: absolute;
    inset: 0 0 auto;
    height: max(50svh, 340px);
    background-position: 8% 50%;
  }
  body.wal2026-home .buehne-innen {
    margin: 0;
    padding: calc(max(50svh, 340px) - 28px) 16px 26px;
  }
  body.wal2026-home .buehne-innen > .breit {
    width: 100%;
    padding-inline: 0;
  }
  body.wal2026-home .feld {
    max-width: none;
    padding: 22px 20px;
  }
}

@media (orientation: landscape) and (max-height: 520px) {
  body.wal2026-restplaetze .restkopf .buehne-marke {
    display: none;
  }
  body.wal2026 .katkopf {
    display: block;
  }
  body.wal2026 .katkopf img.katkopf-bild {
    position: absolute;
    inset: 0 auto 0 0;
    width: 45%;
    height: 100%;
    object-fit: cover;
  }
  body.wal2026 .katkopf .katkopf-innen {
    width: 55%;
    margin-left: 45%;
  }
  body.wal2026-home .buehne {
    display: flex;
    align-items: stretch;
    min-height: 0;
  }
  body.wal2026-home .buehne-bild {
    position: static;
    flex: 0 0 45%;
    width: 45%;
    min-height: 0;
    height: auto;
    background-position: 30% 50%;
  }
  body.wal2026-home .buehne-innen {
    display: flex;
    flex: 1 1 55%;
    align-items: flex-start;
    width: 55%;
    margin: 0;
    padding: 96px 16px 16px;
  }
  body.wal2026-home .buehne-innen > .breit {
    width: 100%;
    padding-inline: 0;
  }
  body.wal2026-home .feld {
    max-width: none;
    padding: 18px 16px;
    clip-path: none;
  }
}

/* Keep a stable 3:2 frame when changing enlarged gallery images. */
body.wal2026-e5original .lb-buehne img {
  display: block;
  width: min(100%, calc((100svh - 156px) * 1.5));
  max-height: calc(100svh - 156px);
  aspect-ratio: 3 / 2;
  object-fit: cover;
}
