/* 
Theme Name: Krumhuber Design
Theme URI: https://www.schneiderundschuetz.com
Description:
Author: Schneider & Schütz GmbH
Author URI: https://www.schneiderundschuetz.com
Template: hello-elementor
Version: 1.0.0
Text Domain: hfp
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
*/

/*
a {
	color: inherit;
	text-underline-offset: var(--offset, 0.2em);
	text-decoration: underline 0.15em;
	transition: --offset 400ms, text-decoration-color 400ms;
}
*/
.elementor-widget-image-button {
	width: 100%;	
}

.elementor-widget-image-button .image-button {
    display: block;
    overflow: hidden;
    position: relative;
    transform: none;
    transition: transform 150ms;
    transform: translate3d(0, 0, 0);
}

.elementor-widget-image-button .image-button:hover,
.elementor-widget-image-button .image-button:focus,
.elementor-widget-image-button .image-button:active {
    transform: translate3d(0, -3px, 0);
}
	
.elementor-widget-image-button .image-wrap {
    display: block;
    line-height: 0;
}

.elementor-widget-image-button .image-wrap img {
        width: 100%;
}
	
.elementor-widget-image-button .image-wrap::after {
    content: '';
    display: block;
    position: absolute;
    left: 0;
    bottom: 0;
    right: 0;
    height: 35%;
    pointer-events: none;
    background: linear-gradient(0, rgba(0, 0, 0, 0.4), rgba(255, 255, 255, 0));
}

.elementor-widget-image-button .text-wrap {
    color: #fff;
    font-size: 26px;
    position: absolute;
    bottom: 40px;
    left: 40px;
    right: 40px;
    font-weight: 200;
}

#intro {
    position: fixed;
    left: 0;
    width: 100vw;
    top: 0;
    bottom: 0;
    z-index: 10000;
    background: #E8E5E1;
    display: flex !important;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    clip-path: inset(0 0 0 0); 
    will-change: transform, clip-path;
    animation: intro-second;
    animation-duration: 540ms;
    animation-fill-mode: forwards;
    animation-timing-function: ease-out;
    animation-play-state: paused;
}

#intro.fadeout {
    animation-play-state: running;
}

#intro .scroll {
    position: absolute;
    bottom: 50px;
}

#intro::before {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    background: #fff;
    z-index: 10;
    animation: intro-first;
    animation-duration: 540ms;
    animation-delay: 500ms;
    animation-fill-mode: forwards;
    animation-timing-function: ease-out;
}

#intro .logo {
    animation: intro-logo;
    animation-duration: 2400ms;
    animation-delay: 720ms;
    animation-fill-mode: forwards;
    animation-timing-function: ease-out;
    opacity: 0;
}

html.intro-shown #intro {
    display: none !important;
}

@keyframes intro-logo {
    from {
        opacity: 0;
    }

    to {
        opacity: 1;
    }
}

@keyframes intro-first {
    from {
        transform: translate3d(0, 0, 0);
        opacity: 1;
    }

    to {
        transform: translate3d(0, -100vh, 0);
        opacity: 0.5;
    }
}

@keyframes intro-second {
    from {
        clip-path: inset(0 0 0 0);    
        display: block;
    }

    98% {
        clip-path: inset(0 0 100% 0);
        opacity: 1;
        transform: none;
    }

    100% {
        clip-path: inset(0 0 100% 0);
        opacity: 0;
        transform: scale(0);
    }
}
@media (min-width: 768px) {
    .hover-effect .elementor-widget-image::after {
        display: block;
        content: '';
        position: absolute;
        left: 0;
        right: 0;
        top: 0;
        bottom: 0;
        background: #000;
        opacity: 0.2;
        transition: opacity 800ms;
    }

    .hover-effect.multiple:hover .elementor-widget-image::after,
    .hover-effect:not(.multiple) .elementor-widget-image:hover::after {
        opacity: 0;   
    }
}

.elementor-swiper-button > i {
    display: none;
}

.elementor-lightbox .swiper .elementor-swiper-button.elementor-swiper-button-next {
    cursor: url('assets/images/chevron-right.png') 32 24, auto;
}

.elementor-lightbox .swiper .elementor-swiper-button.elementor-swiper-button-prev {
    cursor: url('assets/images/chevron-left.png') 16 24, auto;
}

@media (max-width: 767.99px) {
    .elementor-lightbox .swiper .elementor-swiper-button.elementor-swiper-button-next,
    .elementor-lightbox .swiper .elementor-swiper-button.elementor-swiper-button-prev {
        display: none;
    }
}

.elementor-lightbox .swiper .elementor-swiper-button.elementor-swiper-button-next,
.elementor-lightbox .swiper .elementor-swiper-button.elementor-swiper-button-prev {
    width: 50%;
}

.elementor-lightbox .swiper .swiper-pagination-fraction {
    color: var(--lightbox-ui-color);
}

a[data-elementor-open-lightbox="yes"]:hover {
    cursor: url('assets/images/magnify.png') 24 24, auto;
}

.elementor-post-navigation .post-navigation__arrow-wrapper.post-navigation__arrow-prev i::before {
    content: url('assets/images/arrow-black-left.svg');
}

.elementor-post-navigation .post-navigation__arrow-wrapper.post-navigation__arrow-next i::before {
    content: url('assets/images/arrow-black-right.svg');
}

@media (max-width: 480px) {
    .elementor-post-navigation {
        gap: 5px;
    }

    .elementor-post-navigation .post-navigation__prev--title,
    .elementor-post-navigation .post-navigation__next--title {
        display: none;
    }

    .elementor-post-navigation .post-navigation__arrow-prev {
        padding-right: 15px !important; 
    }

    .elementor-post-navigation .post-navigation__arrow-next {
        padding-left: 15px !important; 
    }
}

.dialog-close-button,
.elementor-lightbox .dialog-lightbox-close-button {
    padding: 20px;
    margin: 0 3vw -6px 0;
    right: 0;
}

.dialog-close-button i,
.elementor-lightbox .dialog-lightbox-close-button i {
    background: url('assets/images/close.svg');
    background-size: 100%;
    background-repeat: no-repeat;
    background-position: center center;
    width: 20px;
    height: 20px;
}

.dialog-close-button i::before,
.elementor-lightbox .dialog-lightbox-close-button i::before {
    content: none;
}
