/*
Theme Name:   Mint Theme Child
Template:     kdgs-mint
Version:      1.0.0
*/


/*** NICHT EINKOMMENTIEREN ***/
/* EINKOMMENTIEREN */


/*** Info: Pixelwerte für den Umbruch der Viewports ***/
/*** 'xs'     => max-width: 575px   ***/
/*** 'sm'     => min-width: 576px   ***/
/*** 'md'     => min-width: 768px   ***/
/*** 'lg'     => min-width: 992px   ***/
/*** 'xl'     => min-width: 1200px  ***/
/*** 'xxl'    => min-width: 1400px  ***/
/*** 'xxxl'   => min-width: 1800px  ***/



/*** Einbinden der font-family ***/


@font-face {
    font-family: 'Lexend';
    src:
      url('fonts/Lexend-Variable.woff2') format('woff2 supports variations'),
      url('fonts/Lexend-Variable.woff2') format('woff2-variations');
    font-weight: 100 900;
    font-display: fallback;
  }


/*** Fontsize, Font Family, Line Height ***/

:root {

    /* General */
    --image-border-radius: 0px;

    --kdgs-font-family-primary: 'Lexend', sans-serif;
    --kdgs-font-family-secondary: 'Lexend', sans-serif;
    
    --kdgs-font-size-H1-sm: calc(29 / 16 * 1rem);
    --kdgs-font-size-H2-sm: calc(23.7 / 16 * 1rem);
    --kdgs-font-size-H3-sm: calc(19.2 / 16 * 1rem); /* Also used for: Mobile Main nav */
    --kdgs-font-size-H4-sm: calc(18 / 16 * 1rem); /* Also used for: Mobile sub nav */
    --kdgs-font-size-H5-sm: calc(16.3 / 16 * 1rem); /* Also used for: Mobile meta nav */
    --kdgs-font-size-P-sm: calc(15.5 / 16 * 1rem);
    --kdgs-font-size-xl-sm: calc(23.5 / 16 * 1rem);
    --kdgs-font-size-lg-sm: calc(21.2 / 16 * 1rem);
    --kdgs-font-size-md-sm: calc(16.6 / 16 * 1rem);
    --kdgs-font-size-sm-sm: calc(15.2 / 16 * 1rem);
    --kdgs-font-size-xs-sm: calc(15 / 16 * 1rem);

    --kdgs-font-size-H1-xl: calc(75 / 16 * 1rem);
    --kdgs-font-size-H2-xl: calc(45 / 16 * 1rem);
    --kdgs-font-size-H3-xl: calc(30 / 16 * 1rem);
    --kdgs-font-size-H4-xl: calc(25 / 16 * 1rem); /* Also used for: Accordion */
    --kdgs-font-size-H5-xl: calc(20 / 16 * 1rem); /* Also used for: Desktop Main nav */
    --kdgs-font-size-P-xl: calc(20 / 16 * 1rem); /* Also used for: Desktop Sub nav */
    --kdgs-font-size-xl-xl: calc(66 / 16 * 1rem); /* Used for: Header */
    --kdgs-font-size-lg-xl: calc(53 / 16 * 1rem); /* Used for: Zitat Teaser */
    --kdgs-font-size-md-xl: calc(28 / 16 * 1rem); /* Used for: Footer Mails */
    --kdgs-font-size-sm-xl: calc(20 / 16 * 1rem); /* Used for: Desktop Metanav, footer columns, links */
    --kdgs-font-size-xs-xl: calc(19 / 16 * 1rem); /* Used for: Footer impressumm nav, referenzen */
}


/*** Fonts ***/
body, .body {
}

a {
    text-decoration: underline;
    text-decoration-color: var(--c-theme-1);
    text-decoration-thickness: 2px;
}

.lead {
    font-size: var(--kdgs-font-size-H3);
    font-weight: 600;
}
h1, .h1 {
    font-weight: bold;
    font-family: var(--kdgs-font-family-secondary);
    color: var(--c-text-secondary);
}
h2, .h2 {
    font-weight: bold;
    font-family: var(--kdgs-font-family-secondary);
    color: var(--c-text-secondary);
}
h3, .h3 {
    font-weight: bold;
}
h4, .h4 {
    font-weight: bold;
}
h5, .h5 {
    font-weight: bold;
}
b, strong {
    font-weight: bold;
}
p {
    font-weight: 500;
}

a, a:active, a:focus, a:hover, a:visited, .link {
    color: inherit;
    text-underline-offset: 2px;
    text-decoration: underline;
      text-decoration-color: currentcolor;
    text-decoration-color: var(--theme-colour-1);
    text-decoration-thickness: 2px;
  }

/*** Font Color ***/

body, .body,
.lead, 
h3, .h3,
h4, .h4,
h5, .h5 {
    color: var(--c-text-primary);
}


/**********/
/* Header */
/**********/

/*** Logo ***/
/*@media screen and (min-width: 1200px) {
    .mod-header .header-wrapper .home-link .img-wrapper {
        max-width: 200px;
    }
}*/

/*** Header farbe ***/
.mod-header {
    background-color: #f2f2f2;
}

.mod-header .header-wrapper .main-nav .menu .menu-item.current-menu-ancestor > a, .mod-header .header-wrapper .main-nav .menu .menu-item.current-menu-item > a, .mod-header .header-wrapper .main-nav .menu .menu-item:hover > a, .mod-header .header-wrapper .meta-nav .menu .menu-item.current-menu-ancestor > a, .mod-header .header-wrapper .meta-nav .menu .menu-item.current-menu-item > a, .mod-header .header-wrapper .meta-nav .menu .menu-item:hover > a {
  text-decoration: underline;
  text-underline-offset: 0.2em;
  text-decoration-color: var(--c-theme-1);
  text-decoration-thickness: 2px;
}

.mod-header .header-wrapper .main-nav .menu .menu-item .sub-menu, .mod-header .header-wrapper .meta-nav .menu .menu-item .sub-menu {
  margin: 1px;
}

/**********/
/* Footer */
/**********/
.mod-footer {
  background-color: var(--c-theme-1);
}

.mod-footer .back-to-top .svg-icon .st0 {
  fill: #b2101d;
}


/* ------- */
/* General */
/* ------- */

/*** News Blog ***/
.mod-cpt-archiv .container-breakout .tile-container .teaser-container .title {
  font-size: 23px;
}

.single-post h1 {
  font-size: var(--kdgs-font-size-lg);
}

/*** Sticky Button ***/
a.sticky-button {
  background-color: var(--c-theme-2);
  padding: 12px 1em 12px 1em;
  font-weight: 500;

}
a.sticky-button .svg-icon {
  display:none;

}

/* ------ */
/* Blocks */
/* ------ */

::marker {
    color: var(--c-theme-2);
}
ol, ul {
    padding-left: 1.2rem;
}

/*** Header Bild Teaser ***/
.la-button {
  display: inline-block;
  background-color: var(--c-theme-2);
  padding: 10px 20px;
  color: white;
  text-decoration: none;
  font-weight: 500;
}

.la-button:hover {
  background-color: var(--c-theme-1); 
  color: white;
  text-decoration: none;
}

.mod-header-bildteaser .header-wrapper {
    min-height: calc(100svh);
}
.mod-header-bildteaser .text-wrapper {
    column-gap: 0.5rem;
    overflow-x: hidden;
}
.mod-header-bildteaser .divider {
    margin: 0 2rem;
    width: 4px;
    height: 7em;
    background-color: var(--c-theme-2);
}
.mod-header-bildteaser .text > *:last-child {
    margin-bottom: 0;
}
.mod-header-bildteaser .text {
    width: 64%;
}
@media only screen and (min-width: 992px) {
  .mod-header-bildteaser .text {
      width: 43%;
  }
}
/* Reset Padding */
@media only screen and (min-width: 1800px) {
    .mod-header-bildteaser .header-wrapper .textbox-col {
         padding-right: initial; 
    }
}
@media only screen and (min-width: 1400px) {
    .mod-header-bildteaser .header-wrapper .textbox-col {
         padding-right: initial; 
    }
}

@media only screen and (min-width: 1200px) {
    .mod-header-bildteaser .header-wrapper .textbox-col {
        padding-right: initial;
    }
}
@media only screen and (min-width: 768px) {
    .mod-header-bildteaser .header-wrapper .textbox-col {
         padding-right: initial; 
    }
}
/* Padding of textbox */
@media only screen and (min-width: 768px) {
    .mod-header-bildteaser .header-wrapper .textbox-col .textbox {
        padding: 40px 30px 50px;
    }
}
/* Animation */
.mod-header-bildteaser {
    --animation-speed: 1.3s;
    --animation-curve: cubic-bezier(0.6, 0, 0.2, 1);
}
.mod-header-bildteaser .slide-down-fade {
    transform: translateY(-100%);
    animation: slideDownFade var(--animation-speed) var(--animation-curve) 0.5s forwards;
}
@keyframes slideDownFade {
    from {
        transform: translateY(-100%);
    }
    to {
        transform: translateY(0);
    }
}
.mod-header-bildteaser .slide-right-fade {
    transform: translateX(-100%);
    animation: slideRightFade var(--animation-speed) var(--animation-curve) 0.5s forwards;
}
@keyframes slideRightFade {
    from {
        transform: translateX(-100%);
    }
    to {
        transform: translateX(0);
    }
}
.mod-header-bildteaser .slide-left-fade {
    transform: translateX(100%);
    animation: slideLeftFade var(--animation-speed) var(--animation-curve) 0.5s forwards;
}
@keyframes slideLeftFade {
    from {
        transform: translateX(100%);
    }
    to {
        transform: translateX(0);
    }
}
.mod-header-bildteaser .slide-up-fade {
    transform: translateY(600%);
    animation: slideUpFade var(--animation-speed) var(--animation-curve) 0s forwards;
}
@keyframes slideUpFade {
    from {
        transform: translateY(600%);
    }
    to {
        transform: translateY(0);
    }
}
/* Parallax effect */
.mod-header-bildteaser .header-backdrop {
    position: relative;
    overflow: hidden;
}
.mod-header-bildteaser .header-wrapper .header-backdrop .a-image,
.mod-header-bildteaser .header-wrapper .header-backdrop .a-image .a-image__picture .a-image__image,
.mod-header-bildteaser .header-wrapper .header-backdrop .a-image .a-image__picture {
    height: 110%;
    object-fit: cover;
    transform: translateY(0);
}


/*** Teaser mit Icon und Text ***/
.mod-teaser-mit-icon-und-text .container-breakout {
  position: relative;
}
.mod-teaser-mit-icon-und-text .img-wrapper {
  position: absolute;
  top: 0;
  height: 100%;
  width: 100%;
}
.mod-teaser-mit-icon-und-text .img-wrapper .a-image {
  height: 100%;
  width: 100%;
}
.mod-teaser-mit-icon-und-text .a-image__picture {
  height: 100%;
  width: 100%;
}
.mod-teaser-mit-icon-und-text .a-image__image {
  height: 100%;
  width: 100%;
  object-fit: cover;
}
/* align items */
.mod-teaser-mit-icon-und-text .item-wrapper .text-wrapper {
  text-align: center;
  color: white;
}
.mod-teaser-mit-icon-und-text .item-wrapper {
  align-items: center;
}
/* spacing container breakout */
.mod-teaser-mit-icon-und-text .container-breakout {
    padding: calc(var(--block-spacing) * 3) 0;
}
/* Paralax */
.mod-teaser-mit-icon-und-text .img-wrapper {
    /* position: relative; */
    overflow: hidden;
}
.mod-teaser-mit-icon-und-text .img-wrapper .a-image,
.mod-teaser-mit-icon-und-text .img-wrapper .a-image .a-image__picture .a-image__image,
.mod-teaser-mit-icon-und-text .img-wrapper .a-image .a-image__picture {
    height: 110%;
    object-fit: cover;
    transform: translateY(0);
}
.mod-teaser-mit-icon-und-text .title {
    font-size: var(--kdgs-font-size-H3);
}

/*** Text ***/
/*.mod-text .container-breakout {
    padding: var(--block-spacing) 0;
}
.mod-text .text > *:last-child {
    margin-bottom: 0;
}
.mod-text li {
    margin-bottom: 1em;
}*/

/*** Kennzahlen ***/

@media (min-width: 1200px) {
    .mod-kennzahlen .col-xl-4 {
      width: 25%;
    }

  }

@media only screen and (min-width: 768px) {
  .mod-kennzahlen .figure-container .figure-wrapper .figure {
    font-size: 4.5rem;
  }
  .mod-kennzahlen .figure-container .text {
    font-size: 1.8rem;
  }
}

/*** Ticket-Teaser gross ***/
.mod-ticket-teaser-gross .ticket-wrapper.border {
  border-radius: 0px;
  border-width: 4px !important;
}
.mod-ticket-teaser-gross .ticket-wrapper .ticket .link {
  border-radius: 0px;
  display: inline-block;
  font-weight: 500;
  margin-top: 30px;
  padding: 10px 20px;
  text-align: center;
  text-decoration: none;
  color: white;
}


/*** Teaserkacheln zwei ***/
.mod-teaserkacheln-zwei > div > div > .card > .card-body > .card-btn-container > a > button {
  border-radius: 0;
  font-weight: 500;
}

/*** Links ***/
.mod-links .link{
color: var(--c-link);
  font-size: var(--kdgs-font-size-H3);
  font-family: var(--kdgs-font-family-secondary);
  font-weight: bold;
  position: relative;
  margin-left: 1.7em;
}
.mod-links .container-breakout {
    padding-bottom: 50px;
  }

  .mod-links .link::before {
    content: '';
    position: absolute;
    width: 1.3em;
    left: -1.7em;
    height: 0.76em;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' data-name='Ebene 2' viewBox='0 0 44.12 25.95' fill='%235db388'%3E%3Cpath d='m31.15 0-2.13 2.12 9.44 9.44H0v3h38.29l-9.27 9.27 2.13 2.12 12.97-12.98L31.15 0z' data-name='Ebene 1'/%3E%3C/svg%3E");
    background-size: contain;
    background-repeat: no-repeat;
    top: 50%;
    transform: translateY(-50%);
  }

/* Seitenteaser */

.mod-seitenteaser .link {
  position: relative;
  padding-left: 2.5em;
  font-size: var(--kdgs-font-size-H2);
}
.mod-seitenteaser .icon-wrapper::after {
  content: '';
  display: block;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' data-name='Ebene 2' viewBox='0 0 44.12 25.95' fill='%235db388'%3E%3Cpath d='m31.15 0-2.13 2.12 9.44 9.44H0v3h38.29l-9.27 9.27 2.13 2.12 12.97-12.98L31.15 0z' data-name='Ebene 1'/%3E%3C/svg%3E");
  width: 1.8em;
  height: 0.75em;
  background-position: center;
  background-size: contain;
  background-repeat: no-repeat;
  position: absolute;
  left: 0;
  top: 0.40em; /* (0.125 from lineheight, 0.125 from height (1 - 0.75)) */
  transition: left 0.5s;
}
.mod-seitenteaser .link:hover .icon-wrapper::after {
  left: 10px;
}
.mod-seitenteaser .svg-icon {
  display: none;
}
/* Remove margin right */
.mod-seitenteaser .image-teaser-container .row .text-wrapper .link .icon-wrapper {
   margin-right: 0; 
}

/*** Icon Liste ***/

@media only screen and (min-width: 1200px) {
  .mod-liste-mit-icons .icon-list {
    -moz-column-count: 3;
    column-count: 3;
  }
}

.mod-liste-mit-icons .icon-list .icon-list-item {
  align-items: flex-start;
}
.mod-liste-mit-icons .icon-list .icon-list-item .text-wrapper .title {
  font-weight: 600;
}

/*** Partner Liste (nur mittig bei partner liste) ***/
.mod-partner-liste .swiper-wrapper {
    justify-content: center;
}

/*** Header fullscreen ***/


/*** Buttons ***/
.kdgs-button {
  border-color: var(--c-text-secondary) !important;
  border: 3px solid;
  border-radius: 0;
  color: var(--c-text-secondary);
  font-weight: 500;
}

.kdgs-button:hover {
  background-color: var(--c-text-secondary) !important;
  border-color: var(--c-text-secondary) !important;

}

/*** Bild mit Readmore ***/

.mod-bild-mit-readmore .title {
  font-size: var(--kdgs-font-size-H4);
}

/*** Teaser mit Icon und Text ***/
.mod-teaser-mit-icon-und-text .title {
  font-weight: 600;
}

/*** Kontakt ***/

  .mod-kontakt .text-wrapper {
    padding: 30px 30px 0;
  }

/*** Seitenteaser ***/

.mod-seitenteaser .icon-wrapper::after {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' data-name='Ebene 2' viewBox='0 0 44.12 25.95' fill='%232e298f'%3E%3Cpath d='m31.15 0-2.13 2.12 9.44 9.44H0v3h38.29l-9.27 9.27 2.13 2.12 12.97-12.98L31.15 0z' data-name='Ebene 1'/%3E%3C/svg%3E");
}

/*** Links ***/

.mod-links .link::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' data-name='Ebene 2' viewBox='0 0 44.12 25.95' fill='%232e298f'%3E%3Cpath d='m31.15 0-2.13 2.12 9.44 9.44H0v3h38.29l-9.27 9.27 2.13 2.12 12.97-12.98L31.15 0z' data-name='Ebene 1'/%3E%3C/svg%3E");
}



/***********/
/* Plugins */
/***********/