/*
Theme Name: Lotusgarden Child
Theme URI: https://lotusgarden.eu
Description: Custom child theme for lotusgarden.eu, based on Hello Elementor.
Author: Creatiger Kft.
Author URI: https://creatiger.hu
Template: hello-elementor
Version: 1.0.0
Text Domain: lotusgarden-child
*/

/* Elementor section/column links show pointer cursor (elementor-clickable uses JS, not <a>) */
.elementor-clickable {
    cursor: pointer;
}

/* Product type selector: both images should show pointer cursor */
.meret-tipus-container .elementor-widget-image img {
    cursor: pointer;
}

/* Search: X close button — same size as Q submit button, stretches to container height */
.elementor-search-form__container .search-close-btn,
.search-close-btn {
    background-color: #e07070 !important;
    color: #fff !important;
    border: none !important;
    cursor: pointer;
    min-width: calc(1.4 * 42px);
    align-self: stretch;
    font-size: 16px;
    font-weight: bold;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    padding: 0;
    line-height: 1;
    transition: background-color .15s;
}
.elementor-search-form__container .search-close-btn:hover,
.search-close-btn:hover {
    background-color: #c85050 !important;
}

/* Search desktop: ALWAYS at top:0/bottom:0/right:0 — prevents flash on close.
   Form is invisible (opacity:0) when not-active; no position change on toggle. */
@media (min-width: 768px) {
    .elementor-location-header .elementor-element-21e5d219 {
        top: 0 !important;
        bottom: 0 !important;
        right: 0 !important;
        display: flex !important;
        align-items: center !important;
    }
    .elementor-location-header .elementor-element-21e5d219 .elementor-widget-container,
    .elementor-location-header .elementor-element-21e5d219 .elementor-search-form,
    .elementor-location-header .elementor-element-21e5d219 .elementor-search-form__container {
        width: 100%;
    }
    body.search-open .elementor-element-21e5d219 {
        background: #fff;
    }
    body.search-open .elementor-element-cabd215,
    body.search-open .elementor-element-44396935,
    body.search-open .elementor-element-3c88512d,
    body.search-open .elementor-element-1ed39864,
    body.search-open .elementor-element-a68cbab {
        visibility: hidden !important;
    }
}

/* Search mobile: JS sets top/left/right/height via inline style.
   CSS only handles flex layout and background when open. */
@media (max-width: 767px) {
    body.search-open .elementor-element-21e5d219 {
        display: flex !important;
        align-items: center !important;
        background: #fff;
        z-index: 100 !important;
        width: auto !important;
    }
    body.search-open .elementor-element-21e5d219 .elementor-widget-container,
    body.search-open .elementor-element-21e5d219 .elementor-search-form,
    body.search-open .elementor-element-21e5d219 .elementor-search-form__container {
        width: 100%;
    }
    body.search-open .elementor-element-659e187,
    body.search-open .elementor-element-842a1c7,
    body.search-open .elementor-element-cabd215,
    body.search-open .elementor-element-44396935,
    body.search-open .elementor-element-3c88512d,
    body.search-open .elementor-element-1ed39864,
    body.search-open .elementor-element-a68cbab {
        visibility: hidden !important;
    }
}

/* Mobile/tablet hamburger dropdown: z-index + strip any margin/padding gap at the top */
@media (max-width: 1024px) {
    .elementor-element-842a1c7 .elementor-nav-menu--dropdown {
        z-index: 100 !important;
    }
    .elementor-element-842a1c7 .elementor-nav-menu--dropdown > nav,
    .elementor-element-842a1c7 .elementor-nav-menu--dropdown > nav > ul {
        margin-top: 0 !important;
        padding-top: 0 !important;
    }
}

/* HIBA-15: Csillag értékelések a testimonials-oknál — CSS ::before, mindig 5 csillag */
.elementor-testimonial__content::before {
    content: '★★★★★';
    display: block;
    color: #f5a623;
    font-size: 20px;
    letter-spacing: 3px;
    margin-bottom: 8px;
}

/* HIBA-06: Eredeti Elementor slider szekció elrejtve — helyette lg-hero fut */
.elementor-element-87caa8d {
    display: none !important;
}

/* HIBA-06: Hero szekció — A/B + kampány variánsok */
.lg-hero {
    position: relative;
    background: linear-gradient(160deg, #1b3a1b 0%, #2e6b2e 100%);
    background-size: cover;
    background-position: center;
    min-height: 60vh;
    display: flex;
    align-items: center;
}
.lg-hero__inner {
    width: 100%;
    max-width: 860px;
    margin: 0 auto;
    padding: 80px 40px;
    color: #fff;
    /* Szövegdoboz — szín/áttetszőség Customizer-ből jön (wp_head inline style) */
    border-radius: 12px;
}
.lg-hero__heading {
    font-family: "Montserrat", sans-serif;
    font-size: clamp(26px, 4vw, 48px);
    font-weight: 700;
    line-height: 1.2;
    margin: 0 0 20px;
}
.lg-hero__text {
    font-family: "Montserrat", sans-serif;
    font-size: clamp(15px, 1.6vw, 20px);
    line-height: 1.6;
    margin: 0 0 32px;
    opacity: 0.92;
    max-width: 600px;
}
.lg-hero__cta {
    display: inline-block;
    background: var(--e-global-color-accent, #5a9a3a);
    color: #fff;
    font-family: "Montserrat", sans-serif;
    font-size: 16px;
    font-weight: 700;
    padding: 14px 36px;
    border-radius: 4px;
    text-decoration: none;
    transition: opacity 0.15s;
}
.lg-hero__cta:hover {
    opacity: 0.85;
    color: #fff;
}
@media (max-width: 767px) {
    .lg-hero__inner {
        padding: 60px 24px;
    }
}

/* HIBA-04: Geotextília H1 + image-box title-ok — 2-3 soros szövegnél ne préselődjön */
.elementor-element-093a423 .elementor-heading-title,
.elementor-element-42668f1 .elementor-image-box-title,
.elementor-element-47676cb .elementor-image-box-title,
.elementor-element-5c8b72f .elementor-image-box-title {
    line-height: 1.2 !important;
}

/* HIBA-03: Desktop — show submenu on .is-open (hover still works too) */
.elementor-element-842a1c7 .elementor-nav-menu--main .menu-item-has-children.is-open > .sub-menu {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
}

/* HIBA-12: Hamburger accordion — collapse submenus by default, expand on .is-open */
.elementor-element-842a1c7 nav.elementor-nav-menu--dropdown .menu-item-has-children > .sub-menu {
    display: none !important;
}
.elementor-element-842a1c7 nav.elementor-nav-menu--dropdown .menu-item-has-children.is-open > .sub-menu {
    display: block !important;
}

/* HIBA-13: 44×44px minimum touch targets on mobile/tablet (WCAG 2.5.5) */
@media (max-width: 1024px) {
    .elementor-location-header .elementor-icon {
        min-width: 44px;
        min-height: 44px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
    }
    .elementor-location-header .elementor-menu-toggle {
        min-width: 44px;
        min-height: 44px;
    }
    .elementor-location-header .elementor-cart__toggle {
        min-width: 44px;
        min-height: 44px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
    }
    .elementor-nav-menu--mobile .elementor-nav-menu a {
        min-height: 44px;
        display: flex;
        align-items: center;
    }
}
