/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme/
Description: Hello Elementor Child Theme
Author: Elementor Team
Version: 1.0.1
*/

/* =====================================================
   IMAGE OVERLAY
===================================================== */
.image-has-overlay {
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    will-change: transform;
    position: relative;
}

.image-has-overlay::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;

    /* Overlay styling */
    background: linear-gradient(180deg,
            rgba(104, 87, 76, 0.10) 50%,
            rgba(104, 87, 76, 0.80) 100%);
    border-radius: 20px;

    /* Layering */
    z-index: 9;
    overflow: hidden;
}

.image-hover {
    perspective: 800px;
    /* Creates depth */
}

.image-hover:hover .image-has-overlay {
    transform: scale(1.02) rotateX(3deg) rotateY(3deg);
    transform-origin: center;
}


/* =====================================================
   TYPOGRAPHY
===================================================== */

.text-bold {
    -webkit-text-stroke-width: 0.5px;
}


/* =====================================================
   HERO SECTION
===================================================== */

/* Tablet and larger devices */
@media (min-width: 768px) {
    .hero-home {
        height: 100%;
        max-height: 655px;
    }

    .hero-home img {
        aspect-ratio: 16 / 9;
        object-fit: cover;
        object-position: center;
    }
}

/* Large screens adjustment */
@media (min-width: 2000px) {
    .hero-home img {
        object-position: center bottom;
    }
}

/* Mobile only */
@media (max-width: 767px) {
    .hero-text-container {
        position: relative;
    }
}

/* =====================================================
   MOBILE MENU (HAMBURGER)
===================================================== */

.hamburger-menu li {
    border-bottom: 1px solid #CDBEB4;
}

.hamburger-menu li ul {
    margin: 0 !important;
    position: relative !important;
    width: 100%;
}

.elementor-nav-menu--dropdown ul li ul li {
    background-color: #f3efed;
}

.elementor-nav-menu .sub-arrow i:before {
    content: none !important;
}


/* =====================================================
   ELEMENTOR SUBMENU ARROW (CUSTOM SVG)
===================================================== */

/* Hide default Elementor arrow */
.sub-arrow i {
    display: none;
}

/* Custom SVG arrow */
.sub-arrow::after {
    content: "";
    display: inline-block;
    width: 15px;
    height: 14px;
    margin-left: 6px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='15' height='14' viewBox='0 0 15 14' fill='none'%3E%3Cpath d='M7.5 13.6363C7.32562 13.6363 7.15108 13.5697 7.01796 13.4366L0.199814 6.61841C-0.0666047 6.35199 -0.0666047 5.92058 0.199814 5.65433C0.466233 5.38808 0.897651 5.38791 1.1639 5.65433L7.5 11.9904L13.8361 5.65433C14.1025 5.38791 14.5339 5.38791 14.8002 5.65433C15.0664 5.92075 15.0666 6.35217 14.8002 6.61841L7.98204 13.4366C7.84892 13.5697 7.67437 13.6363 7.5 13.6363ZM7.98204 7.98204L14.8002 1.1639C15.0666 0.89748 15.0666 0.466063 14.8002 0.199814C14.5338 -0.0664343 14.1023 -0.0666047 13.8361 0.199814L7.5 6.53591L1.1639 0.199814C0.89748 -0.0666047 0.466063 -0.0666047 0.199814 0.199814C-0.0664343 0.466233 -0.0666047 0.897651 0.199814 1.1639L7.01796 7.98204C7.15108 8.11517 7.32562 8.18181 7.5 8.18181C7.67437 8.18181 7.84892 8.11517 7.98204 7.98204Z' fill='%23DACFC7'/%3E%3C/svg%3E");
    background-size: contain;
    background-repeat: no-repeat;
    transition: transform 0.3s ease;
}

/* Rotate arrow when submenu is open */
.elementor-nav-menu--dropdown .menu-item-has-children>a[aria-expanded="true"] .sub-arrow::after {
    transform: rotate(180deg);
}

.elementor-nav-menu--dropdown .menu-item a {
    line-height: 32px;
}




/* =====================================================
   Utils
===================================================== */
.e-off-canvas__overlay {
    backdrop-filter: blur(10px);
}

.animation-float {
    animation: float 3s ease-in-out infinite;
}

@keyframes float {

    0%,
    100% {
        transform: translateY(0px);
    }

    50% {
        transform: translateY(-20px);
    }
}

.position-relative {
    position: relative;
}


.elementor-field-required .elementor-field-label::after {
    content: "(Vereist)";
    font-size: 14px;
}

/* Forms asterisk */

.elementor-field-group label {
    display: flex;
    align-items: center;
    gap: 7px;
}

.elementor-field-required .elementor-required {
    display: none;
}

.elementor-field-option label {
    color: #2E2621 !important;
}