.hseconcert{--hse-ink:#203248;--hse-soft:#45586a;--hse-gold:#9a7544;--hse-border:rgba(32,50,72,.18);color:var(--hse-ink);max-width:1180px;margin:30px auto 60px;padding:0 18px;box-sizing:border-box}.hseconcert *{box-sizing:border-box}.hseconcert-heading{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:26px}.hseconcert-overline,.hseconcert-place{font:600 11px/1.4 Arial,sans-serif;letter-spacing:.16em;color:var(--hse-gold)}.hseconcert-heading h2,.hseconcert-single h1{font:normal clamp(32px,3.5vw,48px)/1.14 Georgia,serif!important;color:var(--hse-ink)!important;margin:9px 0 0}.hseconcert-heading p{font:15px/1.5 Arial,sans-serif;color:var(--hse-soft)!important;margin:0 0 4px}.hseconcert-filters{display:flex;align-items:end;gap:15px;flex-wrap:wrap;padding:15px 0 23px;border-top:1px solid var(--hse-border);margin-bottom:10px}.hseconcert-filters label{display:flex;flex-direction:column;gap:7px;color:var(--hse-ink)!important;font:600 13px/1.4 Arial,sans-serif}.hseconcert-filters select{min-width:175px;max-width:100%;background:#f5f4f0!important;color:#203248!important; color-scheme:light;border:1px solid #aebdc7;border-radius:7px;padding:10px 34px 10px 12px;font:15px Arial,sans-serif!important}.hseconcert-filters option{background:#fff;color:#203248}.hseconcert-reset{background:transparent!important;color:#203248!important;border:0!important;padding:10px 5px!important;text-decoration:underline;cursor:pointer;font:13px Arial,sans-serif}.hseconcert-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px 24px}.hseconcert-card{min-width:0;overflow:hidden;border-bottom:1px solid var(--hse-border);padding-bottom:16px}.hseconcert-card[hidden]{display:none!important}.hseconcert-photo{height:245px;width:100%;display:block;position:relative;overflow:hidden;border-radius:7px;background:#334558;text-decoration:none}.hseconcert-photo img{height:100%!important;width:100%!important;object-fit:cover!important;display:block;transition:transform .45s ease}.hseconcert-card:hover .hseconcert-photo img{transform:scale(1.035)}.hseconcert-placeholder{display:grid;place-items:center;height:100%;font:60px Georgia,serif;color:#d0b78b}.hseconcert-date{position:absolute;left:14px;bottom:12px;background:#f5f1e8;color:#203248;border-radius:4px;display:flex;gap:7px;align-items:baseline;padding:6px 11px;box-shadow:0 2px 12px #0002;font:12px Arial,sans-serif}.hseconcert-date strong{font:normal 25px Georgia,serif}.hseconcert-cardbody{padding:19px 1px 0}.hseconcert-card h3{font:normal 24px/1.3 Georgia,serif!important;margin:9px 0 10px!important}.hseconcert-card h3 a{color:var(--hse-ink)!important;text-decoration:none!important}.hseconcert-card h3 a:hover{text-decoration:underline!important}.hseconcert-subline{font:14px/1.6 Arial,sans-serif;color:var(--hse-soft)!important;margin:0 0 20px!important}.hseconcert-actions{display:flex;align-items:center;justify-content:space-between;gap:9px;flex-wrap:wrap}.hseconcert-actions>a:not(.hseconcert-ticket),.hseconcert-back{font:600 13px Arial,sans-serif;color:#254a68!important;text-decoration:none!important}.hseconcert-ticket{display:inline-block;background:#203248!important;color:#fff!important;text-decoration:none!important;padding:11px 16px;border-radius:5px;font:600 13px Arial,sans-serif}.hseconcert-ticket:hover{background:#35536b!important;color:#fff!important}.hseconcert-empty{padding:25px;color:var(--hse-ink)!important}.hseconcert-empty[hidden]{display:none}.hseconcert-single{max-width:1040px}.hseconcert-back{display:inline-block;margin-bottom:25px}.hseconcert-single-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:45px;align-items:start}.hseconcert-single-poster img{display:block;width:100%!important;height:auto!important;max-height:680px;object-fit:contain;border-radius:8px}.hseconcert-single h1{font-size:clamp(30px,3.5vw,44px)!important;margin:12px 0 32px!important}.hseconcert-single-facts p{padding:14px 0;border-bottom:1px solid var(--hse-border);margin:0!important;display:grid;grid-template-columns:100px 1fr;gap:15px;font:15px/1.5 Arial,sans-serif;color:var(--hse-ink)!important}.hseconcert-single-facts span{color:var(--hse-soft)}.hseconcert-big-ticket{margin-top:28px;padding:14px 24px}.hseconcert :focus-visible{outline:3px solid #9a7544;outline-offset:3px}@media(max-width:900px){.hseconcert-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hseconcert-single-grid{gap:25px}}@media(max-width:620px){.hseconcert-heading{display:block}.hseconcert-heading p{margin-top:10px}.hseconcert-grid,.hseconcert-single-grid{grid-template-columns:1fr}.hseconcert-photo{height:250px}.hseconcert-filters label,.hseconcert-filters select{width:100%}.hseconcert-filters label{flex-basis:100%}.hseconcert{padding:0 14px;margin-top:20px}.hseconcert-single-facts p{grid-template-columns:85px 1fr}}

/* v1.0.3: improved contrast, editorial appearance and isolated test details */
.hseconcert .hseconcert-heading{display:block;max-width:800px;margin-bottom:26px}
.hseconcert .hseconcert-heading h2{font-size:clamp(30px,3.5vw,44px)!important;line-height:1.15!important;margin:0 0 12px!important}
.hseconcert .hseconcert-heading p{font-size:16px!important;line-height:1.6!important;color:#334b61!important}
.hseconcert .hseconcert-filters select,.hseconcert .hseconcert-filters select:focus,.hseconcert .hseconcert-filters select:hover{background-color:#f8f8f5!important;color:#152c41!important;-webkit-text-fill-color:#152c41!important;color-scheme:light!important;opacity:1!important;box-shadow:none!important}
.hseconcert .hseconcert-filters select option{background:#fff!important;color:#152c41!important;-webkit-text-fill-color:#152c41!important}
.hseconcert .hseconcert-card{background:transparent!important}
.hseconcert .hseconcert-photo{background:#263b4e}
.hseconcert .hseconcert-placeholder{display:flex;align-items:center;justify-content:center;flex-direction:column;background:linear-gradient(145deg,#253a4e,#3f5665);color:#d0b78b}
.hseconcert .hseconcert-cardbody .hseconcert-actions{margin-top:15px}
.hseconcert-preview-detail{max-width:1120px!important;margin-top:30px!important}
.hseconcert .hseconcert-preview-back{color:#254a68!important;font-weight:600!important;text-decoration:none!important;display:inline-block;margin:0 0 26px;font-size:15px}
.hseconcert .hseconcert-preview-layout{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1fr);gap:clamp(25px,5vw,76px);align-items:center}
.hseconcert .hseconcert-preview-art{max-width:460px;width:100%}
.hseconcert .hseconcert-preview-art img{display:block;width:100%!important;height:auto!important;max-height:600px!important;object-fit:contain!important;border-radius:12px;box-shadow:0 17px 37px #10243924}
.hseconcert .hseconcert-preview-placeholder{min-height:350px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;border-radius:12px;background:linear-gradient(135deg,#233b51,#456074);color:#e7cb90;font:72px Georgia,serif}
.hseconcert .hseconcert-preview-placeholder small{font:600 12px Arial,sans-serif;letter-spacing:.3em}
.hseconcert .hseconcert-preview-information{min-width:0}
.hseconcert .hseconcert-preview-information h2{color:#203248!important;font:normal clamp(28px,3vw,44px)/1.2 Georgia,serif!important;margin:12px 0 28px!important;overflow-wrap:break-word}
.hseconcert .hseconcert-preview-facts{border-top:1px solid #8899a9}
.hseconcert .hseconcert-preview-facts>div{display:grid;grid-template-columns:105px 1fr;gap:12px;border-bottom:1px solid #a6b7c3;padding:16px 0;font:16px/1.55 Arial,sans-serif;color:#203248}
.hseconcert .hseconcert-preview-facts span{color:#536576}
.hseconcert .hseconcert-preview-facts strong{font-weight:600;color:#203248}
.hseconcert .hseconcert-preview-book{display:inline-block;margin-top:30px;background:#203248!important;color:#fff!important;text-decoration:none!important;border-radius:6px;padding:15px 25px;font:600 16px Arial,sans-serif!important}
.hseconcert .hseconcert-preview-book:hover{background:#345572!important}
.hseconcert .hseconcert-preview-description{max-width:800px;padding-top:45px;margin:42px auto 0;border-top:1px solid #a6b7c3;color:#203248!important;font:17px/1.75 Arial,sans-serif}
.hseconcert .hseconcert-preview-description h3{font:normal 28px Georgia,serif!important;color:#203248!important;margin:0 0 15px!important}
.hseconcert .hseconcert-preview-description p{color:#203248!important;line-height:1.75!important}
@media(max-width:700px){.hseconcert .hseconcert-preview-layout{grid-template-columns:1fr;gap:24px}.hseconcert .hseconcert-preview-art{max-width:480px;margin:0 auto}.hseconcert .hseconcert-preview-placeholder{min-height:240px}.hseconcert .hseconcert-preview-information h2{font-size:30px!important}.hseconcert .hseconcert-preview-description{margin-top:35px;padding-top:30px}}

/* v1.0.5: softer programme art without blurring typography or text */
.hseconcert .hseconcert-photo {box-shadow:0 12px 27px rgba(20,43,60,.17);isolation:isolate}
.hseconcert .hseconcert-photo img{filter:saturate(.88) contrast(.96);transition:transform .5s ease,filter .5s ease}
.hseconcert .hseconcert-photo::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(to top,rgba(22,39,55,.20),transparent 43%),linear-gradient(120deg,rgba(247,242,226,.08),transparent 65%);z-index:1}
.hseconcert .hseconcert-date{z-index:2}
.hseconcert .hseconcert-card:hover .hseconcert-photo img{filter:saturate(.96) contrast(.99);transform:scale(1.025)}
.hseconcert .hseconcert-preview-art img{filter:saturate(.92) contrast(.98);box-shadow:0 22px 44px rgba(20,43,60,.20)!important}
@media(prefers-reduced-motion:reduce){.hseconcert .hseconcert-photo img{transition:none!important;transform:none!important}}

/* v1.0.6: richer theatrical vignette and lifted shadow, preserving crisp artwork */
.hseconcert .hseconcert-photo{
  overflow:hidden;
  border-radius:12px;
  box-shadow:0 5px 9px rgba(13,28,43,.17), 0 18px 35px rgba(13,28,43,.34), 0 28px 58px rgba(13,28,43,.18)!important;
}
.hseconcert .hseconcert-photo::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  pointer-events:none;
  background:
    radial-gradient(ellipse 76% 83% at 50% 46%,transparent 25%,rgba(10,24,38,.06) 58%,rgba(8,20,32,.36) 100%),
    linear-gradient(to top,rgba(9,22,35,.22),transparent 36%);
}
.hseconcert .hseconcert-photo img{filter:saturate(.85) contrast(.95)}
.hseconcert .hseconcert-card:hover .hseconcert-photo img{filter:saturate(.92) contrast(.97)}
.hseconcert .hseconcert-date{z-index:2}
.hseconcert .hseconcert-preview-art img{box-shadow:0 17px 35px rgba(13,28,43,.30),0 30px 70px rgba(13,28,43,.15)!important}
@media(max-width:620px){.hseconcert .hseconcert-photo{box-shadow:0 10px 24px rgba(13,28,43,.25),0 20px 42px rgba(13,28,43,.13)!important}}

/* v1.2.2: Align action buttons at the bottom of every card in a grid row.
   Longer concert titles no longer shift the ticket/action position. */
.hseconcert .hseconcert-grid{align-items:stretch}
.hseconcert .hseconcert-card{display:flex;flex-direction:column;height:100%}
.hseconcert .hseconcert-card .hseconcert-photo{flex:0 0 auto}
.hseconcert .hseconcert-cardbody{display:flex;flex-direction:column;flex:1 1 auto;min-height:0}
.hseconcert .hseconcert-cardbody .hseconcert-actions{margin-top:auto!important;padding-top:18px}

/* v1.7.0: modern direct concert page after migration. Scoped to concerts only. */
body.single-konzert, body.single-konzert #page, body.single-konzert .wp-site-blocks {
 background-color:#CDD9E2!important;
 background-image:none!important;
}
body.single-konzert::before, body.single-konzert::after { content:none!important;display:none!important; }
body.single-konzert .hseconcert-production-detail {
 width:min(1120px, calc(100vw - 40px))!important;
 max-width:none!important;
 position:relative;
 left:50%;
 transform:translateX(-50%);
 margin:36px 0 64px!important;
 padding:0 18px;
 background:transparent!important;
 box-shadow:none!important;
}
body.single-konzert .hseconcert-production-detail .hseconcert-preview-art {
 max-width:460px;
}
body.single-konzert .hseconcert-production-detail .hseconcert-preview-art img {
 width:100%!important;
 height:auto!important;
 max-height:620px!important;
 object-fit:contain!important;
 border-radius:12px!important;
 box-shadow:0 18px 40px rgba(18,37,53,.25)!important;
}
body.single-konzert .hseconcert-production-detail .hseconcert-preview-layout {
 grid-template-columns:minmax(0,.85fr) minmax(0,1fr);
 gap:clamp(30px,5vw,75px);
 align-items:center;
}
body.single-konzert .hseconcert-production-detail .hseconcert-preview-information h2 {
 font-size:clamp(30px,3.2vw,43px)!important;
 line-height:1.2!important;
}
@media(max-width:700px){
 body.single-konzert .hseconcert-production-detail{width:calc(100vw - 24px)!important;padding:0 12px;}
 body.single-konzert .hseconcert-production-detail .hseconcert-preview-layout{grid-template-columns:1fr;gap:26px;}
 body.single-konzert .hseconcert-production-detail .hseconcert-preview-art{max-width:440px;margin:0 auto;}
}


/* v1.7.1: admin rename + framed artwork on single/detail pages */
.hseconcert .hseconcert-preview-art{max-width:460px;width:100%}
.hseconcert .hseconcert-preview-frame{background:rgba(235,241,245,.72);border:1px solid rgba(255,255,255,.48);border-radius:16px;padding:14px;box-shadow:0 24px 45px rgba(17,37,53,.12), inset 0 1px 0 rgba(255,255,255,.45)}
.hseconcert .hseconcert-preview-frame img{display:block;width:100%!important;height:auto!important;max-height:600px!important;object-fit:contain!important;border-radius:10px;box-shadow:0 17px 37px #10243924}
.hseconcert .hseconcert-preview-frame .hseconcert-preview-placeholder{min-height:350px;border-radius:10px}
body.single-konzert .hseconcert-production-detail .hseconcert-preview-frame{background:rgba(235,241,245,.72);border:1px solid rgba(255,255,255,.48);border-radius:16px;padding:14px;box-shadow:0 24px 45px rgba(17,37,53,.12), inset 0 1px 0 rgba(255,255,255,.45)}
body.single-konzert .hseconcert-production-detail .hseconcert-preview-frame img{width:100%!important;height:auto!important;max-height:620px!important;object-fit:contain!important;border-radius:10px!important;box-shadow:0 18px 40px rgba(18,37,53,.25)!important}
@media(max-width:700px){.hseconcert .hseconcert-preview-frame{padding:11px;border-radius:14px}}


/* v1.7.2: more elegant single concert page + consistent image corners */
.hseconcert.hseconcert-preview-detail{padding-top:8px}
.hseconcert .hseconcert-preview-back{display:inline-flex;align-items:center;gap:8px;padding:9px 14px;border-radius:999px;background:rgba(255,255,255,.55);border:1px solid rgba(32,50,72,.10);box-shadow:0 10px 24px rgba(16,36,57,.06);transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease}
.hseconcert .hseconcert-preview-back:hover{transform:translateY(-1px);background:rgba(255,255,255,.72);box-shadow:0 14px 28px rgba(16,36,57,.10)}
.hseconcert .hseconcert-preview-layout{align-items:center}
.hseconcert .hseconcert-preview-art{align-self:center}
.hseconcert .hseconcert-preview-frame{position:relative;overflow:hidden;background:linear-gradient(180deg,rgba(244,248,251,.92),rgba(225,234,241,.88));border:1px solid rgba(255,255,255,.72)!important;border-radius:22px!important;padding:16px!important;box-shadow:0 18px 44px rgba(17,37,53,.12), inset 0 1px 0 rgba(255,255,255,.75)!important}
.hseconcert .hseconcert-preview-frame::before{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:linear-gradient(145deg,rgba(255,255,255,.24),transparent 36%)}
.hseconcert .hseconcert-preview-frame img,.hseconcert .hseconcert-preview-frame .hseconcert-preview-placeholder{display:block;border-radius:16px!important;overflow:hidden;background:#dfe8ee}
.hseconcert .hseconcert-preview-frame img{width:100%!important;height:auto!important;object-fit:cover!important;box-shadow:0 22px 46px rgba(18,37,53,.22)!important;aspect-ratio:4/5}
.hseconcert .hseconcert-preview-information{background:rgba(244,248,251,.45);border:1px solid rgba(255,255,255,.55);border-radius:24px;padding:28px 32px;box-shadow:0 18px 44px rgba(17,37,53,.08)}
.hseconcert .hseconcert-place{display:inline-block;margin-bottom:2px}
.hseconcert .hseconcert-preview-information h2{margin:12px 0 24px!important;max-width:14ch;text-wrap:balance}
.hseconcert .hseconcert-preview-facts{border-top:1px solid rgba(77,101,122,.28);margin-top:8px}
.hseconcert .hseconcert-preview-facts>div{padding:17px 0;border-bottom:1px solid rgba(77,101,122,.22)}
.hseconcert .hseconcert-preview-book{margin-top:28px;min-width:210px;text-align:center;border-radius:10px;padding:16px 24px;background:linear-gradient(180deg,#2d4760,#203248)!important;box-shadow:0 14px 26px rgba(18,37,53,.16)}
.hseconcert .hseconcert-preview-book:hover{transform:translateY(-1px);box-shadow:0 18px 32px rgba(18,37,53,.22)}
.hseconcert .hseconcert-preview-description{margin-top:44px;padding:34px 38px;border:1px solid rgba(255,255,255,.55);border-top:none;background:rgba(244,248,251,.36);border-radius:24px;box-shadow:0 18px 44px rgba(17,37,53,.06)}
.hseconcert .hseconcert-preview-description h3{margin-bottom:16px!important}
body.single-konzert .hseconcert-production-detail{padding-top:6px}
body.single-konzert .hseconcert-production-detail .hseconcert-preview-information{background:rgba(244,248,251,.45);border:1px solid rgba(255,255,255,.55);border-radius:24px;padding:28px 32px;box-shadow:0 18px 44px rgba(17,37,53,.08)}
body.single-konzert .hseconcert-production-detail .hseconcert-preview-art{align-self:center}
body.single-konzert .hseconcert-production-detail .hseconcert-preview-frame{position:relative;overflow:hidden;background:linear-gradient(180deg,rgba(244,248,251,.92),rgba(225,234,241,.88));border:1px solid rgba(255,255,255,.72)!important;border-radius:22px!important;padding:16px!important;box-shadow:0 18px 44px rgba(17,37,53,.12), inset 0 1px 0 rgba(255,255,255,.75)!important}
body.single-konzert .hseconcert-production-detail .hseconcert-preview-frame::before{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:linear-gradient(145deg,rgba(255,255,255,.24),transparent 36%)}
body.single-konzert .hseconcert-production-detail .hseconcert-preview-frame img{display:block;width:100%!important;height:auto!important;max-height:none!important;aspect-ratio:4/5;object-fit:cover!important;border-radius:16px!important;background:#dfe8ee;box-shadow:0 22px 46px rgba(18,37,53,.22)!important}
body.single-konzert .hseconcert-production-detail .hseconcert-preview-information h2{margin:12px 0 24px!important;max-width:14ch;text-wrap:balance}
body.single-konzert .hseconcert-production-detail .hseconcert-preview-facts{border-top:1px solid rgba(77,101,122,.28);margin-top:8px}
body.single-konzert .hseconcert-production-detail .hseconcert-preview-facts>div{padding:17px 0;border-bottom:1px solid rgba(77,101,122,.22)}
body.single-konzert .hseconcert-production-detail .hseconcert-preview-book{margin-top:28px;min-width:210px;text-align:center;border-radius:10px;padding:16px 24px;background:linear-gradient(180deg,#2d4760,#203248)!important;box-shadow:0 14px 26px rgba(18,37,53,.16)}
@media(max-width:700px){
 .hseconcert .hseconcert-preview-back{font-size:14px;padding:8px 13px}
 .hseconcert .hseconcert-preview-information,body.single-konzert .hseconcert-production-detail .hseconcert-preview-information{padding:22px 18px;border-radius:20px}
 .hseconcert .hseconcert-preview-frame,body.single-konzert .hseconcert-production-detail .hseconcert-preview-frame{padding:12px!important;border-radius:18px!important}
 .hseconcert .hseconcert-preview-frame img,.hseconcert .hseconcert-preview-frame .hseconcert-preview-placeholder,body.single-konzert .hseconcert-production-detail .hseconcert-preview-frame img{border-radius:14px!important}
 .hseconcert .hseconcert-preview-information h2,body.single-konzert .hseconcert-production-detail .hseconcert-preview-information h2{max-width:none}
 .hseconcert .hseconcert-preview-description{padding:24px 18px;border-radius:20px}
}

/* v1.7.5: Modern programme cards. Scope to the overview only, not single-concert pages. */
.hseconcert.hseconcert-listing {
  --hse-card-bg: #f3f6f8;
  --hse-card-border: rgba(40, 66, 85, .22);
  --hse-card-shadow: 0 5px 16px rgba(24, 46, 65, .08), 0 18px 32px rgba(24, 46, 65, .07);
}

.hseconcert.hseconcert-listing .hseconcert-heading {
  max-width: 980px;
  margin-bottom: 26px;
}
.hseconcert.hseconcert-listing .hseconcert-filters {
  margin-bottom: 24px;
  border-bottom: 1px solid rgba(32, 50, 72, .16);
  padding-bottom: 21px;
}
.hseconcert.hseconcert-listing .hseconcert-grid {
  gap: 27px 24px;
  align-items: stretch;
}
.hseconcert.hseconcert-listing .hseconcert-card {
  display: flex;
  flex-direction: column;
  height: 100%;
  overflow: hidden;
  padding: 0;
  border: 1px solid var(--hse-card-border);
  border-radius: 15px;
  background: var(--hse-card-bg) !important;
  box-shadow: var(--hse-card-shadow);
  transition: box-shadow .22s ease, border-color .22s ease, transform .22s ease;
}
.hseconcert.hseconcert-listing .hseconcert-card:hover {
  border-color: rgba(88, 112, 130, .4);
  box-shadow: 0 10px 25px rgba(24,46,65,.12), 0 20px 38px rgba(24,46,65,.08);
}
.hseconcert.hseconcert-listing .hseconcert-photo {
  width: 100%;
  height: auto;
  aspect-ratio: 1.55 / 1;
  min-height: 0;
  border-radius: 0 !important;
  box-shadow: none !important;
  overflow: hidden;
  display: block;
  flex: none;
}
.hseconcert.hseconcert-listing .hseconcert-photo img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}
.hseconcert.hseconcert-listing .hseconcert-date {
  left: 15px;
  bottom: 14px;
  padding: 7px 12px;
  border-radius: 7px;
  background: #f9f7f2;
  border: 1px solid rgba(255,255,255,.65);
  box-shadow: 0 3px 16px rgba(5,22,35,.2);
  font-size: 12px;
  color: #203248;
}
.hseconcert.hseconcert-listing .hseconcert-date strong {
  font-size: 27px;
  line-height: 1;
}
.hseconcert.hseconcert-listing .hseconcert-cardbody {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  min-height: 0;
  padding: 21px 22px 20px;
}
.hseconcert.hseconcert-listing .hseconcert-cardbody .hseconcert-place {
  display: inline-flex;
  align-self: flex-start;
  align-items: center;
  max-width: 100%;
  padding: 6px 10px;
  border-left: 3px solid #ac8554;
  border-radius: 3px 7px 7px 3px;
  background: rgba(184, 146, 93, .15);
  color: #3b4652 !important;
  font: 700 14px/1.35 Arial, sans-serif !important;
  letter-spacing: .045em;
  text-transform: none;
  overflow-wrap: anywhere;
}
.hseconcert.hseconcert-listing .hseconcert-card h3 {
  margin: 14px 0 11px !important;
  font: normal clamp(22px, 1.8vw, 24px)/1.3 Georgia, serif !important;
  letter-spacing: -.012em;
  overflow-wrap: anywhere;
}
.hseconcert.hseconcert-listing .hseconcert-card h3 a,
.hseconcert.hseconcert-listing .hseconcert-card h3 a:visited {
  color: #203248 !important;
  text-decoration: none !important;
  border-bottom: 0 !important;
  box-shadow: none !important;
}
.hseconcert.hseconcert-listing .hseconcert-card h3 a:hover { text-decoration: underline !important; }
.hseconcert.hseconcert-listing .hseconcert-subline {
  margin: 0 !important;
  color: #42596a !important;
  font: 500 14px/1.55 Arial, sans-serif !important;
}
.hseconcert.hseconcert-listing .hseconcert-cardbody .hseconcert-actions {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 10px;
  width: 100%;
  margin-top: auto !important;
  padding-top: 23px;
}
.hseconcert.hseconcert-listing .hseconcert-actions > a {
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  margin: 0;
  padding: 11px 12px;
  border-radius: 8px;
  font: 700 13px/1.25 Arial, sans-serif !important;
  text-decoration: none !important;
  text-align: center;
  white-space: nowrap;
  box-shadow: none !important;
  transition: background-color .2s ease, border-color .2s ease;
}
.hseconcert.hseconcert-listing .hseconcert-actions > a:not(.hseconcert-ticket) {
  background: transparent !important;
  border: 1px solid rgba(32,50,72,.33) !important;
  color: #203248 !important;
}
.hseconcert.hseconcert-listing .hseconcert-actions > a:not(.hseconcert-ticket):hover {
  background: #e4ebf0 !important;
  border-color: #203248 !important;
}
.hseconcert.hseconcert-listing .hseconcert-actions > .hseconcert-ticket {
  background: #203248 !important;
  color: #fff !important;
  border: 1px solid #203248 !important;
  padding-inline: 17px;
}
.hseconcert.hseconcert-listing .hseconcert-actions > .hseconcert-ticket:hover {
  background: #34536d !important;
  border-color: #34536d !important;
}
.hseconcert.hseconcert-listing .hseconcert-actions > a:only-child { grid-column: 1 / -1; }

@media (max-width: 980px) {
  .hseconcert.hseconcert-listing .hseconcert-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
}
@media (max-width: 700px) {
  .hseconcert.hseconcert-listing { padding: 0 16px; margin-top: 22px; }
  .hseconcert.hseconcert-listing .hseconcert-heading { margin-bottom: 22px; }
  .hseconcert.hseconcert-listing .hseconcert-filters { margin-bottom: 24px; }
  .hseconcert.hseconcert-listing .hseconcert-grid {
    grid-template-columns: minmax(0,1fr);
    gap: 25px;
  }
  .hseconcert.hseconcert-listing .hseconcert-card {
    border: 1px solid rgba(32,50,72,.30);
    border-radius: 16px;
    background: #f3f6f8 !important;
    box-shadow: 0 8px 22px rgba(24,46,65,.13), 0 1px 3px rgba(24,46,65,.08);
  }
  .hseconcert.hseconcert-listing .hseconcert-photo {
    aspect-ratio: 1.58 / 1;
    height: auto;
  }
  .hseconcert.hseconcert-listing .hseconcert-cardbody { padding: 20px 19px 19px; }
  .hseconcert.hseconcert-listing .hseconcert-cardbody .hseconcert-place {
    font-size: 15px !important;
    letter-spacing: .025em;
    padding: 7px 11px;
  }
  .hseconcert.hseconcert-listing .hseconcert-card h3 {
    font-size: clamp(23px, 5.4vw, 27px) !important;
    line-height: 1.25 !important;
    margin: 13px 0 10px !important;
  }
  .hseconcert.hseconcert-listing .hseconcert-subline { font-size: 14px !important; }
  .hseconcert.hseconcert-listing .hseconcert-cardbody .hseconcert-actions {
    margin-top: 18px !important;
    padding-top: 15px;
    border-top: 1px solid rgba(32,50,72,.16);
  }
  .hseconcert.hseconcert-listing .hseconcert-actions > a { min-height: 46px; font-size: 13px !important; }
}
@media (max-width: 360px) {
  .hseconcert.hseconcert-listing { padding-inline: 11px; }
  .hseconcert.hseconcert-listing .hseconcert-cardbody { padding: 17px 14px; }
  .hseconcert.hseconcert-listing .hseconcert-actions > a { padding-inline: 8px; font-size: 12px !important; }
  .hseconcert.hseconcert-listing .hseconcert-actions > .hseconcert-ticket { padding-inline: 11px; }
}
@media (prefers-reduced-motion: reduce) {
  .hseconcert.hseconcert-listing .hseconcert-card,
  .hseconcert.hseconcert-listing .hseconcert-actions > a { transition: none !important; }
}

/* v1.7.6: Homepage-only upcoming concert teasers. Both modes use existing posts. */
.hseconcert.hseconcert-home {
  --hse-home-navy:#203248;
  --hse-home-gold:#b3915d;
  --hse-home-light:#f3f6f8;
  --hse-home-edge:rgba(32,50,72,.16);
  max-width:1180px;
  margin:52px auto 58px;
  padding:0 18px;
  scroll-margin-top:108px;
  color:var(--hse-home-navy);
}
.hseconcert-home .hseconcert-home__header {
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:22px;
  margin:0 0 25px;
}
.hseconcert-home .hseconcert-home__eyebrow {
  font:700 11px/1.5 Arial,sans-serif!important;
  letter-spacing:.15em;
  color:#987546!important;
  margin:0 0 10px!important;
}
.hseconcert-home .hseconcert-home__header h2 {
  font:normal clamp(30px,3.3vw,44px)/1.14 Georgia,serif!important;
  letter-spacing:-.015em;
  color:#203248!important;
  margin:0 0 10px!important;
}
.hseconcert-home .hseconcert-home__intro {
  font:15px/1.55 Arial,sans-serif!important;
  color:#465c6d!important;
  margin:0!important;
}
.hseconcert-home .hseconcert-home__empty {
  font:15px/1.6 Arial,sans-serif!important;
  padding:20px 0!important;
  border-top:1px solid var(--hse-home-edge);
}
.hseconcert-home .hseconcert-home__city {
  font:700 11px/1.4 Arial,sans-serif!important;
  color:#917041!important;
  letter-spacing:.13em;
  text-transform:uppercase;
}
.hseconcert-home .hseconcert-home__footer {
  display:flex;
  justify-content:center;
  margin:27px 0 0;
}
.hseconcert-home .hseconcert-home__footer a {
  display:inline-flex;
  align-items:center;
  gap:13px;
  border:1px solid rgba(32,50,72,.25);
  border-radius:999px;
  padding:12px 22px;
  color:#203248!important;
  text-decoration:none!important;
  font:600 14px/1.35 Arial,sans-serif!important;
  background:transparent;
  transition:background .2s ease,border-color .2s ease;
}
.hseconcert-home .hseconcert-home__footer a:hover,
.hseconcert-home .hseconcert-home__footer a:focus-visible {
  background:#e9edf0;
  border-color:rgba(32,50,72,.48);
}
.hseconcert-home .hseconcert-home__ticket {
  display:inline-flex;
  justify-content:center;
  align-items:center;
  border-radius:8px;
  min-height:41px;
  padding:10px 17px;
  background:#203248!important;
  color:#fff!important;
  text-decoration:none!important;
  white-space:nowrap;
  font:600 13px/1.3 Arial,sans-serif!important;
  transition:background-color .2s ease;
}
.hseconcert-home .hseconcert-home__ticket:hover {background:#34536d!important;}
.hseconcert-home .hseconcert-home__detail-link {
  color:#264961!important;
  text-decoration:none!important;
  font:600 13px/1.35 Arial,sans-serif!important;
  white-space:nowrap;
}
.hseconcert-home .hseconcert-home__detail-link:hover {text-decoration:underline!important;}
/* Vertical, information-first list. */
.hseconcert-home .hseconcert-home__list {border-top:1px solid var(--hse-home-edge);}
.hseconcert-home .hseconcert-home__row {
  display:grid;
  grid-template-columns:85px minmax(0,1fr) auto;
  align-items:center;
  gap:20px;
  padding:18px 15px 18px 4px;
  border-bottom:1px solid var(--hse-home-edge);
  transition:background-color .2s ease;
}
.hseconcert-home .hseconcert-home__row:hover {background:rgba(235,240,243,.52);}
.hseconcert-home .hseconcert-home__date {
  min-height:74px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:2px;
  border-radius:10px;
  background:#e7edf1;
  border:1px solid rgba(32,50,72,.08);
  color:#203248;
}
.hseconcert-home .hseconcert-home__date strong {font:normal 29px/1.1 Georgia,serif;}
.hseconcert-home .hseconcert-home__date span {
  font:600 11px/1.4 Arial,sans-serif;
  color:#53697b;
  text-transform:uppercase;
}
.hseconcert-home .hseconcert-home__details {min-width:0;}
.hseconcert-home .hseconcert-home__details h3 {
  font:normal clamp(20px,2.2vw,25px)/1.22 Georgia,serif!important;
  margin:4px 0 6px!important;
  color:#203248!important;
}
.hseconcert-home .hseconcert-home__details h3 a,
.hseconcert-home .hseconcert-home__slide-content h3 a {color:#203248!important;text-decoration:none!important;}
.hseconcert-home .hseconcert-home__details h3 a:hover,
.hseconcert-home .hseconcert-home__slide-content h3 a:hover {text-decoration:underline!important;}
.hseconcert-home .hseconcert-home__details p {
  margin:0!important;
  color:#536778!important;
  font:13px/1.5 Arial,sans-serif!important;
}
.hseconcert-home .hseconcert-home__actions {display:flex;align-items:center;gap:19px;}
/* Horizontal swipe/arrow-controlled cards. */
.hseconcert-home .hseconcert-home__arrows {display:flex;gap:8px;padding-bottom:4px;flex:none;}
.hseconcert-home .hseconcert-home__arrow {
  display:grid;
  place-items:center;
  width:43px;
  height:43px;
  border-radius:50%;
  border:1px solid rgba(32,50,72,.25)!important;
  background:transparent!important;
  color:#203248!important;
  font:20px/1 Arial,sans-serif!important;
  cursor:pointer;
  padding:0!important;
}
.hseconcert-home .hseconcert-home__arrow:hover:not(:disabled) {background:#e9edf0!important;}
.hseconcert-home .hseconcert-home__arrow:disabled {opacity:.35;cursor:default;}
.hseconcert-home .hseconcert-home__track {
  display:flex;
  gap:19px;
  overflow-x:auto;
  overflow-y:hidden;
  scroll-snap-type:x mandatory;
  scroll-padding-inline:2px;
  overscroll-behavior-inline:contain;
  -webkit-overflow-scrolling:touch;
  padding:2px 3px 20px;
  scrollbar-width:thin;
  scrollbar-color:#b4c0ca transparent;
}
.hseconcert-home .hseconcert-home__slide {
  flex:0 0 calc((100% - 38px) / 3);
  min-width:0;
  display:flex;
  flex-direction:column;
  background:var(--hse-home-light);
  border:1px solid rgba(40,66,85,.20);
  border-radius:15px;
  overflow:hidden;
  box-shadow:0 7px 21px rgba(24,46,65,.09);
  scroll-snap-align:start;
}
.hseconcert-home .hseconcert-home__image {
  position:relative;
  display:block;
  width:100%;
  aspect-ratio:1.55 / 1;
  overflow:hidden;
  background:#2d455a;
}
.hseconcert-home .hseconcert-home__image img {
  width:100%!important;
  height:100%!important;
  display:block;
  object-fit:cover!important;
  transition:transform .3s ease;
}
.hseconcert-home .hseconcert-home__slide:hover .hseconcert-home__image img {transform:scale(1.025);}
.hseconcert-home .hseconcert-home__image-fallback {
  display:grid;
  place-items:center;
  height:100%;
  font:60px Georgia,serif;
  color:#d4b47b;
}
.hseconcert-home .hseconcert-home__date-badge {
  position:absolute;
  bottom:12px;
  left:13px;
  display:flex;
  align-items:baseline;
  gap:8px;
  padding:6px 12px;
  border-radius:6px;
  background:#f5f1e8;
  color:#203248;
  font:12px Arial,sans-serif;
  box-shadow:0 3px 12px rgba(0,0,0,.15);
}
.hseconcert-home .hseconcert-home__date-badge strong {font:normal 25px Georgia,serif;}
.hseconcert-home .hseconcert-home__slide-content {
  display:flex;
  flex-direction:column;
  flex:1;
  min-width:0;
  gap:10px;
  padding:19px 18px 17px;
}
.hseconcert-home .hseconcert-home__slide-content h3 {
  color:#203248!important;
  margin:0!important;
  font:normal 23px/1.27 Georgia,serif!important;
}
.hseconcert-home .hseconcert-home__slide-content p {
  margin:0!important;
  color:#536778!important;
  font:13px/1.55 Arial,sans-serif!important;
}
.hseconcert-home .hseconcert-home__slide-actions {
  display:flex;
  justify-content:space-between;
  align-items:center;
  flex-wrap:wrap;
  gap:10px;
  padding-top:14px;
  margin-top:auto;
  border-top:1px solid rgba(32,50,72,.12);
}
.hseconcert-home a:focus-visible,.hseconcert-home button:focus-visible {
  outline:3px solid #ad8445;
  outline-offset:3px;
}
@media (max-width:970px) {
  .hseconcert-home .hseconcert-home__slide {flex-basis:calc((100% - 19px)/2);}
}
@media (max-width:700px) {
  .hseconcert.hseconcert-home {padding:0 15px;margin-top:32px;margin-bottom:38px;scroll-margin-top:80px;}
  .hseconcert-home .hseconcert-home__header {gap:8px;margin-bottom:20px;}
  .hseconcert-home .hseconcert-home__header h2 {font-size:30px!important;}
  .hseconcert-home .hseconcert-home__eyebrow {font-size:10px!important;}
  .hseconcert-home .hseconcert-home__intro {font-size:14px!important;}
  .hseconcert-home .hseconcert-home__row {grid-template-columns:68px minmax(0,1fr);gap:13px;padding:16px 0;}
  .hseconcert-home .hseconcert-home__date {min-height:69px;}
  .hseconcert-home .hseconcert-home__date strong {font-size:26px;}
  .hseconcert-home .hseconcert-home__details h3 {font-size:21px!important;}
  .hseconcert-home .hseconcert-home__actions {grid-column:2;gap:17px;margin-top:-1px;flex-wrap:wrap;}
  .hseconcert-home .hseconcert-home__ticket {min-height:37px;padding:8px 13px;}
  .hseconcert-home .hseconcert-home__arrow {width:36px;height:36px;font-size:18px!important;}
  .hseconcert-home .hseconcert-home__arrows {gap:5px;align-self:center;}
  .hseconcert-home .hseconcert-home__slide {flex-basis:calc(100% - 34px);}
  .hseconcert-home .hseconcert-home__slide-content h3 {font-size:22px!important;}
  .hseconcert-home .hseconcert-home__track {gap:14px;}
}
@media (prefers-reduced-motion:reduce) {
  .hseconcert-home .hseconcert-home__image img,
  .hseconcert-home .hseconcert-home__footer a {transition:none!important;}
  .hseconcert-home .hseconcert-home__slide:hover .hseconcert-home__image img {transform:none!important;}
}

/* v1.7.7 - clearer separators on mobile in light and dark environments. */
@media(max-width:780px){
  .hseconcert.hseconcert-home .hseconcert-home__list{border-top:2px solid #b89a68!important;}
  .hseconcert.hseconcert-home .hseconcert-home__row{border-bottom:2px solid #b89a68!important;}
}

/* v1.7.8: Consistent visual formats: 4:5 portraits only on detail pages,
   landscape artwork for programme cards. Compatible with custom Media Library URLs. */
.hseconcert.hseconcert-preview-detail .hseconcert-preview-frame img,
body.single-konzert .hseconcert-production-detail .hseconcert-preview-frame img {
  display:block!important;
  width:100%!important;
  height:auto!important;
  max-height:none!important;
  aspect-ratio:4 / 5!important;
  object-fit:cover!important;
  object-position:center center;
}
.hseconcert.hseconcert-listing .hseconcert-photo,
.hseconcert-home .hseconcert-home__image {
  aspect-ratio:1.55 / 1;
  overflow:hidden;
}
.hseconcert.hseconcert-listing .hseconcert-photo img,
.hseconcert-home .hseconcert-home__image img {
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
}


/* v1.7.9: Three-part detail presentation. One image, booking information, and a
   concert introduction are immediately visible; complete programme remains below. */
.hseconcert.hseconcert-detail-three .hseconcert-preview-layout,
body.single-konzert .hseconcert.hseconcert-detail-three .hseconcert-preview-layout {
  display:grid!important;
  grid-template-columns:minmax(240px, .82fr) minmax(0, 2.18fr)!important;
  gap:clamp(22px,3.4vw,46px)!important;
  align-items:start!important;
}
.hseconcert.hseconcert-detail-three .hseconcert-preview-art,
body.single-konzert .hseconcert.hseconcert-detail-three .hseconcert-preview-art {
  width:100%; max-width:none!important; align-self:start!important;
}
.hseconcert.hseconcert-detail-three .hseconcert-preview-main {min-width:0;}
.hseconcert.hseconcert-detail-three .hseconcert-preview-heading {margin-bottom:19px;}
.hseconcert.hseconcert-detail-three .hseconcert-preview-heading h2,
body.single-konzert .hseconcert.hseconcert-detail-three .hseconcert-preview-heading h2 {
  color:#203248!important;
  font:normal clamp(29px,3.2vw,41px)/1.15 Georgia,serif!important;
  max-width:none!important;
  text-wrap:balance;
  margin:9px 0 0!important;
  overflow-wrap:break-word;
}
.hseconcert.hseconcert-detail-three .hseconcert-preview-columns {
  display:grid; grid-template-columns:minmax(0, .94fr) minmax(0, 1.06fr); gap:16px; align-items:stretch;
}
.hseconcert.hseconcert-detail-three .hseconcert-preview-information,
body.single-konzert .hseconcert.hseconcert-detail-three .hseconcert-preview-information,
.hseconcert.hseconcert-detail-three .hseconcert-preview-intro {
  min-width:0;
  display:flex; flex-direction:column;
  background:rgba(244,248,251,.55)!important;
  border:1px solid rgba(255,255,255,.7)!important;
  border-radius:18px!important;
  padding:20px 19px!important;
  box-shadow:0 12px 32px rgba(17,37,53,.07)!important;
  color:#203248!important;
}
.hseconcert.hseconcert-detail-three .hseconcert-detail-small-heading {
  color:#9a7544!important;
  font:700 11px/1.5 Arial,sans-serif!important;
  text-transform:uppercase;letter-spacing:.13em;
  margin:0 0 14px!important;
}
.hseconcert.hseconcert-detail-three .hseconcert-preview-facts {margin:0!important;}
.hseconcert.hseconcert-detail-three .hseconcert-preview-facts>div,
body.single-konzert .hseconcert.hseconcert-detail-three .hseconcert-preview-facts>div {
  grid-template-columns:62px minmax(0,1fr); gap:8px;
  padding:11px 0!important;
  font:14px/1.5 Arial,sans-serif!important;
}
.hseconcert.hseconcert-detail-three .hseconcert-preview-facts>div strong {overflow-wrap:anywhere;font-size:14px;}
.hseconcert.hseconcert-detail-three .hseconcert-preview-book,
body.single-konzert .hseconcert.hseconcert-detail-three .hseconcert-preview-book {
  display:inline-flex;align-self:flex-start;align-items:center;justify-content:center;
  min-width:0!important;max-width:100%;margin-top:auto!important;
  padding:13px 17px!important;font-size:14px!important;
  line-height:1.25!important;white-space:normal;
  text-align:center;
}
.hseconcert.hseconcert-detail-three .hseconcert-preview-information .hseconcert-preview-book {margin-top:20px!important;}
.hseconcert.hseconcert-detail-three .hseconcert-preview-intro p {
  color:#203248!important;
  font:15px/1.68 Arial,sans-serif!important;
  margin:0 0 15px!important;
  overflow-wrap:break-word;
}
.hseconcert.hseconcert-detail-three .hseconcert-preview-readmore {
  margin-top:auto;display:inline-block;align-self:flex-start;
  font:600 13px/1.5 Arial,sans-serif!important;
  color:#254a68!important;text-decoration:underline!important;text-underline-offset:3px;
}
.hseconcert.hseconcert-detail-three .hseconcert-preview-description {
  scroll-margin-top:105px;
  max-width:980px!important;
  margin:35px auto 0!important;
  padding:30px clamp(20px,4vw,44px)!important;
}
.hseconcert.hseconcert-detail-three .hseconcert-preview-description h3:first-child {margin-bottom:18px!important;}
@media(max-width:960px){
 .hseconcert.hseconcert-detail-three .hseconcert-preview-layout,
 body.single-konzert .hseconcert.hseconcert-detail-three .hseconcert-preview-layout {
   grid-template-columns:minmax(0,1fr)!important;
   gap:22px!important;
 }
 .hseconcert.hseconcert-detail-three .hseconcert-preview-main {order:1;}
 .hseconcert.hseconcert-detail-three .hseconcert-preview-art,
 body.single-konzert .hseconcert.hseconcert-detail-three .hseconcert-preview-art {
   order:2; max-width:360px!important; justify-self:center; width:100%;
 }
 .hseconcert.hseconcert-detail-three .hseconcert-preview-heading h2 {font-size:clamp(29px,5vw,39px)!important;}
}
@media(max-width:620px){
 .hseconcert.hseconcert-detail-three .hseconcert-preview-columns {grid-template-columns:minmax(0,1fr);gap:12px;}
 .hseconcert.hseconcert-detail-three .hseconcert-preview-heading h2,
 body.single-konzert .hseconcert.hseconcert-detail-three .hseconcert-preview-heading h2 {font-size:clamp(27px,7vw,34px)!important;}
 .hseconcert.hseconcert-detail-three .hseconcert-preview-art {max-width:290px!important;}
 .hseconcert.hseconcert-detail-three .hseconcert-preview-information,
 body.single-konzert .hseconcert.hseconcert-detail-three .hseconcert-preview-information,
 .hseconcert.hseconcert-detail-three .hseconcert-preview-intro {padding:18px!important;border-radius:16px!important;}
 .hseconcert.hseconcert-detail-three .hseconcert-preview-description {padding:22px 18px!important;}
}


/* HSE Konzerte v1.7.10: one flexible information panel beside portrait artwork.
   Programme and Besetzung are generated only from headings in the saved text.
   Does not change the concert overview or homepage list. */
.hseconcert.hseconcert-detail-unified .hseconcert-preview-layout,
body.single-konzert .hseconcert.hseconcert-detail-unified .hseconcert-preview-layout {
  display:grid!important;
  grid-template-columns:minmax(235px,.88fr) minmax(0,1.9fr)!important;
  gap:clamp(22px,3vw,43px)!important;
  align-items:start!important;
}
.hseconcert.hseconcert-detail-unified .hseconcert-preview-art,
body.single-konzert .hseconcert.hseconcert-detail-unified .hseconcert-preview-art {
  align-self:start!important;
  width:100%!important;
  max-width:none!important;
  margin:0!important;
}
.hseconcert.hseconcert-detail-unified .hseconcert-detail-panel {
  min-width:0;
  color:#203248!important;
  background:rgba(244,248,251,.53);
  border:1px solid rgba(255,255,255,.78);
  border-radius:24px;
  box-shadow:0 17px 44px rgba(17,37,53,.08);
  padding:clamp(22px,3vw,37px)!important;
}
.hseconcert.hseconcert-detail-unified .hseconcert-detail-heading {
  padding-bottom:20px;
  margin-bottom:22px;
  border-bottom:1px solid rgba(77,101,122,.24);
}
.hseconcert.hseconcert-detail-unified .hseconcert-detail-heading h2,
body.single-konzert .hseconcert.hseconcert-detail-unified .hseconcert-detail-heading h2 {
  font:400 clamp(28px,3.3vw,43px)/1.14 Georgia,serif!important;
  color:#203248!important;
  margin:10px 0 0!important;
  max-width:none!important;
  overflow-wrap:break-word;
  text-wrap:balance;
}
.hseconcert.hseconcert-detail-unified .hseconcert-detail-top {
  display:grid;
  grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);
  gap:clamp(20px,2.6vw,30px);
  align-items:start;
}
.hseconcert.hseconcert-detail-unified .hseconcert-detail-top--facts-only {
  grid-template-columns:minmax(0,1fr);
}
.hseconcert.hseconcert-detail-unified .hseconcert-detail-facts,
.hseconcert.hseconcert-detail-unified .hseconcert-detail-prose {
  min-width:0;
}
.hseconcert.hseconcert-detail-unified .hseconcert-detail-facts>div {
  display:grid;
  grid-template-columns:61px minmax(0,1fr);
  gap:8px;
  padding:12px 0;
  border-bottom:1px solid rgba(77,101,122,.18);
  color:#203248!important;
  font:14px/1.5 Arial,sans-serif!important;
}
.hseconcert.hseconcert-detail-unified .hseconcert-detail-facts>div:first-child {padding-top:0;}
.hseconcert.hseconcert-detail-unified .hseconcert-detail-facts span {color:#536576!important;}
.hseconcert.hseconcert-detail-unified .hseconcert-detail-facts strong {
  font-size:14px!important; font-weight:600!important;
  color:#203248!important;overflow-wrap:anywhere;
}
.hseconcert.hseconcert-detail-unified .hseconcert-preview-book,
body.single-konzert .hseconcert.hseconcert-detail-unified .hseconcert-preview-book {
  display:inline-flex!important;
  align-items:center;justify-content:center;
  white-space:normal;
  max-width:100%;min-width:0!important;
  text-align:center;
  margin-top:18px!important;
  padding:13px 18px!important;
  font:600 14px/1.35 Arial,sans-serif!important;
  color:#fff!important;
}
.hseconcert.hseconcert-detail-unified .hseconcert-detail-prose,
.hseconcert.hseconcert-detail-unified .hseconcert-detail-richtext {
  font:16px/1.7 Arial,sans-serif!important;
  color:#203248!important;
  overflow-wrap:break-word;
}
.hseconcert.hseconcert-detail-unified .hseconcert-detail-prose p,
.hseconcert.hseconcert-detail-unified .hseconcert-detail-richtext p {
  margin:0 0 14px!important;
  font:inherit!important;
  line-height:1.7!important;
  color:#203248!important;
}
.hseconcert.hseconcert-detail-unified .hseconcert-detail-prose p:last-child,
.hseconcert.hseconcert-detail-unified .hseconcert-detail-richtext p:last-child {margin-bottom:0!important;}
.hseconcert.hseconcert-detail-unified .hseconcert-detail-prose h2,
.hseconcert.hseconcert-detail-unified .hseconcert-detail-prose h3,
.hseconcert.hseconcert-detail-unified .hseconcert-detail-prose h4 {
  font:400 23px/1.3 Georgia,serif!important;
  color:#203248!important;
  margin:15px 0 8px!important;
}
.hseconcert.hseconcert-detail-unified .hseconcert-detail-section {
  border-top:1px solid rgba(77,101,122,.24);
  padding-top:19px;
  margin-top:24px;
}
.hseconcert.hseconcert-detail-unified .hseconcert-detail-section>h3 {
  margin:0 0 14px!important;
  font:600 12px/1.4 Arial,sans-serif!important;
  text-transform:uppercase;
  letter-spacing:.16em;
  color:#997247!important;
}
.hseconcert.hseconcert-detail-unified .hseconcert-detail-richtext ul,
.hseconcert.hseconcert-detail-unified .hseconcert-detail-richtext ol {margin:0 0 12px 22px!important;}
.hseconcert.hseconcert-detail-unified .hseconcert-detail-richtext strong {color:#203248!important;}
@media(max-width:970px){
 .hseconcert.hseconcert-detail-unified .hseconcert-preview-layout,
 body.single-konzert .hseconcert.hseconcert-detail-unified .hseconcert-preview-layout {
   grid-template-columns:minmax(0,1fr)!important;
   gap:20px!important;
 }
 .hseconcert.hseconcert-detail-unified .hseconcert-detail-panel {order:1;}
 .hseconcert.hseconcert-detail-unified .hseconcert-preview-art,
 body.single-konzert .hseconcert.hseconcert-detail-unified .hseconcert-preview-art {
   order:2;max-width:390px!important;justify-self:center;margin:0 auto!important;
 }
}
@media(max-width:610px){
 .hseconcert.hseconcert-detail-unified .hseconcert-detail-panel {padding:21px 18px!important;border-radius:19px!important;}
 .hseconcert.hseconcert-detail-unified .hseconcert-detail-heading h2,
 body.single-konzert .hseconcert.hseconcert-detail-unified .hseconcert-detail-heading h2 {
   font-size:clamp(28px,7.2vw,35px)!important;
 }
 .hseconcert.hseconcert-detail-unified .hseconcert-detail-top {grid-template-columns:minmax(0,1fr);gap:22px;}
 .hseconcert.hseconcert-detail-unified .hseconcert-detail-prose {border-top:1px solid rgba(77,101,122,.18);padding-top:16px;}
 .hseconcert.hseconcert-detail-unified .hseconcert-detail-prose,
 .hseconcert.hseconcert-detail-unified .hseconcert-detail-richtext {font-size:15px!important;}
 .hseconcert.hseconcert-detail-unified .hseconcert-preview-art {max-width:310px!important;}
}

/* HSE Konzerte v1.7.11: approved editorial detail design.
   Primary information first, smaller portrait on right, optional cards below.
   Scope only to single/test detail pages. Listing and homepage remain unchanged. */
.hseconcert.hseconcert-preview-detail.hseconcert-detail-editorial {
  position: relative;
  left: 50%;
  transform: translateX(-50%);
  width: min(1280px, calc(100vw - 48px)) !important;
  max-width: none !important;
  margin: 20px 0 78px !important;
  padding: 0 !important;
  color: #203248 !important;
  font-family: Arial, sans-serif;
}
.hseconcert.hseconcert-detail-editorial .hseconcert-editorial-nav {
  margin: 0 0 20px;
}
.hseconcert.hseconcert-detail-editorial .hseconcert-preview-back {
  display: inline-flex !important;
  align-items: center;
  margin: 0 !important;
  padding: 4px 0 !important;
  color: #35506a !important;
  background: transparent !important;
  box-shadow: none !important;
  text-decoration: underline !important;
  text-underline-offset: 3px;
  font: 500 13px/1.45 Arial, sans-serif !important;
}
.hseconcert.hseconcert-detail-editorial .hseconcert-editorial-hero {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(240px, 310px);
  column-gap: clamp(32px, 5vw, 78px);
  align-items: start;
}
.hseconcert.hseconcert-detail-editorial .hseconcert-editorial-content,
.hseconcert.hseconcert-detail-editorial .hseconcert-editorial-art {
  min-width: 0;
}
.hseconcert.hseconcert-detail-editorial .hseconcert-editorial-place {
  font: 700 12px/1.3 Arial, sans-serif !important;
  letter-spacing: .13em;
  color: #9a7544 !important;
  text-transform: none;
  margin: 0 0 13px !important;
}
.hseconcert.hseconcert-detail-editorial .hseconcert-editorial-title,
body.single-konzert .hseconcert.hseconcert-detail-editorial .hseconcert-editorial-title {
  color: #203248 !important;
  font: 400 clamp(34px, 3.4vw, 50px)/1.13 Georgia, serif !important;
  letter-spacing: -.014em;
  text-wrap: balance;
  overflow-wrap: anywhere;
  max-width: none !important;
  margin: 0 0 22px !important;
}
.hseconcert.hseconcert-detail-editorial .hseconcert-editorial-meta {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 12px 0;
  margin: 0 0 22px;
  color: #203248 !important;
}
.hseconcert.hseconcert-detail-editorial .hseconcert-editorial-meta-item {
  display: flex;
  align-items: center;
  gap: 9px;
  min-width: 0;
  font: 600 14px/1.5 Arial, sans-serif !important;
  color: #203248 !important;
}
.hseconcert.hseconcert-detail-editorial .hseconcert-editorial-meta-item + .hseconcert-editorial-meta-item {
  padding-left: 20px;
  margin-left: 20px;
  border-left: 1px solid rgba(70, 96, 117, .33);
}
.hseconcert.hseconcert-detail-editorial .hseconcert-editorial-meta-item svg {
  width: 22px;
  height: 22px;
  flex: 0 0 22px;
  stroke: #b68c4d;
  stroke-width: 1.9px;
  fill: none;
  stroke-linejoin: round;
  stroke-linecap: round;
}
.hseconcert.hseconcert-detail-editorial .hseconcert-editorial-ticket {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  gap: 12px;
  padding: 14px 22px !important;
  margin: 0 0 21px !important;
  min-height: 48px;
  border: 1px solid #203248 !important;
  border-radius: 8px !important;
  color: #fff !important;
  background: #203248 !important;
  box-shadow: 0 8px 18px rgba(27, 49, 68, .13) !important;
  text-decoration: none !important;
  font: 700 15px/1.25 Arial, sans-serif !important;
}
.hseconcert.hseconcert-detail-editorial .hseconcert-editorial-ticket:hover {
  background: #34536d !important;
  border-color: #34536d !important;
  color: #fff !important;
}
.hseconcert.hseconcert-detail-editorial .hseconcert-editorial-description {
  border-top: 1px solid rgba(70, 96, 117, .23);
  padding-top: 19px;
  max-width: 850px;
  color: #263c50 !important;
}
.hseconcert.hseconcert-detail-editorial .hseconcert-editorial-description p,
.hseconcert.hseconcert-detail-editorial .hseconcert-editorial-richtext p {
  color: #263c50 !important;
  font: 400 16px/1.68 Arial, sans-serif !important;
  margin: 0 0 12px !important;
  overflow-wrap: anywhere;
}
.hseconcert.hseconcert-detail-editorial .hseconcert-editorial-description p:last-child,
.hseconcert.hseconcert-detail-editorial .hseconcert-editorial-richtext p:last-child {
  margin-bottom: 0 !important;
}
.hseconcert.hseconcert-detail-editorial .hseconcert-editorial-description h2,
.hseconcert.hseconcert-detail-editorial .hseconcert-editorial-description h3,
.hseconcert.hseconcert-detail-editorial .hseconcert-editorial-description h4 {
  margin: 18px 0 11px !important;
  color: #203248 !important;
  font: 400 23px/1.3 Georgia, serif !important;
}
.hseconcert.hseconcert-detail-editorial .hseconcert-editorial-art {
  align-self: start !important;
  width: 100% !important;
  max-width: 310px !important;
  margin: 0 !important;
}
.hseconcert.hseconcert-detail-editorial .hseconcert-editorial-art .hseconcert-preview-frame,
body.single-konzert .hseconcert.hseconcert-detail-editorial .hseconcert-editorial-art .hseconcert-preview-frame {
  display: block;
  padding: 11px !important;
  margin: 0 !important;
  border-radius: 18px !important;
  border: 1px solid rgba(255, 255, 255, .78) !important;
  background: rgba(250, 252, 254, .48) !important;
  box-shadow: 0 15px 38px rgba(18, 40, 57, .11) !important;
  overflow: hidden;
}
.hseconcert.hseconcert-detail-editorial .hseconcert-editorial-art .hseconcert-preview-frame::before {display: none !important;}
.hseconcert.hseconcert-detail-editorial .hseconcert-editorial-art img,
body.single-konzert .hseconcert.hseconcert-detail-editorial .hseconcert-editorial-art img {
  width: 100% !important;
  height: auto !important;
  max-height: none !important;
  aspect-ratio: 4 / 5 !important;
  object-fit: cover !important;
  border-radius: 10px !important;
  box-shadow: none !important;
  filter: none !important;
}
.hseconcert.hseconcert-detail-editorial .hseconcert-editorial-extras {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 260px), 1fr));
  gap: 18px;
  margin-top: 25px;
}
.hseconcert.hseconcert-detail-editorial .hseconcert-editorial-card {
  min-width: 0;
  padding: 22px 24px 23px;
  border: 1px solid rgba(255, 255, 255, .72);
  border-radius: 15px;
  background: rgba(244, 248, 251, .68);
  box-shadow: 0 8px 24px rgba(17, 37, 53, .055);
}
.hseconcert.hseconcert-detail-editorial .hseconcert-editorial-card > h3 {
  color: #203248 !important;
  font: 400 25px/1.25 Georgia, serif !important;
  margin: 0 0 12px !important;
  padding: 0 0 13px;
  border-bottom: 1px solid rgba(70, 96, 117, .2);
}
.hseconcert.hseconcert-detail-editorial .hseconcert-editorial-richtext {
  color: #263c50 !important;
  font: 400 15px/1.65 Arial, sans-serif !important;
  overflow-wrap: anywhere;
}
.hseconcert.hseconcert-detail-editorial .hseconcert-editorial-richtext p {
  font-size: 15px !important;
  line-height: 1.65 !important;
}
.hseconcert.hseconcert-detail-editorial .hseconcert-editorial-richtext ul,
.hseconcert.hseconcert-detail-editorial .hseconcert-editorial-richtext ol {margin: 0 0 12px 21px !important; padding: 0;}
.hseconcert.hseconcert-detail-editorial .hseconcert-editorial-richtext li {margin-bottom: 7px;}
.hseconcert.hseconcert-detail-editorial .hseconcert-editorial-richtext strong {color: #203248 !important;}
@media (max-width: 1000px) {
  .hseconcert.hseconcert-detail-editorial .hseconcert-editorial-hero {
    column-gap: 24px;
    grid-template-columns: minmax(0, 1fr) minmax(205px, 250px);
  }
  .hseconcert.hseconcert-detail-editorial .hseconcert-editorial-meta-item + .hseconcert-editorial-meta-item {
    padding-left: 11px;
    margin-left: 11px;
  }
}
@media (max-width: 760px) {
  .hseconcert.hseconcert-preview-detail.hseconcert-detail-editorial {
    width: calc(100vw - 32px) !important;
    margin-top: 16px !important;
    margin-bottom: 52px !important;
  }
  .hseconcert.hseconcert-detail-editorial .hseconcert-editorial-hero {grid-template-columns: minmax(0,1fr); gap: 24px;}
  .hseconcert.hseconcert-detail-editorial .hseconcert-editorial-title,
  body.single-konzert .hseconcert.hseconcert-detail-editorial .hseconcert-editorial-title {
    font-size: clamp(29px, 7.3vw, 40px) !important;
    margin-bottom: 19px !important;
  }
  .hseconcert.hseconcert-detail-editorial .hseconcert-editorial-meta {gap: 9px 13px; margin-bottom: 20px;}
  .hseconcert.hseconcert-detail-editorial .hseconcert-editorial-meta-item + .hseconcert-editorial-meta-item {
    border: 0; margin: 0; padding: 0;
  }
  .hseconcert.hseconcert-detail-editorial .hseconcert-editorial-meta-item {font-size: 13px !important;}
  .hseconcert.hseconcert-detail-editorial .hseconcert-editorial-meta-item svg {width:19px;height:19px;flex-basis:19px;}
  .hseconcert.hseconcert-detail-editorial .hseconcert-editorial-description p {font-size: 15px !important;}
  .hseconcert.hseconcert-detail-editorial .hseconcert-editorial-art {justify-self:center;max-width:240px!important;}
  .hseconcert.hseconcert-detail-editorial .hseconcert-editorial-extras {gap:14px;margin-top:22px;}
  .hseconcert.hseconcert-detail-editorial .hseconcert-editorial-card {padding:20px;}
}

.hseconcert.hseconcert-detail-editorial .hseconcert-editorial-hero--no-image {grid-template-columns:minmax(0, 1fr);}


/* v1.7.12: back navigation: understated outlined control without underlining.
   Scoped to editorial details only; legacy/listing buttons remain untouched. */
.hseconcert.hseconcert-detail-editorial .hseconcert-editorial-nav {
  display:flex;
  justify-content:flex-end;
  align-items:center;
  margin:0 0 22px !important;
}
.hseconcert.hseconcert-detail-editorial .hseconcert-editorial-nav .hseconcert-preview-back,
.hseconcert.hseconcert-detail-editorial .hseconcert-editorial-nav .hseconcert-preview-back:visited {
  display:inline-flex !important;
  align-items:center !important;
  gap:9px !important;
  padding:9px 14px !important;
  margin:0 !important;
  border:1px solid rgba(43,70,91,.28) !important;
  border-radius:999px !important;
  background:rgba(255,255,255,.34) !important;
  box-shadow:none !important;
  color:#203248 !important;
  text-decoration:none !important;
  text-underline-offset:unset !important;
  font:600 13px/1.35 Arial,Helvetica,sans-serif !important;
  white-space:nowrap;
  transform:none !important;
  transition:background-color .2s ease,border-color .2s ease !important;
}
.hseconcert.hseconcert-detail-editorial .hseconcert-editorial-nav .hseconcert-preview-back:hover {
  background:rgba(255,255,255,.66) !important;
  border-color:#997747 !important;
  transform:none !important;
  box-shadow:none !important;
  text-decoration:none !important;
}
.hseconcert.hseconcert-detail-editorial .hseconcert-back-icon {
  width:15px;
  height:15px;
  flex:0 0 15px;
  fill:none;
  stroke:currentColor;
  stroke-width:2.1;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.hseconcert.hseconcert-detail-editorial .hseconcert-editorial-nav .hseconcert-preview-back span {
  text-decoration:none !important;
}
@media(max-width:760px){
  .hseconcert.hseconcert-detail-editorial .hseconcert-editorial-nav {
    justify-content:flex-start;
    margin-bottom:18px !important;
  }
  .hseconcert.hseconcert-detail-editorial .hseconcert-editorial-nav .hseconcert-preview-back {
    padding:8px 12px !important;
    font-size:12px !important;
  }
}
@media(prefers-reduced-motion:reduce){
  .hseconcert.hseconcert-detail-editorial .hseconcert-editorial-nav .hseconcert-preview-back{transition:none!important;}
}


/* v1.7.13: comfortable back navigation on the left across all viewports. */
.hseconcert.hseconcert-detail-editorial .hseconcert-editorial-nav {
  justify-content: flex-start !important;
}

/* v1.7.13: artwork belongs to discovery cards on small screens.
   Hide it on detail pages only; do not touch listings or homepage teasers. */
@media (max-width: 767px) {
  .hseconcert.hseconcert-preview-detail.hseconcert-detail-editorial
  .hseconcert-editorial-hero {
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 0 !important;
  }
  .hseconcert.hseconcert-preview-detail.hseconcert-detail-editorial
  .hseconcert-editorial-art {
    display: none !important;
  }
}
