@import '../fonts/fonts.css';
@import url("https://use.typekit.net/djn4xtt.css");


/* ===================== ROOT VARIABLES ===================== */
:root {
    --color-bg: rgba(255,255,255,0.5);
    --color-titel: #900055;
    --color-border: #e4e1d5;
    --color-hover-bg: #7e7e7e;
    --color-hover-bg-sub: #746f5e;
    --color-text: #746f5e;
    --color-white: #ffffff;
    --color-card-bg: #F2F2F2;
    --color-service-content: #B94888;
    --color-shadow: rgba(0,0,0,0.1);
    --font-main: 'Generis Sans', sans-serif;
}

/* ===================== RESET ===================== */
html{font-size:62.5%;scroll-behavior:smooth;font-family:var(--font-main),serif;}
*,*::before,*::after{box-sizing:border-box;}

body{font-size:1.8rem;font-family:var(--font-main),serif;font-weight:400;line-height:1.4;color:var(--color-text);margin:0;padding:0;}

p {
    font-size:1.8rem;font-family:var(--font-main),serif;font-weight:400;line-height:1.4;color:var(--color-text);margin:0;padding:0;
}

a:link{text-decoration:none;color:var(--color-titel);}
a:hover{text-decoration:none;color:var(--color-titel);}
a:visited{text-decoration:none;color:gray;}

h1,h2,h3,h5,h6{color:var(--color-titel);}
h1{font-size:2.2rem;line-height:1.25;letter-spacing:1px;}
h2{font-size:2.2rem;line-height:1.25;letter-spacing:1px;}
h3{font-size:2rem;line-height:1.25;}
h5{font-size:3.6rem;line-height:1.25;}
h6{font-size:11px;letter-spacing:2px;}

auflistung {
	display: flex;
  flex-direction: column;
  gap: 1.5rem;
  --color-bg: rgba(130,130,130,0.5);
	color:var(--color-titel);
 font-size:2.4rem;
	line-height:1.25;
	letter-spacing:1px;
  text-transform: uppercase;
  background: var(--color-bg);
  color: var(--color-text);
  padding: 2rem;
  cursor: pointer;
  margin: 0;
  transition: background .3s;
	box-sizing: border-box;
	--color-bg: rgba(130,130,130,0.5);
	margin-bottom:1rem;
}



/* ===================== LAYOUT ===================== */
.container{width:100%;max-width:1200px;margin:0 auto;position:relative;}
@media only screen and (max-width:1250px){
    .container{padding:0 20px;}
}

/* ===================== HEADER ===================== */
header{max-width:100%;margin:0 auto;}
header .logo img{max-width:140px;}
.header-content{display:flex;flex-direction:row;justify-content:space-between;align-items:center;padding:20px 0;margin-top:170px;background-color: rgba(255,255,255,0.5);}

@media only screen and (max-width:1200px){.header-content{padding:20px;}}
@media only screen and (max-width:600px){.header-content{flex-direction:column;}}

/* ===================== MENU ===================== */
#main-menu {
    margin-bottom: 0 !important;
}
#main-menu .main-menu-list{display:flex;flex-direction:row;list-style:none;justify-content:start;padding:0;margin:0;}
#main-menu .main-menu-list>li{position:relative;background:var(--color-bg);border-right:1px solid var(--color-border);padding:20px 30px;display:flex;align-items:center;transition:background .2s;min-width:150px;}
#main-menu .main-menu-list>li:first-of-type{border-top-left-radius:0;}
#main-menu .main-menu-list>li:last-of-type{border-top-right-radius:0;border-right:none;}
#main-menu .main-menu-list>li:hover{background:var(--color-hover-bg);}
#main-menu .main-menu-list>li>a{font-size:1.6rem;letter-spacing:1px;line-height:1.25rem;text-decoration:none;color:var(--color-text);font-weight:600;text-transform:uppercase;white-space:nowrap;font-family:var(--font-main);}
#main-menu .main-menu-list>li:hover>a{color:var(--color-white);}
#main-menu .menu-item-has-children{position:relative;}
#main-menu .menu-item-has-children:after{content:"";position:absolute;top:50%;right:10px;transform:translateY(-50%);width:1.2rem;height:1.2rem;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23746f5e' viewBox='0 0 16 16'%3E%3Cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708'/%3E%3C/svg%3E");background-repeat:no-repeat;background-size:contain;pointer-events:none;}
#main-menu .menu-item-has-children:hover:after{color:var(--color-white);}
#main-menu .sub-menu{display:none;position:absolute;top:100%;left:0;background:var(--color-hover-bg);width:100%;z-index:999;list-style:none;margin:0;padding:0;border-radius:0;}
#main-menu .menu-item-has-children:hover>.sub-menu{display:block;}
#main-menu .sub-menu li{padding:10px 10px;border-bottom:1px solid rgba(255,255,255,.2);background:transparent;}
#main-menu .sub-menu li a{color:var(--color-white);font-weight:normal;text-transform:none;font-size:1.6rem;line-height:1.25rem;text-decoration:none;font-family:var(--font-main);}
#main-menu .sub-menu li:hover{background:var(--color-hover-bg-sub);}
#main-menu .sub-menu li:hover a{color:var(--color-white);}
/* Third level menu */
#main-menu .sub-menu .sub-menu{position:absolute;top:0;left:100%;background:var(--color-hover-bg-sub);min-width:180px;width:auto;}
#main-menu .sub-menu .menu-item-has-children{position:relative;}
#main-menu .sub-menu .menu-item-has-children:after{content:"";position:absolute;top:50%;right:8px;transform:translateY(-50%) rotate(-90deg);width:1rem;height:1rem;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23ffffff' viewBox='0 0 16 16'%3E%3Cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708'/%3E%3C/svg%3E");background-repeat:no-repeat;background-size:contain;}

.hamburger-wrapper{display:none;align-items:center;cursor:pointer;user-select:none;position:absolute;top:10px;left:20px;z-index:99;}

#menu-toggle{display:none;}
.hamburger{display:flex;flex-direction:column;justify-content:center;gap:4px;width:40px;height:40px;padding:5px;transition:all .3s;background-color:white;}
.hamburger span{display:block;height:3px;width:100%;background:#333;border-radius:2px;transition:all .3s;}
#menu-toggle:checked+.hamburger span:nth-child(1){transform:rotate(45deg) translate(5px,5px);}
#menu-toggle:checked+.hamburger span:nth-child(2){opacity:0;}
#menu-toggle:checked+.hamburger span:nth-child(3){transform:rotate(-45deg) translate(5px,-5px);}


@media only screen and (max-width:900px){
    #main-menu{position:absolute;top:0;right:0;z-index:2;width:100vw;height:100vh;padding:50px 20px 20px 0;background:var(--color-bg);display:none;}
    #main-menu .main-menu-list{flex-direction:column;}
    #main-menu .main-menu-list>li{flex-direction:column;justify-content:start;align-items:start;padding:15px 30px;border-right:0;}
    #main-menu .sub-menu{position:relative;margin:5px 0;}
    #main-menu .sub-menu li{padding:5px 10px;border-bottom:0;}
    #main-menu .sub-menu li:hover{background:transparent;}
    #main-menu .sub-menu li:hover a{text-decoration:underline;}
	#main-menu .sub-menu .sub-menu{position:relative;top:0;left:0;margin-left:15px;}
    #main-menu .sub-menu .menu-item-has-children:after{transform:translateY(-50%) rotate(0deg);}
    .hamburger-wrapper{display:flex;}
}

/* ===================== FEATURED IMAGE ===================== */
.featured-image-container {
    position: relative;
    width: 100%;
    min-height: 350px;
    max-height: 350px;
    /*overflow: hidden;*/
}

.featured-title-container {
    display: flex;

    position: absolute;
    top: 100px;
    z-index: 9;
    width: auto;
}

.featured-image-container .container{
    width:100%;
    max-width:1200px;
    height:100%;
    display:block;
    left:0;
    right:0;
    z-index:9999;
    position:relative
}
#main-menu.scrolled{position: fixed;top: 0;}
#main-menu.scrolled .main-menu-list>li {background: var(--color-white);}
.logo-link{position: absolute;bottom: 0px;right: 0px;z-index: 999;background-color: rgba(255,255,255,0.5);}


@media (max-width: 768px) {
    .logo-link {left: 50%;right: auto;transform: translateX(-0%);bottom: 0px;}
}

/* ===================== EVENT LIST ===================== */
#event-list{width:100%;}
#event-list ul.events-list{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;list-style:none;margin:0;padding:0;font-size:1.6rem;width:100%;}
@media only screen and (max-width:1200px){  #event-list ul.events-list{grid-template-columns:repeat(2,1fr);}  }
@media only screen and (max-width:900px){#event-list ul.events-list{grid-template-columns:repeat(1,1fr);}}
#event-list ul.events-list li{display:flex;flex-direction:column;gap:20px;color:var(--color-text);border-bottom:1px solid var(--color-text);padding-bottom:10px;font-size:2rem;line-height:1rem;}
#event-list ul.events-list li .event-date{color:var(--color-white);background:var(--color-hover-bg);padding:10px 15px;align-self:flex-start;width:auto;}
#event-list ul.events-list li .event-date span{font-weight:800;font-size:1.8rem;letter-spacing:1.5px;}
#event-list ul.events-list li .event-title{font-size:2.5rem;line-height:2.5rem;color:var(--color-titel);}
#event-list ul.events-list li .event-ical{display:flex;flex-direction:row;gap:0;justify-content:start;align-items:center;}
#event-list ul.events-list li .event-ical a{color:var(--color-hover-bg-sub);padding-left:10px;font-size:10px;}
#event-list .title{font-size:3rem;font-weight:200;color:var(--color-text);}
.event-thumbnail{width:100%;max-width:100%;min-height:130px;max-height:130px;height:130px;display:flex;align-items:center;justify-content:center;overflow:hidden;background:var(--color-card-bg);padding:0px;margin-bottom:0px;}
.event-thumbnail img{width:auto;max-width:100%;max-height:130px;object-fit:contain;display:block;margin:auto;}
.event-thumbnail.no-thumb{background:var(--color-card-bg);}

@media only screen and (max-width:480px){.event-thumbnail{display:none;}}

/* Hide The Events Calendar featured images */
.tribe-events-calendar-list__event-featured-image{display:none!important;}


@media only screen and (max-width:900px){#event-list ul.events-list{grid-template-columns:repeat(1,1fr);}}

/* ===================== CATEGORY FILTERS ===================== */
#event-list .event-categories{position:relative;display:inline;width:234px;}
#event-list .event-categories a.selector{background:var(--color-bg);color:var(--color-text);text-transform:uppercase;border:0;font-size:1.8rem;margin:10px 0;padding:14px 20px;border-radius:0;text-decoration:none;display:inline-block;box-sizing:border-box;}
#event-list .box-categories{position:absolute;width:234px;padding:20px;background:var(--color-bg);top:20px;left:0;display:flex;flex-direction:column;gap:5px;opacity:0;visibility:hidden;transition:opacity .3s;}
#event-list .event-categories:hover .box-categories{opacity:1;visibility:visible;}
#event-list .box-categories a{color:#000;padding:5px;align-self:flex-start;width:auto;}
.box-categories label{margin-bottom:10px;font-weight:bold;cursor:pointer;color:#333;}
.box-categories input[type="checkbox"]{margin-right:6px;transform:scale(1.3);}

/* ===================== PAGINATION ===================== */
.pagination-buttons{text-align:center;margin-top:2rem;}
.pagination-buttons button{width:36px;height:36px;margin:0 5px;background:var(--color-white);border:1px solid var(--color-hover-bg);color:var(--color-text);font-weight:bold;cursor:pointer;transition:.2s;}
.pagination-buttons button.active{background:var(--color-hover-bg);color:var(--color-white);}

/* ===================== PAGE TEMPLATE ===================== */
.page-content .page-title{color:var(--color-bg);font-size:4rem;font-weight:200;text-transform:uppercase;letter-spacing:2px;}

/* ===================== FOOTER ===================== */
footer{width:100%;min-height:300px;background:var(--color-hover-bg);margin-top:20px;box-sizing:border-box;}

/* ===================== CATEGORY ACCORDION (CONTACT CATEGORIES) ===================== */
.categories-list{display:flex;flex-direction:column;gap:1.5rem; --color-bg: rgba(130,130,130,0.5);}
.category-item{overflow:hidden;}
.category-title{font-size:1.8rem;text-transform:uppercase;background:var(--color-bg);color:var(--color-text);padding:2rem;cursor:pointer;margin:0;transition:background .3s;}
.category-contacts{padding-top:1rem;display:none;}
.contacts-grid{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;}

@media only screen and (max-width:900px){.contacts-grid{grid-template-columns:repeat(2,1fr);}}

@media only screen and (max-width:600px){.contacts-grid{grid-template-columns:repeat(1,1fr);}}
.contact-item{}
.contact-thumbnail img{width:100%;height:auto;}
.contact-info{margin-top:0.5rem;}
.contact-name{font-weight:200;text-decoration:none;text-transform:uppercase;color:var(--color-titel);}

.contact_email{color:var(--color-hover-bg);text-decoration:none;}
.contact_email:hover{text-decoration:underline;}
.no-contacts{font-size:1.2rem;padding:0.5rem;}
.more-info{margin-top:0.5rem;display:none;}
.toggle-info{cursor:pointer;text-decoration:none;font-weight:400;color:var(--color-text);}
.contact-details{margin-top:0.5rem;color:var(--color-text);display:none;grid-column:span 3;}
.contact-toggle-info{display:inline-block;margin-top:10px;background:var(--color-titel);color:#fff;padding:8px 14px;border:none;cursor:pointer;font-size:1.4rem;transition:background .3s;}
.contact-toggle-info:hover{background:var(--color-hover-bg);}
.contact-details{margin-top:10px;font-size:1.5rem;line-height:1.6;color:var(--color-text);}
/* ===================== FOOTER WIDGETS ===================== */
.footer{padding:10rem 0;color:var(--color-white);}
.footer p{color:var(--color-white);}
/*.footer-widgets{display:flex;justify-content:space-between;flex-wrap:wrap;width:100%;gap:2%;}*/
.footer-widgets{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;}
.footer-widgets h3,
.footer-widgets .wp-block-heading{color:var(--color-white);font-weight:200;margin:0;}
/*.footer-column{padding:0 1rem;margin-bottom:2rem;}*/
.footer-column{padding:0;margin:0;}
.footer-widget{margin-bottom:1rem;}
.footer-title{font-size:1.6rem;font-weight:400;text-transform:uppercase;margin-bottom:1rem;color:var(--color-white);}
.footer a{color:var(--color-white);}
.footer a:hover{color:var(--color-titel);}
.footer a:visited{color:white;}
.footer a:link{text-decoration:none;color:var(--color-titel);}
.footer a:hover{text-decoration:none;color:var(--color-border);}

/*@media only screen and (max-width:600px){.footer-widgets{flex-direction:column;}.footer-column{flex:1 1 100%;}}*/
@media only screen and (max-width:1024px){.footer-widgets{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media only screen and (max-width:600px){.footer-widgets{grid-template-columns:1fr;}}

/* ===================== SEARCH FORM & RESULTS ===================== */
.custom-search-form{display:flex;border:1px solid var(--color-bg);border-radius:10px;overflow:hidden;max-width:600px;margin:2rem auto;}
.search-input{flex:1;padding:1rem 1.5rem;border:none;outline:none;font-size:1.6rem;color:var(--color-text);font-family:var(--font-main);}
.search-button{background:var(--color-bg);color:var(--color-text);border:none;padding:0 2rem;font-weight:700;text-transform:uppercase;cursor:pointer;font-size:1.4rem;font-family:var(--font-main);border-left:1px solid var(--color-bg);}
.search-form{display:flex;gap:0.5rem;}
.search-field{flex:1;padding:0.5rem 1rem;border:1px solid #ccc;}
.search-submit{background:var(--color-hover-bg);color:white;border:none;padding:0.5rem 1rem;cursor:pointer;}
.search-results{list-style:none;padding:0;margin:2rem 0;}
.search-item{margin-bottom:2rem;border-bottom:1px solid #ddd;padding-bottom:2rem;}
.search-content{display:flex;gap:2rem;align-items:flex-start;}
@media only screen and (max-width:600px){.search-content{flex-direction: column;}}
.search-thumb img{max-width:300px;height:auto;display:block;border-radius:8px;}
.search-info h3{font-size:2rem;margin:0 0 1rem;}
.search-info p{font-size:1.5rem;color:var(--color-text);}

/* ===================== ARCHIVE ===================== */
.archive-list{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;padding-top:20px;}
.archive-item{border:1px solid #ddd;border-radius:8px;overflow:hidden;background:var(--color-white);display:flex;flex-direction:column;}
.archive-thumb img{width:100%;height:auto;display:block;}
.archive-content{padding:20px;display:flex;flex-direction:column;gap:10px;}
.archive-title{font-size:1.8rem;margin:0;color:var(--color-text);}
.archive-title a{color:var(--color-text);}
.archive-title a:hover{text-decoration:underline;}
.archive-excerpt{font-size:1.4rem;color:#666;}

/* ===================== SERVICE BOX ===================== */
.services{background:var(--color-titel);width:100%;border-radius:0em;box-sizing:border-box;align-self:flex-start;margin-top:85px;overflow:hidden;}

@media only screen and (max-width:600px){.services{max-width:100%;}}
.services .services-title{padding:20px;color:var(--color-white);text-transform:uppercase;font-size:2.5rem;font-weight:200;}
.services .services-content{background:var(--color-service-content);padding:10px 20px;display:flex;flex-direction:column;gap:5px;}
.services .services-content a{color:var(--color-white);}
.services .services-content a:hover{text-decoration:underline;}
.services .services-footer{padding:30px;}
.services .services-footer a{background:var(--color-white);color:var(--color-hover-bg);padding:10px 20px;border-radius:0em;text-transform:uppercase;border:1px solid var(--color-white);}
.services .services-footer a:hover{border:1px solid var(--color-hover-bg);text-decoration:underline;}

/* ===================== CONTACT MENU ===================== */
.contact-menu{display:flex;flex-direction:column;justify-content:center;align-items:center;width:50px;position:fixed;top:50%;transform:translateY(-50%);right:0;z-index:10;}
.contact-menu a,.contact-menu .search-toggle{color:var(--color-white);background:var(--color-titel);width:50px;height:60px;display:flex;justify-content:center;align-items:center;border:none;outline:none;cursor:pointer;transition:background .2s;}
.contact-menu a:hover,.contact-menu .search-toggle:hover{background:var(--color-hover-bg);}
.search-expander{display:flex;flex-direction:row-reverse;align-items:start;position:relative;width:auto;}
.search-form{display:flex;align-items:center;overflow:hidden;width:0;transition:width .35s cubic-bezier(.4,0,.2,1);position: absolute;top: 0;right: 50px;}
.search-expander.active .search-form{width:200px;}
.search-input{border:none;padding:0 16px;width:200px;height:60px;font-size:1.6rem;border-radius:0;outline:none;background:var(--color-white);color:#a03a78;box-shadow:none;opacity:0;transition:opacity .2s;}
.search-expander.active .search-input{opacity:1;}
.search-expander .search-input{pointer-events:none;}
.search-expander.active .search-input{pointer-events:auto;}
.search-expander.active .search-form{border: 1px solid #900055;top: -2px;}


/* ===================== HEADER SLIDER ===================== */
.header-slider{width:100%;min-height:350px;max-height:350px;overflow:hidden;}
.header-slider-slide{position:absolute;top:0;left:0;width:100%;height:100%;opacity:0;transition:opacity 1s;z-index:0;}
.header-slider-slide.active{opacity:1;z-index:1;}
.header-slider-slide img{width:100%;height:100%;object-fit:cover;}
.header-slider-dots{position:absolute;bottom:10px;left:50%;transform:translateX(-50%);display:flex;gap:8px;z-index:10;}
.header-slider-dot{width:12px;height:12px;border-radius:50%;background:rgba(255,255,255,.5);cursor:pointer;transition:background .3s;}
.header-slider-dot.active{background:var(--color-titel);}

/* ===================== NEWS ===================== */
.news-section h2.title{font-size:3rem;font-weight:200;color:var(--color-text);}
.news-section .news-list{width:100%;padding:0;display:grid;grid-template-columns:repeat(1,1fr);}
.news-item{background-size:cover;background-position:center;height:330px;position:relative;overflow:hidden;transition:background-color .3s;display:flex;align-items:flex-end;justify-content:flex-start;border-radius:0em;}
.news-overlay{content:"";position:absolute;inset:0;background:rgba(0,0,0,.45);transition:background .3s;z-index:1;}
.news-content{bottom:0;width:100%;padding:20px;background:linear-gradient(to bottom,transparent 0%,rgba(0,0,0,.7) 100%);color:var(--color-white);z-index:2;transition:opacity .3s,transform .3s;opacity:1;display:flex;flex-direction:column;gap:.5rem;justify-content:start;align-items:start;}
.news-title{font-size:2rem;font-weight:700;margin:0;}
.news-item:hover .news-content{opacity:1;transform:translateY(0);}
.news-item:hover .news-overlay{background:rgba(0,0,0,.2);}
.news-excerpt,.news-readmore{display:none;opacity:0;transition:opacity .3s;}
.news-item:hover .news-excerpt,.news-item:hover .news-readmore{display:block;opacity:1;}
@media only screen and (max-width:900px){.news-section .news-list{grid-template-columns:repeat(1,1fr);}}

.wp-block-latest-posts__featured-image{height:200px;overflow:hidden;}
.wp-block-latest-posts__featured-image a{display:block;}
.wp-block-latest-posts__featured-image img{width:100%;height:100%;object-fit:cover;}

/* ===================== GALLERY PAGE ===================== */
.grid{display:block;margin:0 auto;}
.grid-sizer,.grid-item{width:33.333%;}
.grid-item{float:left;padding:10px;box-sizing:border-box;position:relative;overflow:hidden;}
.grid-item .gallery-thumbnail{position:relative;overflow:hidden;border-radius:0em;height:200px;}
.grid-item .gallery-thumbnail img{width:100%;height:auto;display:block;border-radius:0px;object-fit:cover;}
.grid-item .gallery-title-overlay{position:absolute;bottom:0;left:0;right:0;padding:20px;background:linear-gradient(to top,rgba(0,0,0,.5),transparent);color:var(--color-white);display:flex;align-items:flex-end;justify-content:center;height:40%;border-radius:5px;}
.grid-item .gallery-title{font-size:1.8rem;font-weight:700;text-align:center;margin:0;}
@media only screen and (max-width:900px){.grid-sizer,.grid-item{width:50%;}}
@media only screen and (max-width:600px){.grid-sizer,.grid-item{width:100%;}}

/* ===================== DETAIL GALLERY ===================== */
.gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:15px;margin-top:20px;}
.gallery-item{position:relative;overflow:hidden;}
.gallery-item a{display:block;position:relative;}
.gallery-item img{width:100%;height:auto;object-fit:cover;transition:transform .3s;}
.gallery-item:hover img{transform:scale(1.05);}
.gallery-item .gallery-title{position:absolute;bottom:0;left:0;width:100%;padding:15px;background:linear-gradient(to top,rgba(0,0,0,.6),transparent);color:#fff;text-align:left;font-size:1.4rem;font-weight:bold;}

/* ===================== EVENT CATEGORY LIST ===================== */
.event-categories-flex{display:flex;flex-wrap:wrap;gap:20px;}
.event-category-card-link{flex:1 1 calc(33.333% - 20px);border-radius:8px;box-sizing:border-box;overflow:hidden;position:relative;height:250px;display:flex;align-items:flex-end;justify-content:flex-start;}
.event-category-bg{position:absolute;inset:0;background-size:cover;background-position:center;}
.event-category-bg.no-image{background:var(--color-card-bg);}
.event-category-overlay{position:absolute;inset:0;background:rgba(0,0,0,.25);z-index:1;}
.event-category-content{position:relative;z-index:2;padding:20px;width:100%;}
.event-category-title{margin:0 0 10px 0;text-transform:uppercase;font-size:1.6rem;color:#fff;}
.event-category-desc{font-size:1.4rem;color:#fff;margin:0;}
@media only screen and (max-width:900px){.event-category-card-link{flex:1 1 100%;}}

/* ===================== 404 ===================== */
.error-404{text-align:center;padding:60px 20px;}
.error-code{font-size:5rem;color:var(--color-text);margin-bottom:20px;}
.error-message{font-size:2rem;color:var(--color-text);margin-bottom:30px;}
.error-home-btn{display:inline-block;padding:10px 30px;background:var(--color-hover-bg);color:var(--color-white);border-radius:5px;font-size:1.6rem;}

/* HOME FLEX LAYOUT */
.home-flex{display:flex;gap:20px;}

#event-list{width:75%;}
.home-right{width:25%;}


@media only screen and (max-width:1200px){
    #event-list{width:50%;}
    .home-right{width:50%;}
}
@media only screen and (max-width:900px){
    .home-flex{flex-direction:column;}
    #event-list{width:100%;}
    .home-right{width:100%;}
}

/* ===================== FEATURED TITLE ===================== */

.featured-title-container {
    position: absolute;
    top: 250px;
    z-index: 9;
    margin: 0 auto;
    max-width:1200px;
    left:0;
    right:0;

}
.featured-title{font-family:ccsignlanguage,sans-serif;
	font-family: "The Girl Next Door", cursive;
	font-weight:900;font-style:bold;font-size:5rem;color:var(--color-white);
text-shadow: var(--color-text) 2px 3 1px;
	
	 -webkit-text-stroke-width: 3px;
  -webkit-text-stroke-color: white;
}


@media only screen and (max-width:600px){
    .featured-title{font-size:2.8rem;padding:10px 10px;}
    .featured-title-container{margin-top:-80px;display:none;}
}

@media only screen and (max-width:375px) {
    .header-content{margin-top:0px;}
    .header .logo img{max-width:100px;}

    .featured-image-container {
        max-width: 100%;
        margin: 0 auto;
        min-height: 250px;
        max-height: 250px;
        overflow: hidden;
        position: relative;
        width: 100%;

    }


    .hamburger-wrapper {
        left: 20px;}

    .featured-title{display:none;}
}


@media only screen and (max-width:320px) {
    .header-content{margin-top:0px;}
    .header .logo img{max-width:100px;}

    .featured-image-container {
        max-width: 100%;
        margin: 0 auto;
        min-height: 350px;
        max-height: 350px;
        overflow: hidden;
        position: relative;
        width: 100%;
    }
    .hamburger-wrapper {left: 20px;}
    .featured-title{display:none;}
}

/* ===================== CONTACTS SLIDER ===================== */
.contacts-slider{position:relative;margin:2rem 0 3rem;overflow:hidden;}
.contacts-slider-track{position:relative;min-height:200px;}
.contacts-slider-slide{display:none;grid-template-columns:repeat(4,1fr);gap:1.5rem;padding:0 1rem;}
.contacts-slider-slide.active{display:grid;}
.contacts-slider-item{text-align:center;}
.contacts-slider-img{width:100%;aspect-ratio:1/1;overflow:hidden;border-radius:50%;}
.contacts-slider-img img{width:100%;height:100%;object-fit:cover;display:block;}
.contacts-slider-arrow{position:absolute;top:50%;transform:translateY(-50%);background:rgba(0,0,0,.3);color:#fff;border:none;font-size:2rem;padding:0.8rem 1.2rem;cursor:pointer;border-radius:50%;z-index:5;transition:background .3s;line-height:1;}
.contacts-slider-arrow:hover{background:var(--color-titel);}
.contacts-slider-prev{left:0;}
.contacts-slider-next{right:0;}
.contacts-slider-dots{display:flex;justify-content:center;gap:8px;margin-top:1.5rem;}
.contacts-slider-dot{width:12px;height:12px;border-radius:50%;background:rgba(0,0,0,.2);cursor:pointer;transition:background .3s;}
.contacts-slider-dot.active{background:var(--color-titel);}
@media only screen and (max-width:900px){.contacts-slider-slide{grid-template-columns:repeat(3,1fr);}}
@media only screen and (max-width:600px){.contacts-slider-slide{grid-template-columns:repeat(2,1fr);}}