/* Variante E — ruhige Estate-/Editorial-Atmosphäre mit großzügigen Full-bleed-Bildkapiteln,
   weichen Salbei-Akzenten und einer smoothen, luftigen Leserführung. */
body.qw-variant-e {
  --qw-layout-width: 1500px;
  --qw-layout-gutter: clamp(22px, 3vw, 46px);
  --qw-header-height: 84px;
  --qw-paper: #f6f1e9;
  --qw-paper-alt: #f1ebe2;
  --qw-sage-soft: #d4dacd;
  --qw-clay-soft: #977a5e;
}
body.qw-variant-e,
body.qw-variant-e .wp-site-blocks,
body.qw-variant-e .qw-content-section,
body.qw-variant-e .qw-biography,
body.qw-variant-e .qw-contact-section,
body.qw-variant-e .qw-concert-section {
  background: var(--qw-paper);
}
body.qw-variant-e .qw-site-header__inner {
  width: min(calc(100% - 2 * var(--qw-layout-gutter)), 1640px) !important;
}
body.qw-variant-e.qw-has-scrolled .qw-site-header,
body.qw-variant-e:not(.home) .qw-site-header {
  background: rgba(246,241,233,.75);
  backdrop-filter: blur(16px) saturate(1.05);
  -webkit-backdrop-filter: blur(16px) saturate(1.05);
}
body.qw-variant-e .qw-site-brand {
  font-size: clamp(1.72rem, 1.9vw, 2.18rem) !important;
  letter-spacing: -.05em;
}
body.qw-variant-e .qw-site-role,
body.qw-variant-e .qw-primary-menu a,
body.qw-variant-e .qw-language-switch span {
  letter-spacing: .08em;
  text-transform: uppercase;
  font-size: .72rem;
}
body.qw-variant-e .qw-primary-menu { gap: clamp(16px, 1.55vw, 26px); }
body.qw-variant-e .qw-primary-menu a,
body.qw-variant-e .qw-language-switch span {
  position: relative;
}
body.qw-variant-e .qw-primary-menu a::after,
body.qw-variant-e .qw-language-switch span::after {
  content: '';
  position: absolute;
  left: 0; right: 0; bottom: -4px;
  height: 1px;
  background: currentColor;
  opacity: .28;
  transform: scaleX(0);
  transform-origin: left center;
  transition: transform .28s ease, opacity .28s ease;
}
body.qw-variant-e .qw-primary-menu a:hover::after,
body.qw-variant-e .qw-primary-menu .current-menu-item > a::after,
body.qw-variant-e .qw-language-switch .is-active::after { transform: scaleX(1); opacity: .75; }
body.qw-variant-e .qw-language-switch .is-active {
  background: transparent;
  border: 0;
  color: var(--qw-clay-soft);
}
body.qw-variant-e .qw-image-section {
  border-radius: 0;
}
body.qw-variant-e .qw-image-section.is-variant-hero {
  min-height: min(100svh, 980px);
}
body.qw-variant-e .qw-image-section.is-variant-hero .qw-image-section__media::after {
  content: '';
  position: absolute; inset: 0;
  background: linear-gradient(90deg, rgba(18,18,16,.26) 0%, rgba(18,18,16,.1) 34%, rgba(18,18,16,.02) 64%, rgba(18,18,16,0) 100%);
}
body.qw-variant-e .qw-image-section.is-variant-hero .qw-image-section__inner {
  align-content: center;
  padding-top: calc(var(--qw-header-height) + 30px);
  padding-bottom: 180px;
}
body.qw-variant-e .qw-image-section.is-variant-hero .qw-image-section__copy {
  grid-column: 7 / 12;
  align-self: center;
  padding-top: 0;
}
body.qw-variant-e .qw-image-section.is-variant-hero .qw-image-section__eyebrow {
  margin-bottom: 14px;
  font-size: .75rem;
  letter-spacing: .2em;
  text-transform: uppercase;
}
body.qw-variant-e .qw-image-section.is-variant-hero .qw-image-section__title {
  max-width: 6.8ch;
  font-size: clamp(4.2rem, 7vw, 7rem);
  line-height: .91;
  letter-spacing: -.055em;
}
body.qw-variant-e .qw-next-concert {
  width: min(390px, calc(100vw - 2 * var(--qw-layout-gutter)));
  padding: 22px;
  border-radius: 22px;
  background: rgba(246,241,233,.2);
  backdrop-filter: blur(20px) saturate(1.08);
  -webkit-backdrop-filter: blur(20px) saturate(1.08);
  border: 1px solid rgba(255,255,255,.26);
  box-shadow: 0 18px 40px rgba(10,10,10,.14);
}
body.qw-variant-e .qw-next-concert__eyebrow,
body.qw-variant-e .qw-small-label,
body.qw-variant-e .qw-concert-row__subtitle,
body.qw-variant-e .qw-concert-row__program,
body.qw-variant-e .qw-concert-row__place,
body.qw-variant-e .qw-section-note { color: var(--qw-muted); }
body.qw-variant-e .qw-image-section.is-variant-chapter {
  min-height: 90svh;
}
body.qw-variant-e .qw-image-section.is-variant-chapter .qw-image-section__media::after {
  content: '';
  position: absolute; inset: 0;
  background: linear-gradient(180deg, rgba(16,16,14,.08) 0%, rgba(16,16,14,.18) 100%);
}
body.qw-variant-e .qw-image-section.is-variant-chapter .qw-image-section__inner {
  align-content: end;
  padding-bottom: min(9svh, 90px);
}
body.qw-variant-e .qw-image-section.is-variant-chapter .qw-image-section__copy {
  grid-column: 1 / 6;
  max-width: 31rem;
  padding: clamp(22px, 2.1vw, 30px);
  background: rgba(246,241,233,.9);
  color: var(--qw-ink);
  border-radius: 24px;
  backdrop-filter: blur(18px) saturate(1.05);
  -webkit-backdrop-filter: blur(18px) saturate(1.05);
}
body.qw-variant-e .qw-image-section.is-variant-chapter .qw-image-section__eyebrow {
  color: var(--qw-clay-soft);
  font-size: .75rem;
  letter-spacing: .18em;
  text-transform: uppercase;
}
body.qw-variant-e .qw-image-section.is-variant-chapter .qw-image-section__title {
  font-size: clamp(3rem, 5vw, 5rem);
  line-height: .94;
  letter-spacing: -.045em;
}
body.qw-variant-e .qw-section-heading { margin-bottom: clamp(36px, 4vw, 58px); }
body.qw-variant-e .qw-section-heading h2,
body.qw-variant-e .qw-biography__aside h2 {
  letter-spacing: -.05em;
}
body.qw-variant-e .qw-concerts__toolbar {
  gap: 10px;
  margin-bottom: 42px;
}
body.qw-variant-e .qw-concerts__toolbar button,
body.qw-variant-e .qw-concerts__toolbar a {
  min-height: 42px;
  padding: 10px 18px;
  border-color: rgba(24,23,21,.14);
  font-size: .74rem;
  letter-spacing: .12em;
  text-transform: uppercase;
}
body.qw-variant-e .qw-concerts__toolbar .is-active,
body.qw-variant-e .qw-concerts__toolbar button:hover,
body.qw-variant-e .qw-concerts__toolbar a:hover {
  background: var(--qw-sage-soft);
  border-color: var(--qw-sage-soft);
  color: var(--qw-ink);
}
body.qw-variant-e .qw-concert-row {
  grid-template-columns: 1fr minmax(0, 4.8fr) minmax(180px, 2fr) 58px;
  gap: clamp(14px, 2.2vw, 32px);
  padding: 30px 0;
}
body.qw-variant-e .qw-concert-row__day { font-size: clamp(2.2rem, 2.8vw, 2.9rem); }
body.qw-variant-e .qw-concert-row__title {
  max-width: 26ch;
  font-size: clamp(2rem, 3vw, 3.35rem);
  line-height: .95;
  letter-spacing: -.05em;
}
body.qw-variant-e .qw-concert-row__open {
  width: 58px; height: 58px;
  border-color: rgba(24,23,21,.35);
}
body.qw-variant-e .qw-concert-row:hover .qw-concert-row__open,
body.qw-variant-e .qw-concert-row:focus-visible .qw-concert-row__open {
  background: var(--qw-sage-soft);
  border-color: var(--qw-sage-soft);
}
body.qw-variant-e .qw-biography__content { grid-column: 5 / 11; }
body.qw-variant-e .qw-biography__prose {
  max-width: 62ch;
  font-size: clamp(1.03rem, 1.08vw, 1.14rem);
  line-height: 1.78;
}
body.qw-variant-e .qw-biography__prose > p:first-child {
  font-size: clamp(1.22rem, 1.4vw, 1.38rem);
  color: var(--qw-clay-soft);
}
body.qw-variant-e .qw-repertoire-layout .wp-block-column:first-child { top: calc(var(--qw-header-height) + 24px); }
body.qw-variant-e .qw-composer-row strong { font-size: clamp(1.8rem, 2.9vw, 3.2rem); }
body.qw-variant-e .qw-composer-row:hover strong { color: var(--qw-clay-soft); font-style: italic; }
body.qw-variant-e .qw-mobile-menu {
  background: rgba(246,241,233,.965);
  border: 1px solid rgba(24,23,21,.1);
  backdrop-filter: blur(22px);
  -webkit-backdrop-filter: blur(22px);
}
body.qw-variant-e .qw-mobile-menu a {
  padding: 15px 0;
  font-size: clamp(2rem, 7vw, 3.4rem);
  line-height: .95;
}
body.qw-variant-e .qw-mobile-menu a:hover { color: var(--qw-clay-soft); font-style: italic; }
@media (max-width: 760px) {
  body.qw-variant-e { --qw-header-height: 68px; }
  body.qw-variant-e .qw-image-section.is-variant-hero .qw-image-section__inner { padding-bottom: 320px; }
  body.qw-variant-e .qw-image-section.is-variant-hero .qw-image-section__copy,
  body.qw-variant-e .qw-image-section.is-variant-chapter .qw-image-section__copy { grid-column: 1 / 13; }
  body.qw-variant-e .qw-image-section.is-variant-chapter .qw-image-section__copy { border-radius: 20px; }
  body.qw-variant-e .qw-next-concert { left: 18px; right: 18px; width: auto; }
  body.qw-variant-e .qw-concert-row { grid-template-columns: minmax(0,1fr) 58px; }
}
