/*
 Theme Name:   Elena Muthig Child
 Description:  Child Theme
 Author:       Carolin Weinreuter
 Author URI:   --
 Template:     em
 Version:      1.0
*/

@import url("https://use.typekit.net/oec8bcp.css");
    

:root {
  --step--2: clamp(0.69rem, calc(0.68rem + 0.05vw), 0.72rem);
  --step--1: clamp(0.83rem, calc(0.80rem + 0.12vw), 0.90rem);
  --step-0: clamp(1.00rem, calc(0.95rem + 0.23vw), 1.13rem);
  --step-1: clamp(1.20rem, calc(1.11rem + 0.38vw), 1.41rem);
  --step-2: clamp(1.44rem, calc(1.30rem + 0.59vw), 1.46rem);
  --step-3: clamp(1.73rem, calc(1.52rem + 0.87vw), 2.20rem);
  --step-4: clamp(2.07rem, calc(1.78rem + 1.25vw), 2.75rem);
  --step-5: clamp(2.49rem, calc(2.08rem + 1.75vw), 3.43rem);
  --step-6: clamp(2.99rem, calc(2.42rem + 2.41vw), 4.29rem);
  --step-7: clamp(3.58rem, calc(2.81rem + 3.29vw), 5.36rem);
  --step-8: clamp(4.30rem, calc(3.26rem + 4.45vw), 6.71rem);
}

:root {
    --primary-font: 'neue-haas-grotesk-display', sans-serif;
    --heading-font: 'neue-haas-grotesk-display', sans-serif;
}


/* =======================================================================================================================================
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-2); font-weight: 400; line-height: 1.6}
p{margin: 0 0 1em;}
h1,h2,h3,h4,h5,h6{font-family: var(--heading-font); font-weight: 400 !important; line-height: 1.2; letter-spacing: 0 !important; text-transform: inherit; !important; margin: 0 0 .4em 0 !important}

#top h1{font-size: var(--step-5); font-weight: 700 !important; text-transform: uppercase !important;}
#top h2{font-size: var(--step-4); font-weight: 700 !important; text-transform: uppercase !important;}
#top h3{font-size: var(--step-3); font-style: italic;}
#top h4{font-size: var(--step-2);}

#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 .avia-section b,
#top .avia-section strong,
#top .footer_color b,
#top .footer_color strong,
#top .socket_color b,
#top .socket_color strong{color: inherit}

/* Button */
#top div .avia-button{
    font-size: var(--step--1);
    font-weight: 700;
    padding: 1em 2em;
    border-radius: .5em;
    background: #000;
    border: 1px solid #000 !important;
    color: #fff;
    text-decoration: none !important;
    -webkit-transition: .2s ease;
    -o-transition: .2s ease;
    transition: .2s ease;
}
#top div .avia-button.avia-color-dark{color: #000;}
#top div .avia-button.avia-color-light{border: 1px solid #fff !important;}
#top div .avia-button:hover{opacity: 1}
html.no-touch-device #top div .avia-button:hover{translate: 0 -2px}

/* 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;
}


/* =======================================================================================================================================
Header
======================================================================================================================================= */
@media only screen and (max-width: 989px){ 
    .responsive #top #header{position: fixed !important; top: 0; left: 0; right: 0; width: 100%; background: transparent !important;}
    .responsive #top #main,
    .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;
    }
    .responsive #top .header_bg{display: none;}
}

@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;}
}

/* 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: 130px}

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

/* Hamburger Menu */
.av-hamburger-inner, .av-hamburger-inner::before, .av-hamburger-inner::after {border-radius: 0;}
.header_color .av-hamburger-inner, .header_color .av-hamburger-inner::before, .header_color .av-hamburger-inner::after {background-color: #ffffff !important;}
.av-hamburger-box {width: 54px;}
.av-hamburger-inner::before {top: -18px;}
.av-hamburger--spin .av-hamburger-inner::after {display: none;}
.av-hamburger--spin.is-active .av-hamburger-inner {
    transform: rotate(271deg);
}

.av-burger-overlay-active #top .av-hamburger-inner::after {display: none;}
.avia-menu.av-main-nav-wrap, 
.main_menu {
    right: calc(50% - 27px);
} 
.menu-item-avia-special .av-hamburger{position: relative;}
.avia-menu-text{
    text-transform: uppercase; 
    font-weight: 700; 
    font-style: normal; 
    font-size: calc(1 * var(--step-8)); 
    line-height: 1;
}
.avia-menu-text:hover {
    color: transparent;
    background-color: transparent;
    -webkit-text-stroke: 1px #ffffff;
    text-stroke: 1px #ffffff;
    opacity: 1;
    transition: all .25s;
}
.html_burger_menu_active #top #wrap_all #header .av-burger-menu-main > a{padding: .5rem 0 0 0}
.html_av-overlay-full #av-burger-menu-ul li a:hover, .html_av-overlay-full #av-burger-menu-ul li a:active, .html_av-overlay-full #av-burger-menu-ul li a:focus, #top .av_header_transparency .main_menu ul:first-child > li > a:hover, #top .av_header_transparency .main_menu ul:first-child > li > a:focus, #top #wrap_all .av_header_transparency .sub_menu > ul > li > a:hover, #top #wrap_all .av_header_transparency .sub_menu > ul > li > a:focus {opacity: 1;}

@media only screen and (max-width: 989px){
    .avia-menu.av-main-nav-wrap, .main_menu{justify-content: flex-end;}
    .avia-menu-text{font-size: calc(1 * var(--step-6)); }
}

/* Header Effect */
@media only screen and (min-width: 990px){
	#top #header{background: transparent !important}
	#top #header .header_bg{display: none;}
}

@media only screen and (min-width: 1880px){
    #top #header .container{max-width: calc(1320px + (260px * 2) + 2rem);}
}

/* Header Social */
#header_main .inner-container > #header-social{
    margin: 0 0 0 auto;
    line-height: 1;
    font-size: var(--step--1);
    font-weight: 700;
    text-transform: uppercase;
    position: absolute;
    right: 72px;
    top: 50%;
    translate: 0 -50%;
}
#header_main .inner-container > #header-social > a{
    display: inline-block;
    padding: .4em 1.2em;
    border-radius: 50%;
    border: 1px solid;
}

@media only screen and (min-width: 990px){
    #header_main .inner-container > #header-social{
        position: static;
        order: 3;
        translate: 0 0;
        font-size: var(--step-0);
    }
}


/* =======================================================================================================================================
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%;}
}

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

#top .av_one_half .__bigger--img img{max-width: 850px; width: 850px}

/* Toggle */
#top section.av_toggle_section .toggler{padding: 1em 3em 1em 1rem; margin: 0 0 .8em; font-size: var(--step-0); background: transparent; border: 1px solid; border-radius: .5em}
#top section.av_toggle_section .toggler:hover{background: transparent;}
#top section.av_toggle_section .toggler .toggle_icon{display: none;}
#top section.av_toggle_section .toggler:after{
    content: '\e87d';
    font-family: 'entypo-fontello';
    position: absolute;
    right: 1em;
    transition: .2s ease;
}
#top section.av_toggle_section .toggler.activeTitle:after{rotate: 90deg}
#top section.av_toggle_section .toggle_content{border: 0; background: transparent; padding: .5em 1rem 1.5em;}
#top section.av_toggle_section .toggle_content *{font-size: var(--step--1);}

/* Social Icons */
#top ul.__social--media--icons{
    display: flex;
    gap: 0;
    font-size: var(--step-2);
    margin: 0 0 1em 0;
    line-height: 1;
}
#top ul.__social--media--icons > li > a{padding: .2em .4em;}


/* =======================================================================================================================================
Blog: Single Post
======================================================================================================================================= */
#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) !important;
    padding: 1em;
    border-radius: 0;
    border: 1px solid;
	border-color: transparent !important;
    margin: 0;
    font-size: var(--step-0);
	background: #0d0d0d !important;
}
#top input:focus, 
#top textarea:focus{
	border-color: #fff !important;
	outline: none; 
    box-shadow: none;
}

#top form label{font-size: var(--step--1)}
#top form button[type="submit"]{
    background: transparent;
    border: 0;
    box-shadow: none;
	cursor: pointer;
	padding: .2rem;
}

#top .elena-form{
	padding: .5rem;
	border: 1px solid;
}
#top .elena-form p{margin: 0; font-size: var(--step-0)}

#top .elena-form > div{padding: .5rem}
#top .elena-form > div:nth-child(1){text-align: center;}
#top .elena-form > div:nth-child(1) p{text-transform: uppercase; font-weight: 700; font-size: var(--step-2);}

@media (min-width: 990px){
	#top .elena-form{display: grid; grid-template-columns: repeat(5, 1fr);}
	#top .elena-form > div:nth-child(1){grid-column: span 1; place-content: center; display: grid;}
	#top .elena-form > div:nth-child(2){grid-column: span 4;}
	#top .elena-form > div:nth-child(3){grid-column: span 4;}
	#top .elena-form > div:nth-child(4){place-content: center; display: grid;}
}

#top .elena-form .wpcf7-not-valid{border-color: red}
#top .wpcf7 form .wpcf7-not-valid-tip{display: none !important}
#top .wpcf7 form .wpcf7-response-output{
    padding: 1em 2em;
    font-weight: 400;
    border: 0;
    margin: 1em 0 0 0;
    background: #0d0d0d;
    font-size: var(--step-0);
	line-height: 1.6;
}


/* =======================================================================================================================================
Footer
======================================================================================================================================= */
#scroll-top-link{display: none;}


/* =======================================================================================================================================
Scrollbar
======================================================================================================================================= */
html::-webkit-scrollbar,
body::-webkit-scrollbar{
  width: 0; 
  height: 0; 
}
htm,
body{
  scrollbar-width: none;
  -ms-overflow-style: none;
}
.custom-scrollbar{
  position: fixed;
  z-index: 100;
  top: 50%;
  right: 50px;
  height: 220px;
  width: 16px;
  background: linear-gradient(#EF7B02, #1B70A9);
  translate: 0 -50%;
  border-radius: 8px;
}

.scroll-thumb {
  position: absolute;
  top: 0;
  width: 16px;
  height: 16px;
  background: transparent;
  border: 2px solid white;
  border-radius: 50%;
  box-sizing: border-box;
  cursor: grab;
}

.scroll-thumb:active{cursor: grabbing;}

@media only screen and (max-width: 989px){
    .custom-scrollbar{display: none;}
}
