/* clone-fix.css — restores behaviors the LiteSpeed UCSS / deferred JS stripped. */

/* reveal Elementor entrance-animation blocks (no scroll observer in static mirror) */
.elementor-invisible { opacity: 1 !important; visibility: visible !important; animation: none !important; }

/* "Why Choose" icons: size them (rendered 0×0) and lift above the .icon::before
   grey circle (z-index:1) that was painting over them */
.icon-box-widget .icon svg, .icon-box-widget .icon i { width: 46px !important; height: 46px !important; font-size: 46px !important; position: relative; z-index: 2; }

/* "Why Choose" icons: brand color (was black) + animation (idle pulse, hover lift) */
.icon-box-widget .icon { border-radius: 50%; transition: transform .3s ease, background-color .3s ease, box-shadow .3s ease; animation: iqIconPulse 2.8s ease-in-out infinite; }
.icon-box-widget .icon svg, .icon-box-widget .icon i { fill: #ef5b3d !important; color: #ef5b3d !important; transition: transform .3s ease, fill .3s ease, color .3s ease; }
.icon-box-widget:hover .icon { transform: translateY(-6px); background-color: #ef5b3d !important; animation: none; }
.icon-box-widget:hover .icon svg, .icon-box-widget:hover .icon i { fill: #fff !important; color: #fff !important; transform: scale(1.15) rotate(-6deg); }
@keyframes iqIconPulse { 0%, 100% { box-shadow: 0 0 0 0 rgba(239, 91, 61, .22); } 50% { box-shadow: 0 0 0 14px rgba(239, 91, 61, 0); } }

/* swiper: slides lay out in a row and clip, never overlap */
.swiper, .swiper-container { overflow: hidden; }
.swiper-wrapper { display: flex; }
.swiper-slide { flex-shrink: 0; }

/* "Every Occasion" slider: make the background photos fill each slide and stop
   them animating/vanishing during slide transitions */
.slider_box_V1 { position: relative; height: 100%; min-height: 520px; overflow: hidden; border-radius: 14px; }
.slide-bgimg { position: absolute; inset: 0; background-size: cover !important; background-position: center !important; background-repeat: no-repeat; transition: none !important; transform: none !important; }
.swiper-slide:has(.slider_box_V1) { opacity: 1 !important; }

/* partner/client logos larger */
.client-item img,
.elementor-widget-luxride-client-carousel-widget img { height: 50px; width: auto; object-fit: contain; }

/* GTranslate: removed entirely (not wanted) — hide switcher in header + footer */
.gtranslate_wrapper, .gt_float_switcher, #google_translate_element2,
[class*="gtranslate"], [class*="gt_container"], .skiptranslate { display: none !important; }
body { top: 0 !important; position: static !important; }

/* broken aio-contact list -> hidden; clean WhatsApp button instead */
.aio-contact-parent { display: none !important; }
.iq-wa {
  position: fixed; right: 20px; bottom: 20px; z-index: 99998;
  width: 58px; height: 58px; border-radius: 50%; background: #25D366;
  display: flex; align-items: center; justify-content: center;
  box-shadow: 0 10px 26px rgba(0, 0, 0, .35); transition: transform .15s;
}
.iq-wa:hover { transform: scale(1.08); }
.iq-wa svg { width: 32px; height: 32px; fill: #fff; }

/* desktop dropdown: white panel, hover-open, header height fixed */
@media (min-width: 1025px) {
  /* keep all top nav items on one line (was wrapping "Our Pricing" down) */
  .navbar_nav { flex-wrap: nowrap !important; width: max-content !important; max-width: none !important; }
  /* .dropdown-btn is the mobile accordion toggle — hide on desktop (was a 2nd caret) */
  .dropdown-btn { display: none !important; }
  li.menu-item-has-children { position: relative; }
  .menu-item-has-children > .sub-menu, .menu-box .sub-menu {
    display: block !important; position: absolute; top: 100%; left: 0;
    min-width: 240px; margin: 0; padding: 14px 8px; list-style: none;
    background: #fff; border-radius: 8px; box-shadow: 0 18px 45px rgba(0, 0, 0, .16);
    opacity: 0; visibility: hidden; transform: translateY(8px);
    transition: opacity .18s ease, transform .18s ease; pointer-events: none; z-index: 9999;
  }
  .menu-item-has-children:hover > .sub-menu { opacity: 1; visibility: visible; transform: translateY(0); pointer-events: auto; }
  .sub-menu .menu-item-has-children > .sub-menu { top: 0; left: 100%; }
  .sub-menu li { display: block; width: 100%; }
  .sub-menu a, .sub-menu .box_menu, .sub-menu * { color: #1f2733; }
  .sub-menu a:hover, .sub-menu a:hover * { color: #ec5a3c; }
}

/* mobile: burger toggles the menu */
@media (max-width: 1024px) {
  .navbar_togglers { cursor: pointer; }
  .menu-box {
    display: none; position: absolute; top: 100%; left: 0; right: 0;
    background: #0b0b0b; padding: 16px 18px; z-index: 9999; max-height: 80vh; overflow: auto;
  }
  body.iq-menu-open .menu-box { display: block; }
  .menu-box ul { flex-direction: column; align-items: flex-start; }
  .menu-box .sub-menu {
    position: static !important; display: block !important; opacity: 1 !important;
    visibility: visible !important; transform: none !important;
    background: transparent; box-shadow: none; padding: 4px 0 4px 14px; min-width: 0;
  }
  .menu-box a, .menu-box .box_menu, .menu-box * { color: #fff; }
}

/* Add caret (arrow) to menu items with sub-menus */
.menu-item-has-children > a > .text-link::after {
    content: " \25BE"; /* small downward caret */
    font-size: 14px;
    margin-left: 6px;
    display: inline-block;
    transition: transform 0.2s ease;
}
.menu-item-has-children:hover > a > .text-link::after {
    transform: rotate(180deg);
}
