/* 
Theme Name: Valpix Child Theme
Theme URI: https://github.com/elementor/hello-theme/
Description: Hello Elementor Child Theme.
Author: Valpix GmbH
Author URI: https://www.valpix.ch/
Template: hello-elementor
Version: 1.0.0
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/* Custom Styles Valpix */
@import url("https://use.typekit.net/jyn8vzy.css");
:root {
    --custom-title-color: #743836 !important;
    --custom-body-color: #484745 !important;
}    
body, html{
    font-family: "bebas-neue-pro-expanded", Sans-serif !important;
    font-size: 25px;
    overflow-x: hidden;
    color: #484745;
}
.page-content a {
    color: #484745;
    text-decoration: underline;
    text-decoration-thickness: 1px;
    text-underline-position: under;
}
header {
    position: fixed !important;
    left: 0;
    right: 0;
    top: 0;
    z-index: 1001;
    padding-top: 15px !important;
    padding-bottom: 15px !important;
    font-weight: 600;
    background-color: #fff;
    box-shadow: 0px 0px 10px rgb(0 0 0 / 5%);
}
.headroom {
    will-change: transform;
    -webkit-transition: -webkit-transform 200ms linear !important;
    transition: -webkit-transform 200ms linear !important;
    -o-transition: transform 200ms linear !important;
    transition: transform 200ms linear !important;
    transition: transform 200ms linear, -webkit-transform 200ms linear !important;
}
.headroom--pinned {
    -webkit-transform: translateY(0%);
        -ms-transform: translateY(0%);
            transform: translateY(0%);
}
.headroom--unpinned {
    -webkit-transform: translateY(-100%);
        -ms-transform: translateY(-100%);
            transform: translateY(-100%);
    box-shadow: unset !important;
}
.fadeInUp {
    animation-name: fadeInUpCustom!important
}
@keyframes fadeInUpCustom {
    from {
        opacity: 0;
        transform: translate3d(0,50px,0)
    }

    to {
        opacity: 1;
        transform: none
    }
}
.elementor-nav-menu a {
    padding-left: 30px !important;
    padding-right: 30px !important;
}
nav a, nav a:hover {
    color: #595858;
    transition: 0.2s;
}
h1 {
    font-size: 2.2rem;
    margin-bottom: 40px;
}
h6 {
    font-weight: 600;
    margin-bottom: 15px;
    color: #743836;
}
*+h2, *+h3, *+h4, *+h5, *+h6 {
    margin-top: 45px;
}
footer h6 {
	margin-top: 0;
}
.lead p {
    font-size: 28px;
    line-height: 1.4;
    max-width: 90%;
}
p:only-child, p:last-of-type {
    margin-bottom: 0;
}
.page-content section, .content-page section {
    margin: 110px 0;
}
section .elementor-section {
    margin: 0 !important;
}
nav a {
    font-size: 25px;
}
nav li a {
    padding: 0 !important;
}
nav .current-menu-item a:after{
    content: '';
    height: 2px;
    width: 40px;
    background-color: #595858;
    position: absolute;
    bottom: -10px;
    transition: .6s ease-in-out;
}
nav .current-menu-item a:hover:after{
    width: 0px;
    transition: .6s ease-in-out;
}
nav a:after {
    content: '';
    height: 2px;
    width: 0;
    background-color: #595858;
    position: absolute;
    bottom: -10px;
    transition: .6s ease-in-out;
}
nav a:hover:after {
    width: 40px;
    transition: .6s ease-in-out;
}
nav ul li:last-of-type a {
    padding-right: 0 !important;
}
.fullscreen-section.home {
    min-height: 750px;
    height: calc(90vh - 150px);
}
.fullscreen-section.home .elementor-container, .fullscreen-section .elementor-container  {
    height: 100%;
}
.fullscreen-section {
    min-height: 600px;
}
.slogangrafic {
    position: absolute;
    bottom: -60px;
    right: 5%;
}
.slogangrafic img {
    width: 280px;
}
.productnavi {
    position: absolute;
    z-index: 1;
    top: 50px;
    left: 50px;
}
.productnavi ul{
    color: #fff;
    font-weight: 600;
    font-size: 35px;
    padding: 0;
    list-style-type: none;
}
.productnavi li{
    cursor: pointer;
}
.productimages {
    height: calc(100vh - 250px);
    min-height: 600px;
    position: relative;
    overflow: hidden;
}
.productimages img {
    position: absolute;
    opacity: 0;
    -webkit-transition: opacity .6s ease-in-out;
    -o-transition: opacity .6s ease-in-out;
    transition: opacity .6s ease-in-out;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.productimages img.active {
    opacity: 1;
}
.productimages button {
    z-index: 14;
    position: absolute;
    background-color: #fff;
    border: 0;
    border-radius: 0;
    bottom: 30px;
    right: 30px;
}
.productimages button a {
    text-decoration: none;
}
.teammembers .elementor-widget-image {
    border-bottom: 5px solid #743836;
    overflow: hidden;
}
.teammembers, .products {
    padding-bottom: 30px !important;
}
.teammembers:last-of-type, .products:last-of-type {
    padding-bottom: 0 !important;
}
.products .elementor-widget-container, .gallery-item .gallery-icon {
    overflow: hidden;
}
.products img, .gallery-item img {
    transform: scale(1);
    transition: .6s ease-in-out;
}
.products img:hover, .gallery-item img:hover {
    transform: scale(1.1);
    transition: .6s ease-in-out;
}
.products p a:after, .openjobs a:after {
    content: '';
    height: 34px;
    width: 20px;
    position: absolute;
    background-image: url(https://www.imwinkelried-ag.ch/wp-content/themes/valpix-child/assets/img/schreinerei-imwinkelried-arrow-right.svg);
    margin-left: 10px;
    transition: 0.5s ease-in-out;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}
.products p a:hover:after, .openjobs a:hover:after {
    margin-left: 20px;
    transition: 0.5s ease-in-out;
}
.gallery-icon {
    box-shadow: 0px 0px 5px #d9d9d9 !important;
}
.elementor-slideshow__header {
    background-color: transparent !important;
}
.swiper-container .eicon-frame-expand, .swiper-container .eicon-zoom-in-bold, .swiper-container .eicon-share-arrow {
    display: none;
}
.elementor-slideshow__footer {
    display: none !important;
}
#slogan {
    position: absolute;
    top: -145px;
    text-align: right;
}
.credits {
    font-size: 17px;
    margin-top: 60px;
}
footer {
    background-color: #e5e5e5;
    padding-top: 100px !important;
    padding-bottom: 80px !important;
    font-size: 20px;
	margin-top: 50px;
}
footer a {
    color: #484745;
    text-decoration: underline !important;
    text-underline-position: under;
    text-decoration-thickness: 1px !important;
}
.elementor-button {
    background-color: #743836;
    border-radius: 0;
    font-size: inherit;
    text-decoration: unset !important;
    margin-top: 10px;
}
footer ul {
    display: inline-block;
    padding-left: 0;
}
footer ul li {
    display: inline-block;
    margin-left: 20px;
    margin-right: 20px;
    position: relative;
}
footer ul li:after {
    content: '|';
    position: absolute;
    right: -25px;
}
footer ul li:first-of-type {
    margin-left: 0;
}
footer ul li:last-of-type {
    margin-right: 0;
}
footer ul li:last-of-type:after {
    display: none;
}
privacybee-widget div, privacybee-widget div ul li, privacybee-widget div a {
    max-width: 100% !important;
    line-height: inherit !important;
}
.KFaIpG_text, .KFaIpG_listElement, .KFaIpG_link, .CCca4W_expandableText, .CCca4W_expandableName, .KFaIpG_h3 {
    font-size: 20px !important;
}
    
@media screen and (max-width: 1830px){
    header{
        padding: 10px 30px !important;
    }
	.elementor-section.elementor-section-boxed > .elementor-container {
		max-width: 90%;
		padding-left: 30px;
		padding-right: 30px;
	}
}
@media screen and (max-width: 1200px){
    body, html {
        font-size: 22px;
    }
    header {
        padding: 10px 20px !important;
    }
    .elementor-section.elementor-section-boxed > .elementor-container {
        max-width: 95%;
        padding-left: 15px;
        padding-right: 15px;
    }
    h1 {
        font-size: 40px;
    }
    h2 {
        font-size: 33px;
    }
    h3 {
        font-size: 30px;
    }
    h4 {
        font-size: 27px;
    }
    h5 {
        font-size: 25px;
    }
    .page-content section, .content-page section {
        margin: 90px 0;
    }
    nav .current-menu-item a, .elementor-nav-menu--dropdown .elementor-item.elementor-item-active, .elementor-nav-menu--dropdown .elementor-item.elementor-item-active, .elementor-nav-menu--dropdown .elementor-item.highlighted, .elementor-nav-menu--dropdown .elementor-item:focus, .elementor-nav-menu--dropdown .elementor-item:hover, .elementor-sub-item.elementor-item-active, .elementor-sub-item.highlighted, .elementor-sub-item:focus, .elementor-sub-item:hover {
        background-color: rgba(0,0,0,0) !important;
        color: #3f444b !important;
    }
    nav a:hover:after, nav .current-menu-item a:after {
        display: none !important;
    }
    .elementor-nav-menu a, .elementor-nav-menu a:focus, .elementor-nav-menu a:hover {
        padding: 10px 28px !important;
    }
    .elementor-nav-menu--dropdown .elementor-item.elementor-item-active {
        text-decoration: underline;
        text-underline-position: under;
    }
    .headroom--top.elementor-nav-menu--dropdown {
        margin-top: 30px !important;
        padding-top: 10px;
        padding-bottom: 10px;
    }
    .elementor-nav-menu--dropdown {
        margin-top: 30px !important;
        padding-top: 20px;
        padding-bottom: 20px;
    }
    .elementor-menu-toggle i::before {
        color: #484745;
    }
    .lead p {
        font-size: 24px;
        line-height: 1.4;
        max-width: 100%;
    }
    .fullscreen-section .fullscreen-content {
        margin-bottom: 40px;
    }
    .slogangrafic {
        bottom: -55px;
    }
    .slogangrafic img {
        width: 250px;
    }
    .productimages {
        height: 700px;
        min-height: 600px;
    }
    .productnavi {
        top: 30px;
        left: 30px;
    }
    .productnavi ul {
        font-size: 28px !important;
    }
    .products .elementor-inner-column, .teammembers .elementor-inner-column {
        margin-bottom: 30px;
    }
    .teammembers, .products {
        padding-bottom: 0 !important;
    }
    #slogan {
        top: -137px;
    }
    footer {
        padding-top: 90px !important;
        padding-bottom: 80px !important;
    }
}
@media screen and (max-width: 1035px){
    .fullscreen-section {
        min-height: 700px;
        height: 800px !important;
    }
    .fullscreen-section .fullscreen-content {
        margin-bottom: 30px;
    }
    .fullscreen-section .elementor-container {
        min-height: 100% !important;
    }
    .page-content section section, .content-page section section {
        padding-left: 0;
        padding-right: 0;
    }
    .page-content section, .content-page section {
        margin: 70px 0;
    }
}
@media screen and (max-width: 900px){
    .elementor-nav-menu--dropdown {
        margin-top: 20px !important;
    }
}
@media screen and (max-width: 767px){
    body, html {
        font-size: 20px;
    }
	.elementor-section.elementor-section-boxed > .elementor-container {
        max-width: 100%;
    }
    h1 {
        font-size: 35px;
		margin-bottom: 30px;
    }
    h2 {
        font-size: 33px;
    }
    h3 {
        font-size: 30px;
    }
    h4 {
        font-size: 27px;
    }
    h5 {
        font-size: 25px;
    }
	.elementor-nav-menu--dropdown {
		padding-top: 30px;
	}
	.elementor-nav-menu a, .elementor-nav-menu a:focus, .elementor-nav-menu a:hover {
		padding: 10px 24px!important;
	}
    .page-content section, .content-page section {
        margin: 50px 0;
    }
    .elementor-nav-menu--dropdown {
        margin-top: 25px !important;
    }
    .lead {
        padding: 0;
    }
	.lead p{
        font-size: 22px;
    }
    .productnavi {
        top: 15px;
        left: 15px;
    }
    .productnavi ul {
        font-size: 22px !important;
    }
    .productnavi li {
        text-shadow: 0px 0px 5px #484745;
    }
    .productimages button {
        bottom: 15px;
        right: 15px;
        font-size: 18px;
    }
    .fullscreen-section.home {
        min-height: 500px;
        height: calc(90vh - 150px) !important;
        max-height: 600px;
    }
    .fullscreen-section {
        min-height: 350px;
        height: 350px !important;
    }
    .fullscreen-section .elementor-container {
        height: 100%;
    }
    .productimages {
        height: 400px;
        min-height: 400px;
    }
	#slogan {
		top: -94px;
	}
    footer {
        font-size: 18px;
        padding-top: 60px !important;
        padding-bottom: 50px !important;
		border-bottom: 10px solid #743836;
    }
}
@media screen and (max-width: 500px){
    .elementor-nav-menu--dropdown {
        margin-top: 13px !important;
    }
    header {
        padding: 10px 15px !important;
    }
    nav a {
        font-size: 21px;
    }
    .slogangrafic {
        bottom: -45px;
    }
    .slogangrafic img {
        width: 200px;
    }
    footer ul li {
        display: inline-block;
        margin-left: 10px;
        margin-right: 10px;
        position: relative;
    }
    footer ul li:after {
        right: -15px;
    }
}
@media screen and (max-width: 400px){
	footer ul li {
		display: block;
		margin-left: 0;
		margin-right: 0;
		margin-bottom: 4px;
	}
	footer ul li:last-of-type {
		margin-bottom: 0;
	}
	footer ul li:after {
		display: none;
	}
}