.zms-ticket-invite .zms-ticket-artwork {
    float: right;
    width: min(42%, 300px);
    margin: -12px -8px 12px 24px;
    border-radius: 14px;
    overflow: hidden;
    box-shadow: 0 10px 28px rgba(25, 20, 14, .18);
}

/* Responsive Stabilisierung innerhalb schmaler WordPress-Inhaltsspalten. */
.zms-em-info,.zms-em-form-wrap,.zms-event-hero{box-sizing:border-box!important;inline-size:100%!important;max-inline-size:min(100%,var(--zms-max-width,1200px))!important;min-inline-size:0!important;margin-inline:0!important}
.zms-em-info,.zms-em-form-wrap{container-type:inline-size}
.zms-em-info *,.zms-em-form-wrap *{box-sizing:border-box;min-inline-size:0}
.zms-ticket-invite h1,.zms-ticket-invite p,.zms-info-row dd,.zms-map-link,.zms-field label,.zms-field small{overflow-wrap:anywhere;word-break:normal}
.zms-ticket-invite h1{text-wrap:balance}
.zms-map-link{inline-size:100%}
.zms-map-link>span,.zms-map-link>b{min-inline-size:0;white-space:normal!important}
.zms-em-form,.zms-form-stage,.zms-field,.zms-field>span{max-inline-size:100%}
.zms-field input:not([type="radio"]):not([type="checkbox"]),.zms-field textarea,.zms-field select{max-inline-size:100%!important}

@container (max-width:760px){
    .zms-ticket-head,.zms-em-info[style*="--zms-layout:vip"] .zms-ticket-head,.zms-em-info[style*="--zms-layout:retro"] .zms-ticket-head,.zms-em-info[style*="--zms-layout:pop"] .zms-ticket-head,.zms-em-info[style*="--zms-layout:berlin"] .zms-ticket-head{grid-template-columns:1fr!important;min-height:0!important}
    .zms-ticket-barcode,.zms-ticket-stub,.zms-em-info[style*="--zms-layout:pop"] .zms-ticket-barcode{display:none!important}
    .zms-ticket-invite,.zms-em-info[style*="--zms-layout:vip"] .zms-ticket-invite,.zms-em-info[style*="--zms-layout:retro"] .zms-ticket-invite,.zms-em-info[style*="--zms-layout:pop"] .zms-ticket-invite,.zms-em-info[style*="--zms-layout:berlin"] .zms-ticket-invite{grid-column:1!important;padding:clamp(20px,6cqi,32px)!important;text-align:left!important;align-items:flex-start!important}
    .zms-ticket-invite>span,.zms-ticket-invite h1,.zms-ticket-invite p,.zms-em-info[style*="--zms-layout:vip"] .zms-ticket-invite>span,.zms-em-info[style*="--zms-layout:vip"] .zms-ticket-invite h1,.zms-em-info[style*="--zms-layout:vip"] .zms-ticket-invite p,.zms-em-info[style*="--zms-layout:retro"] .zms-ticket-invite h1,.zms-em-info[style*="--zms-layout:pop"] .zms-ticket-invite h1,.zms-em-info[style*="--zms-layout:berlin"] .zms-ticket-invite h1{max-inline-size:100%!important;text-align:left!important}
    .zms-ticket-invite h1,.zms-em-info[style*="--zms-layout:vip"] .zms-ticket-invite h1,.zms-em-info[style*="--zms-layout:retro"] .zms-ticket-invite h1,.zms-em-info[style*="--zms-layout:pop"] .zms-ticket-invite h1,.zms-em-info[style*="--zms-layout:berlin"] .zms-ticket-invite h1{font-size:clamp(26px,10cqi,48px)!important;line-height:1!important;letter-spacing:-.025em!important}
    .zms-em-info dl,.zms-em-info[style*="--zms-layout:vip"] dl,.zms-em-info[style*="--zms-layout:retro"] dl,.zms-em-info[style*="--zms-layout:pop"] dl,.zms-em-info[style*="--zms-layout:berlin"] dl{inline-size:100%!important;grid-template-columns:1fr!important;padding:clamp(14px,5cqi,22px)!important}
    .zms-em-info .zms-info-row,.zms-em-info .zms-info-venue,.zms-em-info .zms-info-address{grid-column:1!important;border-right:0!important}
    .zms-em-info[style*="--zms-layout:berlin"]{padding-left:0!important}
    .zms-em-info[style*="--zms-layout:berlin"]::after{display:none!important}
    .zms-em-form,.zms-em-form.columns-2,.zms-form-stage{grid-template-columns:minmax(0,1fr)!important}
    .zms-em-form{padding:clamp(18px,5cqi,28px)!important}
    .zms-form-stage{padding:clamp(14px,4cqi,20px)!important}
    .zms-stage-actions{flex-wrap:wrap}
    .zms-stage-actions button,.zms-em-form button[type="submit"]{flex:1 1 150px;inline-size:auto!important;max-inline-size:100%}
}

/* ZMS & Friends mobile: Desktop-Abrisskante und Seitenstreifen vollständig auflösen. */
@container (max-width:760px){
    .zms-em-info[style*="--zms-layout:zms_friends"]{
        inline-size:100%!important;
        max-inline-size:100%!important;
        min-inline-size:0!important;
        overflow:hidden!important;
        border-width:1px!important;
        border-radius:14px!important;
    }
    .zms-em-info[style*="--zms-layout:zms_friends"] .zms-ticket-head{
        display:block!important;
        grid-template-columns:minmax(0,1fr)!important;
        inline-size:100%!important;
        min-inline-size:0!important;
        min-height:0!important;
    }
    .zms-em-info[style*="--zms-layout:zms_friends"] .zms-ticket-barcode,
    .zms-em-info[style*="--zms-layout:zms_friends"] .zms-ticket-stub{
        display:none!important;
    }
    .zms-em-info[style*="--zms-layout:zms_friends"] .zms-ticket-invite{
        display:block!important;
        position:relative!important;
        grid-column:1!important;
        inline-size:100%!important;
        max-inline-size:100%!important;
        min-inline-size:0!important;
        padding:22px 18px 38px!important;
        text-align:left!important;
    }
    .zms-em-info[style*="--zms-layout:zms_friends"] .zms-ticket-invite::before{
        right:18px!important;
        left:18px!important;
        bottom:16px!important;
    }
    .zms-em-info[style*="--zms-layout:zms_friends"] .zms-ticket-invite::after{
        inset:0!important;
    }
    .zms-em-info[style*="--zms-layout:zms_friends"] .zms-ticket-invite > span,
    .zms-em-info[style*="--zms-layout:zms_friends"] .zms-ticket-invite h1,
    .zms-em-info[style*="--zms-layout:zms_friends"] .zms-ticket-invite p{
        position:relative!important;
        z-index:3!important;
        display:block!important;
        inline-size:100%!important;
        max-inline-size:100%!important;
        min-inline-size:0!important;
        white-space:normal!important;
        overflow-wrap:break-word!important;
        word-break:normal!important;
        writing-mode:horizontal-tb!important;
        text-orientation:mixed!important;
        text-align:left!important;
    }
    .zms-em-info[style*="--zms-layout:zms_friends"] .zms-ticket-invite h1{
        font-size:clamp(28px,10cqi,44px)!important;
        line-height:1!important;
        letter-spacing:-.025em!important;
    }
    .zms-em-info[style*="--zms-layout:zms_friends"] .zms-ticket-invite p{
        font-size:clamp(15px,4.8cqi,19px)!important;
        line-height:1.45!important;
    }
    .zms-em-info[style*="--zms-layout:zms_friends"] .zms-ticket-artwork{
        float:none!important;
        inline-size:100%!important;
        max-inline-size:100%!important;
        margin:0 0 18px!important;
    }
    .zms-em-info[style*="--zms-layout:zms_friends"] dl{
        inline-size:100%!important;
        max-inline-size:100%!important;
        min-inline-size:0!important;
        grid-template-columns:minmax(0,1fr)!important;
        padding:16px!important;
    }
    .zms-em-info[style*="--zms-layout:zms_friends"] .zms-info-row,
    .zms-em-info[style*="--zms-layout:zms_friends"] .zms-info-event_date,
    .zms-em-info[style*="--zms-layout:zms_friends"] .zms-info-start_time,
    .zms-em-info[style*="--zms-layout:zms_friends"] .zms-info-end_time,
    .zms-em-info[style*="--zms-layout:zms_friends"] .zms-info-description,
    .zms-em-info[style*="--zms-layout:zms_friends"] .zms-info-venue,
    .zms-em-info[style*="--zms-layout:zms_friends"] .zms-info-address{
        grid-column:1!important;
        inline-size:100%!important;
        max-inline-size:100%!important;
        min-inline-size:0!important;
    }
    .zms-layout-zms_friends .zms-em-form-wrap,
    .zms-layout-zms_friends .zms-em-form,
    .zms-layout-zms_friends .zms-form-stage,
    .zms-layout-zms_friends .zms-field{
        inline-size:100%!important;
        max-inline-size:100%!important;
        min-inline-size:0!important;
    }
}

@media(max-width:760px){
    body.zms-standalone-event{overflow-x:hidden!important}
    .zms-standalone-shell{
        box-sizing:border-box!important;
        inline-size:100%!important;
        max-inline-size:100%!important;
        min-inline-size:0!important;
        margin:0!important;
        padding:12px!important;
        overflow-x:hidden!important;
    }
    .zms-standalone-shell > .zms-em-combined,
    .zms-standalone-shell .zms-em-info,
    .zms-standalone-shell .zms-em-form-wrap{
        inline-size:100%!important;
        max-inline-size:100%!important;
        min-inline-size:0!important;
    }
}

/* Finale kompakte Informationshierarchie. */
.zms-em-info dl,.zms-em-info[style*="--zms-layout:vip"] dl,.zms-em-info[style*="--zms-layout:retro"] dl,.zms-em-info[style*="--zms-layout:pop"] dl,.zms-em-info[style*="--zms-layout:berlin"] dl{grid-template-columns:repeat(3,minmax(0,1fr))!important;width:min(100%,980px)!important}
.zms-em-info .zms-info-event_date,.zms-em-info .zms-info-start_time,.zms-em-info .zms-info-end_time{order:10;grid-column:auto!important;padding-block:16px!important;border-bottom:2px solid color-mix(in srgb,var(--zms-accent,#6423b5) 28%,transparent)!important}
.zms-em-info .zms-info-description{order:20;grid-column:1/-1!important;padding-block:clamp(20px,3vw,34px)!important;border-right:0!important}
.zms-em-info .zms-info-description dt{display:none!important}
.zms-em-info .zms-info-description dd{max-width:76ch;font-size:inherit!important;font-weight:inherit!important;line-height:1.65}
.zms-em-info .zms-info-description dd>:first-child{margin-top:0}.zms-em-info .zms-info-description dd>:last-child{margin-bottom:0}
.zms-em-info .zms-info-venue{order:30}.zms-em-info .zms-info-address{order:31}.zms-em-info .zms-info-contact_name,.zms-em-info .zms-info-contact_email,.zms-em-info .zms-info-registration_deadline,.zms-em-info .zms-info-extra_info{order:40}
@container (max-width:760px){.zms-em-info dl,.zms-em-info[style*="--zms-layout:vip"] dl,.zms-em-info[style*="--zms-layout:retro"] dl,.zms-em-info[style*="--zms-layout:pop"] dl,.zms-em-info[style*="--zms-layout:berlin"] dl{grid-template-columns:1fr!important}.zms-em-info .zms-info-event_date,.zms-em-info .zms-info-start_time,.zms-em-info .zms-info-end_time{grid-column:1!important}}

/* Kompakte Lesereihenfolge: Terminzeile vor der langen Beschreibung. */
.zms-em-info dl,
.zms-em-info[style*="--zms-layout:vip"] dl,
.zms-em-info[style*="--zms-layout:retro"] dl,
.zms-em-info[style*="--zms-layout:pop"] dl,
.zms-em-info[style*="--zms-layout:berlin"] dl {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    width: min(100%, 980px) !important;
}

.zms-em-info .zms-info-event_date,
.zms-em-info .zms-info-start_time,
.zms-em-info .zms-info-end_time {
    order: 10;
    grid-column: auto !important;
    padding-block: 16px !important;
    border-bottom: 2px solid color-mix(in srgb, var(--zms-accent, #6423b5) 28%, transparent) !important;
}

.zms-em-info .zms-info-description {
    order: 20;
    grid-column: 1 / -1 !important;
    padding-block: clamp(20px, 3vw, 34px) !important;
    border-right: 0 !important;
}

.zms-em-info .zms-info-description dd {
    max-width: 76ch;
    font-size: inherit !important;
    font-weight: inherit !important;
    line-height: 1.65;
}

.zms-em-info .zms-info-description dd > :first-child { margin-top: 0; }
.zms-em-info .zms-info-description dd > :last-child { margin-bottom: 0; }
.zms-em-info .zms-info-venue { order: 30; }
.zms-em-info .zms-info-address { order: 31; }
.zms-em-info .zms-info-contact_name,
.zms-em-info .zms-info-contact_email,
.zms-em-info .zms-info-registration_deadline,
.zms-em-info .zms-info-extra_info { order: 40; }

@container (max-width:760px){
    .zms-em-info dl,
    .zms-em-info[style*="--zms-layout:vip"] dl,
    .zms-em-info[style*="--zms-layout:retro"] dl,
    .zms-em-info[style*="--zms-layout:pop"] dl,
    .zms-em-info[style*="--zms-layout:berlin"] dl { grid-template-columns: 1fr !important; }
    .zms-em-info .zms-info-event_date,
    .zms-em-info .zms-info-start_time,
    .zms-em-info .zms-info-end_time { grid-column: 1 !important; }
}

@media(max-width:480px){
    .zms-standalone-shell{width:calc(100% - 20px);padding-block:18px 40px}
    .zms-em-info,.zms-em-form-wrap{border-radius:14px!important}
    .zms-field>span>label{inline-size:100%}
    .zms-map-link{grid-template-columns:auto minmax(0,1fr)!important}
    .zms-map-link>b{grid-column:2}
}

.zms-ticket-invite .zms-ticket-artwork img {
    display: block;
    width: 100%;
    aspect-ratio: 16 / 10;
    object-fit: cover;
}

.zms-map-link,
.zms-map-link:hover,
.zms-map-link:focus {
    animation: none !important;
    transform: none !important;
    transition: none !important;
    box-shadow: none !important;
}

.zms-field[hidden] {
    display: none !important;
}

.zms-paw-button,
.zms-paw-button:hover,
.zms-paw-button:focus {
    transform: none !important;
    animation: none !important;
}

.zms-paw-button::after {
    content: none !important;
    display: none !important;
    animation: none !important;
}

@media (max-width: 680px) {
    .zms-ticket-invite .zms-ticket-artwork {
        float: none;
        width: 100%;
        margin: 0 0 18px;
    }
}

/* Ruhige, druckähnliche Eintrittskarte ohne Mouseover-Effekte. */
.zms-em-info,
.zms-em-info:hover,
.zms-em-info:focus-within {
    transform: none !important;
    transition: none !important;
    box-shadow: 0 18px 45px rgba(35, 27, 12, .18) !important;
}

.zms-em-info {
    position: relative;
    border: 2px solid color-mix(in srgb, var(--zms-accent, #6423b5) 42%, #594719) !important;
    border-radius: 22px !important;
    background:
        repeating-linear-gradient(0deg, rgba(65, 48, 12, .018) 0 1px, transparent 1px 4px),
        linear-gradient(135deg, #fffdf1, #f6edcf) !important;
}

.zms-ticket-head {
    grid-template-columns: 64px minmax(0, 1fr) 124px !important;
    min-height: 250px !important;
    overflow: hidden;
    border-bottom: 3px dashed rgba(53, 42, 16, .42) !important;
    background: transparent !important;
}

.zms-ticket-invite {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    padding: 35px 38px !important;
}

.zms-ticket-invite::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    background: linear-gradient(90deg, rgba(255, 253, 240, .98) 0 42%, rgba(255, 253, 240, .84) 62%, rgba(255, 253, 240, .25));
}

.zms-ticket-invite .zms-ticket-artwork {
    position: absolute;
    inset: 0;
    z-index: -2;
    float: none;
    width: auto;
    margin: 0;
    border-radius: 0;
    box-shadow: none;
}

.zms-ticket-invite .zms-ticket-artwork img {
    width: 100%;
    height: 100%;
    aspect-ratio: auto;
    object-fit: cover;
    object-position: center;
}

.zms-ticket-invite > span,
.zms-ticket-invite h1,
.zms-ticket-invite p {
    position: relative;
    max-width: 58%;
}

.zms-ticket-stub {
    border-left: 3px dashed rgba(255, 255, 255, .58);
    background: color-mix(in srgb, var(--zms-accent, #6423b5) 78%, #6c5312);
}

.zms-em-info dl {
    display: grid !important;
    grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
    gap: 0 !important;
    padding: 22px 30px 28px !important;
}

.zms-em-info .zms-info-row {
    grid-column: span 2;
    min-width: 0;
    padding: 14px 16px !important;
    border: 0 !important;
    border-right: 1px solid rgba(59, 47, 20, .18) !important;
    border-bottom: 1px solid rgba(59, 47, 20, .18) !important;
    border-radius: 0 !important;
    background: transparent !important;
    transform: none !important;
    transition: none !important;
}

.zms-em-info .zms-info-row:nth-child(3n) {
    border-right: 0 !important;
}

.zms-em-info .zms-info-description,
.zms-em-info .zms-info-extra_info,
.zms-em-info .zms-info-address {
    grid-column: 1 / -1;
    border-right: 0 !important;
}

.zms-em-info .zms-info-row:hover,
.zms-em-info .zms-info-row:focus-within {
    background: transparent !important;
    transform: none !important;
    box-shadow: none !important;
}

.zms-em-info .zms-info-row dt {
    font-size: 10px !important;
    letter-spacing: .14em !important;
}

.zms-em-info .zms-info-row dd {
    font-size: 15px !important;
}

.zms-em-info .zms-map-link,
.zms-em-info .zms-map-link:hover,
.zms-em-info .zms-map-link:focus {
    padding: 6px 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    color: inherit !important;
}

@media (max-width: 760px) {
    .zms-ticket-head {
        grid-template-columns: 40px minmax(0, 1fr) !important;
    }

    .zms-ticket-invite > span,
    .zms-ticket-invite h1,
    .zms-ticket-invite p {
        max-width: 100%;
    }

    .zms-ticket-invite::after {
        background: rgba(255, 253, 240, .86);
    }

    .zms-em-info dl {
        grid-template-columns: 1fr !important;
        padding: 16px 20px 22px !important;
    }

    .zms-em-info .zms-info-row,
    .zms-em-info .zms-info-description,
    .zms-em-info .zms-info-extra_info,
    .zms-em-info .zms-info-address {
        grid-column: 1 !important;
        border-right: 0 !important;
    }
}

.zms-em-info[style*="--zms-layout:vip"] .zms-info-venue dd,
.zms-em-info[style*="--zms-layout:vip"] a { color:#f1d16b !important; }
.zms-em-info[style*="--zms-layout:retro"] .zms-info-venue dd,
.zms-em-info[style*="--zms-layout:retro"] a,
.zms-em-info[style*="--zms-layout:pop"] .zms-info-venue dd,
.zms-em-info[style*="--zms-layout:pop"] a { color:#171717 !important; }

/* VIP Schwarz & Gold */
.zms-em-info[style*="--zms-layout:vip"] {
    border-color: #d7b74f !important;
    background: linear-gradient(145deg, #171717, #303030) !important;
    color: #f3d978 !important;
    box-shadow: 0 18px 45px rgba(0, 0, 0, .28) !important;
}
.zms-em-info[style*="--zms-layout:vip"] .zms-ticket-head { border-bottom-color:#d7b74f !important; }
.zms-em-info[style*="--zms-layout:vip"] .zms-ticket-invite::after { background:linear-gradient(90deg,rgba(20,20,20,.98) 0 45%,rgba(20,20,20,.76) 68%,rgba(20,20,20,.18)); }
.zms-em-info[style*="--zms-layout:vip"] .zms-ticket-invite h1 { color:#f1d16b !important;text-transform:uppercase;letter-spacing:.08em !important; }
.zms-em-info[style*="--zms-layout:vip"] .zms-ticket-invite p,
.zms-em-info[style*="--zms-layout:vip"] .zms-info-row dd,
.zms-em-info[style*="--zms-layout:vip"] .zms-map-link { color:#f5e8bd !important; }
.zms-em-info[style*="--zms-layout:vip"] .zms-info-row { border-color:rgba(231,196,92,.28) !important; }
.zms-em-info[style*="--zms-layout:vip"] .zms-info-row dt { color:#d7b74f !important; }
.zms-em-info[style*="--zms-layout:vip"] .zms-ticket-stub { background:#d7b74f;color:#181818; }

/* Retro Party mit rot-cremefarbenem Rand */
.zms-em-info[style*="--zms-layout:retro"] {
    padding: 13px !important;
    border: 0 !important;
    background: repeating-linear-gradient(-45deg,#ec4966 0 18px,#f8ead4 18px 36px) !important;
    color:#171717 !important;
}
.zms-em-info[style*="--zms-layout:retro"] .zms-ticket-head,
.zms-em-info[style*="--zms-layout:retro"] dl { background:#f7edda !important; }
.zms-em-info[style*="--zms-layout:retro"] .zms-ticket-head { border-bottom:3px dashed #171717 !important; }
.zms-em-info[style*="--zms-layout:retro"] .zms-ticket-invite::after { background:linear-gradient(90deg,rgba(247,237,218,.98) 0 50%,rgba(247,237,218,.72)); }
.zms-em-info[style*="--zms-layout:retro"] .zms-ticket-invite h1 { color:#171717 !important;text-transform:uppercase;font-weight:950 !important; }
.zms-em-info[style*="--zms-layout:retro"] .zms-ticket-stub { background:#ed4d69;color:#fff; }
.zms-em-info[style*="--zms-layout:retro"] .zms-info-row { border-color:rgba(20,20,20,.28) !important; }

/* Pop-Art Party mit radialen Strahlen */
.zms-em-info[style*="--zms-layout:pop"] {
    border-color:#171717 !important;
    background:repeating-conic-gradient(from 8deg at 50% 18%,#ff3b91 0 10deg,#f68bbc 10deg 20deg) !important;
    color:#161616 !important;
}
.zms-em-info[style*="--zms-layout:pop"] .zms-ticket-head { border-bottom-color:#161616 !important; }
.zms-em-info[style*="--zms-layout:pop"] .zms-ticket-invite::after { background:linear-gradient(90deg,rgba(255,116,177,.96) 0 46%,rgba(255,116,177,.62) 72%,transparent); }
.zms-em-info[style*="--zms-layout:pop"] .zms-ticket-invite h1 { color:#111 !important;text-transform:uppercase;font-weight:950 !important;text-shadow:2px 2px 0 rgba(255,255,255,.42); }
.zms-em-info[style*="--zms-layout:pop"] .zms-ticket-stub { background:#141414;color:#ff75b6; }
.zms-em-info[style*="--zms-layout:pop"] dl { background:rgba(255,238,246,.88); }
.zms-em-info[style*="--zms-layout:pop"] .zms-info-row { border-color:rgba(20,20,20,.28) !important; }

/* Berlin Weekend: urbane Typografie auf roséfarbenem Fahrkartenpapier. */
.zms-em-info[style*="--zms-layout:berlin"] {
    padding-left: 92px !important;
    border: 2px solid #6a3b43 !important;
    border-radius: 4px !important;
    background:
        repeating-linear-gradient(0deg,rgba(80,42,50,.025) 0 1px,transparent 1px 4px),
        #e7b3bd !important;
    color:#39272c !important;
}
.zms-em-info[style*="--zms-layout:berlin"]::after {
    content:"036923007";
    position:absolute;
    inset:0 auto 0 0;
    display:flex;
    align-items:center;
    justify-content:center;
    width:72px;
    border-right:7px dotted #fff5f5;
    background:linear-gradient(90deg,#d95d6c,#e48f9c);
    color:#39272c;
    font:700 28px/1 Georgia,serif;
    letter-spacing:.12em;
    writing-mode:vertical-rl;
    transform:rotate(180deg);
}
.zms-em-info[style*="--zms-layout:berlin"] .zms-ticket-barcode { display:none; }
.zms-em-info[style*="--zms-layout:berlin"] .zms-ticket-head { grid-template-columns:minmax(0,1fr) 112px !important;border-bottom:2px solid rgba(79,43,51,.55) !important; }
.zms-em-info[style*="--zms-layout:berlin"] .zms-ticket-invite { grid-column:1;padding:30px 34px !important; }
.zms-em-info[style*="--zms-layout:berlin"] .zms-ticket-invite::after { background:linear-gradient(90deg,rgba(231,179,189,.98) 0 54%,rgba(231,179,189,.62)); }
.zms-em-info[style*="--zms-layout:berlin"] .zms-ticket-invite::before { content:"";position:absolute;inset:0;background:repeating-linear-gradient(135deg,transparent 0 22px,rgba(207,60,78,.48) 22px 26px);clip-path:polygon(0 0,42% 0,0 62%);z-index:-1; }
.zms-em-info[style*="--zms-layout:berlin"] .zms-ticket-invite h1 { color:#39272c !important;font-family:Georgia,"Times New Roman",serif!important;font-size:clamp(38px,7vw,76px)!important;font-weight:950!important;line-height:.84!important;text-transform:uppercase; }
.zms-em-info[style*="--zms-layout:berlin"] .zms-ticket-invite>span { color:#6e3e47 !important; }
.zms-em-info[style*="--zms-layout:berlin"] .zms-ticket-stub { border-left:7px dotted #fff5f5;background:#d95d6c;color:#3b272d; }
.zms-em-info[style*="--zms-layout:berlin"] dl { background:rgba(255,244,245,.32); }
.zms-em-info[style*="--zms-layout:berlin"] .zms-info-row { border-color:rgba(79,43,51,.28) !important; }
.zms-em-info[style*="--zms-layout:berlin"] .zms-info-row dt,
.zms-em-info[style*="--zms-layout:berlin"] .zms-info-venue dd,
.zms-em-info[style*="--zms-layout:berlin"] a { color:#633842 !important; }
@media(max-width:760px){.zms-em-info[style*="--zms-layout:berlin"]{padding-left:48px!important}.zms-em-info[style*="--zms-layout:berlin"]::after{width:38px;font-size:16px}.zms-em-info[style*="--zms-layout:berlin"] .zms-ticket-head{grid-template-columns:1fr!important}.zms-em-info[style*="--zms-layout:berlin"] .zms-ticket-stub{display:none}}

/* Typografie vollständig vom aktiven Theme bzw. Seitenlayout übernehmen. */
.zms-em-info,
.zms-em-info *,
.zms-em-form-wrap,
.zms-em-form-wrap * {
    font-family: inherit !important;
}

/* VIP: eigenständiges, zentriertes Premium-Ticket mit seitlichem Goldabriss. */
.zms-em-info[style*="--zms-layout:vip"] .zms-ticket-head {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 150px !important;
    min-height: 320px !important;
}
.zms-em-info[style*="--zms-layout:vip"] .zms-ticket-barcode { display:none !important; }
.zms-em-info[style*="--zms-layout:vip"] .zms-ticket-invite { display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:42px!important; }
.zms-em-info[style*="--zms-layout:vip"] .zms-ticket-invite::after { background:rgba(18,18,18,.82); }
.zms-em-info[style*="--zms-layout:vip"] .zms-ticket-invite>span,
.zms-em-info[style*="--zms-layout:vip"] .zms-ticket-invite h1,
.zms-em-info[style*="--zms-layout:vip"] .zms-ticket-invite p { max-width:760px;text-align:center; }
.zms-em-info[style*="--zms-layout:vip"] .zms-ticket-invite h1 { font-size:clamp(42px,8vw,88px)!important;letter-spacing:.13em!important; }
.zms-em-info[style*="--zms-layout:vip"] .zms-ticket-stub { border-left:4px dashed #171717; }
.zms-em-info[style*="--zms-layout:vip"] dl { grid-template-columns:repeat(4,minmax(0,1fr))!important;width:100%;background:#222; }
.zms-em-info[style*="--zms-layout:vip"] .zms-info-row { grid-column:auto;border-color:rgba(231,196,92,.28)!important;text-align:center; }
.zms-em-info[style*="--zms-layout:vip"] .zms-info-venue,
.zms-em-info[style*="--zms-layout:vip"] .zms-info-address { grid-column:span 2; }

/* Retro: klassischer Hauptschein mit schmalem Abrissbereich rechts. */
.zms-em-info[style*="--zms-layout:retro"] .zms-ticket-head { grid-template-columns:1fr 132px!important;min-height:260px!important; }
.zms-em-info[style*="--zms-layout:retro"] .zms-ticket-barcode { display:none!important; }
.zms-em-info[style*="--zms-layout:retro"] .zms-ticket-invite { grid-column:1;padding:34px 42px!important; }
.zms-em-info[style*="--zms-layout:retro"] .zms-ticket-invite h1 { max-width:70%;font-size:clamp(36px,6vw,68px)!important;line-height:.9!important;letter-spacing:-.02em!important; }
.zms-em-info[style*="--zms-layout:retro"] .zms-ticket-stub { grid-column:2;border-left:4px dashed #161616; }
.zms-em-info[style*="--zms-layout:retro"] dl { grid-template-columns:repeat(3,minmax(0,1fr))!important;width:100%;padding:20px 28px!important; }
.zms-em-info[style*="--zms-layout:retro"] .zms-info-row { grid-column:auto; }
.zms-em-info[style*="--zms-layout:retro"] .zms-info-address { grid-column:span 2; }

/* Pop-Art: linker Abrissschein und bildstarke Partyfläche. */
.zms-em-info[style*="--zms-layout:pop"] .zms-ticket-head { display:grid!important;grid-template-columns:135px minmax(0,1fr)!important;min-height:340px!important; }
.zms-em-info[style*="--zms-layout:pop"] .zms-ticket-barcode { grid-column:1;grid-row:1;display:flex!important;border-right:5px dashed #181818;background:rgba(255,255,255,.18); }
.zms-em-info[style*="--zms-layout:pop"] .zms-ticket-invite { grid-column:2;grid-row:1;display:flex;flex-direction:column;justify-content:flex-start;padding:38px 42px!important; }
.zms-em-info[style*="--zms-layout:pop"] .zms-ticket-invite::after { background:linear-gradient(180deg,rgba(255,112,175,.9),rgba(255,112,175,.28)); }
.zms-em-info[style*="--zms-layout:pop"] .zms-ticket-invite h1 { max-width:82%;font-size:clamp(38px,7vw,78px)!important;line-height:.88!important; }
.zms-em-info[style*="--zms-layout:pop"] .zms-ticket-stub { display:none!important; }
.zms-em-info[style*="--zms-layout:pop"] dl { grid-template-columns:repeat(2,minmax(0,1fr))!important;width:100%;border-top:5px solid #171717; }
.zms-em-info[style*="--zms-layout:pop"] .zms-info-row { grid-column:auto; }

/* Berlin: asymmetrische Fahrkarte mit dominantem Seitenstreifen. */
.zms-em-info[style*="--zms-layout:berlin"] .zms-ticket-invite h1 { font-family:inherit!important;max-width:76%; }
.zms-em-info[style*="--zms-layout:berlin"] dl { grid-template-columns:repeat(3,minmax(0,1fr))!important;width:100%; }
.zms-em-info[style*="--zms-layout:berlin"] .zms-info-row { grid-column:auto; }
.zms-em-info[style*="--zms-layout:berlin"] .zms-info-venue,
.zms-em-info[style*="--zms-layout:berlin"] .zms-info-address { grid-column:span 2; }

@media(max-width:760px){
    .zms-em-info[style*="--zms-layout:vip"] .zms-ticket-head,
    .zms-em-info[style*="--zms-layout:retro"] .zms-ticket-head,
    .zms-em-info[style*="--zms-layout:pop"] .zms-ticket-head { grid-template-columns:1fr!important;min-height:260px!important; }
    .zms-em-info[style*="--zms-layout:vip"] .zms-ticket-stub,
    .zms-em-info[style*="--zms-layout:retro"] .zms-ticket-stub,
    .zms-em-info[style*="--zms-layout:pop"] .zms-ticket-barcode { display:none!important; }
    .zms-em-info[style*="--zms-layout:retro"] .zms-ticket-invite,
    .zms-em-info[style*="--zms-layout:pop"] .zms-ticket-invite { grid-column:1!important; }
    .zms-em-info[style*="--zms-layout:vip"] dl,
    .zms-em-info[style*="--zms-layout:retro"] dl,
    .zms-em-info[style*="--zms-layout:pop"] dl,
    .zms-em-info[style*="--zms-layout:berlin"] dl { grid-template-columns:1fr!important; }
    .zms-em-info[style*="--zms-layout:vip"] .zms-info-row,
    .zms-em-info[style*="--zms-layout:retro"] .zms-info-row,
    .zms-em-info[style*="--zms-layout:pop"] .zms-info-row,
    .zms-em-info[style*="--zms-layout:berlin"] .zms-info-row { grid-column:1!important; }
}

/* Kompakter Ticket-Datenblock mit klarer Informationshierarchie. */
.zms-em-info dl {
    width: min(100%, 900px);
    margin: 0 auto !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}

.zms-em-info .zms-info-row {
    grid-column: auto;
    border-right: 1px solid rgba(59, 47, 20, .18) !important;
}

.zms-em-info .zms-info-row:nth-child(3n) {
    border-right: 1px solid rgba(59, 47, 20, .18) !important;
}

.zms-em-info .zms-info-start_time,
.zms-em-info .zms-info-registration_deadline {
    border-right: 0 !important;
}

.zms-em-info .zms-info-event_date dd,
.zms-em-info .zms-info-start_time dd {
    font-size: clamp(21px, 2.2vw, 30px) !important;
    font-weight: 900 !important;
    letter-spacing: -.025em;
}

.zms-em-info .zms-info-venue {
    grid-column: 1 / -1;
    padding-top: 19px !important;
    border-right: 0 !important;
    border-bottom: 0 !important;
}

.zms-em-info .zms-info-venue dd {
    color: var(--zms-accent, #6423b5) !important;
    font-size: clamp(20px, 2vw, 27px) !important;
    font-weight: 900 !important;
}

.zms-em-info .zms-info-address {
    grid-column: 1 / -1;
    padding-top: 3px !important;
    border-right: 0 !important;
}

.zms-em-info .zms-info-address dt {
    display: none;
}

.zms-em-info .zms-info-address dd {
    font-size: 16px !important;
}

@media (max-width: 760px) {
    .zms-em-info dl {
        width: 100%;
        grid-template-columns: 1fr !important;
    }

    .zms-em-info .zms-info-row {
        grid-column: 1 !important;
        border-right: 0 !important;
    }
}

/* Finale containerbasierte Regeln nach allen Ticketvarianten. */
/* ZMS & Friends: edles Flyer-Design in Weiß, Schwarz und warmem Orange. */
.zms-em-info[style*="--zms-layout:zms_friends"]{border:2px solid #171717!important;border-radius:18px!important;background:#fff!important;color:#151515!important;box-shadow:0 24px 60px rgba(20,20,20,.16)!important}
.zms-em-info[style*="--zms-layout:zms_friends"] .zms-ticket-head{grid-template-columns:64px minmax(0,1fr) 124px!important;min-height:285px!important;border-bottom:3px solid #ff7900!important;background:#fff!important}
.zms-em-info[style*="--zms-layout:zms_friends"] .zms-ticket-barcode{border-right:1px solid #171717!important;background:#fff!important}.zms-em-info[style*="--zms-layout:zms_friends"] .zms-ticket-barcode i{background:#171717!important}
.zms-em-info[style*="--zms-layout:zms_friends"] .zms-ticket-invite{padding:34px 40px 58px!important}
.zms-em-info[style*="--zms-layout:zms_friends"] .zms-ticket-invite::after{background:linear-gradient(90deg,rgba(255,255,255,.99) 0 44%,rgba(255,255,255,.86) 66%,rgba(255,255,255,.28))!important}
.zms-em-info[style*="--zms-layout:zms_friends"] .zms-ticket-invite::before{content:"";position:absolute;z-index:2;left:5%;right:5%;bottom:29px;height:20px;border-top:2px solid #171717;border-radius:50%;background:radial-gradient(circle at 8px 3px,#ff7900 0 4px,transparent 5px) 0 0/72px 20px repeat-x;pointer-events:none}
.zms-em-info[style*="--zms-layout:zms_friends"] .zms-ticket-invite>span{color:#171717!important;letter-spacing:.22em}.zms-em-info[style*="--zms-layout:zms_friends"] .zms-ticket-invite h1{color:#ff7900!important;font-size:clamp(38px,6.5vw,76px)!important;font-weight:950!important;line-height:.92!important;text-transform:uppercase;letter-spacing:-.045em!important}.zms-em-info[style*="--zms-layout:zms_friends"] .zms-ticket-invite p{color:#171717!important;font-size:clamp(17px,2vw,23px)!important;font-style:italic}
.zms-em-info[style*="--zms-layout:zms_friends"] .zms-ticket-stub{border-left:3px dashed #fff!important;background:#ff7900!important;color:#fff!important}.zms-em-info[style*="--zms-layout:zms_friends"] dl{background:#fff!important}.zms-em-info[style*="--zms-layout:zms_friends"] .zms-info-row{border-color:rgba(20,20,20,.16)!important}.zms-em-info[style*="--zms-layout:zms_friends"] .zms-info-row dt{color:#e96f00!important}.zms-em-info[style*="--zms-layout:zms_friends"] .zms-info-row dd,.zms-em-info[style*="--zms-layout:zms_friends"] a{color:#171717!important}.zms-em-info[style*="--zms-layout:zms_friends"] .zms-map-link{border-bottom:2px solid #ff7900!important}
.zms-layout-zms_friends .zms-em-form-wrap{border:1px solid #dedede!important;background:#fff!important;box-shadow:0 18px 48px rgba(20,20,20,.12)!important}.zms-layout-zms_friends .zms-em-form-wrap::before{background:linear-gradient(90deg,#171717 0 35%,#ff7900 35% 100%)!important}.zms-layout-zms_friends .zms-journey-intro>span,.zms-layout-zms_friends .zms-journey-intro h2{color:#e96f00!important}.zms-layout-zms_friends .zms-form-stage{border-color:rgba(255,121,0,.25)!important;background:linear-gradient(145deg,#fff,#fff9f3)!important}.zms-layout-zms_friends .zms-em-form button{background:#ff7900!important;color:#fff!important}

/* Die konfigurierte Event-Akzentfarbe gilt auch für das ZMS-&-Friends-Layout. */
.zms-em-info[style*="--zms-layout:zms_friends"] .zms-ticket-head{border-bottom-color:var(--zms-accent,#ff7900)!important}
.zms-em-info[style*="--zms-layout:zms_friends"] .zms-ticket-invite::before{background:radial-gradient(circle at 8px 3px,var(--zms-accent,#ff7900) 0 4px,transparent 5px) 0 0/72px 20px repeat-x!important}
.zms-em-info[style*="--zms-layout:zms_friends"] .zms-ticket-invite h1,
.zms-em-info[style*="--zms-layout:zms_friends"] .zms-info-row dt{color:var(--zms-accent,#ff7900)!important}
.zms-em-info[style*="--zms-layout:zms_friends"] .zms-ticket-stub{background:var(--zms-accent,#ff7900)!important}
.zms-em-info[style*="--zms-layout:zms_friends"] .zms-map-link{border-bottom-color:var(--zms-accent,#ff7900)!important}
.zms-layout-zms_friends .zms-em-form-wrap::before{background:linear-gradient(90deg,#171717 0 35%,var(--zms-accent,#ff7900) 35% 100%)!important}
.zms-layout-zms_friends .zms-journey-intro>span,
.zms-layout-zms_friends .zms-journey-intro h2{color:var(--zms-accent,#ff7900)!important}
.zms-layout-zms_friends .zms-form-stage{border-color:color-mix(in srgb,var(--zms-accent,#ff7900) 28%,transparent)!important}
.zms-layout-zms_friends .zms-em-form button{background:var(--zms-button,var(--zms-accent,#ff7900))!important;color:var(--zms-button-text,#fff)!important}

.zms-description-toggle{display:none}

/* Muss nach den Desktopregeln stehen: vollbreites Mobile-Ticket und aufklappbare Beschreibung. */
@container (max-width:760px){
    .zms-em-info[style*="--zms-layout:zms_friends"] .zms-ticket-head{display:block!important;grid-template-columns:minmax(0,1fr)!important;inline-size:100%!important;min-inline-size:0!important;min-height:0!important}
    .zms-em-info[style*="--zms-layout:zms_friends"] .zms-ticket-barcode,
    .zms-em-info[style*="--zms-layout:zms_friends"] .zms-ticket-stub{display:none!important}
    .zms-em-info[style*="--zms-layout:zms_friends"] .zms-ticket-invite{display:block!important;grid-column:1!important;inline-size:100%!important;max-inline-size:100%!important;min-inline-size:0!important;padding:22px 18px 38px!important;text-align:left!important}
    .zms-em-info[style*="--zms-layout:zms_friends"] .zms-ticket-invite>span,
    .zms-em-info[style*="--zms-layout:zms_friends"] .zms-ticket-invite h1,
    .zms-em-info[style*="--zms-layout:zms_friends"] .zms-ticket-invite p{display:block!important;inline-size:100%!important;max-inline-size:100%!important;min-inline-size:0!important;white-space:normal!important;overflow-wrap:break-word!important;word-break:normal!important;writing-mode:horizontal-tb!important;text-orientation:mixed!important;text-align:left!important}
    .zms-em-info[style*="--zms-layout:zms_friends"] .zms-ticket-invite h1{font-size:clamp(28px,10cqi,44px)!important;line-height:1!important;letter-spacing:-.025em!important}
    .zms-em-info[style*="--zms-layout:zms_friends"] .zms-ticket-invite p{font-size:clamp(15px,4.8cqi,19px)!important;line-height:1.45!important}
    .zms-em-info[style*="--zms-layout:zms_friends"] .zms-ticket-artwork{float:none!important;inline-size:100%!important;max-inline-size:100%!important;margin:0 0 18px!important}
    .zms-em-info[style*="--zms-layout:zms_friends"] dl{inline-size:100%!important;max-inline-size:100%!important;min-inline-size:0!important;grid-template-columns:minmax(0,1fr)!important;padding:16px!important}
    .zms-em-info[style*="--zms-layout:zms_friends"] .zms-info-row{grid-column:1!important;inline-size:100%!important;max-inline-size:100%!important;min-inline-size:0!important;border-right:0!important}
    .zms-info-description.has-mobile-toggle dd{position:relative;max-height:9.5em;overflow:hidden;transition:max-height .3s ease}
    .zms-info-description.has-mobile-toggle:not(.is-expanded) dd::after{content:"";position:absolute;right:0;bottom:0;left:0;height:3.5em;background:linear-gradient(transparent,var(--zms-background,#fff));pointer-events:none}
    .zms-info-description.has-mobile-toggle.is-expanded dd{max-height:none}
    .zms-info-description.has-mobile-toggle.is-expanded dd::after{display:none}
    .zms-description-toggle{position:relative;z-index:2;display:inline-flex!important;align-items:center;justify-content:center;margin:12px 0 0;padding:9px 14px;border:1px solid var(--zms-accent,#6423b5);border-radius:999px;background:#fff;color:var(--zms-accent,#6423b5);font:inherit;font-weight:750;cursor:pointer}
    .zms-description-toggle:hover,.zms-description-toggle:focus{background:color-mix(in srgb,var(--zms-accent,#6423b5) 8%,#fff);outline:2px solid color-mix(in srgb,var(--zms-accent,#6423b5) 24%,transparent);outline-offset:2px}
}
.zms-em-info dl,.zms-em-info[style*="--zms-layout:vip"] dl,.zms-em-info[style*="--zms-layout:retro"] dl,.zms-em-info[style*="--zms-layout:pop"] dl,.zms-em-info[style*="--zms-layout:berlin"] dl{grid-template-columns:repeat(2,minmax(0,1fr))!important;width:min(100%,980px)!important}
.zms-em-info .zms-info-event_date,.zms-em-info .zms-info-start_time{order:10;grid-column:auto!important;padding-block:16px!important;border-bottom:2px solid color-mix(in srgb,var(--zms-accent,#6423b5) 28%,transparent)!important}
.zms-em-info .zms-info-description{order:20;grid-column:1/-1!important;padding-block:clamp(20px,3vw,34px)!important;border-right:0!important}
.zms-em-info .zms-info-description dd{max-width:76ch;font-size:inherit!important;font-weight:inherit!important;line-height:1.65}
.zms-em-info .zms-info-description dd>:first-child{margin-top:0}.zms-em-info .zms-info-description dd>:last-child{margin-bottom:0}
.zms-em-info .zms-info-venue{order:30}.zms-em-info .zms-info-address{order:31}.zms-em-info .zms-info-contact_name,.zms-em-info .zms-info-contact_email,.zms-em-info .zms-info-registration_deadline,.zms-em-info .zms-info-extra_info{order:40}
@container (max-width:760px){
    .zms-ticket-head,.zms-em-info[style*="--zms-layout:vip"] .zms-ticket-head,.zms-em-info[style*="--zms-layout:retro"] .zms-ticket-head,.zms-em-info[style*="--zms-layout:pop"] .zms-ticket-head,.zms-em-info[style*="--zms-layout:berlin"] .zms-ticket-head{grid-template-columns:1fr!important;min-height:0!important}
    .zms-ticket-barcode,.zms-ticket-stub,.zms-em-info[style*="--zms-layout:pop"] .zms-ticket-barcode{display:none!important}
    .zms-ticket-invite,.zms-em-info[style*="--zms-layout:vip"] .zms-ticket-invite,.zms-em-info[style*="--zms-layout:retro"] .zms-ticket-invite,.zms-em-info[style*="--zms-layout:pop"] .zms-ticket-invite,.zms-em-info[style*="--zms-layout:berlin"] .zms-ticket-invite{grid-column:1!important;padding:clamp(20px,6cqi,32px)!important;text-align:left!important;align-items:flex-start!important}
    .zms-ticket-invite>span,.zms-ticket-invite h1,.zms-ticket-invite p,.zms-em-info[style*="--zms-layout:vip"] .zms-ticket-invite>span,.zms-em-info[style*="--zms-layout:vip"] .zms-ticket-invite h1,.zms-em-info[style*="--zms-layout:vip"] .zms-ticket-invite p,.zms-em-info[style*="--zms-layout:retro"] .zms-ticket-invite h1,.zms-em-info[style*="--zms-layout:pop"] .zms-ticket-invite h1,.zms-em-info[style*="--zms-layout:berlin"] .zms-ticket-invite h1{max-inline-size:100%!important;text-align:left!important}
    .zms-ticket-invite h1,.zms-em-info[style*="--zms-layout:vip"] .zms-ticket-invite h1,.zms-em-info[style*="--zms-layout:retro"] .zms-ticket-invite h1,.zms-em-info[style*="--zms-layout:pop"] .zms-ticket-invite h1,.zms-em-info[style*="--zms-layout:berlin"] .zms-ticket-invite h1{font-size:clamp(26px,10cqi,48px)!important;line-height:1!important;letter-spacing:-.025em!important}
    .zms-em-info dl,.zms-em-info[style*="--zms-layout:vip"] dl,.zms-em-info[style*="--zms-layout:retro"] dl,.zms-em-info[style*="--zms-layout:pop"] dl,.zms-em-info[style*="--zms-layout:berlin"] dl{inline-size:100%!important;grid-template-columns:1fr!important;padding:clamp(14px,5cqi,22px)!important}
    .zms-em-info .zms-info-row,.zms-em-info .zms-info-venue,.zms-em-info .zms-info-address{grid-column:1!important;border-right:0!important}
    .zms-em-info[style*="--zms-layout:berlin"]{padding-left:0!important}
    .zms-em-info[style*="--zms-layout:berlin"]::after{display:none!important}
    .zms-em-form,.zms-em-form.columns-2,.zms-form-stage{grid-template-columns:minmax(0,1fr)!important}
    .zms-em-form{padding:clamp(18px,5cqi,28px)!important}
    .zms-form-stage{padding:clamp(14px,4cqi,20px)!important}
    .zms-stage-actions{flex-wrap:wrap}
    .zms-stage-actions button,.zms-em-form button[type="submit"]{flex:1 1 150px;inline-size:auto!important;max-inline-size:100%}
}
