/*
 Theme Name:   Kölle
 Description:  Kölle | WordPress Child Theme
 Author:       Neckarmedia
 Author URI:   https://www.neckarmedia.com
 Template:     enfold
 Version:      1.0
*/

/* google-sans-regular - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Google Sans';
  font-style: normal;
  font-weight: 400;
  src: url('fonts/google-sans-v70-latin-regular.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* google-sans-500 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Google Sans';
  font-style: normal;
  font-weight: 500;
  src: url('fonts/google-sans-v70-latin-500.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* google-sans-700 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Google Sans';
  font-style: normal;
  font-weight: 700;
  src: url('fonts/google-sans-v70-latin-700.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* averta bold */
@font-face {
  font-display: swap;
  font-family: 'Averta';
  font-style: normal;
  font-weight: 700;
  src: url('fonts/Averta_Bold.woff2') format('woff2');
}


/* @link https://utopia.fyi/type/calculator?c=375,18,1.1,1790,20,1.17,8,1,&s=0.75|0.5|0.25,1.5|2|3|4|6,s-l&g=s,l,xl,12 */

:root {
  --step--1: clamp(1.0227rem, 1.0106rem + 0.0516vw, 1.0684rem);
  --step-0: clamp(1.125rem, 1.0919rem + 0.1413vw, 1.25rem);
  --step-1: clamp(1.2375rem, 1.1779rem + 0.2544vw, 1.4625rem);
  --step-2: clamp(1.3613rem, 1.2685rem + 0.3956vw, 1.7111rem);
  --step-3: clamp(1.4974rem, 1.3636rem + 0.5706vw, 2.002rem);
  --step-4: clamp(1.6471rem, 1.4629rem + 0.7861vw, 2.3424rem);
  --step-5: clamp(1.8118rem, 1.5657rem + 1.0502vw, 2.7406rem);
  --step-6: clamp(1.993rem, 1.6714rem + 1.3721vw, 3.2065rem);
  --step-7: clamp(2.1923rem, 1.7791rem + 1.7631vw, 3.7516rem);
  --step-8: clamp(2.4115rem, 1.8874rem + 2.2364vw, 4.3893rem);
}

:root {
    --primary-font: 'Google Sans', sans-serif;
    --heading-font: 'Averta', sans-serif;
    --kl-industrieblau: #032850;
    --kl-technickblau: #024F95;
    --kl-hellblau: #D9EDFF;
    --kl-warmorange: #F19844;
    --kl-section-padding: clamp(60px, calc(3.75vw + 45.94px), 160px);
}


/* =======================================================================================================================================
Typo
======================================================================================================================================= */
html{-webkit-tap-highlight-color: transparent;}
body{-webkit-font-smoothing: antialiased; text-rendering: optimizeLegibility;}
body,p{font-family: var(--primary-font); font-size: var(--step-0); font-weight: 400; line-height: 1.55}
p{margin: 0 0 1em;}
h1,h2,h3,h4,h5,h6{font-family: var(--heading-font); font-weight: 700 !important; line-height: 1.15; letter-spacing: 0 !important; text-transform: inherit !important; margin: 0 0 .5em 0 !important}

#top h1{font-size: var(--step-8);}
#top h2{font-size: var(--step-7);}
#top h3{font-size: var(--step-3);}
#top h4{font-size: var(--step-2);}
#top h5{font-size: var(--step-1);}
#top h6{font-size: var(--step-0);}

#top .special_amp{color: inherit; font-family: inherit; font-size: inherit; font-style: inherit; font-weight: inherit;}
#top .av-special-heading{padding: 0 !important}
#top .av-special-heading .special-heading-border{display: none;}
#top .av-special-heading.avia-builder-el-no-sibling .av-special-heading-tag{margin: 0 !important}
#top .av-special-heading .av-subheading_above{margin-bottom: 1em; font-size: var(--step-0);}
#top .av-special-heading + .av_textblock_section{margin-top: 2em;}

#top .avia-section b,
#top .avia-section strong,
#top .footer_color b,
#top .footer_color strong,
#top .socket_color b,
#top .socket_color strong,
#top .template-single-blog .entry-content b,
#top .template-single-blog .entry-content strong{color: inherit}

/* Button */
#top div .avia-button{
    font-size: .9em;
    font-weight: 700;
    font-family: var(--heading-font);
    line-height: 1.2;
    padding: .5em 1.2em;
    margin: .5em .5em .5em 0;
    background-color: var(--kl-industrieblau);
    border-color: var(--kl-industrieblau);
    border-style: solid;
    border-width: 2px !important;
    border-radius: .5em;
    color: #fff;
    text-decoration: none !important;
    transition: opacity .2s ease;
}
#top div .avia-button.avia-color-theme-color{background-color: var(--kl-industrieblau); border-color: var(--kl-industrieblau); color: #fff;}
#top div .avia-button.avia-color-dark{background-color: transparent; border-color: var(--kl-industrieblau); color: var(--kl-industrieblau);}
#top div .avia-button.avia-color-light{background-color: transparent; border-color: #fff; color: #fff;}
#top div .avia-button.avia-color-white{background-color: #fff; border-color: #fff; color: var(--kl-industrieblau);}
#top div .avia-button.avia-color-blue{background-color: var(--kl-technickblau); border-color: var(--kl-technickblau); color: #fff;}
#top div .avia-button:hover{opacity: .8;}

#top .av_textblock_section + .avia-button-wrap{margin-top: 2em;}

/* Blockquote */
#top blockquote{border: 0; font-size: var(--step-1); margin: 2em 0 2em; padding: 0 0 0 2em; position: relative; max-width: 420px; font-style: italic; line-height: 1.6}
#top blockquote:before{content: '\e833'; font-family: 'entypo-fontello'; position: absolute; top: -.3em; left: 0; opacity: .1; font-size: 4em; font-style: normal; line-height: 1}
#top blockquote p{font-size: 1em; margin: 0}

/* List */
#top .avia_textblock ul{
    list-style: none;
    margin: 0 0 1em 0;
}
#top .avia_textblock ul > li{
    margin: 0 0 0.5em 0;
    padding: 0 0 0 1em;
    position: relative;
}
#top .avia_textblock ul > li:before{
    content: '\e875';
    font-family: 'entypo-fontello';
    position: absolute;
    left: 0;
    display: inline-block;
}

#top ul.__bordered{
    list-style: none;
    margin: 1em 0;
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(280px, 100%), 1fr));
    gap: 1.5em 6em;
}
#top ul.__bordered > li{
    margin: 0;
    padding: .5em 0;
    border-bottom: 1.5px solid;
    align-self: flex-end;
}


/* =======================================================================================================================================
Header
======================================================================================================================================= */
@media only screen and (max-width: 989px){ 
    .responsive #top #header{position: fixed !important; top: 0; left: 0; right: 0; width: 100%}
    .responsive #top #main,
    .responsive.html_mobile_menu_tablet.html_header_top #top #main{padding-top: 80px !important}
    .responsive #top #wrap_all .av-logo-container,
    .responsive #top #header_main > .container .main_menu .av-main-nav > li > a,
    .responsive.html_mobile_menu_tablet #top #wrap_all .av-logo-container,
    .responsive.html_mobile_menu_tablet #top #header_main > .container .main_menu .av-main-nav > li > a{
        height: 80px;
        line-height: 80px;
    }
}

@media only screen and (min-width: 990px){
    #header .inner-container{
        display: flex;
        justify-content: space-between;
        align-items: center;
        gap: 1rem;
    }
    #header .inner-container > .logo{order: 1; margin-right: auto; position: relative;}
    #header .inner-container > nav{order: 3; position: relative;}
}

/* Logo */
#header_main .inner-container > .logo,
#header_main .inner-container > .logo a{display: -webkit-box;display: -ms-flexbox;display: flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; overflow: visible}
#header_main .inner-container > .logo a{height: auto}
#header_main .inner-container > .logo a svg,
#header_main .inner-container > .logo a img{width: auto !important; height: 24px !important;}

@media only screen and (min-width: 990px){
    #header_main .inner-container > .logo a svg,
    #header_main .inner-container > .logo a img{height: 36px !important;}
}

/* Navigation */
@media only screen and (min-width: 990px){
	#header_main .inner-container > nav{display: flex; align-items: center;}
	#header_main .inner-container > nav > div,
	#header_main .inner-container > nav > div > ul,
	#header_main .inner-container > nav > div > ul > li{height: 100%}
	#header_main .inner-container > nav > div > ul > li.menu-item{display: flex; align-items: center}
	#header_main .inner-container > nav ul#avia-menu > li > a{line-height: 1.6 !important; height: auto !important; font-size: var(--step--1); font-weight: 400}
    #header_main .inner-container > nav ul#avia-menu > li li > a{font-size: var(--step--1); font-weight: 400}
    #header_main .inner-container > nav ul#avia-menu li:hover > a > .avia-menu-text,
    #header_main .inner-container > nav ul#avia-menu li.current-menu-item > a > .avia-menu-text{opacity: .3}
}

@media only screen and (min-width: 1440px){
    #header_main .inner-container > nav ul#avia-menu > li > a{font-size: var(--step-0);}
}

/* Hamburger Menu */
.av-hamburger-box{width: 32px}
.av-hamburger-inner, 
.av-hamburger-inner::before, 
.av-hamburger-inner::after{border-radius: 0}
#top ul#av-burger-menu-ul{vertical-align: top}
#top ul#av-burger-menu-ul li a:hover{background: inherit !important;}
#top ul#av-burger-menu-ul > li > a{font-size: var(--step-0);}
#top ul#av-burger-menu-ul > li li > a{font-size: var(--step--1);}


/* =======================================================================================================================================
Yoast Breadcrumbs
======================================================================================================================================= */
#top .__section-breadcrumbs{min-height: unset; border-top: 2px solid var(--kl-warmorange); margin: 2px 0 0;}
#top .__section-breadcrumbs .content{padding-top: .5em; padding-bottom: .5em;}
#top .__section-breadcrumbs #breadcrumbs{margin: 0;}
#top .__section-breadcrumbs #breadcrumbs > span{display: flex; gap: 1em; align-items: center; font-size: var(--step--1);}
#top .__section-breadcrumbs #breadcrumbs > span a{color: currentColor; transition: color .2s;}
#top .__section-breadcrumbs #breadcrumbs > span a:hover{color: var(--kl-warmorange);}


/* =======================================================================================================================================
Accessibility
======================================================================================================================================= */
#top :focus-visible{
    overflow: visible; 
    outline: -webkit-focus-ring-color auto 1px; 
    opacity: 1 !important;
	box-shadow: inset 0 0 0 2px #fff;
}


/* =======================================================================================================================================
Misc
======================================================================================================================================= */
/* Layout */
.widgettitle{font-weight: inherit; text-transform: inherit; letter-spacing: inherit; font-size: inherit;}

@media only screen and (max-width: 767px){
    .responsive #top #wrap_all .container{width: 90%; max-width: 90%;}
}

#top .avia-section-default .content{padding-top: var(--kl-section-padding); padding-bottom: var(--kl-section-padding)}

/* Images */
#top .image-overlay{display: none !important;}
#top .avia_image,
#top .av-image-caption-overlay,
#top .avia-image-container-inner{border-radius: 0}

/* Styled Image - 1 */
#top .avia-image-container.__styled-image-1{
    translate: 2em 0;
}
#top .avia-image-container.__styled-image-1 img{
    aspect-ratio: 4 / 3;
    object-fit: cover;
}
#top .avia-image-container.__styled-image-1::before{
    content: '';
    background-color: var(--kl-industrieblau);
    width: 100%;
    height: 100%;
    position: absolute;
    left: 45%;
    bottom: calc(-1 * var(--kl-section-padding));
    pointer-events: none;
}

#top .alternate_color .avia-image-container.__styled-image-1::before{background-color: var(--kl-technickblau);}

#top .flex_column:has(.avia-image-container){margin: 0 !important;}

@media (min-width: 990px){
    #top .flex_column.first .avia-image-container.__styled-image-1::before{
        left: unset;
        right: 45%;
    }
    #top .flex_column.first .avia-image-container.__styled-image-1{
        translate: 0 0;
    }
}

#top .avia-builder-el-0 .avia-image-container.__styled-image-1::before{background-color: var(--kl-technickblau);}

@media (min-width: 990px){
    #top .avia-builder-el-0 .avia-image-container.__styled-image-1::before{bottom: unset; top: calc(-1 * var(--kl-section-padding));}
}

/* Image Claim */
#top .avia-image-container.__claim::after{
    content: '';
    display: block;
    position: absolute;
    right: 10%;
    top: 0;
    translate: 0 -30%;
    aspect-ratio: 245/97;
    background-image: url(img/koelle_claim_1.svg);
    background-size: contain;
    background-repeat: no-repeat;
    width: 30%;
    height: auto;
    pointer-events: none;
}

/* Toggle */
#top .togglecontainer{max-width: 1280px;}
#top section.av_toggle_section .toggler{
    padding: .6em 5em .6em 2rem; 
    margin: 0 0 .8em; 
    font-size: var(--step-0); 
    font-weight: 700;
    background: var(--kl-technickblau);
    color: #fff; 
    border: 2px solid var(--kl-technickblau); 
    border-radius: .8em;
}
#top section.av_toggle_section .toggler:hover{background: var(--kl-technickblau);}
#top section.av_toggle_section .toggler .toggle_icon{display: none;}
#top section.av_toggle_section .toggler:after{
	content: '\e803';
    font-family: 'koelle-icons';
    position: absolute;
    right: 2em;
    top: .8em;
    transition: .2s ease;
    pointer-events: none;
    color: var(--kl-warmorange);
    line-height: 1;
    scale: 3;
    font-weight: normal;
}
#top section.av_toggle_section .toggler.activeTitle:after{rotate: -180deg}
#top section.av_toggle_section .toggle_content{border: 0; background: transparent; padding: .5em 2rem 1.5em; max-width: 990px; margin: 0 0 1em 0;}
#top section.av_toggle_section .toggle_content *{font-size: var(--step-0);}

#top .alternate_color section.av_toggle_section .toggler{background: #1d3e62; border-color: #1d3e62;}

@media (min-width: 990px){
    #top section.av_toggle_section .toggler,
    #top section.av_toggle_section .toggle_content{padding-left: 4rem;}
}

/* Social Icons */
#top ul.__social--media--icons{
    display: flex;
    gap: .5em;
    font-size: var(--step-2);
    margin: 0;
    line-height: 1;
    background-color: transparent !important;
}
#top ul.__social--media--icons > li > a{padding: 0; display: block; transition: opacity .2s;}
#top ul.__social--media--icons > li:hover > a{background-color: transparent !important; color: currentColor !important; opacity: .5;}

/* Blur Box */
#top .__blur-box{
    padding: 4em 5%;
    margin: var(--step-8) 0 !important;
    background: hsl(0deg 0% 100% / 50%);
    border-radius: var(--step-8);
    backdrop-filter: blur(2px);
}

/* Section styled - 1 */
#top .__section-styled-1{
    position: relative;
    border-bottom: 3px solid var(--kl-warmorange) !important;
}
#top .__section-styled-1::after{
    content: '';
    display: block;
    width: 85%;
    height: 100%;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 802.63 657.81'%3E%3Cpath fill='%23032850' d='M0 657.81L797.99 10.96c7.45-6.05 5.74-10.96-3.86-10.96H0v657.81Z'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: top right;
    background-size: cover;
    position: absolute;
    top: -2em;
    left: 0;
    pointer-events: none;
}
#top .__section-styled-1 .avia-image-overlay-wrap{position: relative;}
#top .__section-styled-1 .avia-image-overlay-wrap::before{
    content: '';
    display: block;
    width: 50vw;
    height: 75%;
    background-color: var(--kl-technickblau);
    position: absolute;
    top: 50%;
    right: 50%;
    translate: 0 -50%;
    pointer-events: none;
}
#top .__section-styled-1 .avia-image-overlay-wrap::after{
    content: '';
    display: block;
    aspect-ratio: 1;
    width: 75%;
    height: auto;
    background-color: var(--kl-warmorange);
    border-radius: 50%;
    position: absolute;
    left: 50%;
    top: 50%;
    translate: -50% -50%;
    pointer-events: none;
}
#top .__section-styled-1 .avia-image-overlay-wrap img{position: relative; z-index: 2;}

@media (min-width: 990px){
    #top .__section-styled-1::before{
        content: '';
        display: block;
        width: 25%;
        height: 100%;
        background-color: var(--kl-technickblau);
        position: absolute;
        top: 0;
        left: 0;
    }
    #top .__section-styled-1::after{
        width: 50%;
    }
    #top .__section-styled-1 .avia-image-overlay-wrap::before{
        display: none;
    }
}

@media (min-width: 1790px){
    #top .__section-styled-1::before{
        width: calc(((100vw - 1690px) / 2) + (1690px / 4));
    }
}

/* Hero */
#top .avia-section:has(.__hero) .container,
#top .avia-section:has(.__hero) .container .content{width: 100% !important; max-width: 100% !important; padding: 0 !important; margin: 0 !important; overflow: hidden;}

#top .__hero{display: flex; flex-direction: column;}

#top .__hero .__hero__content{padding: 4em 5%;}
#top .__hero .__hero__content .av_textblock_section p{font-family: var(--heading-font); font-size: var(--step-1); max-width: 480px;}
#top .__hero .__hero__image{background-color: var(--kl-technickblau); min-height: 50vh; position: relative;}
#top .__hero .__hero__image img{display: block; width: 100%; height: 85%; object-fit: cover; position: absolute; top: 0; left: 0;}
#top .__hero .__hero__image svg{
    position: absolute;
    width: 420px;
    height: auto;
    top: 80%;
    right: 10%;
    pointer-events: none;
}
#top .__hero .__hero__image::after {
    content: '';
    display: block;
    position: absolute;
    right: 0;
    top: 0;
    translate: -20% -50%;
    aspect-ratio: 245 / 97;
    background-image: url(img/koelle_claim_1.svg);
    background-size: contain;
    background-repeat: no-repeat;
    width: 140px;
    height: auto;
    pointer-events: none;
}

@media (min-width: 990px){
    #top .__hero{flex-direction: row-reverse;}
    #top .__hero > *{flex-grow: 1; flex-basis: 0;}
    #top .__hero .__hero__content{align-self: center; flex-grow: 1.2;}
    #top .__hero .__hero__image{min-height: 85vh;}
    #top .__hero .__hero__image svg{width: 816px; right: unset; top: 82%; left: 82%;}
    #top .__hero .__hero__image::after{width: 220px; translate: 50% 5vh;}
}

@media (min-width: 1790px){
    #top .__hero .__hero__content{padding-right: calc((100vw - 1690px) / 2); flex-grow: 1; max-width: 50%;}
}

/* Hero Karriere */
#top .avia-section:has(.__hero-karriere) .container,
#top .avia-section:has(.__hero-karriere) .container .content{width: 100% !important; max-width: 100% !important; padding: 0 !important; margin: 0 !important; overflow: hidden;}

#top .__hero-karriere{display: flex; flex-direction: column; padding-top: var(--kl-section-padding);}
#top .__hero-karriere .__hero-karriere__content{padding: 0 5% 4em;}
#top .__hero-karriere .__hero-karriere__content > *{max-width: 540px;}
#top .__hero-karriere .__hero-karriere__image{position: relative; padding-top: 4em;}
#top .__hero-karriere .__hero-karriere__image svg{
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
    width: auto;
    height: 100%;
    pointer-events: none;
}
#top .__hero-karriere .__hero-karriere__image img{display: block;}
#top .__hero-karriere .__hero-karriere__image::before{
    content: '';
    display: block;
    width: 110%;
    height: 30%;
    background-color: var(--kl-technickblau);
    position: absolute;
    bottom: 0;
    right: 0;
    pointer-events: none;
    z-index: -1;
}

@media (min-width: 990px){
    #top .__hero-karriere{flex-direction: row;}
    #top .__hero-karriere > *{max-width: 50%; flex-grow: 1; flex-basis: 0;}
    #top .__hero-karriere .__hero-karriere__content{padding: 0 50px 4em; align-self: center;}
    #top .__hero-karriere .__hero-karriere__image{align-self: flex-end;}
    #top .__hero-karriere .__hero-karriere__image img{max-width: 150%; width: 1280px}
}

@media (min-width: 1790px){
    #top .__hero-karriere .__hero-karriere__content{padding-left: calc((100vw - 1690px) / 2);}
}

/* Cards */
#top .__cards{
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(min(320px, 100%), 1fr));
    gap: 2em;
}
#top .__card{
    display: flex;
    flex-direction: column;
}
#top .__card figure{
    aspect-ratio: 16 / 9;
    display: block;
    border-radius: 1em;
    overflow: hidden;
    background-color: var(--kl-warmorange);
    box-shadow: 0 0 16px 0 rgba(0, 0, 0, 0.2);
    transition: translate .4s;
}
#top .__card:hover figure{
    translate: 0 -4px;
}
#top .__card figure img{
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
#top .__card .__card-content{
    flex-grow: 1;
    margin: -2em 0 0;
    position: relative;
    background-color: #fff;
    border-radius: 1em;
    padding: 1.5em;
    display: flex;
    justify-content: space-between;
    gap: 2em;
    transition: box-shadow .4s;
    box-shadow: 0 0 16px 0 rgba(0, 0, 0, 0.2);
}
#top .__card:hover .__card-content{
    box-shadow: 0 0 24px 0 rgba(0, 0, 0, 0.4);
}
#top .__card .__card-title{
    color: var(--kl-industrieblau);
    font-size: var(--step-0);
    min-height: 3em;
}
#top .__card .__card-content .av-icon-char{
    align-self: flex-end;
    display: inline-block;
    color: var(--kl-warmorange);
}

#top .__card.__card-blue .__card-content{background-color: var(--kl-industrieblau);}
#top .__card.__card-blue .__card-title{color: #fff;}


/* =======================================================================================================================================
Blog
======================================================================================================================================= */
/* Blog Grid */
#top .__blog-grid{
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(min(420px, 100%), 1fr));
    gap: 1.5em 3%;
}
#top .__blog-grid > article{
    padding: 1.5em;
    border-radius: 1.5em;
    background-color: #fff;
    box-shadow: 0 4px 28px 0 rgba(0, 0, 0, 0.05);
}
#top .__blog-grid > article .__blog-grid__thumb{overflow: hidden; display: block; margin: 0 0 1.5em;}
#top .__blog-grid > article .__blog-grid__thumb img{display: block; aspect-ratio: 4 / 3; object-fit: cover; transition: transform .4s ease;}
#top .__blog-grid > article .__blog-grid__thumb:hover img{transform: scale(1.02) rotate(1deg);}
#top .__blog-grid > article *{color: var(--kl-industrieblau);}
#top .__blog-grid > article .__blog-grid__meta{display: flex; flex-wrap: wrap; gap: 1em; font-size: var(--step--1); font-weight: 700; margin-bottom: 1.5em}
#top .__blog-grid > article .__blog-grid__cats{display: flex; gap: .5em; flex-wrap: wrap; align-items: flex-start}
#top .__blog-grid > article .__blog-grid__cats > a{display: inline-block; font-size: .75em; transition: opacity .2s; background-color: var(--kl-hellblau); color: var(--kl-industrieblau); padding: .2em 1em; border-radius: 1em;}
#top .__blog-grid > article .__blog-grid__cats > a:hover{opacity: .5}
#top .__blog-grid > article .__blog-grid__title{font-weight: 400 !important; font-family: var(--primary-font); margin-bottom: 1em; font-size: var(--step-2);}
#top .__blog-grid > article .__blog-grid__title a{transition: opacity .2s;}
#top .__blog-grid > article .__blog-grid__title a:hover{opacity: .5}
#top .__blog-grid > article .__blog-grid__excerpt p{font-size: var(--step--1)}
#top .__blog-grid > article .__blog-grid__excerpt a .av-icon-char{padding: .5em; margin: 0 0 1em 0; color: var(--kl-warmorange); transition: color .2s; display: inline-block;}
#top .__blog-grid > article .__blog-grid__excerpt a .av-icon-char:hover{color: var(--kl-industrieblau);} 

@media (max-width: 767px){
    #top .__blog-grid > article .__blog-grid__excerpt p{display: none;}
}

@media (min-width: 1920px){
    #top .__blog-grid > article .__blog-grid__excerpt{display: flex; gap: 15%; align-items: flex-end}
}

/* Blog Archive Category */
#top .__archive-category > header h1{border-bottom: 1px solid var(--kl-warmorange); padding-bottom: .5em}
#top .__archive-category > header .__archive-category-description{margin: 0 0 3em; max-width: 720px}
#top .__archive-category > nav.pagination{margin-top: 3em}

/* Blog Single */
#top .template-single-blog article.post-entry .big-preview{max-width: 720px; margin: auto;}
#top .fullsize .template-blog .post .entry-content-wrapper{max-width: 720px; text-align: left; line-height: 1.6; font-size: var(--step-0);}
#top .template-single-blog article.post-entry .entry-content-wrapper header h1{text-align: left; font-size: var(--step-3); padding: 1rem 0}
#top .template-single-blog article.post-entry .entry-content-wrapper header .post-meta-infos{text-align: left; font-size: var(--step--1);}


/* =======================================================================================================================================
Formular
======================================================================================================================================= */
#top .input-text, 
#top input[type=email], 
#top input[type=input], 
#top input[type=number], 
#top input[type=password], 
#top input[type=search], 
#top input[type=tel], 
#top input[type=text], 
#top input[type=url], 
#top select, 
#top textarea{
    font-family: var(--primary-font);
    padding: 1em;
    border-radius: .5em;
    border: 1px solid;
    margin: 0;
    font-size: var(--step--1);
}

#top form label{font-size: var(--step--1)}
#top form button{
	font-size: var(--step--1);
    font-weight: 700;
    padding: 1em 2em;
    border-radius: .5em;
    background: var(--enfold-main-color-color);
    color: var(--enfold-main-color-bg);
	border: 1px solid var(--enfold-main-color-color);
    box-shadow: none;
}
#top .alternate_color form button{
	background: var(--enfold-alternate-color-color);
    color: var(--enfold-alternate-color-bg);
}

/* Formidable Forms */
#top .frm_forms > form .frm_primary_label{
	color: inherit;
	font-weight: 700;
}
#top .frm_forms > form .frm_required{
    font-weight: inherit;
    font-size: inherit;
    color: inherit;
}
#top .frm_forms > form p.description, 
#top .frm_forms > form div.description, 
#top .frm_forms > form div.frm_description, 
#top .frm_forms > form .frm-show-form > div.frm_description, 
#top .frm_forms > form .frm_error, 
#top .frm_forms > form .frm_pro_max_limit_desc{
	color: inherit;
	font-size: var(--step--1);
}


/* =======================================================================================================================================
FAB - Floating action button
======================================================================================================================================= */
#top #koelle-fab{
    position: fixed;
    width: 100%;
    bottom: 0;
    right: 0;
    z-index: 1000;
    padding: 0 1.5em;
    display: flex;
    justify-content: flex-end;
    align-items: flex-start;
}

#top #koelle-fab > button{
    all: unset;
    cursor: pointer;
    color: var(--kl-industrieblau);
    box-sizing: border-box;
    padding: 0.5em 2em;
    position: relative;
    font-family: var(--heading-font);
    font-weight: 700;
}
#top #koelle-fab > button::before{
    content: '';
    background-color: var(--kl-warmorange);
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    transform: skew(45deg, 0deg);
    transition: opacity .8s;
}
#top #koelle-fab > button:hover::before{
    opacity: .5;
}
#top #koelle-fab > button > span{
    position: relative;
    color: currentColor;
}

@media only screen and (min-width: 768px) {
    #top #koelle-fab{
        width: auto;
        bottom: 10%;
        padding: 0;
        writing-mode: vertical-rl;
        text-orientation: sideways;
        scale: -1;
    }
    #top #koelle-fab > button{
        padding: 2em 0.5em;
    }
    #top #koelle-fab > button::before{
        transform: skew(0deg, -45deg);
    }
}


/* =======================================================================================================================================
Footer
======================================================================================================================================= */
#footer{padding: 6em 0 3em; border: 0;}
#footer a{transition: color .2s;}
#footer .widget{margin: 0 !important;}
#footer .__logo{width: auto; height: 60px; display: block;}
#footer .container{
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 2em 4em;
}
#footer .container .flex_column{width: auto; margin: 0 !important;}
#footer .container .flex_column:last-child{display: flex; gap: 2em 4em; flex-wrap: wrap;}
#footer .container .flex_column::before,
#footer .container .flex_column::after{display: none;}

#footer .container::after{
    content: '';
    pointer-events: none;
    aspect-ratio: 228 / 91;
    background-image: url(img/koelle_claim_2.svg);
    background-size: cover;
    height: clamp(75px, calc(70.37px + 1.095vw), 90px);
    position: absolute;
    right: 4.5%;
    top: -6em;
    visibility: visible;
    translate: 0 -50%;
}

#socket{border: 0; background-color: var(--enfold-footer-color-bg);}
#socket *{color: #fff;}
#socket a{transition: opacity .2s;}
#socket a:hover{opacity: .5;}
#socket .container{
    padding-top: 2em;
    padding-bottom: 6em;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 2em 4em;
}
#socket .container::after{
    content: '';
    position: absolute;
    top: 0;
    width: calc(100% - 100px);
    height: 2px;
    background: var(--enfold-socket-color-border);
    visibility: visible;
}
#socket .container > .copyright{
    float: none;
    font-size: var(--step--1);
    line-height: 1.6;
    display: flex;
    align-items: flex-end;
    flex-wrap: wrap;
    gap: 2em 4em;
}
#socket .container > .sub_menu_socket{float: none; margin: 0;}
#socket .container > .sub_menu_socket > div{overflow: visible;}
#socket .container > .sub_menu_socket ul.menu{
    margin: 0;
    display: flex;
    flex-wrap: wrap;
    gap: 1em 2em;
}
#socket .container > .sub_menu_socket ul.menu li{
    float: none;
    display: inline-block;
    padding: 0;
    border: 0;
    font-size: var(--step--1);
    line-height: 1.6;
}


#scroll-top-link{display: none !important;}