body,form,figure{margin:0;padding:0}img{border:0}header,footer,nav,section,aside,article,figure,figcaption{display:block}body{font-size:100.01%}select,input,textarea{font-size:99%}#container,.inside{position:relative}#main,#left,#right{float:left;position:relative}#main{width:100%}#left{margin-left:-100%}#right{margin-right:-100%}#footer{clear:both}#main .inside{min-height:1px}.ce_gallery>ul,.content-gallery>ul{margin:0;padding:0;overflow:hidden;list-style:none}.ce_gallery>ul li,.content-gallery>ul li{float:left}.ce_gallery>ul li.col_first,.content-gallery>ul li.col_first{clear:left}.float_left,.media--left>figure{float:left}.float_right,.media--right>figure{float:right}.block{overflow:hidden}.media{display:flow-root}.clear,#clear{height:.1px;font-size:.1px;line-height:.1px;clear:both}.invisible{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.custom{display:block}#container:after,.custom:after{content:"";display:table;clear:both}
@media (max-width:767px){#wrapper{margin:0;width:auto}#container{padding-left:0;padding-right:0}#main,#left,#right{float:none;width:auto}#left{right:0;margin-left:0}#right{margin-right:0}}img{max-width:100%;height:auto}.audio_container audio{max-width:100%}.video_container video{max-width:100%;height:auto}.aspect,.responsive{position:relative;height:0}.aspect iframe,.responsive iframe{position:absolute;top:0;left:0;width:100%;height:100%}.aspect--16\:9,.responsive.ratio-169{padding-bottom:56.25%}.aspect--16\:10,.responsive.ratio-1610{padding-bottom:62.5%}.aspect--21\:9,.responsive.ratio-219{padding-bottom:42.8571%}.aspect--4\:3,.responsive.ratio-43{padding-bottom:75%}.aspect--3\:2,.responsive.ratio-32{padding-bottom:66.6666%}
#colorbox,#cboxOverlay,#cboxWrapper{position:absolute;top:0;left:0;z-index:9999;overflow:hidden;-webkit-transform:translate3d(0,0,0)}#cboxWrapper{max-width:none}#cboxOverlay{position:fixed;width:100%;height:100%}#cboxMiddleLeft,#cboxBottomLeft{clear:left}#cboxContent{position:relative}#cboxLoadedContent{overflow:auto;-webkit-overflow-scrolling:touch}#cboxTitle{margin:0}#cboxLoadingOverlay,#cboxLoadingGraphic{position:absolute;top:0;left:0;width:100%;height:100%}#cboxPrevious,#cboxNext,#cboxClose,#cboxSlideshow{cursor:pointer}.cboxPhoto{float:left;margin:auto;border:0;display:block;max-width:none;-ms-interpolation-mode:bicubic}.cboxIframe{width:100%;height:100%;display:block;border:0;padding:0;margin:0}#colorbox,#cboxContent,#cboxLoadedContent{box-sizing:content-box;-moz-box-sizing:content-box;-webkit-box-sizing:content-box}#cboxOverlay{background:#000;opacity:.9;filter:alpha(opacity = 90)}#colorbox{outline:0}#cboxContent{margin-top:20px;background:#000}.cboxIframe{background:#fff}#cboxError{padding:50px;border:1px solid #ccc}#cboxLoadedContent{border:5px solid #000;background:#fff}#cboxTitle{position:absolute;top:-20px;left:0;color:#ccc}#cboxCurrent{position:absolute;top:-20px;right:0;color:#ccc}#cboxLoadingGraphic{background:url(../../assets/colorbox/images/loading.gif) no-repeat center center}#cboxPrevious,#cboxNext,#cboxSlideshow,#cboxClose{border:0;padding:0;margin:0;overflow:visible;width:auto;background:0 0}#cboxPrevious:active,#cboxNext:active,#cboxSlideshow:active,#cboxClose:active{outline:0}#cboxSlideshow{position:absolute;top:-20px;right:90px;color:#fff}#cboxPrevious{position:absolute;top:50%;left:5px;margin-top:-32px;background:url(../../assets/colorbox/images/controls.png) no-repeat top left;width:28px;height:65px;text-indent:-9999px}#cboxPrevious:hover{background-position:bottom left}#cboxNext{position:absolute;top:50%;right:5px;margin-top:-32px;background:url(../../assets/colorbox/images/controls.png) no-repeat top right;width:28px;height:65px;text-indent:-9999px}#cboxNext:hover{background-position:bottom right}#cboxClose{position:absolute;top:5px;right:5px;display:block;background:url(../../assets/colorbox/images/controls.png) no-repeat top center;width:38px;height:19px;text-indent:-9999px}#cboxClose:hover{background-position:bottom center}
.cc-head>*:first-child{margin-top:0}.cc-head>*:last-child{margin-bottom:15px}.contao-cookiebar{--ccb-backdrop: rgba(0, 0, 0, .75);--ccb-anim-duration: .5s;--ccb-checked-clr: #399d32;--ccb-checked-bg: #dcf3db;--ccb-unchecked-clr: #9c9b99;--ccb-unchecked-bg: #fff;--ccb-disabled-clr: #c8c7c5;--ccb-disabled-bg: #f4f4f4;--ccb-focus-clr: #00a4f4;position:fixed;inset:0;z-index:9999;display:flex;align-items:var(--ccb-align, center);justify-content:var(--ccb-justify, center);letter-spacing:0;padding:15px;max-height:100dvh;box-sizing:border-box;pointer-events:none;overflow:hidden;color:var(--ccb-clr, #444)}.contao-cookiebar *{box-sizing:border-box}.contao-cookiebar p{color:var(--ccb-text, #868686);line-height:1.4}.contao-cookiebar label{position:relative;display:block;padding:8px 13px 8px 0;line-height:1.2rem}.contao-cookiebar label.group{font-weight:600}.contao-cookiebar input{position:absolute;width:1px;height:1px;outline:0 none;opacity:0}.contao-cookiebar input+label{padding:8px 13px 8px 45px;cursor:pointer}.contao-cookiebar input+label:before,.contao-cookiebar input+label:after{content:"";position:absolute;border-radius:10px}.contao-cookiebar input+label:before{top:7px;left:0;width:35px;height:18px;margin:0;box-sizing:content-box;background:var(--ccb-unchecked-bg);border:1px solid var(--ccb-unchecked-clr);transition:border-color .2s}.contao-cookiebar input+label:after{display:block;top:11px;left:4px;width:12px;height:12px;background:var(--ccb-unchecked-clr);transition:background .2s,margin-left .2s,padding .2s}.contao-cookiebar input+label:active:after{padding-left:5px}.contao-cookiebar input.cc-group-half+label:after{background:linear-gradient(to right, var(--ccb-unchecked-clr) 0%, var(--ccb-unchecked-clr) 50%, var(--ccb-checked-clr) 50%, var(--ccb-checked-clr) 100%)}.contao-cookiebar input:checked+label:after{background:var(--ccb-checked-clr);margin-left:17px}.contao-cookiebar input:checked+label:active:after{margin-left:12px}.contao-cookiebar input:checked+label:before{background:var(--ccb-checked-bg);border-color:var(--ccb-checked-clr)}.contao-cookiebar input:disabled+label{pointer-events:none}.contao-cookiebar input:disabled+label:after{background:var(--ccb-disabled-clr)}.contao-cookiebar input:disabled+label:before{background:var(--ccb-disabled-bg);border-color:var(--ccb-disabled-clr)}.contao-cookiebar input:focus-visible:not(.cc-hide-focus)+label:before{outline:3px dashed var(--ccb-focus-clr);outline-offset:2px}.contao-cookiebar .cc-btn{display:inline-block;cursor:pointer;width:100%;padding:8px 14px;margin-bottom:8px;font-size:15px;outline:0 none;border:1px solid var(--ccb-btn-bdr, #cfcfcf);border-radius:4px;color:var(--ccb-btn-clr, #444);background:var(--ccb-btn-bg, #f5f5f5)}.contao-cookiebar .cc-btn:hover,.contao-cookiebar .cc-btn:focus{background:var(--ccb-btn-bg-hvr, #ececec)}.contao-cookiebar .cc-btn:last-child{margin-bottom:0}.contao-cookiebar .grayscale{--ccb-btn-bg: #f1efef;--ccb-btn-bg-hvr: #ececec}.contao-cookiebar .grayscale .success{--ccb-btn-bg: #fbfbfb;--ccb-btn-bg-hvr: #f7f7f7}.contao-cookiebar .highlight .success{--ccb-btn-bg: #4e9e3e;--ccb-btn-bg-hvr: #4c933f;--ccb-btn-bdr: #3e7830;--ccb-btn-clr: #fff}.cc-focus:not(.cc-hide-focus):focus-visible{outline:3px dashed var(--ccb-focus-clr);outline-offset:-3px}.cc-invisible{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;float:left}.cc-inner{display:inline-block;overflow-y:auto;max-height:100%;max-width:100%;padding:23px;border-radius:3px;opacity:0;pointer-events:none;visibility:hidden;font-size:1rem;text-align:left;background:var(--ccb-bg, #fff);box-shadow:var(--ccb-box-shadow, rgba(99, 99, 99, 0.2)) 0 2px 8px 0;animation:var(--ccb-anim, cookiebar-middle-in) var(--ccb-anim-duration) ease-in-out forwards}.cc-group{position:relative;border:1px solid var(--ccb-bdr, #d0d0d0);border-radius:5px;margin-bottom:10px}.cc-cookie-info{font-size:.875rem;background:var(--ccb-info-bg, #fff);border:1px solid var(--ccb-info-bdr, #efefef);padding:10px;border-radius:5px}.cc-cookie-info>div>span{font-weight:600}.cc-cookie-info>div+div{margin-top:5px;word-wrap:break-word}.cc-cookie-info+button.cc-detail-btn-details{margin-top:15px}.cc-cookies{background:var(--ccb-cookies-bg, #fbfbfb);border-radius:0 0 5px 5px}.cc-cookies>p{font-size:.875rem}.cc-cookies>p,.cc-cookies>.cc-cookie{margin:0;padding:15px;border-top:1px solid var(--ccb-cookies-bdr, #fbfbfb)}.cc-cookie label.cookie+*{margin-top:10px}.cc-cookie p{margin:0 0 15px;font-size:.875rem}.cc-cookie-desc p{margin-bottom:0}.cc-footer,.cc-info{text-align:center}.cc-info{margin-top:15px}.cc-info>p{font-size:.875rem}.cc-info>a{display:inline-block;font-size:.813rem;color:var(--ccb-detail-clr, #a2a2a2);text-decoration:none}.cc-info>a:hover{color:var(--ccb-detail-clr-hvr, #717171)}.cc-info>a+a:before{display:inline-block;content:"·";margin-right:5px}.cc-active .cc-inner{opacity:1;pointer-events:auto;visibility:visible}.cc-active.cc-blocked{pointer-events:auto;animation:cookiebar-overlay-in var(--ccb-anim-duration) ease-in-out forwards}.cc-saved.cc-inner{opacity:0;pointer-events:none;visibility:hidden}.cc-saved.cc-blocked{pointer-events:none;animation:cookiebar-overlay-out var(--ccb-anim-duration) ease-in-out forwards}.cc-left{--ccb-justify: flex-start}.cc-right{--ccb-justify: flex-end}.cc-top{--ccb-align: flex-start}.cc-top.cc-active{--ccb-anim: cookiebar-top-in}.cc-top.cc-saved{--ccb-anim: cookiebar-top-out}.cc-middle.cc-active{--ccb-anim: cookiebar-middle-in}.cc-middle.cc-saved{--ccb-anim: cookiebar-middle-out}.cc-bottom{--ccb-align: flex-end}.cc-bottom.cc-active{--ccb-anim: cookiebar-bottom-in}.cc-bottom.cc-saved{--ccb-anim: cookiebar-bottom-out}@media(min-width: 768px){.contao-cookiebar .cc-btn{width:auto;margin-bottom:0}.cc-inner{max-width:var(--ccb-max-width, 750px)}}@media(forced-colors){.contao-cookiebar input+label:after{border:1px solid currentColor}.cc-inner{border:1px solid currentColor}input.cc-group-half+label:after{margin-left:9px}}@media(prefers-reduced-motion){.contao-cookiebar{--ccb-anim-duration: 2s}}@media print{.contao-cookiebar{opacity:0}}@keyframes cookiebar-overlay-in{0%{background:rgba(0,0,0,0)}to{background:var(--ccb-backdrop)}}@keyframes cookiebar-overlay-out{0%{background:var(--ccb-backdrop)}to{background:rgba(0,0,0,0);visibility:hidden}}@keyframes cookiebar-top-in{0%{opacity:0;transform:translateY(-100%)}to{opacity:1;transform:translateY(0)}}@keyframes cookiebar-top-out{0%{opacity:1;visibility:visible;transform:translateY(0)}to{opacity:0;visibility:hidden;transform:translateY(-100%)}}@keyframes cookiebar-middle-in{0%{opacity:0;transform:scale(0)}to{opacity:1;transform:scale(1)}}@keyframes cookiebar-middle-out{0%{opacity:1;visibility:visible;transform:scale(1)}to{opacity:0;visibility:hidden;transform:scale(0)}}@keyframes cookiebar-bottom-in{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}@keyframes cookiebar-bottom-out{0%{opacity:1;visibility:visible;transform:translateY(0)}to{opacity:0;visibility:hidden;transform:translateY(100%)}}.cc-groups{display:none;padding-top:15px}.cc-group{text-align:left}.cc-group>label{margin:5px 130px 5px 10px}.cc-detail-btn-details{text-decoration:underline;padding:0;margin:0 0 10px;color:var(--ccb-detail-clr, #a2a2a2);border:0 none;outline:0 none;background:rgba(0,0,0,0);font-size:13px;letter-spacing:0;text-transform:initial;cursor:pointer}.cc-detail-btn-details span:nth-child(2){display:none}.cc-detail-btn-details.cc-active span:nth-child(1){display:none}.cc-detail-btn-details.cc-active span:nth-child(2){display:inline}.cc-detail-btn-details:hover{color:var(--ccb-detail-clr-hvr, #717171)}

/*==============================================================================
    KARNEVALSCLUB WILSDRUFF
    CSS STYLESHEET
==============================================================================

    INHALTSVERZEICHNIS

    01. GRUNDLAGEN
    02. ALLGEMEINES LAYOUT
    03. HEADER & LOGO
    04. NAVIGATION
    05. STARTSEITE
        5.1 Hero
        5.2 Aktuelles
        5.3 Termine

    06. UNTERSEITEN
        6.1 Allgemein
        6.2 Tanzgruppen
        6.3 Verein
        6.4 Goldstückchen
        6.5 Vorstand
        6.6 Sponsoren
        6.7 Galerien

    07. VERANSTALTUNGEN
        7.1 Allgemein
        7.2 Event Hero

    08. TRACHTENGAUDI
        8.1 Hero
        8.2 Inhalte

    09. SOMMERBEAT
        9.1 Intro
        9.2 Highlights
        9.3 Informationen
        9.4 Tickets

    10. KALENDER
    11. FORMULARE
    12. AKKORDEONS
    13. FOOTER
    14. IE-HINWEIS

    15. RESPONSIVE
        15.1 max-width: 1000px
        15.2 max-width: 800px
        15.3 max-width: 600px

==============================================================================*/


/*==============================================================================
    01. GRUNDLAGEN
==============================================================================*/

:root {

    /*----------------------------------------------------------------------
        Farben
    ----------------------------------------------------------------------*/

    --bg-color: #ffffff;
    --nav-color: #DA251C;
    --accent-color: #00923F;

    --text-color: #222222;
    --heading-color: #DA251C;

    --light-bg: #f7f7f7;
    --card-bg: #ffffff;
    --va-color: #ffffff;


    /*----------------------------------------------------------------------
        Layout
    ----------------------------------------------------------------------*/

    --content-width: 1400px;


    /*----------------------------------------------------------------------
        Abgerundete Ecken
    ----------------------------------------------------------------------*/

    --radius-small: 6px;
    --radius-medium: 12px;
    --radius-large: 20px;


    /*----------------------------------------------------------------------
        Schatten
    ----------------------------------------------------------------------*/

    --shadow-small: 0 4px 18px rgba(0, 0, 0, 0.10);
    --shadow-medium: 0 8px 25px rgba(0, 0, 0, 0.14);
    --shadow-large: 0 8px 30px rgba(0, 0, 0, 0.18);


    /*----------------------------------------------------------------------
        Schrift
    ----------------------------------------------------------------------*/

    /* =========================================================
   SCHRIFT – GLOBALE ABSICHERUNG
   ========================================================= */

    font-family: Arial, Helvetica, sans-serif;
}


/*==============================================================================
    02. ALLGEMEINES LAYOUT
==============================================================================*/

html {
    scroll-behavior: smooth;
}

body {
    width: 100%;
    margin: 0;
    padding: 0;

    box-sizing: border-box;

    background-color: var(--bg-color);
    color: var(--text-color);

    font-family: var(--font-family);
    font-size: 18px;
    line-height: 1.5;
}


/* Hauptinhalt */

#main,
#startseite {
    position: relative;

    width: 100%;
    max-width: var(--content-width);

    margin-left: auto;
    margin-right: auto;

    box-sizing: border-box;

    background-color: var(--bg-color);

    z-index: 0;
}


/* Allgemeine Überschriften */

h1 {
    color: var(--heading-color);
    text-align: center;
}


/* Allgemeine Bilder */

img {
    max-width: 100%;
    height: auto;
}


/*==============================================================================
    03. HEADER & LOGO
==============================================================================*/

.logo_kcw {
    margin: 20px auto 15px auto;

    text-align: center;
}

.logo_kcw img {
    width: 260px;
    max-width: 70%;
    height: auto;

    display: block;

    margin: 0 auto;

    border-radius: 0;
}

.logo_kcw figcaption {
    text-align: left;
}


/*==============================================================================
    04. NAVIGATION
==============================================================================*/


/*------------------------------------------------------------------------------
    4.1 Desktop-Navigation
------------------------------------------------------------------------------*/

.navmain {
    position: relative;

    display: flex;

    align-items: center;
    justify-content: center;

    width: 100%;

    padding: 8px 20px;

    box-sizing: border-box;

    background-color: var(--nav-color);

    z-index: 100;
}


/* Navigation-Liste */

.navmain ul {
    display: flex;

    align-items: center;
    justify-content: center;

    flex-wrap: wrap;

    margin: 0;
    padding: 0;

    list-style: none;
}


/* Navigation-Einträge */

.navmain li {
    margin: 0;
    padding: 0;
}


/* Navigation-Links */

.navmain a {
    position: relative;

    display: block;

    padding: 10px 14px;

    color: #ffffff;

    font-size: 18px;
    font-weight: bold;

    text-align: center;
    text-decoration: none;

    border: none;
    border-radius: var(--radius-small);

    box-shadow: none;

    transition:
        background-color 0.2s ease,
        color 0.2s ease;
}


/* Hover */

.navmain a:hover {
    color: #ffffff;

    background-color: rgba(255, 255, 255, 0.12);
}


/* Aktiver Menüpunkt */

.navmain .active,
.navmain a.active {
    position: relative;

    background-color: transparent;
}


/* Aktiver Menüpunkt – Unterlinie */

.navmain .active::after,
.navmain a.active::after {
    content: "";

    position: absolute;

    left: 3px;
    right: 3px;
    bottom: 1px;

    height: 3px;

    background-color: #ffffff;

    border-radius: 3px;
}


/*------------------------------------------------------------------------------
    4.2 Dropdown-Menü
------------------------------------------------------------------------------*/

.navmain .level_2 {
    position: absolute;

    min-width: 220px;

    padding: 8px;

    background-color: var(--nav-color);

    border-radius: 0 0 10px 10px;

    box-shadow: var(--shadow-medium);

    z-index: 200;
}

.navmain .level_2 a {
    padding: 10px 14px;
}


/*------------------------------------------------------------------------------
    4.3 Responsive Navigation – Grundzustand
------------------------------------------------------------------------------*/

.navmain-resp {
    display: none;
}

.navmain-resp .widget-submit {
    display: none;
}


/* Select */

select {
    -moz-appearance: none;
    -webkit-appearance: none;
    appearance: none;

    border: none;
}

select::-ms-expand {
    display: none;
}

.navmain-resp .select {
    width: 100%;
    height: 35px;

    padding-left: 45%;

    box-sizing: border-box;

    background-color: var(--nav-color);
    color: #000000;

    border-radius: 10px 10px 0 0;
}


/*------------------------------------------------------------------------------
    4.4 Mobile-Navigation
------------------------------------------------------------------------------*/

.mobile-nav {
    display: none;
}

.mobile-nav-toggle {
    display: none;
}

.mobile-nav-overlay {
    display: none;
}

.mobile-nav-drawer {
    display: none;
}


/*==============================================================================
    05. STARTSEITE
==============================================================================*/


/*------------------------------------------------------------------------------
    5.1 Allgemeine Startseite
------------------------------------------------------------------------------*/

#startseite {
    padding-bottom: 60px;

    text-align: center;

    font-size: 30px;
}

#startseite .last {
    text-align: left;

    font-size: 20px;
}


/* Startseiten-Überschriften */

#startseite h1,
#startseite h2 {
    margin-top: 55px;
    margin-bottom: 25px;

    color: var(--heading-color);

    font-weight: 700;

    text-align: center;
}

#startseite h1 {
    font-size: clamp(30px, 4vw, 52px);
    line-height: 1.15;
}

#startseite h2 {
    font-size: clamp(28px, 3vw, 40px);
    line-height: 1.2;
}


/* Startseiten-Text */

#startseite p {
    max-width: 1200px;

    margin-left: auto;
    margin-right: auto;

    line-height: 1.6;
}


/* Startseiten-Links */

#startseite a {
    transition:
        color 0.2s ease,
        opacity 0.2s ease;
}

#startseite a:hover {
    opacity: 0.8;
}


/*------------------------------------------------------------------------------
    5.2 STARTSEITE – HERO
------------------------------------------------------------------------------*/

.hero {
    position: relative;

    width: 100%;
    height: 650px;

    overflow: hidden;
}


/* Hero-Bild */

.hero-image {
    position: absolute;

    top: 0;
    left: 0;

    width: 110%;
    height: 100%;

    object-fit: cover;

    z-index: 1;
}


/* Hero-Verlauf */

.hero-overlay {
    position: absolute;

    inset: 0;

    display: flex;
    align-items: flex-end;

    background: linear-gradient(
        to bottom,
        rgba(218, 37, 28, 0.20) 0%,
        rgba(218, 37, 28, 0.30) 30%,
        rgba(218, 37, 28, 0.55) 60%,
        rgba(218, 37, 28, 0.90) 100%
    );

    z-index: 2;
}


/* Hero-Inhalt */

.hero-content {
    position: relative;

    max-width: 700px;

    margin-left: 8%;
    margin-bottom: 60px;

    color: #ffffff;

    text-align: left;

    z-index: 3;
}


/* Hero-Kicker */

.hero-kicker {
    margin-bottom: 15px;

    color: #ffffff;

    font-size: 24px;
    font-weight: bold;

    letter-spacing: 3px;
}


/* Hero-Überschrift */

.hero h1 {
    margin: 0 0 30px 0;

    color: #ffffff;

    font-size: clamp(2.2rem, 4vw, 4.2rem);

    line-height: 1.1;

    text-align: left;
}


/* Hero-Button */

.hero-button {
    display: inline-block;

    padding: 14px 24px;

    background-color: var(--nav-color);

    color: #ffffff;

    border-radius: 5px;

    font-size: 17px;
    font-weight: bold;

    text-decoration: none;

    transition:
        transform 0.2s ease,
        background-color 0.2s ease;
}

.hero-button:hover {
    transform: translateY(-2px);

    background-color: rgb(180, 30, 24);
}

.hero-button span {
    margin-left: 8px;
}


/*------------------------------------------------------------------------------
    5.3 STARTSEITE – AKTUELLES
------------------------------------------------------------------------------*/

.aktuelles {
    width: 100%;
    max-width: 1400px;

    margin: 80px auto;

    padding: 0 30px;

    box-sizing: border-box;
}


/* Überschrift */

.section-heading {
    display: flex;

    align-items: center;
    justify-content: center;

    gap: 20px;

    margin-bottom: 45px;
}

.section-heading span {
    width: 70px;
    height: 4px;

    background-color: var(--accent-color);

    border-radius: 2px;
}

.section-heading h2 {
    margin: 0;

    color: var(--heading-color);

    font-size: 38px;

    text-transform: uppercase;

    letter-spacing: 2px;
}


/* Karten-Grid */

.aktuelles-grid {
    display: grid;

    grid-template-columns: repeat(3, 1fr);

    gap: 30px;
}


/* Karte */

.aktuell-card {
    overflow: hidden;

    background-color: var(--card-bg);

    border-radius: 10px;

    box-shadow: var(--shadow-small);

    transition:
        transform 0.25s ease,
        box-shadow 0.25s ease;
}

.aktuell-card:hover {
    transform: translateY(-6px);

    box-shadow: var(--shadow-medium);
}


/* Kartenbild */

.aktuell-card-image {
    width: 100%;
    height: 220px;

    overflow: hidden;
}

.aktuell-card-image img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;

    transition: transform 0.3s ease;
}

.aktuell-card:hover .aktuell-card-image img {
    transform: scale(1.04);
}


/* Karteninhalt */

.aktuell-card-content {
    padding: 25px;

    text-align: left;
}

.aktuell-label {
    color: var(--accent-color);

    font-size: 13px;
    font-weight: bold;

    letter-spacing: 1.5px;
}

.aktuell-card h3 {
    margin: 10px 0 12px;

    color: #222222;

    font-size: 23px;

    line-height: 1.2;
}

.aktuell-card p {
    margin: 0 0 20px;

    color: #555555;

    font-size: 16px;

    line-height: 1.5;
}

.aktuell-link {
    color: var(--heading-color);

    font-size: 16px;
    font-weight: bold;

    text-decoration: none;
}

.aktuell-link span {
    margin-left: 6px;

    transition: margin-left 0.2s ease;
}

.aktuell-link:hover span {
    margin-left: 12px;
}


/*------------------------------------------------------------------------------
    5.4 STARTSEITE – TERMINE
------------------------------------------------------------------------------*/

.terminliste {
    width: 100%;
    max-width: 1100px;

    margin: 80px auto;

    padding: 0 30px;

    box-sizing: border-box;
}


/* Überschrift */

.terminliste > h2 {
    display: flex;

    align-items: center;
    justify-content: center;

    gap: 20px;

    margin: 0 0 45px 0;

    color: var(--heading-color);

    font-size: 38px;

    text-align: center;

    text-transform: uppercase;

    letter-spacing: 2px;
}


/* Einzelne Veranstaltung */

.terminliste .event {
    position: relative;

    display: block;

    margin: 0 0 18px 0;

    padding: 20px 25px;

    background-color: #ffffff;

    border-left: 5px solid var(--accent-color);

    border-radius: 10px;

    box-shadow: var(--shadow-small);

    text-align: left;

    font-size: 18px;

    transition:
        transform 0.25s ease,
        box-shadow 0.25s ease;
}

.terminliste .event:hover {
    transform: translateX(5px);

    box-shadow: var(--shadow-medium);
}


/* Veranstaltungstitel */

.terminliste .event h2 {
    margin: 0 0 5px 0;

    color: #222222;

    font-size: 24px;

    line-height: 1.2;
}


/* Datum / Uhrzeit */

.terminliste .event p {
    margin: 3px 0;

    color: #555555;

    font-size: 16px;

    line-height: 1.4;
}


/* Links */

.terminliste .event a {
    color: var(--nav-color);

    font-weight: bold;

    text-decoration: none;
}


/*==============================================================================
    06. UNTERSEITEN
==============================================================================*/


/*------------------------------------------------------------------------------
    6.1 Allgemeine Unterseiten
------------------------------------------------------------------------------*/


/*------------------------------------------------------------------------------
    6.2 TANZGRUPPEN
------------------------------------------------------------------------------*/

.site-tanzgruppen #main {
    font-size: 20px;

    text-align: center;
}

#tanzgruppen li {
    margin: 14px;

    list-style: none;
}

#tanzgruppen li a {
    display: inline-block;

    padding: 2px;

    color: #000000;

    border: 1px solid #000000;
    border-radius: 6px;

    box-shadow: 1px 1px 0 0 #000000;

    text-align: center;

    text-decoration: none;
}

#tanzgruppen a:hover {
    padding: 0.4em;
}


/*------------------------------------------------------------------------------
    6.3 DER VEREIN
------------------------------------------------------------------------------*/

#der-verein li {
    margin: 14px;

    list-style: none;
}

#der-verein li a {
    display: inline-block;

    padding: 2px;

    color: #000000;

    border: 1px solid #000000;
    border-radius: 6px;

    box-shadow: 1px 1px 0 0 #000000;

    text-align: center;

    text-decoration: none;
}

#der-verein a:hover {
    padding: 0.4em;
}


/*------------------------------------------------------------------------------
    6.4 GOLDSTÜCKCHEN
------------------------------------------------------------------------------*/

#die-goldstueckchen img {
    width: 30em;
}

.site-goldstueckchen #main {
    background-color: var(--bg-color);
}


/*------------------------------------------------------------------------------
    6.5 VORSTAND
------------------------------------------------------------------------------*/

#der-vorstand .ce_gallery {
    width: 100em;

    height: auto;
}


/*------------------------------------------------------------------------------
    6.6 SPONSOREN
------------------------------------------------------------------------------*/

.site-sponsoren #wrapper #sponsoren {
    background-color: var(--bg-color);
}

.site-sponsoren .navmain {
    border-radius: 10px;
}


/*------------------------------------------------------------------------------
    6.7 GALERIEN
------------------------------------------------------------------------------*/

.ce_gallery h2 {
    margin-bottom: 0;
}

.ce_gallery .image_container {
    margin: 0.05em;

    border-radius: 3px;
}

.ce_gallery .pagination {
    display: inline;
}

.ce_gallery .pagination ul {
    margin-top: 0;
    margin-bottom: 0;

    padding-left: 0;
}

.ce_gallery .pagination li {
    display: inline;

    list-style-type: none;
}

.ce_gallery .pagination p {
    margin: 0;
}


/*==============================================================================
    07. VERANSTALTUNGEN – ALLGEMEIN
==============================================================================*/


/* Alte Veranstaltungselemente */

.event_list_item p {
    margin: 1px;

    font-size: 1em;
}

.event_list_item h2 {
    margin: 1px;
}


/* Veranstaltungsliste */

.va-liste {
    margin: 0.5em;

    padding: 0.1em;

    text-align: center;
}

.va-liste .more {
    visibility: hidden;

    margin-top: 0;
}

.va-liste [class*="layout_latest arc_2 block"] {
    margin: 5px;

    background-color: var(--va-color);

    box-shadow:
        0 0 5px 4px var(--va-color),
        0 0 5px 10px var(--bg-color);

    text-align: left;
}


/*==============================================================================
    08. VERANSTALTUNGEN – EVENT HERO
==============================================================================*/


/* Grundaufbau für Veranstaltungsseiten */

.event-hero {
    position: relative;

    width: 100%;
    height: 600px;

    overflow: hidden;
}


/* Veranstaltungsbild */

.event-hero-image {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;

    object-position: center;
}


/* Verlauf */

.event-hero-overlay {
    position: absolute;

    inset: 0;

    display: flex;

    align-items: flex-end;

    background: linear-gradient(
        to bottom,
        rgba(218, 37, 28, 0.20) 0%,
        rgba(218, 37, 28, 0.30) 30%,
        rgba(218, 37, 28, 0.55) 60%,
        rgba(218, 37, 28, 0.90) 100%
    );
}


/* Hero-Inhalt */

.event-hero-content {
    position: relative;

    z-index: 2;

    max-width: 750px;

    margin-left: 8%;
    margin-bottom: 60px;

    color: #ffffff;

    text-align: left;
}


/* Kicker */

.event-hero-kicker {
    margin-bottom: 12px;

    color: #ffffff;

    font-size: 15px;
    font-weight: 700;

    letter-spacing: 3px;

    text-transform: uppercase;
}


/* Überschrift */

.event-hero h1 {
    margin: 0 0 15px 0;

    color: #ffffff;

    font-size: 4.5rem;

    line-height: 1;

    font-weight: 800;

    text-align: left;
}


/* Datum */

.event-hero-date {
    margin: 0 0 5px 0;

    color: #ffffff;

    font-size: 28px;
    font-weight: 700;
}


/* Veranstaltungsort */

.event-hero-location {
    margin: 0;

    color: #ffffff;

    font-size: 19px;
}


/*==============================================================================
    09. TRACHTENGAUDI
==============================================================================*/


/*
    Hier kommen ausschließlich Regeln hin, die speziell für die
    Trachtengaudi gelten.

    Gemeinsame Event-Regeln befinden sich weiter oben unter
    "08. VERANSTALTUNGEN – EVENT HERO".
*/


/*------------------------------------------------------------------------------
    9.1 Trachtengaudi – spezielle Regeln
------------------------------------------------------------------------------*/

/*
.event-trachtengaudi {
    ...
}
*/


/*------------------------------------------------------------------------------
    9.2 Trachtengaudi – Inhalte
------------------------------------------------------------------------------*/

/*
.event-trachtengaudi .event-intro {
    ...
}
*/


/*==============================================================================
    10. SOMMERBEAT
==============================================================================*/


/*------------------------------------------------------------------------------
    10.1 Sommerbeat – Intro
------------------------------------------------------------------------------*/

.event-intro {
    max-width: 1000px;

    margin: 70px auto 80px auto;

    padding: 0 30px;

    text-align: center;
}

.event-intro h2 {
    margin: 0 0 50px 0;

    color: var(--nav-color);

    font-size: 38px;

    line-height: 1.2;

    font-weight: 800;
}

.event-intro p {
    max-width: 850px;

    margin: 0 auto 18px auto;

    color: #444444;

    font-size: 19px;

    line-height: 1.7;
}


/*------------------------------------------------------------------------------
    10.2 Sommerbeat – Highlights
------------------------------------------------------------------------------*/

.event-highlights {
    max-width: 1200px;

    margin: 90px auto;

    padding: 0 30px;
}


/* Überschrift */

.event-section-heading {
    display: flex;

    align-items: center;

    gap: 25px;

    margin-bottom: 20px;
}

.event-section-heading span {
    flex: 1;

    height: 4px;

    background-color: var(--accent-color);
}

.event-section-heading h2 {
    margin: 0;

    color: var(--nav-color);

    font-size: 36px;

    line-height: 1.2;

    text-align: center;
}


/* Intro */

.event-highlights-intro {
    max-width: 800px;

    margin: 0 auto 45px auto;

    color: #444444;

    font-size: 19px;

    line-height: 1.7;

    text-align: center;
}


/* Grid */

.event-highlights-grid {
    display: grid;

    grid-template-columns: repeat(3, 1fr);

    gap: 25px;
}


/* Highlight-Karte */

.event-highlight {
    padding: 35px 25px;

    background-color: #ffffff;

    border-radius: 12px;

    box-shadow: var(--shadow-small);

    text-align: center;

    transition:
        transform 0.25s ease,
        box-shadow 0.25s ease;
}

.event-highlight:hover {
    transform: translateY(-5px);

    box-shadow: var(--shadow-medium);
}


/* Icon */

.event-highlight-icon {
    margin-bottom: 15px;

    font-size: 42px;

    line-height: 1;
}


/* Überschrift */

.event-highlight h3 {
    margin: 0 0 12px 0;

    color: #222222;

    font-size: 23px;
}


/* Text */

.event-highlight p {
    margin: 0;

    color: #555555;

    font-size: 16px;

    line-height: 1.6;
}


/* Footer */

.event-highlights-footer {
    max-width: 850px;

    margin: 45px auto 0 auto;

    color: #444444;

    font-size: 18px;

    line-height: 1.7;

    text-align: center;
}


/*------------------------------------------------------------------------------
    10.3 Sommerbeat – Informationen
------------------------------------------------------------------------------*/

.event-info {
    margin: 100px 0 0 0;

    padding: 70px 30px 80px 30px;

    background-color: var(--nav-color);
}


/* Überschrift */

.event-info-heading {
    max-width: 1200px;

    margin: 0 auto 40px auto;

    display: flex;

    align-items: center;

    gap: 25px;
}

.event-info-heading span {
    flex: 1;

    height: 4px;

    background-color: #ffffff;
}

.event-info-heading h2 {
    margin: 0;

    color: #ffffff;

    font-size: 36px;

    line-height: 1.2;

    text-align: center;
}


/* Info-Box */

.event-info-box {
    max-width: 1100px;

    margin: 0 auto;

    display: grid;

    grid-template-columns: 1.5fr 1fr;

    overflow: hidden;

    background-color: #ffffff;

    border-radius: 14px;

    box-shadow: var(--shadow-large);
}


/*------------------------------------------------------------------------------
    10.4 Sommerbeat – Hauptinformationen
------------------------------------------------------------------------------*/

.event-info-main {
    padding: 45px;
}

.event-info-main h3 {
    margin: 0 0 30px 0;

    color: #222222;

    font-size: 30px;
}


/* Einzelne Information */

.event-info-item {
    display: flex;

    align-items: flex-start;

    gap: 18px;

    margin-bottom: 24px;
}

.event-info-icon {
    width: 38px;

    flex-shrink: 0;

    font-size: 28px;

    text-align: center;
}

.event-info-item strong {
    display: block;

    color: #222222;

    font-size: 18px;
}

.event-info-item p {
    margin: 4px 0 0 0;

    color: #555555;

    font-size: 16px;

    line-height: 1.5;
}


/*------------------------------------------------------------------------------
    10.5 Sommerbeat – Ticketbereich
------------------------------------------------------------------------------*/

.event-ticket {
    display: flex;

    flex-direction: column;

    align-items: center;
    justify-content: center;

    padding: 45px;

    background-color: var(--accent-color);

    color: #ffffff;

    text-align: center;
}

.event-ticket-label {
    margin-bottom: 25px;

    color: #ffffff;

    font-size: 17px;
    font-weight: 700;

    letter-spacing: 2px;
}

.event-ticket-price {
    display: flex;

    flex-direction: column;

    align-items: center;
}

.event-ticket-price strong {
    color: #ffffff;

    font-size: 48px;

    line-height: 1;
}

.event-ticket-price span {
    margin-top: 8px;

    color: #ffffff;

    font-size: 18px;
    font-weight: 700;
}

.event-ticket p {
    margin: 8px 0 20px 0;

    color: #ffffff;

    font-size: 15px;
}

.event-ticket-divider {
    width: 70%;
    height: 1px;

    margin: 5px 0 25px 0;

    background-color: rgba(255, 255, 255, 0.5);
}


/*==============================================================================
    11. KALENDER
==============================================================================*/

.calendar {
    position: static;

    margin: 20px auto 0 auto;

    padding: 20px;

    background-color: rgb(196, 196, 196);

    border-collapse: separate;
    border-spacing: 2px 4px;

    border-color: #000000;

    table-layout: fixed;
}

.calendar thead a:link,
.calendar thead a:visited {
    color: #000000;

    text-decoration: none;
}


/* Kalender-Navigation */

.head previous,
.head current,
.head next {
    margin: 0 2px 5px 10px;

    font-size: 24px;

    font-weight: bold;
}


/* Kalender-Zellen */

.calendar td {
    width: 150px;
    height: 60px;

    background-color: var(--va-color);

    font-size: 16px;
    font-weight: bold;

    text-align: center;
}

.calendar .empty {
    background-color: #ffffff;

    border: #000000;
}


/*==============================================================================
    12. FORMULARE
==============================================================================*/

.contact-form .form_box {
    /* Formularbereich */
}

.form_send {
    border-radius: 4px;
}


/*==============================================================================
    13. AKKORDEONS
==============================================================================*/

.ce_accordionStart .toggler {
    margin: 20px;

    color: #000000;

    font-size: 30px;

    text-align: center;

    cursor: pointer;
}

.ce_accordionStart .toggler:hover {
    color: var(--nav-color);

    font-size: 40px;

    font-weight: bold;
}

.saisons .toggler {
    width: 200px;

    border: none;

    font-size: 18px;
}


/* Trennlinie */

.ce_accordionStop {
    width: 80%;
    height: 4px;

    margin: 2rem auto;

    background-color: var(--accent-color);

    border: none;

    border-radius: 2px;
}


/*==============================================================================
    14. FOOTER
==============================================================================*/

footer nav li {
    text-align: right;
}

footer nav a,
footer [class*="active"] .active {
    color: #000000;

    border: none;

    text-align: right;
    text-decoration: none;
}

footer ul {
    display: flex;

    flex-direction: row;
}

footer li {
    margin: 10px;
}


/*==============================================================================
    15. RESPONSIVE DESIGN
==============================================================================*/


/******************************************************************************
    15.1 TABLET / KLEINERE DESKTOPS
    max-width: 1000px
******************************************************************************/

@media only screen and (max-width: 1000px) {


    /*==========================================================================
        ALLGEMEIN
    ==========================================================================*/

    body {
        font-size: 16px;
    }


    /*==========================================================================
        LOGO
    ==========================================================================*/

    .logo_kcw {
        margin: 15px auto;
    }

    .logo_kcw img {
        width: 180px;
    }


    /*==========================================================================
        DESKTOP-NAVIGATION AUSBLENDEN
    ==========================================================================*/

    .navmain {
        display: none;
    }

    .navmain-resp {
        display: block;

        position: relative;

        z-index: 1000;

        text-align: center;
    }


    /*==========================================================================
        MOBILE HEADER
    ==========================================================================*/

    .mobile-nav {
        position: relative;

        display: flex;

        align-items: center;
        justify-content: flex-start;

        width: 100%;
        min-height: 70px;

        padding: 10px 20px;

        box-sizing: border-box;

        background-color: #ffffff;

        z-index: 1000;
    }


    /* Hamburger */

    .mobile-nav-toggle {
        display: flex;

        flex-direction: column;

        align-items: center;
        justify-content: center;

        gap: 5px;

        width: 44px;
        height: 44px;

        margin: 0;
        padding: 8px;

        background-color: transparent;

        border: none;

        cursor: pointer;
    }


    /* Hamburger-Linien */

    .mobile-nav-toggle span {
        display: block;

        width: 27px;
        height: 3px;

        background-color: #222222;

        border-radius: 2px;
    }


    /* Logo */

    .mobile-nav + .logo_kcw,
    .mobile-nav ~ .logo_kcw {
        margin-left: 10px;
    }

    .logo_kcw {
        margin-top: 0;
        margin-bottom: 0;
    }


    /* Mobile Menü */

    .mobile-nav-overlay,
    .mobile-nav-drawer {
        display: none;
    }


    /*==========================================================================
        STARTSEITE
    ==========================================================================*/

    #startseite {
        padding: 0 15px 40px 15px;
    }

    #startseite h1 {
        margin-top: 35px;

        font-size: 32px;
    }

    #startseite h2 {
        margin-top: 40px;

        font-size: 28px;
    }


    /* Startseiten-Bild */

    #startseite .ce_image:first-of-type {
        margin-top: 20px;

        margin-bottom: 45px;

        border-radius: 12px;
    }

    #startseite .ce_image:first-of-type img {
        border-radius: 12px;
    }


    /*==========================================================================
        STARTSEITE – HERO
    ==========================================================================*/

    .hero {
        height: 500px;
    }

    .hero-image {
        width: 115%;
        height: 100%;

        left: 0;

        object-fit: cover;
    }

    .hero-content {
        max-width: 600px;

        margin-left: 30px;
        margin-right: 30px;
        margin-bottom: 40px;
    }

    .hero-kicker {
        margin-bottom: 10px;

        font-size: 14px;

        letter-spacing: 2px;
    }

    .hero h1 {
        margin-bottom: 22px;

        font-size: 2.2rem;

        line-height: 1.1;
    }

    .hero-button {
        padding: 12px 20px;

        font-size: 15px;
    }


    /*==========================================================================
        VERANSTALTUNGS-HERO
    ==========================================================================*/

    .event-hero {
        height: 500px;
    }

    .event-hero-content {
        margin-left: 30px;
        margin-right: 30px;
        margin-bottom: 40px;
    }

    .event-hero-kicker {
        font-size: 13px;

        letter-spacing: 2px;
    }

    .event-hero h1 {
        font-size: 3.2rem;
    }

    .event-hero-date {
        font-size: 23px;
    }

    .event-hero-location {
        font-size: 17px;
    }


    /*==========================================================================
        SOMMERBEAT – HIGHLIGHTS
    ==========================================================================*/

    .event-highlights {
        margin: 60px auto;

        padding: 0 20px;
    }

    .event-section-heading {
        gap: 12px;
    }

    .event-section-heading span {
        height: 3px;
    }

    .event-section-heading h2 {
        font-size: 28px;
    }

    .event-highlights-grid {
        grid-template-columns: 1fr;

        gap: 18px;
    }

    .event-highlight {
        padding: 28px 22px;
    }

    .event-highlights-intro,
    .event-highlights-footer {
        font-size: 16px;

        line-height: 1.6;
    }


    /*==========================================================================
        SOMMERBEAT – INFORMATIONEN
    ==========================================================================*/

    .event-info {
        margin-top: 70px;

        padding: 50px 20px 60px 20px;
    }

    .event-info-heading {
        gap: 12px;

        margin-bottom: 30px;
    }

    .event-info-heading span {
        height: 3px;
    }

    .event-info-heading h2 {
        font-size: 28px;
    }

    .event-info-box {
        grid-template-columns: 1fr;
    }

    .event-info-main {
        padding: 30px 25px;
    }

    .event-info-main h3 {
        margin-bottom: 25px;

        font-size: 25px;
    }

    .event-info-item {
        gap: 12px;

        margin-bottom: 20px;
    }

    .event-info-icon {
        width: 32px;

        font-size: 24px;
    }

    .event-info-item strong {
        font-size: 16px;
    }

    .event-info-item p {
        font-size: 15px;
    }

    .event-ticket {
        padding: 35px 25px;
    }

    .event-ticket-price strong {
        font-size: 42px;
    }
}


/******************************************************************************
    15.2 TABLET
    max-width: 800px
******************************************************************************/

@media only screen and (max-width: 800px) {


    /*==========================================================================
        STARTSEITE – AKTUELLES
    ==========================================================================*/

    .aktuelles {
        padding: 0 20px;
    }

    .aktuelles-grid {
        grid-template-columns: 1fr;
    }


    /*==========================================================================
        SOMMERBEAT – HIGHLIGHTS
    ==========================================================================*/

    .event-highlights {
        margin: 60px auto;

        padding: 0 20px;
    }

    .event-highlights-grid {
        grid-template-columns: 1fr;
    }


    /*==========================================================================
        SOMMERBEAT – INFORMATIONEN
    ==========================================================================*/

    .event-info-box {
        grid-template-columns: 1fr;
    }


    /*==========================================================================
        TERMINE
    ==========================================================================*/

    .terminliste {
        padding: 0 20px;
    }
}


/******************************************************************************
    15.3 SMARTPHONE
    max-width: 600px
******************************************************************************/

@media only screen and (max-width: 600px) {


    /*==========================================================================
        ALLGEMEIN
    ==========================================================================*/

    body {
        font-size: 16px;
    }


    /*==========================================================================
        STARTSEITE
    ==========================================================================*/

    #startseite {
        padding: 0 10px 40px 10px;
    }

    #startseite h1 {
        font-size: 28px;
    }

    #startseite h2 {
        font-size: 24px;
    }


    /*==========================================================================
        STARTSEITE – HERO
    ==========================================================================*/

    .hero {
        height: 450px;
    }

    .hero-image {
        width: 125%;

        left: 0;
    }

    .hero-content {
        margin-left: 20px;
        margin-right: 20px;
        margin-bottom: 30px;
    }

    .hero-kicker {
        margin-bottom: 8px;

        font-size: 12px;

        letter-spacing: 1.5px;
    }

    .hero h1 {
        margin-bottom: 18px;

        font-size: 1.65rem;

        line-height: 1.15;
    }

    .hero-button {
        padding: 11px 18px;

        font-size: 14px;
    }


    /*==========================================================================
        STARTSEITE – AKTUELLES
    ==========================================================================*/

    .aktuelles {
        margin: 60px auto;

        padding: 0 20px;
    }

    .aktuelles-grid {
        grid-template-columns: 1fr;

        gap: 25px;
    }

    .section-heading {
        gap: 10px;
    }

    .section-heading h2 {
        font-size: 30px;
    }


    /*==========================================================================
        TERMINE
    ==========================================================================*/

    .terminliste {
        margin: 60px auto;

        padding: 0 20px;
    }

    .terminliste > h2 {
        margin-bottom: 30px;

        font-size: 30px;
    }

    .terminliste .event {
        margin-bottom: 15px;

        padding: 18px;

        border-left-width: 5px;
    }

    .terminliste .event h2 {
        font-size: 21px;
    }

    .terminliste .event p {
        font-size: 15px;

        line-height: 1.4;
    }


    /*==========================================================================
        VERANSTALTUNGS-HERO
    ==========================================================================*/

    .event-hero {
        height: 450px;
    }

    .event-hero-content {
        margin-left: 20px;
        margin-right: 20px;
        margin-bottom: 30px;
    }

    .event-hero-kicker {
        font-size: 11px;

        letter-spacing: 1.5px;
    }

    .event-hero h1 {
        font-size: 2.4rem;
    }

    .event-hero-date {
        font-size: 20px;
    }

    .event-hero-location {
        font-size: 16px;
    }


    /*==========================================================================
        SOMMERBEAT – HERO-BILD
    ==========================================================================*/

    .event-hero-image {
        object-position: center;
    }


    /*==========================================================================
        SOMMERBEAT – INTRO
    ==========================================================================*/

    .event-intro {
        margin: 50px auto 60px auto;

        padding: 0 20px;
    }

    .event-intro h2 {
        margin-bottom: 35px;

        font-size: 28px;

        line-height: 1.25;
    }

    .event-intro p {
        font-size: 16px;

        line-height: 1.6;
    }


    /*==========================================================================
        SOMMERBEAT – HIGHLIGHTS
    ==========================================================================*/

    .event-highlights {
        margin: 50px auto;

        padding: 0 20px;
    }

    .event-section-heading {
        gap: 8px;
    }

    .event-section-heading h2 {
        font-size: 24px;
    }


    /*==========================================================================
        SOMMERBEAT – INFORMATIONEN
    ==========================================================================*/

    .event-info {
        margin-top: 50px;

        padding: 40px 15px 50px 15px;
    }

    .event-info-heading {
        gap: 8px;

        margin-bottom: 25px;
    }

    .event-info-heading h2 {
        font-size: 24px;
    }

    .event-info-main {
        padding: 25px 20px;
    }

    .event-info-main h3 {
        font-size: 22px;
    }

    .event-info-item {
        gap: 10px;
    }

    .event-info-icon {
        width: 28px;

        font-size: 22px;
    }

    .event-info-item strong {
        font-size: 15px;
    }

    .event-info-item p {
        font-size: 14px;
    }

    .event-ticket {
        padding: 30px 20px;
    }

    .event-ticket-price strong {
        font-size: 38px;
    }
}


