body { padding-top: 7px; }
.exhibition-heading { width: min(850px, calc(100% - 36px)); margin: 28px auto 0; }
.exhibition-heading .campaign-banner { margin-bottom: 24px; }
.header-text .casting-lineart { background: transparent; padding: 16px; border-radius: 8px; }
.site-modal { --ink: #19385e; --red: #a81419; --line: #d5d9df; --paper: #f4f1e9; }
.site-modal .modal-close { min-height: 44px; }
.site-modal label { cursor: pointer; }
.campaign-sponsors { --ink: #19385e; --line: #d5d9df; padding: 28px 0; }
.campaign-sponsors .sponsor-link { flex: 0 1 276px; max-width: 276px; min-width: 0; height: 116px; padding: 16px; border: 2px solid var(--line); border-radius: 8px; box-shadow: none; }
.campaign-sponsors .sponsor-link img { width: auto; height: auto; max-width: min(100%, 240px); max-height: 80px; object-fit: contain; }
.campaign-sponsors .sponsor-link:hover { border-color: var(--red); }
.site-footer .footer-button { color: white; background: var(--ink); border-color: var(--ink); }
.site-footer .footer-button:hover { color: white; background: var(--red); border-color: var(--red); }
.password-page > main > .logo { display: block; margin: 0 auto; }
.password-page footer nav { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; }
.password-page .site-modal input { margin: 0; }
@media(max-width:540px) { .campaign-sponsors .sponsor-link { flex-basis: 276px; width: 100%; } }

#impressum-modal .impressum-close-button { display: inline-flex; width: fit-content; min-width: 0; margin: 24px 0 0; padding: 10px 20px; border: 1px solid var(--ink); border-radius: 999px; font: 650 .9rem system-ui; cursor: pointer; }
.back-to-top { background: var(--ink); color: #fff; border-color: var(--ink); }
.back-to-top:hover { background: var(--red); color: #fff; border-color: var(--red); }

#impressum-modal .impressum-copy p { margin: 0 0 20px; }
#impressum-modal .impressum-copy p:last-child { margin-bottom: 0; }


/* SKTC: Scrollleisten innerhalb der runden Modal-Ecken. */
:is(dialog,[role="dialog"]:not(.modal),.modal-content){border-radius:16px;clip-path:inset(0 round 16px)}
:is(dialog,[role="dialog"],.modal-content,.modal-body),:is(dialog,[role="dialog"],.modal-content) *{scrollbar-width:thin;scrollbar-color:rgba(90,105,125,.65) transparent}
:is(dialog,[role="dialog"],.modal-content,.modal-body)::-webkit-scrollbar,:is(dialog,[role="dialog"],.modal-content) *::-webkit-scrollbar{width:8px;height:8px}
:is(dialog,[role="dialog"],.modal-content,.modal-body)::-webkit-scrollbar-track,:is(dialog,[role="dialog"],.modal-content) *::-webkit-scrollbar-track{background:transparent;margin-block:14px;border-radius:999px}
:is(dialog,[role="dialog"],.modal-content,.modal-body)::-webkit-scrollbar-thumb,:is(dialog,[role="dialog"],.modal-content) *::-webkit-scrollbar-thumb{background:rgba(90,105,125,.65);border-radius:999px;border:2px solid transparent;background-clip:padding-box}
:is(dialog,[role="dialog"],.modal-content,.modal-body)::-webkit-scrollbar-button,:is(dialog,[role="dialog"],.modal-content) *::-webkit-scrollbar-button{display:none;width:0;height:0}

@supports selector(::-webkit-scrollbar){:is(dialog,[role="dialog"],.modal-content,.modal-body),:is(dialog,[role="dialog"],.modal-content) *{scrollbar-width:auto;scrollbar-color:auto}}

/* SKTC: Links ohne Unterstreichung in allen Zuständen. */
a:any-link,a:any-link:hover,a:any-link:focus,a:any-link:focus-visible,a:any-link:active,a:any-link *{text-decoration:none!important}

/* SKTC: Flache Formularfelder ohne native 3D-Raender. */
:where(input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="hidden"]):not([type="submit"]):not([type="button"]):not([type="reset"]):not([type="image"]):not([type="file"]):not([type="color"]),textarea,select){
 appearance:none;-webkit-appearance:none;box-shadow:none!important;background-image:none;border:1px solid #8b96a3!important;border-radius:8px;background-color:rgba(255,255,255,.8);color:inherit;font:inherit;box-sizing:border-box;
}
:where(input,textarea,select):focus-visible{outline:2px solid #224579;outline-offset:2px;box-shadow:none!important}
select{padding-right:2rem!important;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16'%3E%3Cpath d='m4 6 4 4 4-4' fill='none' stroke='%2330343b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")!important;background-repeat:no-repeat!important;background-position:right .65rem center!important;background-size:16px!important}
select[multiple],select[size]:not([size="1"]){background-image:none!important;padding-right:.65rem!important}
input[type="file"]::file-selector-button{border:1px solid #8b96a3;border-radius:8px;background:#f2f5f9;color:#30343b;box-shadow:none;font:inherit;padding:.5rem .8rem}

/* SKTC: Aktionsbuttons in Modal-Fenstern linksbuendig. */
:is(dialog,[role="dialog"],.modal-content) :is(button,input[type="submit"],input[type="button"],input[type="reset"],a.button,a.btn):not(.modal-close):not(.story-close):not(.close):not(.btn-close):not([aria-label][data-close]:empty){margin-left:0!important;margin-right:auto!important;align-self:flex-start!important}
:is(dialog,[role="dialog"],.modal-content) :is(.modal-footer,.dialog-actions,.modal-actions,.form-actions,.actions,.button-row){justify-content:flex-start!important;text-align:left!important}
:is(dialog,[role="dialog"],.modal-content) :is(form,.button-group,.buttons){text-align:left}
