/* 
Theme Name: Lami Fiori
Description: Lami Fiori is a child theme of Hello Elementor
Template: hello-elementor
Version: 2.1.2
Text Domain: lamifiori
Requires at least: 6.0
Requires PHP: 8.2
License: GPL-2.0-or-later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
*/

/* Add your custom styles here */

/* WhatsApp Button */
a.wa__button.wa__sq_button.wa__stt_online.wa__btn_w_icon {
    background: none !important;
    border: 1px solid rgb(255 255 255 / 20%) !important;
    border-radius: 0;
    width: 100%;
}
.wa__cs_name {
    color: #fff !important;
    font-weight: 600 !important;
}
.wa__btn_w_icon .wa__btn_txt {
    padding: 16px 20px 15px 90px;
}
.wa__btn_icon {
    background-color: #C4A44A;
    border-radius: 50%;
    width: 55px;
    height: 55px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}
.wa__btn_icon img {
    width: 28px;
    height: 28px;
}
.wa__btn_w_icon .wa__btn_icon img {
    height: 30px;
}
/* END WhatsApp Button */

/* Carousel Pagination Customization */
/* Spacing below the carousel wrapper */
.elementor-image-carousel.swiper-wrapper {
    margin-bottom: 15px;
}

/* Pagination bullets: white border, transparent background by default */
.swiper-pagination-bullet {
    background-color: transparent !important;
    border: 1px solid #fff;
    opacity: 1;
    width: 12px;
    height: 12px;
    transition: background-color 0.3s ease, transform 0.3s ease;
}

/* Respect the user's reduced-motion preference (WCAG 2.3.3). */
@media (prefers-reduced-motion: reduce) {
    .swiper-pagination-bullet {
        transition: none;
    }
}

/* Active bullet: solid white fill */
.swiper-pagination-bullet-active {
    background-color: #fff !important;
}

/* Hover state: subtle white tint for visual feedback */
.swiper-pagination-bullet:hover {
    background-color: rgba(255, 255, 255, 0.4) !important;
}
/* END Carousel Pagination Customization */

/* Checkout: always collect a shipping address */
/* Hide the "ship to a different address" toggle (forced on via PHP filter) */
#ship-to-different-address {
    display: none;
}
/* Keep the shipping fields expanded even though the toggle is hidden */
.woocommerce-shipping-fields .shipping_address {
    display: block !important;
}
/* END Checkout shipping address */

/* WooCommerce notices: black underlined links, slightly grey on hover */
.woocommerce-message a:not(.button),
.woocommerce-info a:not(.button),
.woocommerce-error a:not(.button),
.woocommerce-notices-wrapper a:not(.button) {
    color: #000 !important;
    text-decoration: underline !important;
}
.woocommerce-message a:not(.button):hover,
.woocommerce-info a:not(.button):hover,
.woocommerce-error a:not(.button):hover,
.woocommerce-notices-wrapper a:not(.button):hover {
    color: #555 !important;
}
/* END WooCommerce notice links */

/* Order received (thank you) page: white text */
body.woocommerce-order-received .woocommerce,
body.woocommerce-order-received .woocommerce * {
    color: #fff !important;
}
/* Keep notices legible on their light background (don't inherit the white page text) */
body.woocommerce-order-received .woocommerce-message,
body.woocommerce-order-received .woocommerce-info,
body.woocommerce-order-received .woocommerce-error,
body.woocommerce-order-received .woocommerce-message *,
body.woocommerce-order-received .woocommerce-info *,
body.woocommerce-order-received .woocommerce-error * {
    color: #000 !important;
}
/* END Order received page */

/* The Elementor side cart lives in the (non-sticky) top header bar, whose stacking
   context sits below the sticky nav bar (z-index 100) — so the nav covers the open
   cart. Raising the cart itself does nothing (it's trapped in that low context);
   instead lift the whole top bar (the header child container holding the cart) above
   the sticky nav, so the side cart and its overlay render on top. */
header.elementor-location-header > .e-con:has(.elementor-menu-cart__wrapper) {
    position: relative;
    z-index: 9999;
}
/* END Side cart stacking */

/* Disable Elementor fixed (parallax) backgrounds on TOUCH devices — iOS/Safari and
   most mobile browsers render background-attachment:fixed broken (image sized to the
   document, zoomed and jumpy), regardless of viewport width. Detecting by input
   capability (not width) correctly catches iPads in BOTH orientations (portrait 820px
   AND landscape 1180px), while real desktops with a mouse keep the fixed effect.
   Global override: only affects elements that actually have fixed set — no per-page edits. */
@media (hover: none) and (pointer: coarse) {
    .elementor-section,
    .elementor-column-wrap,
    .elementor-widget-wrap,
    .e-con,
    .e-con-inner,
    .elementor-element,
    .elementor-background-overlay {
        background-attachment: scroll !important;
    }
}
/* END Fixed-background tablet/mobile fix */

/* The cutout-text effect is handled entirely in includes/elementor-cutout-text.php
   (single-element background-clip:text). It works cross-browser incl. iOS, so no
   touch-specific override is needed here. */