/* Veranstaltungsbilder, Eventdetails und die zugehoerige Verwaltung. */
.dd-event-picture { display: grid; place-items: center; align-self: stretch; overflow: hidden; border: 1px solid #344d68; border-radius: 10px; background: #0a111c; }
.dd-event-picture img { width: 100%; height: 160px; object-fit: contain; }
.dd-event-card.dd-event-card--image { grid-template-columns: 130px 75px minmax(0,1fr) auto; gap: 20px; }
.dd-detail-grid { display: grid; grid-template-columns: minmax(0,.9fr) minmax(0,1.15fr); gap: clamp(26px,5vw,60px); align-items: start; }
.dd-detail-poster { margin: 0; border: 1px solid #34516e; border-radius: 17px; overflow: hidden; background: #0a111c; }
.dd-detail-poster a { display: block; }
.dd-detail-poster img { display: block; width: 100%; height: auto; max-height: 650px; object-fit: contain; }
.dd-detail-poster--empty { display: grid; place-content: center; min-height: 390px; padding: 40px 25px; gap: 24px; background: radial-gradient(ellipse at top,#1e4265,#101923 75%); }
.dd-detail-poster--empty img { max-width: 160px; max-height: 200px; margin: auto; }
.dd-detail-poster figcaption { color: #b5cce4; font-size: 13px; text-align: center; }
.dd-detail-info { min-width: 0; padding-top: 9px; }
.dd-detail-info h1 { margin: 0 0 20px; font-size: clamp(2rem,4.5vw,3.4rem); line-height: 1.13; letter-spacing: -.04em; overflow-wrap: anywhere; }
.dd-detail-teaser { margin: 0 0 25px; font-size: 17px; line-height: 1.7; color: #bdcfe3; white-space: pre-line; }
.dd-detail-facts { display: grid; gap: 18px; padding: 23px 0; margin: 0; border-block: 1px solid #34465d; }
.dd-detail-facts > div { display: grid; grid-template-columns: 110px minmax(0,1fr); gap: 15px; }
.dd-detail-facts dt { display: flex; align-items: flex-start; gap: 8px; font-size: 14px; color: #a7bdd4; }
.dd-detail-facts .dd-icon { width: 17px; height: 17px; margin-top: 1px; color: #8ec7f3; }
.dd-detail-facts dd { margin: 0; font-size: 15px; font-weight: 600; color: #e0ecf9; overflow-wrap: anywhere; }
.dd-detail-facts dd span { display: block; margin-top: 4px; font-size: 13px; font-weight: 400; color: #afc3da; }
.dd-detail-buy { display: grid; gap: 17px; margin-top: 26px; padding: 23px; border: 1px solid #3d6287; border-radius: 13px; background: linear-gradient(135deg,#193651,#132335); }
.dd-detail-price { display: flex; align-items: baseline; justify-content: space-between; gap: 15px; }
.dd-detail-price span { color: #c5d9eb; font-size: 15px; }
.dd-detail-price strong { font-size: 29px; line-height: 1.2; }
.dd-detail-ticket-link { width: 100%; justify-content: space-between; font-size: 16px; }
.dd-detail-buy p { margin: 0; color: #b6cce1; font-size: 13px; line-height: 1.65; }
.dd-detail-unavailable { color: #f1d1ac; font-size: 18px; }
.dd-detail-description { margin-top: 44px; padding: 32px; border: 1px solid #2b435b; border-radius: 16px; background: #111e2c; }
.dd-detail-description h2 { margin: 0 0 20px; font-size: 25px; letter-spacing: -.025em; }
.dd-detail-description > div, .dd-detail-description > p:not(.dd-eyebrow) { max-width: 850px; margin-bottom: 0; color: #c2d2e5; font-size: 16px; line-height: 1.9; overflow-wrap: anywhere; }
.dd-detail-description a { color: #b6dfff; }
.dd-detail-footer { display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 20px; padding-top: 25px; }
.dd-detail-footer .dd-back-link { margin: 0; }
.dd-admin-content { margin-block: 25px; align-items: start; }
.dd-admin-content .card { min-width: 0; }
.dd-admin-image { display: block; width: 100%; max-height: 380px; object-fit: contain; margin: 0 0 22px; background: #0a111c; border: 1px solid #34516e; border-radius: 10px; }
.dd-admin-content input[type=file] { min-height: 50px; padding: 10px; max-width: 100%; }
.dd-admin-content input[type=file]::file-selector-button { padding: 8px 12px; margin-right: 12px; border: 1px solid #53779d; border-radius: 5px; background: #193753; color: #eaf5ff; cursor: pointer; }
.dd-admin-remove { margin-block: 16px; }
.dd-admin-content .muted { font-size: 13px; line-height: 1.75; }
@media(max-width:1050px) { .dd-event-card.dd-event-card--image { grid-template-columns: 100px 65px minmax(0,1fr); gap: 16px; } .dd-event-card--image .dd-event-cta { grid-column: 3; justify-self: start; } .dd-event-card--image .dd-event-picture { grid-row: 1 / 3; } .dd-event-card--image .dd-date-block { grid-row: 1 / 3; } }
@media(max-width:800px) { .dd-detail-grid { grid-template-columns: minmax(0,.85fr) minmax(0,1fr); gap: 24px; } .dd-detail-info h1 { font-size: 32px; } .dd-detail-facts > div { grid-template-columns: 1fr; gap: 6px; } .dd-detail-facts { gap: 16px; } .dd-admin-content.grid.two { grid-template-columns: 1fr; } }
@media(max-width:600px) { .dd-event-card.dd-event-card--image { grid-template-columns: 62px minmax(0,1fr); gap: 17px; } .dd-event-card--image .dd-event-picture { grid-column: 1 / -1; grid-row: auto; width: 100%; } .dd-event-picture img { height: 220px; } .dd-event-card--image .dd-date-block { grid-row: auto; } .dd-event-card--image .dd-event-cta { grid-column: 1 / -1; justify-self: stretch; } .dd-detail-grid { grid-template-columns: 1fr; gap: 26px; } .dd-detail-poster img { max-height: 520px; } .dd-detail-poster--empty { min-height: 200px; padding: 25px; gap: 14px; } .dd-detail-poster--empty img { max-height: 105px; } .dd-detail-info { padding-top: 0; } .dd-detail-info h1 { font-size: 34px; } .dd-detail-teaser { font-size: 15px; } .dd-detail-facts > div { grid-template-columns: 100px minmax(0,1fr); gap: 10px; } .dd-detail-buy { padding: 20px; } .dd-detail-description { margin-top: 28px; padding: 24px 20px; } .dd-detail-description h2 { font-size: 23px; } .dd-detail-description > div { font-size: 15px; } .dd-detail-footer > .dd-event-cta { width: 100%; justify-content: space-between; font-size: 15px; } }
@media(max-width:360px) { .dd-detail-facts > div { grid-template-columns: 1fr; gap: 6px; } }


/* DORFDISCO-UEBERSCHRIFTEN-V2-BEGIN */
/* Gemeinsame Schrift und Groessen fuer alle oeffentlichen Seiten. */
body:not(.stats-page):not(.ticketshop-body),
body.ticketshop-body.dd-public-headings {
  --dde-heading-font: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --dde-page-title: clamp(2.65rem, 4.8vw, 4.1rem);
  --dde-subheading: 25px;
}
body:not(.stats-page):not(.ticketshop-body) :is(main,.event-dialog) :is(h1,h2,h3,h4,h5,h6),
body.ticketshop-body.dd-public-headings main :is(h1,h2,h3,h4,h5,h6) {
  font-family: var(--dde-heading-font);
  font-size: var(--dde-subheading);
  font-style: normal;
  font-weight: 750;
  line-height: 1.3;
  letter-spacing: -.025em;
  overflow-wrap: anywhere;
}
body:not(.stats-page):not(.ticketshop-body) :is(main,.event-dialog) h1,
body.ticketshop-body.dd-public-headings main h1 {
  font-size: var(--dde-page-title);
  font-weight: 800;
  line-height: 1.09;
  letter-spacing: -.055em;
}
body:not(.stats-page):not(.ticketshop-body) main h1 :is(.hero-title,.hero-events) {
  font: inherit;
  letter-spacing: inherit;
}
@media (max-width: 800px) {
  body:not(.stats-page):not(.ticketshop-body),
  body.ticketshop-body.dd-public-headings {
    --dde-page-title: 43px;
    --dde-subheading: 22px;
  }
}
@media (max-width: 600px) {
  body:not(.stats-page):not(.ticketshop-body),
  body.ticketshop-body.dd-public-headings {
    --dde-page-title: clamp(2.45rem, 9.7vw, 3.5rem);
    --dde-subheading: 21px;
  }
}
/* DORFDISCO-UEBERSCHRIFTEN-V2-END */
