/*
Theme Name: Twenty Twenty-Five Child
Description: Mein individuelles Child-Theme für Twenty Twenty-Five.
Template: twentytwentyfive
Version: 1.0.0
*/


/* html */

html {
    -webkit-text-size-adjust: 100%;
    -moz-text-size-adjust: 100%;
    text-size-adjust: 100%;
}



/* Basics */

:focus-visible {
    outline: none !important;
    box-shadow: none !important;
}

:focus:not(:focus-visible) {
    outline: none !important;
    box-shadow: none !important;
}

.ausgeblendet {
    display: none !important;
}


/* Buttons */

.wp-block-button .wp-block-button__link {
    transition: background-color 0.3s ease, color 0.3s ease !important;
}

.wp-block-button .wp-block-button__link:hover {
    background-color: #004374 !important;
    color: #fff !important;
}


.wp-block-button.button-blue .wp-block-button__link:hover {
    background-color: #f9b000 !important;
    color: #fff !important;
}



/* HEADER */
header.wp-block-template-part,
.wp-block-template-part-header {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    z-index: 99999 !important;
    background-color: #ffffff;
}

header.wp-block-template-part > *,
.wp-block-template-part-header > * {
    margin-left: auto !important;
    margin-right: auto !important;
    width: 100% !important;
}

.wp-block-site-logo.is-default-size img {
    width: clamp(13.75rem, 12.159rem + 7.95vw, 18.125rem);
    height: auto;
}


/* Hauptnavigation */

.wp-block-navigation.mainnav .wp-block-navigation-item__content:hover {
    text-decoration: none !important;
}

.wp-block-navigation.mainnav .wp-block-navigation-item__content:hover {
    color: #f9b000;
}

.wp-block-navigation.mainnav .wp-block-navigation-item.current-menu-item > .wp-block-navigation-item__content {
    color: #f9b000 !important;
}


@media (min-width: 600px) {
    .wp-block-navigation.mainnav li.wp-block-navigation-item.impressum-link, .wp-block-navigation.mainnav li.wp-block-navigation-item.datenschutz-link {
        display: none !important;
    }
}



/* MAIN */

/* Socialmedia Follow Us */
[class^="icon-socialmedia"], 
[class*=" icon-socialmedia"],
.icon-socialmediaFacebook, 
.icon-socialmediaInstagram {
  font-family: iconfont-socialmedia !important; 
  speak: never;
  font-style: normal !important;
  font-weight: normal !important;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.icon-socialmediaFacebook:before {
  content: "\e900" !important;
}

.icon-socialmediaInstagram:before {
  content: "\e901" !important;
}

.wp-block-group.icons-container {
    text-align: right;
}

@media (max-width: 599px) {
    .wp-block-group.icons-container {
        text-align: left;
    }
}

.social-follow-container {
  display: inline-flex;
  align-items: center;
  gap: 8px; 
  color: #004374; 
  font-size: 1.1rem;
}

.social-icon-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  transition: all 0.3s ease; 
}

.social-icon-link.icon-facebook {
  color: #004374 !important;
  font-size: 30px; 
  width: 32px;
  height: 32px;
  padding-left: 5px;
}

.social-icon-link.icon-instagram {
  color: #004374 !important;
  font-size: 28px; 
  width: 28px; 
  height: 28px;
}

.social-icon-link:hover {
  color: #f9b000 !important; 
}


/* FOOTER */

footer.wp-block-template-part {
	margin-block-start: 0 !important;
}

.footercontent {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important; 
    text-align: center !important;  
    gap: 40px; 
    width: 100% !important;
}

.footercontent figure.wp-block-image {
    display: block !important;
    width: 100% !important;
    max-width: 150px !important; 
    height: auto !important;
    margin: 0 auto !important;
}

.footercontent figure.wp-block-image img {
    display: block !important;
    width: 100% !important;
    height: auto !important;
}

.footerinfo {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important; 
    gap: 30px; 
    width: 100% !important;
}

.footerinfo .has-small-font-size {
    font-size: 1rem !important;
}

.footerinfo .wp-block-navigation,
.footerinfo .wp-block-navigation__container {
    align-items: center !important;
    text-align: center !important;
}


@media (min-width: 600px) {
    .footercontent {
        flex-direction: row !important;
        justify-content: space-between !important;
        align-items: flex-start !important;
        text-align: left !important; 
    }

    .footercontent figure.wp-block-image {
        margin: 0 !important;
        max-width: 300px !important; 
    }

    .footerinfo {
        flex-direction: row !important;
        justify-content: flex-end !important;
        align-items: flex-start !important;
        gap: 60px; 
        width: auto !important;
    }

    .footerinfo .wp-block-navigation,
    .footerinfo .wp-block-navigation__container {
        align-items: flex-start !important;
        text-align: left !important;
    }
    .footerinfo .has-small-font-size {
    font-size: 0.9rem !important;
}
}


/* Startseite Slider */

.stageslider .wp-block-blablablocks-slider {
    width: 100vw !important;
    max-width: 100vw !important;
    margin-left: calc(50% - 50vw) !important;
    margin-right: calc(50% - 50vw) !important;
}

#wp--skip-link--target, 
.site-content, 
main, 
#primary {
    overflow-x: hidden;
}

@media (max-width: 819px) {
.wp-block-blablablocks-slider .swiper .bbb-slider-nav-container {
	display: none;
}
}

@media (min-width: 820px) {
.wp-block-blablablocks-slider .swiper .bbb-slider-nav-container {
	display: block;
}
}


.page-id-5 .wp-site-blocks {
	margin-top: clamp(5rem, 4.477rem + 2.61vw, 6.438rem) !important;
}

/* Startseite Partnerlogos */

.partnerlogos-grid {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 30px; 
  width: 100%;
}

.partnerlogos-grid .logo-item {
  flex: 0 1 200px; 
  display: flex;
  justify-content: center;
  align-items: center;
  min-height: 100px;
}

.partnerlogos-grid .logo-item img {
  width: 300px;
  height: auto;
  max-width: 100%; 
  max-height: 120px; 
  display: block;
}

@media (min-width: 600px) {
  .partnerlogos-grid {
    gap: 60px 80px; 
  }

  .partnerlogos-grid .logo-item {
    flex-basis: 210px; 
  }

    .partnerlogos-grid .logo-item img {
    max-height: 120px; 
  }
}

.partnerlogos-grid .logo-item.bkm {
    flex-basis: 240px; 
}

.partnerlogos-grid .logo-item.freistaat-thueringen {
    flex-basis: 300px; 
}

.partnerlogos-grid .logo-item.freistaat-sachsen {
    flex-basis: 270px; 
}

.partnerlogos-grid .logo-item.skk {
    flex-basis: 260px; 
}

.partnerlogos-grid .logo-item.sparkasse-arnstadt-ilmenau {
    flex-basis: 185px; 
}

.partnerlogos-grid .logo-item.ilmenau {
    flex-basis: 200px; 
}

.partnerlogos-grid .logo-item.ilm-kreis {
    flex-basis: 175px; 
}

.partnerlogos-grid .logo-item.grossbreitenbach {
    flex-basis: 225px; 
}

.partnerlogos-grid .logo-item.hfmw {
    flex-basis: 270px; 
}

/* Programm Carousel */


.carousel-programme {
    padding-left: clamp(1.25rem, -0.114rem + 6.82vw, 5rem)  !important;
    padding-right: clamp(1.25rem, -0.114rem + 6.82vw, 5rem) !important;
}

/* Rückblick Galerie */

/* Erzwingt das originale Seitenverhältnis in der WordPress-Lightbox */
.wp-lightbox-container [data-wp-interactive="core/image"] img,
.wp-lightbox-overlay img,
[id^="wp-lightbox-overlay"] img {
    aspect-ratio: auto !important;
    object-fit: contain !important;
    width: auto !important;
    height: auto !important;
    max-width: 100% !important;
    max-height: 100% !important;
}

/* Blendet die Bildunterschriften auf der Galerie-Übersichtsseite komplett aus */
.wp-block-gallery .wp-element-caption,
.wp-block-image .wp-element-caption {
    display: none !important;
}


/* Rückblick Timeline */

/* Der Hauptcontainer */
.modern-timeline {
    position: relative;
    max-width: 580px;
    margin: 40px auto;
    padding: 60px 35px;
    max-height: 500px; 
    overflow-y: auto;
    scrollbar-width: none; 
    -ms-overflow-style: none; 
    background-color: #f8f9fa !important; 
    border-radius: 16px;
    border: none !important;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.02); 
    
    /* Der sanfte Ausblendeffekt nur unten am Kasten */
    mask-image: linear-gradient(to bottom, black 0%, black 75%, transparent 100%);
    -webkit-mask-image: linear-gradient(to bottom, black 0%, black 75%, transparent 100%);
}

/* Versteckt den Scrollbalken in Chrome, Safari und Edge */
.modern-timeline::-webkit-scrollbar {
    display: none !important;
    width: 0 !important;
}

.modern-timeline ul {
    list-style: none;
    padding: 0;
    margin: 0;
    position: relative;
}

/* Einzelne Listeneinträge */
.modern-timeline li {
    position: relative;
    width: 50%;
    margin-bottom: 0; 
    padding-bottom: 35px; 
    box-sizing: border-box;
}

.modern-timeline li::before {
    content: '';
    position: absolute;
    top: 0 !important; 
    bottom: 0; 
    width: 2px;
    background-color: #004B87;
    z-index: 1;
}

.modern-timeline li:first-child::before {
    top: 5px !important;
}

.modern-timeline li:last-child {
    padding-bottom: 20px; 
}

.modern-timeline li:last-child::before {
    display: block !important; 
    bottom: calc(100% - 12px) !important; 
}

.modern-timeline li::after {
    content: '';
    position: absolute;
    top: 5px;
    width: 14px;
    height: 14px;
    background-color: #004B87;
    border-radius: 50%;
    z-index: 2; 
}

.modern-timeline li.timeline-left {
    left: 0;
    padding-right: 30px;
    text-align: right;
}
.modern-timeline li.timeline-left::before {
    right: -1px; 
}
.modern-timeline li.timeline-left::after {
    right: -7px;
}

.modern-timeline li.timeline-right {
    left: 50%;
    padding-left: 30px;
    text-align: left;
}
.modern-timeline li.timeline-right::before {
    left: -1px; 
}
.modern-timeline li.timeline-right::after {
    left: -7px;
}

.modern-timeline .timeline-content {
    display: flex;
    flex-direction: column;
}

.modern-timeline .timeline-year {
    font-size: 1.2rem;
    font-weight: 700;
    color: #004B87; 
    line-height: 1.15;
}

.modern-timeline .timeline-location {
    font-size: 1.1rem;
    color: #004B87;
    line-height: 1.15;
}

@media (max-width: 600px) {
    .modern-timeline li {
        width: 100% !important;
        left: 0 !important;
        padding-left: 40px !important;
        padding-right: 0 !important;
        text-align: left !important;
        padding-bottom: 25px;
    }
    
    .modern-timeline li::before {
        left: 14px !important;
        right: auto !important;
        display: block !important; 
    }
    
    .modern-timeline li:last-child::before {
        bottom: calc(100% - 12px) !important;
    }
    
    .modern-timeline li::after {
        left: 8px !important;
    }

    .modern-timeline {
            max-height: 400px; 
            padding: 60px 25px;
    }
}


/* Kontakt */

@media (max-width: 599px) {
.kontakt-content {
    padding: 0 2.5rem;
}
}


/* Lightbox */

#baguetteBox-overlay {
    background-color: #fff !important;
}

#baguetteBox-overlay .full-image img {
    max-height: 95% !important;
    max-width: 95% !important;
    box-shadow: none !important;
    -webkit-box-shadow: none !important;
    -moz-box-shadow: none !important;
}

#baguetteBox-overlay .full-image figcaption {
    background-color: #fff !important;
    font-size: 1rem !important;
    color: #000 !important;
}

.baguetteBox-button {
    background-color: rgba(50,50,50,0) !important;
}

.baguetteBox-button svg polyline {
    stroke: rgba(0,0,0,1) !important;
}

.baguetteBox-button svg g {
    stroke: #000 !important;
}

/* Dropdown

.programme-dropdown {
    position: relative;
    display: inline-block;
    font-family: inherit;
    width: 250px; 
}

.dropdown-trigger {
    background-color: #004374; 
    color: #ffffff;
    width: 100%;
    padding: 15px 20px;
    font-size: 1.1rem;
    font-weight: 400;
    border: none;
    border-radius: 0; 
    text-align: center;
    cursor: pointer;
    position: relative;
    transition: background-color 0.2s ease;
    margin-bottom: .2rem;
}

.dropdown-trigger:hover,
.jahrgang-dropdown:hover .dropdown-trigger {
    background-color: #f9b000; 
    color: #ffffff;
}

.dropdown-list {
    display: none; 
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    z-index: 9999;
}

.programme-dropdown:hover .dropdown-list {
    display: block;
}

.dropdown-list a {
    background-color: #004374; 
    color: #ffffff !important;
    font-size: 1.1rem;
    text-decoration: none !important;
    display: block;
    text-align: center;
    padding: 15px 20px;
    transition: background-color 0.2s ease;
}

.dropdown-list a:hover {
    background-color: #f9b000 !important;
    color: #ffffff !important;
}

.dropdown-trigger:focus {
    outline: none;
}

<div class="programme-dropdown">
    <button class="dropdown-trigger">Jahrgang auswählen</button>
    
    <div class="dropdown-list">
        <a href="/wp-content/uploads/programm-2026.pdf" target="_blank">Adjuvantentage 2026</a>
        <a href="/wp-content/uploads/programm-2025.pdf" target="_blank">Adjuvantentage 2025</a>
        <a href="/wp-content/uploads/programm-2024.pdf" target="_blank">Adjuvantentage 2024</a>
        <a href="/wp-content/uploads/programm-2023.pdf" target="_blank">Adjuvantentage 2023</a>
    </div>
</div>

 */



