/*
Theme Name:   Landeseiten Design Child
Theme URI:    #
Description:  Child theme for Hello Elementor for Landeseiten Design projects.
Author:       Your Name
Author URI:   #
Template:     hello-elementor
Version:      1.0.25
License:      GNU General Public License v2 or later
License URI:  http://www.gnu.org/licenses/gpl-2.0.html
Text Domain:  landeseiten-design-child
*/

/*----------------------------------------------------------------*/
/* 1. Add your custom CSS below this line
/*----------------------------------------------------------------*/

body {
    overflow-x: hidden !important;
}

.gold-text {
	color:#EED989;
}

.blur {
	backdrop-filter: blur(10px);
}

.e-n-accordion-item-title[aria-expanded=true] {
	border-bottom-right-radius:0px!important;
	border-bottom-left-radius:0px!important;
}

.wms-linear-slider .swiper-wrapper {
    -webkit-transition-timing-function: linear !important;
    transition-timing-function: linear !important;
}

.wms-linear-slider .swiper-slide {
    width: auto !important;
    display: flex;
    align-items: center;
    justify-content: center;
}

.wms-linear-slider .swiper-slide-inner {
    display: flex;
    align-items: center;
    justify-content: center;
}

.wms-linear-slider img {
    height: 80px !important;
    width: auto !important;
    max-width: none !important;
    object-fit: contain;
    display: block;
}


/*
 * Background-only noise overlay for Elementor containers
 * Add class: wm-bg-noise
 */

.wm-bg-noise {
    position: relative;
    isolation: isolate;
    overflow: hidden;

    --wm-noise-opacity: 0.35;
    --wm-noise-size: 250px;
}

/* Noise layer sits above the background, but below the content */
.wm-bg-noise::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 0;
    pointer-events: none;

    opacity: var(--wm-noise-opacity);
    mix-blend-mode: screen;

    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140' viewBox='0 0 140 140'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.95' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)' opacity='0.75'/%3E%3C/svg%3E");
    background-repeat: repeat;
    background-size: var(--wm-noise-size) var(--wm-noise-size);
}

/* Keep Elementor content above the noise */
.wm-bg-noise > .e-con-inner,
.wm-bg-noise > .elementor-element,
.wm-bg-noise > .e-child,
.wm-bg-noise > .elementor-widget {
    position: relative;
    z-index: 1;
}


/* =========================================================
   STACK CARDS
   ========================================================= */
 .cs-stacked-card {
    position: sticky;
    z-index: 1;
    margin-bottom: 0px;
    border-top: 1px solid rgba(220, 226, 230, 0.6);
	 min-height:215px!important;
	 display:flex;
	 align-items:center!important;
}

.cs-stacked-card:last-child {
    margin-bottom: -10px;
}

.cs-stacked-card:nth-child(1) { top: 10vh; border:0px solid transparent }
.cs-stacked-card:nth-child(2) { top: calc(10vh + 15px); }
.cs-stacked-card:nth-child(3) { top: calc(10vh + 30px); }
.cs-stacked-card:nth-child(4) { top: calc(10vh + 45px); }
.cs-stacked-card:nth-child(5) { top: calc(10vh + 60px); }
.cs-stacked-card:nth-child(6) { top: calc(10vh + 75px); }

.cs-stacked-card--title {
    position: sticky;
    top: 10vh;
    align-self: start;
}



@media (max-width: 767px) {
    .cs-stacked-card--title {
        position: relative; 
        top: auto;
        align-self: auto;
        animation: none !important; 
    } 

 /*   2. Unstick the cards and override all the cascade math */
    .cs-stacked-card {
        position: relative;
        top: auto !important; 
    
        box-shadow: none; 
        border-top: none; 
    }
	.cs-stacked-card:nth-child(1) { top: 2vh!important; border:0px solid transparent!important }
	.cs-stacked-card:nth-child(2) { top: calc(14vh + 15px)!important; }
	.cs-stacked-card:nth-child(3) { top: calc(14vh + 30px)!important; }
	.cs-stacked-card:nth-child(4) { top: calc(14vh + 45px)!important; }
	.cs-stacked-card:nth-child(5) { top: calc(14vh + 60px)!important; }
	.cs-stacked-card:nth-child(6) { top: calc(14vh + 75px)!important; }
}


/* =========================================================
   END STACK CARDS
   ========================================================= */


/* table styling */
.cell-wrapper {
	height:100px;
	display:flex;
	justify-content:center;
	align-items:flex-start;
}

.cell-wrapper .elementor-image-box-img {
	margin-right:15px!important;
}

.table-header-3 {
	background: linear-gradient(94deg, #D0BA70 -6.65%, #A28442 66.15%)!important;
}

.table-column-3 {
	background: rgba(238, 217, 137, 0.16)!important;
	border-bottom-right-radius:18px!important;
}

.table-column-1 {
	border-bottom-left-radius:18px!important;
}


/* ==========================================================================
   Horse Card Accordion
   ========================================================================== */

.wm-horse-card-accordion {
    --wm-card-gap: 8px;
    --wm-card-closed-width: 188px;
    --wm-card-active-width: 407px;
    --wm-card-height: 370px;

    --wm-card-radius: 8px;
    --wm-card-content-inset: 10px;
    --wm-card-content-bottom: 10px;
    --wm-card-content-padding: 10px;
    --wm-card-content-radius: 14px;

    --wm-card-label-size: 18px;
    --wm-card-label-max-width: 372px;

    --wm-card-icon-height: 68px;
    --wm-card-icon-max-width: 6em;

    display: flex;
    align-items: stretch;
    justify-content: center;
    gap: var(--wm-card-gap);
    width: 100%;
    max-width: 1440px;
    margin-inline: auto;
}

.wm-horse-card {
    position: relative;
    flex: 0 0 var(--wm-card-closed-width);
    width: var(--wm-card-closed-width);
    height: var(--wm-card-height);
    padding: 0;
    border: 0;
    border-radius: var(--wm-card-radius);
    overflow: hidden;
    cursor: pointer;
    isolation: isolate;
    background-color: #1d1a15;
    background-image: var(--wm-card-image);
    background-size: cover;
    background-position: center;
    box-shadow: none;
    transition:
        flex-basis 420ms ease,
        width 420ms ease,
        transform 420ms ease;
}

.wm-horse-card.is-active {
    flex-basis: var(--wm-card-active-width);
    width: var(--wm-card-active-width);
}

.wm-horse-card:focus-visible {
    outline: 2px solid #c7a867;
    outline-offset: 3px;
}

.wm-horse-card__overlay {
    position: absolute;
    inset: 0;
    z-index: 1;
    background:
        linear-gradient(
            180deg,
            rgba(0, 0, 0, 0.05) 0%,
            rgba(0, 0, 0, 0.10) 38%,
            rgba(0, 0, 0, 0.48) 100%
        );
    pointer-events: none;
}

.wm-horse-card__closed,
.wm-horse-card__opened {
    position: absolute;
    z-index: 2;
    inset-inline: var(--wm-card-content-inset);
    bottom: var(--wm-card-content-bottom);
    display: flex;
    align-items: center;
    color: #ffffff;
    pointer-events: none;
    padding: var(--wm-card-content-padding) !important;
    border-radius: var(--wm-card-content-radius);
    background: rgba(238, 217, 137, 0.20);
    backdrop-filter: blur(25px);
    -webkit-backdrop-filter: blur(25px);
}

.wm-horse-card__closed {
    justify-content: center;
    opacity: 1;
    transform: translateY(0);
    transition:
        opacity 220ms ease,
        transform 220ms ease;
}

.wm-horse-card.is-active .wm-horse-card__closed {
    opacity: 0;
    transform: translateY(8px);
}

.wm-horse-card__opened {
    justify-content: space-between;
    gap: 12px;
    opacity: 0;
    transform: translateY(8px);
    transition:
        opacity 260ms ease 100ms,
        transform 260ms ease 100ms;
}

.wm-horse-card.is-active .wm-horse-card__opened {
    opacity: 1;
    transform: translateY(0);
}

.wm-horse-card__label {
    max-width: var(--wm-card-label-max-width);
    font-size: var(--wm-card-label-size);
    line-height: 1.25;
    font-weight: 400;
    text-align: left;
    color: #ffffff;
}

.wm-horse-card__icon,
.wm-horse-card__opened-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    width: 100%;
    max-width: var(--wm-card-icon-max-width);
    height: var(--wm-card-icon-height);
    font-size: 18px;
    line-height: 1;
    color: #ffffff;
}

.wm-horse-card__icon img,
.wm-horse-card__opened-icon img {
    display: block;
    width: 100%;
    height: var(--wm-card-icon-height);
    object-fit: contain;
}

/* Desktop image focal positions */

.wm-horse-card.card-2 {
    background-position: 0 50% !important;
}

.wm-horse-card.card-3 {
    background-position: -175px 50% !important;
}

.wm-horse-card.card-3.is-active {
    background-position: 0 50% !important;
}

.wm-horse-card.card-4 {
    background-position: -95px 50% !important;
}

.wm-horse-card.card-4.is-active {
    background-position: 0 50% !important;
}

.wm-horse-card.card-5 {
    background-position: -190px 50% !important;
}

.wm-horse-card.card-5.is-active {
    background-position: 0 50% !important;
}

.wm-horse-card.card-6 {
    background-position: -135px 50% !important;
}

.wm-horse-card.card-6.is-active {
    background-position: 0 50% !important;
}

/* ==========================================================================
   Responsive
   ========================================================================== */

/* 1366 laptops */
@media only screen and (min-width: 1320px) and (max-width: 1439px) {
    .wm-horse-card-accordion {
        --wm-card-closed-width: 165px;
        --wm-card-active-width: 365px;
        --wm-card-height: 330px;

        --wm-card-label-size: 16px;
        --wm-card-label-max-width: 310px;

        --wm-card-icon-height: 58px;
        --wm-card-icon-max-width: 5.2em;

        max-width: 1230px;
    }

    .wm-horse-card.card-3 {
        background-position: -150px 50% !important;
    }

    .wm-horse-card.card-4 {
        background-position: -80px 50% !important;
    }

    .wm-horse-card.card-5 {
        background-position: -165px 50% !important;
    }

    .wm-horse-card.card-6 {
        background-position: -115px 50% !important;
    }
}

/* 1280 laptops */
@media only screen and (min-width: 1210px) and (max-width: 1319px) {
    .wm-horse-card-accordion {
        --wm-card-closed-width: 150px;
        --wm-card-active-width: 340px;
        --wm-card-height: 310px;

        --wm-card-label-size: 15px;
        --wm-card-label-max-width: 285px;

        --wm-card-icon-height: 52px;
        --wm-card-icon-max-width: 4.8em;

        max-width: 1130px;
    }

    .wm-horse-card.card-3 {
        background-position: -135px 50% !important;
    }

    .wm-horse-card.card-4 {
        background-position: -70px 50% !important;
    }

    .wm-horse-card.card-5 {
        background-position: -150px 50% !important;
    }

    .wm-horse-card.card-6 {
        background-position: -100px 50% !important;
    }
}

/* Tablet landscape: 1110px to 1200px */
@media only screen and (min-width: 1110px) and (max-width: 1209px) {
    .wm-horse-card-accordion {
        --wm-card-gap: 8px;
        --wm-card-closed-width: 132px;
        --wm-card-active-width: 315px;
        --wm-card-height: 290px;

        --wm-card-content-inset: 8px;
        --wm-card-content-bottom: 8px;
        --wm-card-content-padding: 8px;
        --wm-card-content-radius: 12px;

        --wm-card-label-size: 14px;
        --wm-card-label-max-width: 250px;

        --wm-card-icon-height: 48px;
        --wm-card-icon-max-width: 4.4em;

        max-width: 1015px;
    }

    .wm-horse-card.card-3 {
        background-position: -118px 50% !important;
    }

    .wm-horse-card.card-4 {
        background-position: -60px 50% !important;
    }

    .wm-horse-card.card-5 {
        background-position: -130px 50% !important;
    }

    .wm-horse-card.card-6 {
        background-position: -88px 50% !important;
    }
}

/* Tablet portrait / compact tablet: 810px to 1109px */
@media only screen and (min-width: 810px) and (max-width: 1109px) {
    .wm-horse-card-accordion {
        --wm-card-gap: 6px;
        --wm-card-closed-width: 92px;
        --wm-card-active-width: 270px;
        --wm-card-height: 250px;

        --wm-card-content-inset: 7px;
        --wm-card-content-bottom: 7px;
        --wm-card-content-padding: 7px;
        --wm-card-content-radius: 11px;

        --wm-card-label-size: 13px;
        --wm-card-label-max-width: 205px;

        --wm-card-icon-height: 42px;
        --wm-card-icon-max-width: 3.8em;

        max-width: 760px;
    }

    .wm-horse-card__opened {
        gap: 8px;
    }

    .wm-horse-card.card-3 {
        background-position: -95px 50% !important;
    }

    .wm-horse-card.card-4 {
        background-position: -48px 50% !important;
    }

    .wm-horse-card.card-5 {
        background-position: -105px 50% !important;
    }

    .wm-horse-card.card-6 {
        background-position: -72px 50% !important;
    }
}

/* Mobile phones / narrow screens: full-width cards, all expanded */
@media only screen and (max-width: 809px) {
	.footer-menu .center ul {
    	display:flex!important;
    	flex-direction:column!important;
    	justify-content: center!important;
    	align-items: center!important;
		text-align:center!important;
}
	
    .wm-horse-card-accordion {
        --wm-card-gap: 14px;
        --wm-card-closed-width: 100%;
        --wm-card-active-width: 100%;
        --wm-card-height: clamp(260px, 72vw, 380px);

        --wm-card-content-inset: 12px;
        --wm-card-content-bottom: 12px;
        --wm-card-content-padding: 10px;
        --wm-card-content-radius: 14px;

        --wm-card-label-size: clamp(15px, 4vw, 18px);
        --wm-card-label-max-width: none;

        --wm-card-icon-height: 54px;
        --wm-card-icon-max-width: 5em;

        flex-direction: column;
        align-items: stretch;
        justify-content: flex-start;
        gap: var(--wm-card-gap);
        max-width: none;
        width: 100%;
        margin-inline: 0;
    }

    .wm-horse-card,
    .wm-horse-card.is-active {
        flex: 0 0 auto;
        width: 100%;
        height: var(--wm-card-height);
        cursor: default;
        transform: none;
        background-position: center center !important;
    }

    .wm-horse-card__closed,
    .wm-horse-card.is-active .wm-horse-card__closed {
        display: none;
        opacity: 0;
        transform: none;
    }

    .wm-horse-card__opened,
    .wm-horse-card.is-active .wm-horse-card__opened {
        opacity: 1;
        transform: none;
        justify-content: space-between;
    }

    .wm-horse-card__label {
        width: 100%;
    }

    .wm-horse-card__opened-icon {
        flex: 0 0 auto;
    }
	
	.wm-horse-card.card-1, .wm-horse-card.card-2, .wm-horse-card.card-3, .wm-horse-card.card-4, .wm-horse-card.card-5, .wm-horse-card.card-6 {
		background-position:center center!important;
	}
}

/* Micro mobile */
@media only screen and (max-width: 390px) {
	.wm-horse-card.card-1, .wm-horse-card.card-2, .wm-horse-card.card-3, .wm-horse-card.card-4, .wm-horse-card.card-5, .wm-horse-card.card-6 {
		background-position:center center!important;
	}
	
    .wm-horse-card-accordion {
        --wm-card-height: 250px;
        --wm-card-content-inset: 10px;
        --wm-card-content-bottom: 10px;
        --wm-card-label-size: 15px;
        --wm-card-icon-height: 48px;
        --wm-card-icon-max-width: 4.4em;
    }
}