.elementor-476 .elementor-element.elementor-element-194957c{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-476 .elementor-element.elementor-element-92bcfac{--spacer-size:26px;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );text-transform:var( --e-global-typography-primary-text-transform );color:var( --e-global-color-primary );}.elementor-476 .elementor-element.elementor-element-2f869d6{text-align:center;}.elementor-476 .elementor-element.elementor-element-2f869d6 .elementor-heading-title{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-size:var( --e-global-typography-secondary-font-size );font-weight:var( --e-global-typography-secondary-font-weight );text-transform:var( --e-global-typography-secondary-text-transform );color:var( --e-global-color-text );}.elementor-476 .elementor-element.elementor-element-4f4e2e2{--spacer-size:331px;}.elementor-476 .elementor-element.elementor-element-04ada56{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;border-style:solid;--border-style:solid;--border-radius:30px 30px 30px 30px;box-shadow:5px 5px 15px 0px rgba(0,0,0,0.5);}.elementor-476 .elementor-element.elementor-element-04ada56:not(.elementor-motion-effects-element-type-background), .elementor-476 .elementor-element.elementor-element-04ada56 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-primary );background-image:url("https://kabelsalat.be/wp-content/uploads/2026/02/Background-bild.png");background-position:top center;background-repeat:no-repeat;background-size:contain;}.elementor-476 .elementor-element.elementor-element-ece3025 .elementor-heading-title{font-family:"Ropa Sans", Sans-serif;font-size:40px;font-weight:800;text-transform:uppercase;color:var( --e-global-color-text );}.elementor-476 .elementor-element.elementor-element-05f3a18.elementor-element{--order:99999 /* order end hack */;}.elementor-476 .elementor-element.elementor-element-05f3a18{z-index:0;}.elementor-476 .elementor-element.elementor-element-9490dac{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-476 .elementor-element.elementor-element-e9b2461{--spacer-size:10px;}.elementor-476 .elementor-element.elementor-element-fd467b5{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;border-style:solid;--border-style:solid;--border-radius:30px 30px 30px 30px;box-shadow:5px 5px 15px 0px rgba(0,0,0,0.5);}.elementor-476 .elementor-element.elementor-element-fd467b5:not(.elementor-motion-effects-element-type-background), .elementor-476 .elementor-element.elementor-element-fd467b5 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-primary );background-image:url("https://kabelsalat.be/wp-content/uploads/2026/02/Background-bild.png");background-repeat:no-repeat;background-size:contain;}.elementor-476 .elementor-element.elementor-element-d9ae3c0 .elementor-heading-title{font-family:"Ropa Sans", Sans-serif;font-size:40px;font-weight:800;text-transform:uppercase;color:var( --e-global-color-text );}.elementor-476 .elementor-element.elementor-element-8cb1faa{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-476 .elementor-element.elementor-element-1bdf1eb{--spacer-size:50px;}@media(max-width:1024px){.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );}.elementor-476 .elementor-element.elementor-element-2f869d6 .elementor-heading-title{font-size:var( --e-global-typography-secondary-font-size );}}@media(max-width:767px){.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );}.elementor-476 .elementor-element.elementor-element-2f869d6 .elementor-heading-title{font-size:var( --e-global-typography-secondary-font-size );}}/* Start custom CSS *//* ============================================================
   FESTIVAL MASTER CSS - KOMPLETT-RESET
   ============================================================ */
@import url('https://fonts.googleapis.com/css2?family=Ropa+Sans:wght@400;700&display=swap');

/* 1. PDF BUTTON */
.pdf-button {
    background-color: #4da3c7 !important;
    color: #ffffff !important;
    padding: 12px 25px !important;
    border: none !important;
    border-radius: 8px !important;
    font-family: 'Ropa Sans', sans-serif !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    cursor: pointer !important;
    margin-bottom: 25px !important;
    display: inline-block !important;
}

/* 2. DAS GITTER & SCROLLEN */
.festival-scroll-wrapper { 
    width: 100% !important; 
    overflow-x: auto !important; 
    padding: 50px 0 !important;
}

.festival-flat-grid {
    --label-w: 200px; /* Breite der Bühnen-Labels */
    --col-w: 25px;    /* Breite eines 15-Minuten-Blocks */
    --row-h: 100px;   /* Höhe jeder Bühnen-Zeile */
    display: grid !important;
    row-gap: 10px !important;
    grid-template-columns: var(--label-w) repeat(var(--total-cols), var(--col-w)) !important;
    grid-template-rows: -10px repeat(calc(var(--total-rows) - 1), var(--row-h)) !important;
    font-family: 'Ropa Sans', sans-serif !important;
}

/* ZEIT-ANZEIGE OBEN */
.time-slot {
    color: #ffffff !important;
    font-weight: 700 !important;
    font-size: 16px !important;
    writing-mode: vertical-rl !important;
    transform: rotate(180deg) translateX(50%) !important;
    //padding-bottom: 100px !important;
    z-index: 5 !important;
    margin-top: -0px !important;
}

/* GITTERLINIEN (Stunde kräftig, 30-Min gestrichelt) */
.grid-v-line {
    width: 0 !important;
    height: 100% !important;
    z-index: 1 !important;
    pointer-events: none !important;
}
.hour-line { border-left: 1px solid rgba(255, 255, 255, 0.5) !important; }
.half-line { border-left: 1px dashed rgba(255, 255, 255, 0.2) !important; }

/* BÜHNEN-LABELS LINKS (Sticky) */
.stage-label {
    position: sticky !important;
    left: 0 !important;
    z-index: 30 !important;
    background-color: #067daf !important;
    color: #ffffff !important;
    padding: 15px !important;
    border-radius: 12px !important;
    margin: 13px 20px 10px 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    box-shadow: 10px 0 20px rgba(0,0,0,0.5) !important;
    height: 90px !important;
}

/* ============================================================
   3. DIE ARTIST-BOXEN (HIER LAG DER FEHLER)
   ============================================================ */

/* Wir erzwingen, dass der Link eine BOX ist */
.festival-flat-grid a.artist-block {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    text-decoration: none !important;
    border-radius: 15px !important;
    padding: 10px !important;
    margin: 13px 1px !important;
    z-index: 10 !important;
    box-shadow: 0 8px 10px rgba(0,0,0,0.4) !important;
    border: 0px solid rgba(255, 255, 255, 0.1) !important;
    height: 90px !important; /* Wichtig! */
}

/* FARBWECHSEL: HELLBLAU (Klasse .dj-light) */
.festival-flat-grid a.artist-block.dj-light {
    background-color: #4da3c7 !important;
    color: #ffffff !important;
}

/* FARBWECHSEL: DUNKELBLAU (Klasse .dj-dark) */
.festival-flat-grid a.artist-block.dj-dark {
    background-color: #067daf !important;
    color: #ffffff !important;
}

/* Hover-Effekt */
.festival-flat-grid a.artist-block:hover {
    transform: scale(1.03) !important;
    filter: brightness(1.2) !important;
    z-index: 40 !important;
}

/* Text-Farbe in den Boxen (überschreibt das Rot) */
.artist-name { 
    font-weight: 700 !important; 
    font-size: 15px !important; 
    color: #ffffff !important;
    text-transform: uppercase !important;
    display: block !important;
    margin: 0 !important;
    line-height: 1.2 !important;
}

.artist-time { 
    display: none;
    font-size: 12px !important; 
    color: transparent !/* End custom CSS */