/*
 Theme Name:   WoodMart Child
 Template:     woodmart
 Description:  Child theme for Dilan Jewels customisations.
 Author:       Dilan Jewels
 Version:      2.1.29
 Text Domain:  woodmart-child
*/

/* ---------- Dilan Jewels brand palette ---------- */
:root {
    --dilan-gold: #B89968;          /* antique gold — primary brand */
    --dilan-gold-dark: #C8A05D;     /* hover/active state — primary gold accent used site-wide */
    --dilan-gold-light: #D9C39A;    /* subtle backgrounds, dividers */
    --dilan-ivory: #FAF6EF;         /* page/section background */
    --dilan-charcoal: #2B2118;      /* body text */
    --dilan-brown: #3C2A1E;         /* secondary / dark accents */

    /* Luxury gold gradients — subtle metallic feel */
    --dilan-gold-gradient: linear-gradient(135deg, #D4AF37 0%, #B89968 50%, #97774A 100%);
    --dilan-gold-gradient-hover: linear-gradient(135deg, #97774A 0%, #B89968 50%, #D4AF37 100%);
    --dilan-gold-gradient-subtle: linear-gradient(135deg, #C9A961 0%, #A88A4F 100%);
    --dilan-gold-shimmer: linear-gradient(90deg, #B89968 0%, #E8D4A0 50%, #B89968 100%);

    /* Brand red — used for add-to-cart strip and selective accents */
    --dilan-red: #B5184D;
    --dilan-red-dark: #8A0F39;
    --dilan-red-gradient: linear-gradient(135deg, #C81E5C 0%, #B5184D 50%, #8A0F39 100%);

    /* Override WoodMart's CSS variables (theme uses these internally) */
    --wd-primary-color: #B89968;
    --wd-link-color: #B89968;
    --wd-link-color-hover: #97774A;
    --wd-alternative-color: #B89968;
    --btn-accented-bgcolor: #B89968;
    --btn-accented-bgcolor-hover: #97774A;
    --btn-accented-color: #FFFFFF;
    --btn-accented-color-hover: #FFFFFF;
}

/* Buttons, badges, sale tags */
.btn-color-primary,
.button.btn-color-primary,
.wd-button-wrapper .btn-color-primary,
.wd-buttons .button.alt,
.button.alt,
.added_to_cart,
.onsale,
.wd-product-label.onsale,
.wc-block-grid__product-onsale,
.wd-nav-product-cat .wd-active > a,
.woocommerce-MyAccount-navigation li.is-active a {
    background: var(--dilan-gold-gradient) !important;
    border-color: var(--dilan-gold-dark) !important;
    color: #FFFFFF !important;
}

.btn-color-primary:hover,
.button.btn-color-primary:hover,
.button.alt:hover,
.wd-buttons .button.alt:hover {
    background-color: var(--dilan-gold-dark) !important;
    border-color: var(--dilan-gold-dark) !important;
}

/* ---------- Gold gradient: buttons + accents ---------- */
.btn-color-primary,
.button.btn-color-primary,
.wd-buttons .button.alt,
.button.alt,
.woocommerce a.button.alt,
.single_add_to_cart_button,
.checkout-button,
.wd-button-wrapper a.btn {
    background: var(--dilan-gold-gradient) !important;
    background-size: 200% 200% !important;
    border: none !important;
    color: #FFFFFF !important;
    transition: background-position .6s ease, transform .2s ease, box-shadow .3s ease !important;
    background-position: 0% 50% !important;
    box-shadow: 0 2px 8px rgba(184, 153, 104, 0.25) !important;
}

.btn-color-primary:hover,
.button.btn-color-primary:hover,
.wd-buttons .button.alt:hover,
.button.alt:hover,
.woocommerce a.button.alt:hover,
.single_add_to_cart_button:hover,
.checkout-button:hover,
.wd-button-wrapper a.btn:hover {
    background-position: 100% 50% !important;
    transform: translateY(-1px);
    box-shadow: 0 6px 18px rgba(151, 119, 74, 0.35) !important;
    color: #FFFFFF !important;
}

/* Top header social icons: show Instagram, YouTube, Facebook, Pinterest (hide only X) */
.whb-top-bar .wd-social-icon.social-twitter {
    display: none !important;
}

/* Top announcement bar — light ivory background with dark text */
.whb-top-bar {
    background-color: #F5F1EA !important;
    background-image: none !important;
    color: var(--dilan-gold-dark) !important;
}
.whb-top-bar,
.whb-top-bar p,
.whb-top-bar strong,
.whb-top-bar a,
.whb-top-bar .wd-social-icon {
    color: var(--dilan-gold-dark) !important;
}
/* Social icons: dark for clear visibility on the ivory bar */
.whb-top-bar .wd-social-icon,
.whb-top-bar .wd-social-icon i,
.whb-top-bar .wd-social-icon svg {
    color: var(--dilan-charcoal) !important;
}
.whb-top-bar .wd-social-icon svg {
    fill: currentColor;
}
.whb-top-bar .wd-social-icon:hover,
.whb-top-bar .wd-social-icon:hover svg {
    color: var(--dilan-gold-dark) !important;
}
/* Force every inner section transparent so only the bar's fill shows (no darker/lighter segments) */
.whb-top-bar .whb-general-products,
.whb-top-bar .whb-row,
.whb-top-bar .whb-column,
.whb-top-bar .whb-col-left,
.whb-top-bar .whb-col-center,
.whb-top-bar .whb-col-right,
.whb-top-bar .wd-header-inner {
    background-color: transparent !important;
    background-image: none !important;
}
.whb-top-bar a {
    color: #FFFFFF !important;
}
.whb-top-bar,
.whb-top-bar p,
.whb-top-bar strong,
.whb-top-bar .html-block-content,
.whb-top-bar .wd-info-text {
    font-family: Georgia, "Cormorant Garamond", "Playfair Display", serif !important;
    font-size: 18px !important;
    font-weight: 500 !important;
    letter-spacing: .5px;
    line-height: 1.5 !important;
    color: var(--dilan-gold-dark) !important;
    text-shadow: none !important;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    text-rendering: optimizeLegibility;
}

/* ---------- Top bar marquee: scroll text right -> left ---------- */
.whb-top-bar .wd-header-text {
    overflow: hidden;
}
.whb-top-bar .wd-header-text > p {
    display: inline-block;
    white-space: nowrap;
    padding-left: 100%;          /* start fully off the right edge */
    margin: 0;
    text-align: left !important;
    animation: dilan-marquee 22s linear infinite;
}
/* pause on hover so people can read it */
.whb-top-bar .wd-header-text:hover > p {
    animation-play-state: paused;
}
@keyframes dilan-marquee {
    0%   { transform: translateX(0); }
    100% { transform: translateX(-100%); }
}

/* ---------- Reduce main navigation bar height ----------
   The row height comes from --wd-header-general-h (theme default 90px), applied as
   an explicit height on .whb-general-header-inner — so we must override the variable,
   not just min-height. */
@media (min-width: 1025px) {
    /* Lock the nav band to 64px in EVERY state — normal, sticky-on-scroll, and hover —
       so the band never jumps between small/large. */
    .whb-general-header,
    .whb-general-header.whb-sticked,
    .whb-sticked .whb-general-header,
    .whb-scroll-stick .whb-general-header,
    .whb-general-header:hover {
        --wd-header-general-h: 64px !important;
    }
    .whb-general-header .whb-flex-row,
    .whb-general-header-inner,
    .whb-general-header .whb-column,
    .whb-general-header:hover .whb-flex-row,
    .whb-general-header:hover .whb-general-header-inner,
    .whb-sticked .whb-general-header .whb-flex-row,
    .whb-scroll-stick .whb-general-header .whb-flex-row,
    .whb-scroll-stick .whb-general-header-inner {
        height: 64px !important;
        min-height: 64px !important;
        max-height: 64px !important;
    }
    /* The header is position:fixed, so WoodMart reserves space below it via .whb-header
       padding-top. It reserved 132px (its original 90px nav + 42px promo bar); since the
       nav is now 64px the header is 106px, so match the spacer to kill the 26px white gap. */
    .whb-header {
        padding-top: 106px !important;
        /* On refresh the fixed header paints a frame after the body, so the reserved 106px
           strip flashed white and the bar looked like it "dropped in". Pre-paint that strip
           with the header's own colours — ivory top bar (42px) + white nav (64px) — so there's
           nothing to flash: the bar simply paints over an identical-looking strip. */
        background:
            linear-gradient(#F5F1EA 0, #F5F1EA 42px, #ffffff 42px, #ffffff 106px) top left / 100% 106px no-repeat,
            #ffffff !important;
    }
}
.whb-general-header .site-logo img,
.whb-general-header .wd-logo img {
    max-height: 58px !important;   /* bigger logo, within the locked 64px band */
    width: auto !important;
}
/* Logo cache-bust: the IMG_4462 logo was white-flattened on the server, but browsers
   cache the image for ~30 days, so the old off-white version keeps showing. Point the
   logo at a versioned URL the browser has never cached so it fetches the fresh white one.
   (The header height is locked above, so this swap can't cause a reflow/jump.)
   If the logo is ever changed in the Header Builder, update this URL or remove this rule. */
.whb-general-header .site-logo img,
.whb-general-header .wd-logo img {
    content: url('/wp-content/uploads/2026/06/IMG_4462-400x173.png.webp?v=2') !important;
}

/* Side gaps on the nav — desktop only (mobile/tablet uses WoodMart's own header) */
@media (min-width: 1025px) {
    .whb-general-header .whb-col-left {
        padding-left: 2% !important;
    }
    .whb-general-header .whb-col-right {
        padding-right: 5% !important;
    }
}
/* Mobile/tablet: keep the cart off the right edge */
@media (max-width: 1024px) {
    .whb-general-header .whb-col-right,
    .whb-mobile-header .whb-col-right,
    .whb-general-header .wd-header-cart {
        padding-right: 14px !important;
    }
}

/* Remove the empty band between the nav and the hero on the home page
   (WoodMart applies .wd-content-layout { padding-block: 40px }). */
.home .wd-content-layout {
    padding-top: 0 !important;
}

/* Remove the white gap between the top banner and the nav row.
   NOTE: do not zero out padding/height on .whb-header or .whb-main-header —
   the sticky-real header reserves its height there, and removing it makes the
   hero slide up underneath the nav. */
.whb-top-bar {
    margin-bottom: 0 !important;
    border-bottom: 0 !important;
}
.whb-general-header {
    margin-top: 0 !important;
    border-top: 0 !important;
}

/* Keep the navigation always visible.
   - In-flow main header never hides — fixes the nav disappearing on page load
     (previously you had to scroll up to reveal it).
   - The fixed sticky clone stays put while scrolled, scoped to .whb-sticked so it
     never covers the top of the page. */
.whb-hide-on-scroll .whb-main-header,
.whb-scroll-slide.whb-hide-on-scroll.whb-sticked .whb-main-header,
.whb-scroll-stick.whb-hide-on-scroll.whb-sticked .whb-main-header,
.whb-sticked .whb-clone.whb-hide-on-scroll,
.whb-clone.whb-hide-on-scroll.whb-sticked {
    transform: none !important;
    animation: none !important;
}

/* Force the main nav menu to stay on one line (no wrapping) */
.whb-general-header .wd-nav-main,
.whb-general-header .wd-nav.wd-nav-header {
    flex-wrap: nowrap !important;
    white-space: nowrap !important;
}
.whb-general-header .wd-nav-main > li,
.whb-general-header .wd-nav.wd-nav-header > li {
    white-space: nowrap !important;
    flex: 0 0 auto !important;
}
.whb-general-header .wd-nav-main > li > a,
.whb-general-header .wd-nav.wd-nav-header > li > a {
    white-space: nowrap !important;
}

/* Subtle shadow on the main nav menu + tools text */
.whb-general-header .wd-nav-main > li > a,
.whb-general-header .item-level-0 > a,
.whb-general-header .wd-tools-element > a,
.whb-general-header .wd-tools-text,
.whb-general-header .account-text {
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.25) !important;
}

/* Section title underline — gold accent (WoodMart-specific only) */
.wd-section-title:after,
.wd-title-style-default:after,
.title-design-underline:after,
.title-design-stroke:after,
.title-design-with-line:after,
.wd-section-title .liner-continer:after {
    background: var(--dilan-gold-shimmer) !important;
    background-color: var(--dilan-gold) !important;
    border-color: var(--dilan-gold) !important;
}

/* Shorten the decorative side lines in section titles to roughly half length */
.wd-section-title .liner-continer,
.title-shop-section .liner-continer,
.wd-section-title .liner {
    flex: 0 1 auto !important;
    max-width: 70px !important;
    width: 70px !important;
}

/* Underline color on the divider line elements WoodMart inserts in section titles */
.wd-section-title .liner-continer,
.title-shop-section .liner-continer,
.wd-section-title hr,
.wd-section-title .line {
    border-color: var(--dilan-gold) !important;
    background-color: transparent !important;
}

/* Subtitle text above section titles (was green: "WOODMART COLLECTIONS") */
.wd-subtitle,
.title-subtitle,
.wd-section-title .subtitle,
.wd-section-title > span:first-child,
.title .subtitle,
.subtitle,
.wd-tab-color-default .wd-nav-tabs .active a,
.wd-nav-tabs li.active a {
    color: var(--dilan-gold) !important;
}

/* Hard-kill any remaining green accent colors WoodMart inlines */
[style*="83B735"],
[style*="#83b735"],
[style*="83b735"] {
    color: var(--dilan-gold) !important;
    background-color: var(--dilan-gold) !important;
    border-color: var(--dilan-gold) !important;
}

/* All submit / generic buttons (newsletter signup, contact forms, comments, search) */
input[type="submit"],
button[type="submit"],
.mc4wp-form input[type="submit"],
.mc4wp-form button[type="submit"],
.mc4wp-form-fields input[type="submit"],
.subscribe-form input[type="submit"],
.subscribe-form .button,
.subscribe-form .btn,
.wpcf7-submit,
.wd-newsletter .btn,
.wd-newsletter-form button,
.wd-newsletter-form input[type="submit"],
.searchsubmit,
#searchsubmit,
.btn,
.button:not(.added_to_cart) {
    background: var(--dilan-gold-gradient) !important;
    background-size: 200% 200% !important;
    background-position: 0% 50% !important;
    border: none !important;
    color: #FFFFFF !important;
    transition: background-position .6s ease, transform .2s ease, box-shadow .3s ease !important;
}

input[type="submit"]:hover,
button[type="submit"]:hover,
.mc4wp-form input[type="submit"]:hover,
.mc4wp-form button[type="submit"]:hover,
.subscribe-form input[type="submit"]:hover,
.subscribe-form .button:hover,
.wpcf7-submit:hover,
.wd-newsletter .btn:hover,
.wd-newsletter-form button:hover,
.btn:hover,
.button:not(.added_to_cart):hover {
    background-position: 100% 50% !important;
    color: #FFFFFF !important;
    transform: translateY(-1px);
    box-shadow: 0 6px 18px rgba(151, 119, 74, 0.35) !important;
}

/* Blog post category labels (DESIGN TRENDS / DECORATION / INSPIRATION badges) */
.post-categories,
.post-categories a,
.cat-labels,
.cat-labels a,
.wd-post-cat,
.wd-post-cat a,
.entry-meta-list .cat-links a,
.wd-entities-cat a,
.wp-block-post-terms a,
.entry-category a,
.cat-link {
    background-color: var(--dilan-gold) !important;
    background: var(--dilan-gold-gradient) !important;
    color: #FFFFFF !important;
    border-color: var(--dilan-gold) !important;
}

.post-categories a:hover,
.cat-labels a:hover,
.wd-post-cat a:hover,
.wd-entities-cat a:hover {
    background: var(--dilan-gold-gradient-hover) !important;
    color: #FFFFFF !important;
}

/* Continue Reading / Read More links */
.read-more,
.read-more a,
.more-link,
.continue-reading,
.continue-reading a,
.wd-post-readmore,
.wd-post-readmore a,
.wp-block-read-more {
    color: var(--dilan-gold) !important;
    border-bottom-color: var(--dilan-gold) !important;
}

.read-more:hover,
.read-more a:hover,
.more-link:hover,
.continue-reading:hover,
.continue-reading a:hover,
.wd-post-readmore:hover,
.wd-post-readmore a:hover {
    color: var(--dilan-gold-dark) !important;
}

/* Sale / onsale badge — gradient pill */
.onsale,
.wd-product-label.onsale,
span.onsale {
    background: var(--dilan-gold-gradient) !important;
    color: #FFFFFF !important;
    border: none !important;
    font-weight: 600;
}

/* Footer top border — gold gradient divider */
.site-footer,
.footer-container {
    border-top: 3px solid transparent;
    border-image: var(--dilan-gold-gradient) 1;
}

/* ---------- Product card "Add to Cart" bar (was green) ---------- */
.product-element-bottom .add-to-cart-loop,
.wd-add-btn > a,
.wd-add-btn.wd-style-bg-btn > a,
.products .product .button.wd-add-btn-replace,
.product-grid-item .wd-add-btn > a,
.product-grid-item .add_to_cart_button,
.product-grid-item .button.product_type_simple,
.product-grid-item .button.product_type_variable,
.product-grid-item .button.product_type_grouped,
.products .add_to_cart_button,
.products .button.product_type_simple,
.products .button.product_type_variable,
.wd-buttons.wd-pos-r-t .add_to_cart_button,
.hover-action-button .add_to_cart_button {
    background: #B89968 !important;
    color: #FFFFFF !important;
    border: none !important;
    transition: background-color .3s ease !important;
}

.product-element-bottom .add-to-cart-loop:hover,
.wd-add-btn > a:hover,
.wd-add-btn.wd-style-bg-btn > a:hover,
.products .product .button.wd-add-btn-replace:hover,
.product-grid-item .wd-add-btn > a:hover,
.product-grid-item .add_to_cart_button:hover,
.products .add_to_cart_button:hover,
.wd-buttons.wd-pos-r-t .add_to_cart_button:hover,
.hover-action-button .add_to_cart_button:hover {
    background: #97774A !important;
    color: #FFFFFF !important;
}

/* Cart icon inside the strip — ensure white */
.product-element-bottom .add-to-cart-loop svg,
.wd-add-btn svg,
.product-grid-item .add_to_cart_button svg {
    fill: #FFFFFF !important;
    color: #FFFFFF !important;
}

/* Links, prices, hover states */
a:hover,
.wd-nav > li:hover > a,
.wd-nav > li.current-menu-item > a,
.product .price,
.woocommerce-Price-amount,
.product-title:hover,
.wd-entities-title a:hover,
.wd-tools-element:hover,
.wd-cart-number,
.wd-header-cart .wd-tools-icon:hover {
    color: var(--dilan-gold) !important;
}

/* Form focus, dividers, accent borders */
input:focus,
textarea:focus,
select:focus,
.select2-container--default.select2-container--focus .select2-selection {
    border-color: var(--dilan-gold) !important;
    box-shadow: 0 0 0 1px var(--dilan-gold-light) !important;
}

/* WoodMart green checkmarks / progress / loader */
.woocommerce-message,
.woocommerce-info {
    border-top-color: var(--dilan-gold) !important;
}
.woocommerce-message::before,
.woocommerce-info::before {
    color: var(--dilan-gold) !important;
}

/* ---------- SHOP BY CATEGORIES section + carousel background ---------- */
.elementor-element-4d5ed99 {
    background-color: #F7F6F2 !important;
    padding-top: 40px !important;
    padding-bottom: 40px !important;
}
.elementor-element-4d5ed99 .wd-cats.wd-carousel-container,
.elementor-element-4d5ed99 .wd-carousel {
    background-color: transparent !important;
}

/* ---------- SHOP BY COLLECTION section — same ivory background ---------- */
.elementor-element-46e3ec0 {
    background-color: #F7F6F2 !important;
    padding-top: 40px !important;
    padding-bottom: 40px !important;
}
.elementor-element-46e3ec0 .wd-cats.wd-carousel-container,
.elementor-element-46e3ec0 .wd-carousel {
    background-color: transparent !important;
}
/* Smaller category label text + narrower label pill */
.elementor-element-4d5ed99 .wd-cat-content .wd-entities-title {
    font-size: 13px !important;
    line-height: 1.2 !important;
    margin: 0 !important;
}
/* Hide the "0 products" count under category labels */
.elementor-element-4d5ed99 .wd-cat-content .wd-cat-count {
    display: none !important;
}
.elementor-element-4d5ed99 .wd-cat-content {
    max-width: 50% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding: 7px 14px !important;
}

/* ---------- "View All" buttons under category / collection carousels ---------- */
.dilan-view-all-wrap {
    text-align: center;
    margin-top: 28px;
}
.dilan-view-all-btn {
    display: inline-block;
    padding: 6px 30px;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 17px;
    font-weight: 700;
    letter-spacing: 0.02em;
    color: #FFFFFF !important;
    background: var(--dilan-gold-gradient) !important;
    background-size: 200% 200% !important;
    background-position: 0% 50% !important;
    border-radius: 50px;
    transition: background-position .6s ease, transform .2s ease, box-shadow .3s ease;
    box-shadow: 0 3px 10px rgba(184, 153, 104, 0.30);
}
.dilan-view-all-btn:hover {
    color: #FFFFFF !important;
    background-position: 100% 50% !important;
    transform: translateY(-1px);
    box-shadow: 0 6px 18px rgba(151, 119, 74, 0.40);
}
@media (max-width: 768px) {
    .dilan-view-all-btn {
        font-size: 13px;
        padding: 7px 22px;
    }
    .dilan-view-all-wrap { margin-top: 14px; }
}

/* ---------- Budget / price banners — label at BOTTOM CENTER ---------- */
.dilan-budget-row .wrapper-content-banner,
.dilan-budget-row .content-banner,
.dilan-budget-row .content-banner.text-left,
.dilan-budget-row .banner-inner {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;        /* horizontal centre */
    justify-content: flex-end !important;  /* push to the bottom */
    text-align: center !important;
    width: 100% !important;
}
.dilan-budget-row .wrapper-content-banner {
    position: absolute !important;
    inset: 0 !important;
    transform: none !important;
    padding: 0 10px 22px !important;
}
.dilan-budget-row .banner-title {
    font-size: 20px !important;
    line-height: 1.2 !important;
    text-align: center !important;
    width: 100% !important;
}
/* Responsive: budget banners to fewer columns on tablet/mobile.
   The row is forced to display:flex/nowrap by the mu-plugin, so overriding grid
   columns alone does nothing — we force it back to a grid (by element ID) and
   reset the flex children so the grid controls the column count. */
.elementor-element-c4822e7 > * {
    min-width: 0 !important;
}
/* Budget banners: 2 per row on tablet/mobile (two-two layout).
   flex-wrap + 50% children forces 2-up whether the row renders as flex or grid. */
@media (max-width: 900px) {
    .elementor-element-c4822e7 {
        display: flex !important;
        flex-wrap: wrap !important;
        grid-template-columns: repeat(2, 1fr) !important;
        --e-con-grid-template-columns: repeat(2, 1fr) !important;
    }
    .elementor-element-c4822e7 > * {
        flex: 0 0 50% !important;
        width: 50% !important;
        max-width: 50% !important;
        min-width: 0 !important;
        height: auto !important;
    }
    .dilan-budget-row .banner-title { font-size: 14px !important; }
}

/* ---------- SHOP BY CRAFT — Swiper coverflow (mortantra-style) ---------- */
.dilan-cf {
    width: 100%;
    max-width: 1320px;
    margin: 0 auto;
    padding: 24px 0 12px;
    position: relative;
    overflow: visible;
}
.dilan-cf .swiper-wrapper {
    align-items: center;
}
.dilan-cf .swiper-slide {
    width: 300px;
    height: 420px;
    border-radius: 16px;
    overflow: hidden;
    box-shadow: 0 8px 26px rgba(0, 0, 0, 0.14);
    transition: box-shadow .3s ease;
    background: #f4f1ec;
}
.dilan-cf .swiper-slide-active {
    box-shadow: 0 26px 60px rgba(0, 0, 0, 0.30);
}
.dilan-cf-slide {
    display: block;
    width: 100%;
    height: 100%;
    position: relative;
    text-decoration: none;
}
.dilan-cf-slide img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.dilan-cf-label {
    position: absolute;
    left: 50%;
    bottom: 20px;
    transform: translateX(-50%);
    background: rgba(43, 33, 24, 0.72);
    color: #fff;
    padding: 8px 18px;
    border-radius: 6px;
    font-family: Georgia, "Cormorant Garamond", serif;
    font-weight: 600;
    font-size: 13px;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    white-space: nowrap;
    text-shadow: 0 1px 4px rgba(0, 0, 0, 0.45);
}
.dilan-cf-nav {
    display: none !important;   /* hide arrows — coverflow auto-rotates and supports swipe */
}
.dilan-cf-pagination {
    display: none !important;   /* hide the long row of dots under the coverflow */
}
@media (max-width: 1024px) {
    .dilan-cf .swiper-slide { width: 250px; height: 350px; }
}
@media (max-width: 600px) {
    .dilan-cf .swiper-slide { width: 200px; height: 290px; }
    .dilan-cf-nav { width: 38px; height: 38px; font-size: 22px; }
}

/* Force category / collection / craft labels onto a single line (ID beats all) */
.elementor-element-4d5ed99 .wd-cat .wd-entities-title,
.elementor-element-4d5ed99 .wd-cat h3.wd-entities-title,
.elementor-element-46e3ec0 .wd-cat .wd-entities-title,
.elementor-element-46e3ec0 .wd-cat h3.wd-entities-title,
.elementor-element-404105d .wd-cat .wd-entities-title,
.elementor-element-404105d .wd-cat h3.wd-entities-title {
    white-space: nowrap !important;
    max-width: none !important;
    overflow: visible !important;
    text-overflow: clip !important;
}
/* Mobile: shrink labels so a long name fits on one line inside the narrower card */
@media (max-width: 768px) {
    .elementor-element-4d5ed99 .wd-cat .wd-entities-title,
    .elementor-element-4d5ed99 .wd-cat h3.wd-entities-title,
    .elementor-element-46e3ec0 .wd-cat .wd-entities-title,
    .elementor-element-46e3ec0 .wd-cat h3.wd-entities-title,
    .elementor-element-404105d .wd-cat .wd-entities-title,
    .elementor-element-404105d .wd-cat h3.wd-entities-title,
    .dilan-cf-label {
        font-size: 10px !important;
        letter-spacing: 0.06em !important;
        padding: 6px 10px !important;
    }
}

/* ---------- Floating WhatsApp chat button (bottom-left) ---------- */
.dilan-wa-float {
    position: fixed;
    bottom: 22px;
    left: 22px;
    z-index: 9998;
    width: 58px;
    height: 58px;
    border-radius: 50%;
    background: #25D366;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #FFFFFF !important;
    text-decoration: none !important;
    box-shadow: 0 6px 18px rgba(0, 0, 0, 0.22);
    transition: transform .2s ease, box-shadow .3s ease, background .2s ease;
}
.dilan-wa-float:hover {
    background: #1ebe5d;
    transform: scale(1.07);
    box-shadow: 0 10px 26px rgba(0, 0, 0, 0.28);
    color: #FFFFFF !important;
}
.dilan-wa-float svg {
    width: 34px;
    height: 34px;
    display: block;
}
@media (max-width: 768px) {
    /* On mobile the bottom sticky toolbar covers the corner — hide WA by default,
       only reveal when the user scrolls into the footer. Also lifted higher. */
    .dilan-wa-float {
        display: none;
        bottom: 90px;          /* above the mobile bottom toolbar */
        left: 16px;
        width: 52px;
        height: 52px;
    }
    .dilan-wa-float svg { width: 30px; height: 30px; }
    .dilan-wa-float.dilan-wa-show { display: flex; }
}

/* Widen the WoodMart dropdown panel for our 4-column mega menu
   Anchor to viewport (position: fixed) so it stays centered regardless of
   whether the trigger (CATEGORIES / COLLECTIONS) sits left or right of center. */
.wd-nav-main > li > .wd-dropdown-menu.dilan-mega-dropdown,
.wd-nav-main > li > .wd-dropdown.dilan-mega-dropdown,
.wd-nav > li > .wd-dropdown-menu.dilan-mega-dropdown {
    position: fixed !important;
    top: var(--dilan-mega-top, 120px) !important;
    left: 50% !important;
    right: auto !important;
    transform: translateX(-50%) !important;
    width: min(94vw, 900px) !important;
    max-width: 900px !important;
    padding: 0 !important;
    margin: 0 !important;
}
.dilan-mega-dropdown .wd-sub-menu,
.dilan-mega-dropdown .sub-menu {
    background: #fff;
    width: 100%;
}
/* Invisible hover bridge so the cursor can cross the gap from menu link → fixed panel
   without the dropdown closing. */
.wd-nav-main > li:hover > .wd-dropdown-menu.dilan-mega-dropdown::before,
.wd-nav-main > li:hover > .wd-dropdown.dilan-mega-dropdown::before {
    content: "";
    position: absolute;
    top: -30px;
    left: 0;
    right: 0;
    height: 30px;
    background: transparent;
}

/* ---------- Category Archive: "Shop By Style" section (Mortantra-style cards) ---------- */
/* Hide WoodMart's entire page-title banner (the demo-furniture hero) on the
   Shop page AND product category archives — the "Explore Categories" cards grid
   takes its place at the top of the page. */
.tax-product_cat .wd-page-title,
.tax-product_cat .wd-nav-product-cat,
.tax-pa_collection .wd-page-title,
.tax-pa_collection .wd-nav-product-cat,
.woocommerce-shop .wd-page-title,
.post-type-archive-product .wd-page-title,
.woocommerce-shop .wd-nav-product-cat,
.post-type-archive-product .wd-nav-product-cat {
    display: none !important;
}

/* Widen the shop / category / collection content area — the default container
   leaves large empty margins on big screens. Use most of the viewport width. */
.woocommerce-shop .wd-page-content > .container,
.tax-product_cat .wd-page-content > .container,
.tax-pa_collection .wd-page-content > .container,
.post-type-archive-product .wd-page-content > .container,
.woocommerce-shop .wd-content-layout.container,
.tax-product_cat .wd-content-layout.container,
.tax-pa_collection .wd-content-layout.container,
.post-type-archive-product .wd-content-layout.container {
    max-width: min(1600px, 94vw) !important;
    width: 100% !important;
}

/* Align product cards: titles of varying length pushed the price to different
   heights. Give the title a fixed 2-line height (non-invasive — no card
   restructuring) so the price below lands on a consistent baseline. */
.wd-products .product-grid-item .wd-entities-title,
ul.products li.product .wd-entities-title {
    min-height: 2.8em !important;          /* room for up to 2 lines */
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    line-height: 1.4 !important;
    margin: 12px 0 6px !important;
}
.wd-products .product-grid-item .price,
ul.products li.product .price,
.wd-products .product-grid-item .product-rating-price,
ul.products li.product .product-rating-price {
    text-align: center !important;
    justify-content: center !important;
    margin-bottom: 18px !important;   /* lift price off the card's bottom edge */
    padding-bottom: 2px !important;
}
/* Sale "-XX%" badge: keep it fully inside the image (it was clipping at top) */
.wd-products .product-element-top .product-labels,
ul.products li.product .product-element-top .product-labels {
    top: 12px !important;
    inset-inline-start: 12px !important;
    inset-inline-end: auto !important;
    margin: 0 !important;
    z-index: 6 !important;
}
.wd-products .product-labels .onsale,
ul.products li.product .product-labels .onsale,
.product-labels .onsale {
    margin: 0 !important;
    background-color: var(--dilan-gold-dark, #C8A05D) !important;
    color: #FFFFFF !important;
    border: none !important;
    font-weight: 700 !important;
    letter-spacing: 0.5px !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.22) !important;
}
/* The round-shape sale badge keeps its circle but solid gold fill */
.product-labels.labels-rounded .onsale,
.product-labels .onsale.wd-shape-round {
    background-color: var(--dilan-gold-dark, #C8A05D) !important;
    color: #FFFFFF !important;
}

.dilan-cat-style {
    /* Full-width band inserted before .wd-content-layout — spans the page above
       the filter sidebar + product grid. Inner blocks are centred at the SAME
       width as the shop content below, so cards line up and the band reads centred. */
    width: 100%;
    clear: both;
    margin: 0 auto 46px;
    padding: 6px 0 38px;
    box-sizing: border-box;
}
.dilan-cat-carousel,
.dilan-cat-style-head,
.dilan-cat-style-desc {
    max-width: min(1600px, 94vw);
    margin-left: auto;
    margin-right: auto;
}
/* Header matches the home "NEW ARRIVALS" section title: gold diamond + rule
   lines + gold uppercase Georgia text, for visual symmetry across the site. */
.dilan-cat-style-head {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 18px;
    margin: 0 0 38px;
}
.dilan-cat-style-orn {
    width: 9px;
    height: 9px;
    flex: 0 0 auto;
    background: var(--dilan-gold-dark, #C8A05D);
    transform: rotate(45deg);   /* diamond */
    font-size: 0;               /* hide any text node */
}
.dilan-cat-style-rule {
    display: inline-block;
    width: 70px;
    height: 1px;
    background: var(--dilan-gold-dark, #C8A05D);
    opacity: 0.85;
}
.dilan-cat-style-title {
    margin: 0;
    font-family: Georgia, "Cormorant Garamond", "Playfair Display", serif;
    font-size: clamp(17px, 1.6vw, 20px);
    font-weight: 500;
    letter-spacing: 0.15em;
    text-transform: uppercase;
    color: var(--dilan-gold-dark, #C8A05D);
}
/* ---- Carousel (4 cards per view + arrows) ---- */
.dilan-cat-carousel {
    position: relative;
    padding: 4px 0;
}
.dilan-cat-carousel .swiper-slide {
    height: auto;
}
/* Prev/next arrows */
.dilan-cat-nav {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 6;
    width: 44px;
    height: 44px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #FFFFFF;
    color: var(--dilan-gold-dark, #C8A05D);
    border: 1px solid rgba(151, 119, 74, 0.25);
    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.12);
    font-size: 26px;
    line-height: 1;
    cursor: pointer;
    user-select: none;
    transition: background 0.2s ease, color 0.2s ease, opacity 0.2s ease;
}
.dilan-cat-nav:hover {
    background: var(--dilan-gold-dark, #C8A05D);
    color: #FFFFFF;
}
.dilan-cat-prev { left: -10px; }
.dilan-cat-next { right: -10px; }
.dilan-cat-nav.swiper-button-disabled { opacity: 0; pointer-events: none; }

.dilan-cat-style-card {
    display: block;
    position: relative;
    aspect-ratio: 5 / 5.4;   /* ~10% shorter than the previous 5/6 */
    border-radius: 8px;
    overflow: hidden;
    text-decoration: none;
    background: #F5F1EA;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.08);
    transition: transform 0.25s ease, box-shadow 0.25s ease;
}
.dilan-cat-style-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.14);
}
.dilan-cat-style-img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.4s ease;
}
.dilan-cat-style-card:hover .dilan-cat-style-img {
    transform: scale(1.04);
}
.dilan-cat-style-img-placeholder {
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, #E8DFCB, #C8A05D);
    color: #FFF;
    font-family: Georgia, serif;
    font-size: 48px;
    font-weight: 500;
}
/* Collection cards: Dilan logo centered on a soft ivory panel */
.dilan-cat-style-img-logo {
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, #FBF8F1 0%, #EFE6D2 100%);
    padding: 18%;
    box-sizing: border-box;
}
.dilan-cat-style-img-logo img {
    width: 100%;
    max-width: 170px;
    height: auto;
    object-fit: contain;
    transition: transform 0.4s ease;
}
.dilan-cat-style-card:hover .dilan-cat-style-img-logo img {
    transform: scale(1.05);
}
.dilan-cat-style-name {
    position: absolute;
    bottom: 14px;
    left: 14px;
    right: 14px;
    color: #FFF;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 18px;
    font-weight: 500;
    letter-spacing: 0.5px;
    text-shadow: 0 1px 6px rgba(0, 0, 0, 0.55);
    pointer-events: none;
}
.dilan-cat-style-desc {
    margin: 36px auto 0;
    max-width: 1080px;
    padding: 0 10px;
    text-align: center;
    color: #555;
    font-size: 15px;
    line-height: 1.75;
    font-family: Georgia, "Times New Roman", serif;
}
.dilan-cat-style-desc p { margin: 0 0 10px; }
@media (max-width: 1024px) {
    .dilan-cat-style-name { font-size: 16px; }
    .dilan-cat-prev { left: 0; }
    .dilan-cat-next { right: 0; }
}
@media (max-width: 600px) {
    .dilan-cat-style { padding: 0 12px; margin: 16px auto 28px; }
    .dilan-cat-style-rule { width: 30px; }
    .dilan-cat-style-title { font-size: 18px; }
    .dilan-cat-style-name { font-size: 14px; bottom: 10px; left: 10px; right: 10px; }
    .dilan-cat-style-desc { font-size: 14px; }
    .dilan-cat-nav { width: 36px; height: 36px; font-size: 22px; }
}

/* ---------- CATEGORIES landing page (/categories/) ---------- */
/* Strip the demo banner + blog sidebar; make content full width */
.dilan-categories-page .wd-page-title { display: none !important; }
.dilan-categories-page .wd-sidebar,
.dilan-categories-page .sidebar-container { display: none !important; }
.dilan-categories-page .wd-content-layout { display: block !important; }
.dilan-categories-page .wd-content-area {
    width: 100% !important;
    max-width: 100% !important;
    flex: 0 0 100% !important;
}
.dilan-cat-page {
    max-width: min(1500px, 94vw);
    margin: 10px auto 50px;
}
.dilan-cat-page-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 18px;
}
@media (max-width: 1024px) { .dilan-cat-page-grid { grid-template-columns: repeat(3, 1fr); } }
@media (max-width: 600px)  { .dilan-cat-page-grid { grid-template-columns: repeat(2, 1fr); gap: 12px; } }

/* ---------- Hide CURCY's built-in switcher (our gold pill drives conversion) ----------
   Price conversion is server-side and unaffected; this only removes CURCY's own
   switcher UI so it doesn't duplicate the Dilan currency pill. */
.wmc-currency-wrapper,
.wmc-shortcode,
.wmc-list-currencies,
.wmc-sub-currency,
.wmc-price-switcher,
.woo-multi-currency,
.widget_wmc_widget,
.widget_wmc_widget_rates,
.woocommerce-currency-switcher-form {
    display: none !important;
}

/* ---------- Dilan Currency Floating Button (flag + INR + caret, white pill) ---------- */
.dilan-currency-float {
    position: fixed !important;
    right: 20px !important;
    left: auto !important;
    top: 200px !important;
    bottom: auto !important;
    z-index: 9998;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 12px 18px;
    background: #FFFFFF !important;
    background-color: #FFFFFF !important;
    color: #1a1a1a !important;
    border: 1px solid #C9C9C9 !important;
    border-radius: 12px !important;
    /* Visible card base — outer grey ring + soft drop, so the pill never blends into white */
    box-shadow:
        0 0 0 6px rgba(0, 0, 0, 0.04),
        0 0 0 7px rgba(0, 0, 0, 0.10),
        0 2px 6px rgba(0, 0, 0, 0.14),
        0 12px 28px rgba(0, 0, 0, 0.18) !important;
    -webkit-appearance: none !important;
    appearance: none !important;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
    font-size: 15px;
    font-weight: 600;
    letter-spacing: 0.2px;
    line-height: 1;
    cursor: pointer;
    user-select: none;
    transition: transform 0.2s ease, box-shadow 0.2s ease, background 0.2s ease;
    outline: none;
}
.dilan-currency-float:hover {
    transform: translateY(-2px);
    border-color: #A8A8A8 !important;
    box-shadow:
        0 0 0 6px rgba(0, 0, 0, 0.06),
        0 0 0 7px rgba(0, 0, 0, 0.12),
        0 4px 10px rgba(0, 0, 0, 0.18),
        0 16px 36px rgba(0, 0, 0, 0.22) !important;
    background: #FFFFFF !important;
    background-color: #FFFFFF !important;
}
.dilan-currency-float:focus-visible {
    box-shadow: 0 0 0 3px rgba(200, 160, 93, 0.45), 0 6px 18px rgba(0, 0, 0, 0.12);
}
.dilan-currency-float .dilan-currency-flag {
    display: inline-flex;
    width: 22px;
    height: 15px;
    border-radius: 2px;
    overflow: hidden;
    box-shadow: none;
    background: transparent;
    flex-shrink: 0;
}
.dilan-currency-float .dilan-currency-flag svg {
    display: block;
    width: 100%;
    height: 100%;
}
.dilan-currency-float .dilan-currency-code {
    font-size: 15px;
    font-weight: 600;
    color: #1a1a1a;
}
.dilan-currency-float .dilan-currency-caret {
    display: inline-flex;
    align-items: center;
    color: #999;
    margin-left: 2px;
}
@media (max-width: 768px) {
    /* Compact pill tucked into the top-right corner so it stops covering
       the middle of every section as you scroll. */
    .dilan-currency-float {
        right: 10px !important;
        left: auto !important;
        top: 104px !important;
        bottom: auto !important;
        padding: 4px 8px !important;
        gap: 4px !important;
        font-size: 11px !important;
        border-radius: 40px !important;
    }
    .dilan-currency-float .dilan-currency-flag { width: 15px !important; height: 10px !important; }
    .dilan-currency-float .dilan-currency-code { font-size: 11px !important; }
    .dilan-currency-float .dilan-currency-caret svg { width: 12px !important; height: 12px !important; }
}
.dilan-currency-float .dilan-currency-flag-img,
.dilan-currency-item .dilan-currency-flag-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
/* Inline-SVG flag */
.dilan-currency-flag-svg {
    display: block;
    width: 100%;
    height: 100%;
    line-height: 0;
}
.dilan-currency-flag-svg svg {
    display: block;
    width: 100%;
    height: 100%;
}

/* ---------- Currency Drawer ---------- */
.dilan-currency-backdrop {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.35);
    z-index: 99998;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.25s ease;
}
.dilan-currency-backdrop.is-open {
    opacity: 1;
    pointer-events: auto;
}
body.dilan-currency-locked { overflow: hidden; }

.dilan-currency-drawer {
    position: fixed;
    top: 0;
    right: 0;
    height: 100vh;
    width: min(380px, 100vw);
    background: #FFFFFF;
    z-index: 99999;
    box-shadow: -12px 0 32px rgba(0, 0, 0, 0.18);
    transform: translateX(105%);
    transition: transform 0.32s cubic-bezier(0.2, 0.8, 0.2, 1);
    display: flex;
    flex-direction: column;
    overflow: hidden;
}
.dilan-currency-drawer.is-open { transform: translateX(0); }

.dilan-currency-drawer-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 22px 24px;
    border-bottom: 1px solid #EEE;
    flex-shrink: 0;
}
.dilan-currency-drawer-title {
    margin: 0;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 17px;
    font-weight: 700;
    letter-spacing: 1.2px;
    color: #1a1a1a;
}
.dilan-currency-close {
    background: none;
    border: 0;
    padding: 6px;
    cursor: pointer;
    color: #333;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 6px;
    transition: background 0.15s ease, color 0.15s ease;
}
.dilan-currency-close:hover { background: #F5F1EA; color: var(--dilan-gold-dark, #C8A05D); }

.dilan-currency-list {
    list-style: none;
    margin: 0;
    padding: 0;
    overflow-y: auto;
    flex: 1;
}
.dilan-currency-item {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 16px 24px;
    border-bottom: 1px solid #F0F0F0;
    cursor: pointer;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 16px;
    letter-spacing: 0.5px;
    color: #666;
    background: #FFFFFF;
    transition: background 0.15s ease, color 0.15s ease;
}
.dilan-currency-item:hover,
.dilan-currency-item:focus-visible {
    background: #FAF7F1;
    color: var(--dilan-gold-dark, #C8A05D);
    outline: none;
}
.dilan-currency-item.is-selected {
    background: #F5F1EA;
    color: var(--dilan-gold-dark, #C8A05D);
    font-weight: 600;
}
.dilan-currency-item .dilan-currency-flag {
    display: inline-flex;
    width: 28px;
    height: 19px;
    border-radius: 2px;
    overflow: hidden;
    box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.1);
    flex-shrink: 0;
}
.dilan-currency-item .dilan-currency-flag-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.dilan-currency-item-code { font-weight: inherit; }

@media (max-width: 480px) {
    .dilan-currency-drawer { width: 100vw; }
    .dilan-currency-drawer-head { padding: 18px 18px; }
    .dilan-currency-item { padding: 14px 18px; font-size: 15px; }
}

/* ---------- My Account header dropdown — brand styling ---------- */
html .wd-dropdown-my-account {
    background: #FFFFFF !important;
    border: 1px solid rgba(151, 119, 74, 0.16) !important;
    border-radius: 4px !important;
    box-shadow:
        0 1px 3px rgba(0, 0, 0, 0.08),
        0 8px 24px rgba(0, 0, 0, 0.12) !important;
    padding: 6px 0 !important;
    min-width: 250px !important;
}
html .wd-dropdown-my-account .wd-sub-menu {
    display: block !important;
    grid-template-columns: none !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
    gap: 0 !important;
    background: transparent !important;
}
html .wd-dropdown-my-account .wd-sub-menu > li {
    margin: 0 !important;
    padding: 0 !important;
    width: 100% !important;
    border-bottom: 1px solid rgba(151, 119, 74, 0.10);
    list-style: none;
}
html .wd-dropdown-my-account .wd-sub-menu > li:last-child {
    border-bottom: 0;
}
html .wd-dropdown-my-account .wd-sub-menu > li > a {
    display: block !important;
    font-family: Georgia, "Times New Roman", serif !important;
    font-size: 15px !important;
    font-weight: 400 !important;
    letter-spacing: 0.5px !important;
    color: var(--dilan-charcoal, #2a2a2a) !important;
    padding: 14px 22px !important;
    text-align: left !important;
    text-transform: none !important;
    text-decoration: none !important;
    transition: color .2s ease, background .2s ease, padding-left .2s ease !important;
    position: relative;
}
html .wd-dropdown-my-account .wd-sub-menu > li > a > span {
    color: inherit !important;
}
html .wd-dropdown-my-account .wd-sub-menu > li > a:hover,
html .wd-dropdown-my-account .wd-sub-menu > li.is-active > a,
html .wd-dropdown-my-account .wd-sub-menu > li.current-menu-item > a {
    color: var(--dilan-gold-dark, #C8A05D) !important;
    background: #FAF7F1 !important;
    padding-left: 28px !important;
}
html .wd-dropdown-my-account .wd-sub-menu > li > a:hover > span,
html .wd-dropdown-my-account .wd-sub-menu > li.is-active > a > span {
    color: var(--dilan-gold-dark, #C8A05D) !important;
}
/* Matching gold left-border accent on hover (same as SHOP BY BUDGET) */
html .wd-dropdown-my-account .wd-sub-menu > li > a::before {
    content: "";
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%) scaleY(0);
    width: 3px;
    height: 60%;
    background: var(--dilan-gold-dark, #C8A05D);
    transition: transform 0.2s ease;
}
html .wd-dropdown-my-account .wd-sub-menu > li > a:hover::before {
    transform: translateY(-50%) scaleY(1);
}

/* ---------- Brand styling for ALL standard nav dropdowns (Shop By Budget, etc.)
   — applied to every WoodMart main-nav dropdown EXCEPT our mega-menu dropdown,
   which has its own custom layout. */
.wd-nav-main > li > .wd-dropdown-menu:not(.dilan-mega-dropdown),
.wd-nav-main > li > .wd-dropdown:not(.dilan-mega-dropdown) {
    background: #FFFFFF !important;
    border: 1px solid rgba(151, 119, 74, 0.16) !important;
    border-radius: 4px !important;
    box-shadow:
        0 1px 3px rgba(0, 0, 0, 0.08),
        0 8px 24px rgba(0, 0, 0, 0.12) !important;
    padding: 6px 0 !important;
    min-width: 250px !important;
}
.wd-nav-main > li > .wd-dropdown-menu:not(.dilan-mega-dropdown) .wd-sub-menu,
.wd-nav-main > li > .wd-dropdown:not(.dilan-mega-dropdown) .wd-sub-menu,
.wd-nav-main > li > .wd-dropdown-menu:not(.dilan-mega-dropdown) .sub-menu,
.wd-nav-main > li > .wd-dropdown:not(.dilan-mega-dropdown) .sub-menu {
    background: transparent !important;
    padding: 0 !important;
    margin: 0 !important;
    list-style: none !important;
}
.wd-nav-main > li > .wd-dropdown-menu:not(.dilan-mega-dropdown) .wd-sub-menu > li,
.wd-nav-main > li > .wd-dropdown:not(.dilan-mega-dropdown) .wd-sub-menu > li,
.wd-nav-main > li > .wd-dropdown-menu:not(.dilan-mega-dropdown) .sub-menu > li,
.wd-nav-main > li > .wd-dropdown:not(.dilan-mega-dropdown) .sub-menu > li {
    margin: 0 !important;
    padding: 0 !important;
    border-bottom: 1px solid rgba(151, 119, 74, 0.10);
    list-style: none;
}
.wd-nav-main > li > .wd-dropdown-menu:not(.dilan-mega-dropdown) .wd-sub-menu > li:last-child,
.wd-nav-main > li > .wd-dropdown:not(.dilan-mega-dropdown) .wd-sub-menu > li:last-child,
.wd-nav-main > li > .wd-dropdown-menu:not(.dilan-mega-dropdown) .sub-menu > li:last-child,
.wd-nav-main > li > .wd-dropdown:not(.dilan-mega-dropdown) .sub-menu > li:last-child {
    border-bottom: 0;
}
.wd-nav-main > li > .wd-dropdown-menu:not(.dilan-mega-dropdown) .wd-sub-menu > li > a,
.wd-nav-main > li > .wd-dropdown:not(.dilan-mega-dropdown) .wd-sub-menu > li > a,
.wd-nav-main > li > .wd-dropdown-menu:not(.dilan-mega-dropdown) .sub-menu > li > a,
.wd-nav-main > li > .wd-dropdown:not(.dilan-mega-dropdown) .sub-menu > li > a {
    display: block !important;
    font-family: Georgia, "Times New Roman", serif !important;
    font-size: 15px !important;
    font-weight: 400 !important;
    letter-spacing: 0.5px !important;
    color: var(--dilan-charcoal, #2a2a2a) !important;
    padding: 14px 22px !important;
    text-decoration: none !important;
    text-transform: none !important;
    transition: color 0.2s ease, background 0.2s ease, padding-left 0.2s ease !important;
    position: relative;
}
.wd-nav-main > li > .wd-dropdown-menu:not(.dilan-mega-dropdown) .wd-sub-menu > li > a:hover,
.wd-nav-main > li > .wd-dropdown:not(.dilan-mega-dropdown) .wd-sub-menu > li > a:hover,
.wd-nav-main > li > .wd-dropdown-menu:not(.dilan-mega-dropdown) .sub-menu > li > a:hover,
.wd-nav-main > li > .wd-dropdown:not(.dilan-mega-dropdown) .sub-menu > li > a:hover,
.wd-nav-main > li > .wd-dropdown-menu:not(.dilan-mega-dropdown) .wd-sub-menu > li.current-menu-item > a,
.wd-nav-main > li > .wd-dropdown:not(.dilan-mega-dropdown) .wd-sub-menu > li.current-menu-item > a {
    color: var(--dilan-gold-dark, #C8A05D) !important;
    background: #FAF7F1 !important;
    padding-left: 28px !important;
}
/* Small gold left border on hover for an elegant accent */
.wd-nav-main > li > .wd-dropdown-menu:not(.dilan-mega-dropdown) .wd-sub-menu > li > a::before,
.wd-nav-main > li > .wd-dropdown:not(.dilan-mega-dropdown) .wd-sub-menu > li > a::before,
.wd-nav-main > li > .wd-dropdown-menu:not(.dilan-mega-dropdown) .sub-menu > li > a::before,
.wd-nav-main > li > .wd-dropdown:not(.dilan-mega-dropdown) .sub-menu > li > a::before {
    content: "";
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%) scaleY(0);
    width: 3px;
    height: 60%;
    background: var(--dilan-gold-dark, #C8A05D);
    transition: transform 0.2s ease;
}
.wd-nav-main > li > .wd-dropdown-menu:not(.dilan-mega-dropdown) .wd-sub-menu > li > a:hover::before,
.wd-nav-main > li > .wd-dropdown:not(.dilan-mega-dropdown) .wd-sub-menu > li > a:hover::before,
.wd-nav-main > li > .wd-dropdown-menu:not(.dilan-mega-dropdown) .sub-menu > li > a:hover::before,
.wd-nav-main > li > .wd-dropdown:not(.dilan-mega-dropdown) .sub-menu > li > a:hover::before {
    transform: translateY(-50%) scaleY(1);
}

/* ---------- Dilan Mega Menu (for COLLECTIONS / CATEGORIES dropdown) ---------- */
.dilan-mega {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
    padding: 30px 24px 16px;
    max-width: 900px;
    margin: 0 auto;
    background: #fff;
}
.dilan-mega-col {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
}
.dilan-mega-head {
    display: block;
    width: 100%;
    text-align: center;
    box-sizing: border-box;
    font-family: Georgia, "Cormorant Garamond", "Playfair Display", serif;
    font-size: 18px;
    font-weight: 400;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: #2B2118 !important;
    text-decoration: none;
    margin: 22px 0 0;
}
.dilan-mega-head:first-child { margin-top: 0; }
.dilan-mega-head:hover { color: var(--dilan-gold-dark) !important; }
.dilan-mega-orn {
    display: block;
    width: 120px;
    height: 1px;
    margin: 14px 0 0;
    background: var(--dilan-gold);
    position: relative;
}
.dilan-mega-orn::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 8px;
    height: 8px;
    transform: translate(-50%, -50%) rotate(45deg);
    background: var(--dilan-gold);
}
.dilan-mega-sub {
    list-style: none;
    padding: 0;
    margin: 18px 0 0;
    width: 100%;
}
.dilan-mega-sub li {
    border-bottom: 1px solid #eee;
}
.dilan-mega-sub li:last-child { border-bottom: 0; }
.dilan-mega-sub a {
    display: block;
    position: relative;
    text-align: left;
    padding: 10px 16px 10px 2px;
    color: #2B2118 !important;
    text-decoration: none;
    font-family: Georgia, "Cormorant Garamond", serif;
    font-size: 12.5px;
    line-height: 1.3;
    letter-spacing: 0.03em;
    text-transform: uppercase;
    overflow-wrap: anywhere;
    word-break: break-word;
}
.dilan-mega-sub a:hover { color: var(--dilan-gold-dark) !important; }
.dilan-mega-sub .dilan-mega-arrow {
    position: absolute;
    right: 0;
    top: 10px;
    color: var(--dilan-gold-dark);
    font-size: 14px;
}
/* "View All Categories" — small gold link tucked into the empty bottom-left of the mega
   grid, aligned with the bottom of the (tallest) Accessories column — NOT a full-width
   row below the categories. Absolute so it doesn't disturb the 4-column grid. */
.dilan-mega { position: relative; }
.dilan-mega-viewall {
    position: absolute;
    left: 0;
    bottom: 16px;
    width: 73%;
    text-align: center;
    border-top: 1px solid var(--dilan-gold, #B89968);  /* horizontal gold line above */
    padding-top: 14px;
    font-family: Georgia, "Cormorant Garamond", serif;
    font-size: 14px;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    color: var(--dilan-gold-dark, #97774A) !important;
    text-decoration: none;
    transition: color .25s ease;
}
.dilan-mega-viewall:hover { color: var(--dilan-gold, #B89968) !important; }
.dilan-mega-viewall .dilan-mega-arrow { color: inherit; font-size: 15px; }
@media (max-width: 1024px) {
    .dilan-mega { grid-template-columns: repeat(2, 1fr); gap: 20px; padding: 30px 20px; }
}
@media (max-width: 600px) {
    .dilan-mega { grid-template-columns: 1fr; }
}
/* CATEGORIES dropdown is content-dense (4 columns + long headings like "MANGALSUTRA SETS")
   — give it more room than the default 900px so headings sit on one line.
   COLLECTIONS (#menu-item-29814) stays at the narrow 900px default. */
@media (min-width: 1025px) {
    #menu-item-29847 .dilan-mega-dropdown {
        width: min(95vw, 1010px) !important;
        max-width: 1010px !important;
    }
    #menu-item-29847 .dilan-mega { max-width: 1010px !important; }
}

/* ---------- Dilan footer (My Account / Useful Links / Contact Us) ---------- */
/* Constrain the footer wrapper itself (wins on every page layout, incl. full-width) */
html body .main-footer.dilan-footer,
html body .wd-footer .main-footer.dilan-footer {
    max-width: 1080px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    box-sizing: border-box !important;
}
html body .dilan-footer-inner {
    display: grid !important;
    grid-template-columns: 1fr 1fr 1.2fr;
    gap: 40px;
    padding: 10px 40px !important;
    max-width: 1080px !important;
    margin: 0 auto !important;
    box-sizing: border-box !important;
}
/* Apply the same side padding/width to the copyright/credit bar */
html body .wd-copyrights .container,
html body .wd-copyrights .wd-grid-g {
    padding-left: 40px !important;
    padding-right: 40px !important;
    max-width: 1080px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    box-sizing: border-box !important;
}
@media (max-width: 1024px) {
    .dilan-footer-inner,
    .wd-copyrights .container,
    .wd-copyrights .wd-grid-g {
        padding-left: 30px !important;
        padding-right: 30px !important;
    }
}
@media (max-width: 600px) {
    .dilan-footer-inner,
    .wd-copyrights .container,
    .wd-copyrights .wd-grid-g {
        padding-left: 20px !important;
        padding-right: 20px !important;
    }
}
.dilan-fcol-title {
    font-family: Georgia, "Cormorant Garamond", "Playfair Display", serif !important;
    font-size: 22px !important;
    font-weight: 500 !important;
    letter-spacing: 0.12em !important;
    text-transform: uppercase !important;
    color: var(--dilan-gold-dark) !important;
    margin: 0 0 22px;
}
/* Light ivory background on the whole footer */
.wd-footer.footer-container,
html body .main-footer.dilan-footer,
html body .wd-copyrights {
    background-color: #F6F3EC !important;
    color: var(--dilan-charcoal) !important;
}
/* Divider line between the footer columns and the copyright bar */
html body .wd-copyrights {
    border-top: 1px solid #C8A05D !important;
}
html body .wd-copyrights .wd-col-start,
html body .wd-copyrights .wd-col-end,
html body .wd-copyrights * {
    color: var(--dilan-charcoal) !important;
}
.dilan-fcol-links {
    list-style: none;
    margin: 0;
    padding: 0;
}
.dilan-fcol-links li {
    margin-bottom: 16px;
}
.dilan-fcol-links a {
    color: var(--dilan-charcoal) !important;
    text-decoration: none;
    font-size: 16px;
    transition: color .2s ease;
}
.dilan-fcol-links a:hover {
    color: var(--dilan-gold-dark) !important;
}
.dilan-fcol-contact p {
    color: var(--dilan-charcoal);
    font-size: 16px;
    line-height: 1.5;
    margin: 0 0 18px;
    display: flex;
    align-items: flex-start;
    gap: 10px;
}
.dilan-fcol-contact .dilan-contact-addr {
    padding-left: 30px;   /* align under the pin icon */
    margin-top: -8px;
}
.dilan-fcol-contact a {
    color: var(--dilan-charcoal) !important;
    text-decoration: none;
}
.dilan-fcol-contact a:hover { color: var(--dilan-gold-dark) !important; }
.dilan-ci {
    flex: 0 0 auto;
}
.dilan-ci svg {
    width: 20px;
    height: 20px;
    color: var(--dilan-gold-dark);
}
.dilan-fsocial {
    display: flex;
    gap: 18px;
    margin-top: 6px;
}
.dilan-fsocial a { color: var(--dilan-charcoal); transition: color .2s ease; }
.dilan-fsocial a:hover { color: var(--dilan-gold-dark); }
.dilan-fsocial svg { width: 22px; height: 22px; }
/* Footer logo (top of the My Account column) */
.dilan-footer-logo { display: inline-block; margin: 0 0 20px; max-width: 170px; line-height: 0; }
.dilan-footer-logo img { width: 100%; height: auto; display: block; }
@media (max-width: 768px) { .dilan-footer-logo { max-width: 140px; margin-bottom: 14px; } }
@media (max-width: 768px) {
    /* Stack columns (override the html-body-prefixed desktop grid) */
    html body .dilan-footer-inner {
        display: block !important;
        grid-template-columns: none !important;
        gap: 0 !important;
        text-align: left !important;
        padding: 0 20px !important;
    }
    /* Accordion: each column collapses; tap title to expand */
    .dilan-fcol {
        width: 100% !important;
        max-width: 100% !important;
        flex: none !important;
        margin: 0 !important;
        padding: 0 !important;
        border-bottom: 1px solid rgba(151, 119, 74, 0.20);
    }
    .dilan-fcol:last-child { border-bottom: 0; }
    .dilan-fcol-title {
        cursor: pointer;
        position: relative;
        margin: 0 !important;
        padding: 18px 40px 18px 0 !important;
        user-select: none;
        font-size: 16px !important;
        line-height: 1.2;
        white-space: normal;
        word-break: keep-all;
    }
    .dilan-fcol-title::after {
        content: "+";
        position: absolute;
        right: 8px;
        top: 50%;
        transform: translateY(-50%);
        font-size: 24px;
        font-weight: 300;
        line-height: 1;
        color: var(--dilan-gold-dark, #C8A05D);
        transition: transform 0.2s ease;
    }
    .dilan-fcol.dilan-open .dilan-fcol-title::after {
        content: "\2212"; /* − */
    }
    /* Hide content by default; show when open */
    .dilan-fcol .dilan-fcol-links,
    .dilan-fcol-contact > *:not(.dilan-fcol-title) {
        display: none !important;
    }
    .dilan-fcol.dilan-open .dilan-fcol-links,
    .dilan-fcol.dilan-open.dilan-fcol-contact > *:not(.dilan-fcol-title) {
        display: block !important;
    }
    .dilan-fcol.dilan-open .dilan-fcol-links { padding-bottom: 16px; }
    .dilan-fcol.dilan-open.dilan-fcol-contact { padding-bottom: 16px; }
    /* Compact contact rows */
    .dilan-fcol-contact p { padding-bottom: 4px; font-size: 15px; }
    .dilan-fcol-contact .dilan-contact-addr { padding-left: 30px; }
    .dilan-fcol-links li { margin-bottom: 12px; }
    .dilan-fcol-links a { font-size: 15px; }
    .dilan-fsocial { display: flex; margin-top: 12px; }
    /* Tighten copyrights bar on mobile */
    html body .wd-copyrights .container,
    html body .wd-copyrights .wd-grid-g {
        padding-left: 20px !important;
        padding-right: 20px !important;
    }
}

/* ---------- Site-wide title font consistency (Georgia serif) ---------- */
.dilan-trust-title,
.dilan-ws-title,
.dilan-fcol-title,
.dilan-cf-label,
.wd-entities-title,
.wd-entities-title a,
.woocommerce-loop-product__title,
.product_title,
.wd-section-title .liner-continer + h2,
.elementor-heading-title,
.dilan-section-title .elementor-heading-title {
    font-family: Georgia, "Cormorant Garamond", "Playfair Display", serif !important;
}

/* ---------- "Why Trust Us?" section ---------- */
.dilan-trust-section {
    background-color: #F6F3EC;
    padding: 48px 20px 30px;
}
.dilan-trust-inner {
    max-width: 1320px;
    margin: 0 auto;
}
.dilan-trust-title {
    text-align: center;
    font-family: Georgia, "Cormorant Garamond", "Playfair Display", serif;
    font-size: clamp(20px, 2.2vw, 32px);
    font-weight: 500;
    letter-spacing: 0.15em;
    text-transform: uppercase;
    color: var(--dilan-gold-dark);
    margin: 0 0 44px;
}
.dilan-trust-grid {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    gap: 24px;
    align-items: start;
}
.dilan-trust-item {
    text-align: center;
    color: var(--dilan-charcoal);
}
.dilan-trust-icon svg {
    width: 46px;
    height: 46px;
    color: var(--dilan-gold-dark);
    margin-bottom: 14px;
}
.dilan-trust-item p {
    margin: 0;
    font-size: 17px;
    line-height: 1.35;
    color: var(--dilan-charcoal);
}
@media (max-width: 1024px) {
    .dilan-trust-grid { grid-template-columns: repeat(4, 1fr); gap: 32px 16px; }
}
@media (max-width: 600px) {
    .dilan-trust-grid { grid-template-columns: repeat(2, 1fr); gap: 28px 12px; }
    .dilan-trust-title { font-size: 26px; margin-bottom: 30px; }
}

/* ---------- "Watch & Shop" Instagram reels ---------- */
.dilan-ws-section {
    background-color: #FFFFFF;
    padding: 30px 20px 60px;
}
.dilan-ws-inner {
    max-width: 1320px;
    margin: 0 auto;
}
.dilan-ws-title {
    text-align: center;
    font-family: Georgia, "Cormorant Garamond", "Playfair Display", serif;
    font-size: clamp(20px, 2.2vw, 32px);
    font-weight: 500;
    letter-spacing: 0.15em;
    text-transform: uppercase;
    color: var(--dilan-gold-dark);
    margin: 0 0 36px;
}
/* Instagram header — simple, minimal (logo + name · Follow + followers) */
.dilan-ig-header {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 14px;
    margin: 0 auto 28px;
}
.dilan-ig-avatar {
    width: 46px;
    height: 46px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: Georgia, serif;
    font-weight: 700;
    font-size: 16px;
    color: #fff;
    background: var(--dilan-gold-gradient);
}
.dilan-ig-meta {
    display: flex;
    flex-direction: column;
    line-height: 1.35;
}
.dilan-ig-line {
    display: flex;
    align-items: baseline;
    gap: 12px;
}
.dilan-ig-name {
    font-weight: 700;
    font-size: 15px;
    color: var(--dilan-charcoal) !important;
    text-decoration: none;
}
.dilan-ig-follow {
    font-size: 14px;
    font-weight: 600;
    color: var(--dilan-gold-dark) !important;
    text-decoration: none;
}
.dilan-ig-follow:hover {
    text-decoration: underline;
}
.dilan-ig-count {
    font-size: 14px;
    color: var(--dilan-charcoal);
}

.dilan-ws-grid {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 22px;
}
.dilan-ws-card {
    border-radius: 16px;
    overflow: hidden;
    background: #fff;
    box-shadow: 0 6px 22px rgba(0, 0, 0, 0.10);
    display: flex;
    flex-direction: column;
}
.dilan-ws-media {
    position: relative;
    display: block;
    aspect-ratio: 3 / 4;
    background: linear-gradient(135deg, #EDE6DA 0%, #DCCFBE 100%);
    background-size: cover;
    background-position: center;
}
.dilan-ws-caption {
    display: none !important;   /* caption is part of the reel video itself */
}
.dilan-ws-play {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 54px;
    height: 54px;
    border-radius: 50%;
    background: rgba(0, 0, 0, 0.35);
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background .2s ease, transform .2s ease;
}
.dilan-ws-play svg {
    width: 24px;
    height: 24px;
    color: #fff;
    margin-left: 3px;
}
.dilan-ws-media:hover .dilan-ws-play {
    background: rgba(0, 0, 0, 0.55);
    transform: translate(-50%, -50%) scale(1.08);
}
.dilan-ws-product {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 12px 12px 16px;
    text-decoration: none;
}
.dilan-ws-pthumb {
    flex: 0 0 auto;
    width: 42px;
    height: 42px;
    border-radius: 6px;
    background: linear-gradient(135deg, #EDE6DA 0%, #D9C39A 100%);
}
.dilan-ws-pinfo {
    display: flex;
    flex-direction: column;
    min-width: 0;
}
.dilan-ws-ptitle {
    font-size: 13px;
    line-height: 1.3;
    color: #2B2118;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
.dilan-ws-pprice {
    font-size: 13px;
    font-weight: 700;
    color: var(--dilan-charcoal);
    margin-top: 3px;
}
@media (max-width: 1024px) {
    .dilan-ws-grid { grid-template-columns: repeat(3, 1fr); }
}
@media (max-width: 600px) {
    .dilan-ws-grid { grid-template-columns: repeat(2, 1fr); gap: 14px; }
    .dilan-ws-title { font-size: 26px; }
}

/* Product action icons (quick view / wishlist / compare): white icon on gold when hovered — like the cart.
   The icon is a font glyph on .wd-action-icon::before, and the theme turns it grey on hover
   via --wd-action-color-hover, so we override that variable + the glyph color directly. */
.wd-action-btn.wd-style-icon > a:hover,
.wd-action-btn.wd-style-icon > a:focus {
    background-color: var(--dilan-gold) !important;
    border-color: var(--dilan-gold) !important;
    --wd-action-color-hover: #FFFFFF !important;
    --wd-action-icon-color-hover: #FFFFFF !important;
}
.wd-action-btn.wd-style-icon > a:hover .wd-action-icon:before,
.wd-action-btn.wd-style-icon > a:hover .wd-action-icon:after,
.wd-action-btn.wd-style-icon > a:hover .wd-action-icon,
.wd-action-btn.wd-style-icon > a:hover svg,
.wd-action-btn.wd-style-icon > a:hover svg path {
    color: #FFFFFF !important;
    fill: #FFFFFF !important;
    stroke: #FFFFFF !important;
}

/* Mobile: trim the large vertical padding on the home carousel sections
   (NEW ARRIVALS / CATEGORIES / COLLECTION) so they don't leave big empty gaps. */
@media (max-width: 768px) {
    .elementor-element-4d5ed99,
    .elementor-element-46e3ec0 {
        padding-top: 24px !important;
        padding-bottom: 24px !important;
    }
    /* NEW ARRIVALS had the most empty space — trim it tighter */
    .elementor-element-8150b32 {
        padding-top: 14px !important;
        padding-bottom: 6px !important;
    }
    .elementor-element-9c01e07 .wd-carousel { padding-bottom: 0 !important; }
    /* Empty section sitting between the hero slider and NEW ARRIVALS — collapse it */
    .elementor-element-923ba19 {
        padding-top: 0 !important;
        padding-bottom: 0 !important;
        min-height: 0 !important;
    }
    .elementor-element-923ba19 > .e-con-inner,
    .elementor-element-923ba19 > .e-con {
        padding-top: 0 !important;
        padding-bottom: 0 !important;
        min-height: 0 !important;
    }
}

/* Mobile: hide product/category carousel arrows (not the hero slider) and let the
   cards run edge-to-edge — removes the side gap the arrows were reserving. */
@media (max-width: 768px) {
    .wd-products-element .wd-btn-arrow,
    .wd-products-element .wd-nav-arrows,
    .wd-cats-element .wd-btn-arrow,
    .wd-cats-element .wd-nav-arrows,
    .wd-cats .wd-btn-arrow,
    .wd-cats .wd-nav-arrows {
        display: none !important;
        width: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
    }
    /* Hide the hover action-icon stack on mobile (it overflows the card on touch;
       the normal "Add to cart" button below still works). */
    .wd-products-element .wd-buttons.wd-pos-r-t,
    .elementor-element-9c01e07 .wd-buttons {
        display: none !important;
    }
    /* Re-clip the thumbnail on mobile so nothing spills out */
    .elementor-element-9c01e07 .wd-product-thumb,
    .elementor-element-9c01e07 .product-element-top {
        overflow: hidden !important;
    }

    /* (Column counts are set server-side: NEW ARRIVALS=2, Categories/Collection=1 —
       the slider lays them out natively. Image keeps the theme's square cover fit.) */
}

/* ---------- Products carousel (9c01e07): bigger image, un-clipped icons ---------- */
/* Fill the image edge-to-edge (cover) so the card background never shows on the sides. */
.elementor-element-9c01e07 .wd-product-grid-slide img,
.elementor-element-9c01e07 .wd-product-img-link img,
.elementor-element-9c01e07 .product-image-link img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
}
/* Bolder product titles */
.elementor-element-9c01e07 .wd-entities-title,
.elementor-element-9c01e07 .wd-entities-title a {
    font-weight: 700 !important;
}
/* Stop the thumbnail from clipping the action-icon stack
   (carousel itself keeps its overflow so adjacent slides don't peek) */
.elementor-element-9c01e07 .wd-product-thumb,
.elementor-element-9c01e07 .product-element-top {
    overflow: visible !important;
}
/* Keep the action icons on top and fully visible */
.elementor-element-9c01e07 .wd-buttons,
.elementor-element-9c01e07 .wd-buttons.wd-pos-r-t {
    z-index: 30 !important;
}
.elementor-element-9c01e07 .product-grid-item:hover,
.elementor-element-9c01e07 .wd-carousel-item:hover {
    z-index: 40 !important;
}

/* ---------- Hero slider — reduce banner height ---------- */
/* Desktop */
.wd-slider .wd-slide,
.wd-slider-wrap .wd-slide,
.wd-slider .swiper-slide,
.wd-slider-wrap .swiper-slide {
    min-height: 520px !important;
    max-height: 520px;
}
.wd-slider img,
.wd-slider-wrap img {
    width: 100%;
    height: 520px;
    max-height: 520px;
    object-fit: contain;        /* show whole image, no cropping */
    object-position: center center;
    display: block;
    background-color: #FAF6EF;  /* ivory fallback for letterbox area */
}
/* Slider uses a background-image fill (cover) — switch to contain so nothing is cropped */
.wd-slider .wd-slide-bg,
.wd-slider .wd-slide-bg.wd-fill {
    background-size: contain !important;
    background-position: center right !important;
    background-repeat: no-repeat !important;
    background-color: #FAF6EF !important;
}

/* Tablet */
@media (max-width: 1024px) {
    .wd-slider .wd-slide,
    .wd-slider-wrap .wd-slide,
    .wd-slider .swiper-slide,
    .wd-slider-wrap .swiper-slide {
        min-height: 380px !important;
        max-height: 380px;
    }
    .wd-slider img,
    .wd-slider-wrap img {
        max-height: 380px;
    }
}

/* Mobile */
@media (max-width: 600px) {
    .wd-slider .wd-slide,
    .wd-slider-wrap .wd-slide,
    .wd-slider .swiper-slide,
    .wd-slider-wrap .swiper-slide {
        min-height: 260px !important;
        max-height: 260px;
    }
    .wd-slider img,
    .wd-slider-wrap img {
        max-height: 260px;
    }
}

/* ---------- Filter by Category (custom HTML list) ---------- */
.dilan-cat-filter {
    list-style: none;
    margin: 0;
    padding: 0;
}
.dilan-cat-filter li {
    margin: 0;
    border-bottom: 1px solid rgba(0, 0, 0, 0.06);
}
.dilan-cat-filter li:last-child {
    border-bottom: 0;
}
.dilan-cat-filter li a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 9px 2px;
    color: #555;
    font-size: 14px;
    line-height: 1.35;
    transition: color 0.15s ease, padding-left 0.15s ease;
}
.dilan-cat-filter li a:hover {
    color: var(--dilan-gold-dark, #9a7d4f);
    padding-left: 6px;
}
.dilan-cat-filter .dilan-cf-count {
    flex: 0 0 auto;
    margin-left: 10px;
    min-width: 22px;
    height: 22px;
    padding: 0 6px;
    border-radius: 11px;
    background: rgba(184, 153, 104, 0.12);
    color: var(--dilan-gold-dark, #9a7d4f);
    font-size: 12px;
    font-weight: 600;
    line-height: 22px;
    text-align: center;
}
.dilan-cat-filter li a:hover .dilan-cf-count {
    background: var(--dilan-gold, #B89968);
    color: #fff;
}

/* ---------- Single product: Compare / Add to wishlist (text style) ----------
   These render with a fixed 44px icon-button width, so the label overflowed and
   overlapped the icon. Make them auto-width inline rows: [icon] Label, no circle. */
.single-product .wd-action-btn.wd-style-text > a {
    width: auto !important;
    height: auto !important;
    min-width: 0 !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    color: var(--dilan-charcoal, #2B2118);
    font-weight: 600;
    white-space: nowrap;
}
.single-product .wd-action-btn.wd-style-text > a .wd-action-icon,
.single-product .wd-action-btn.wd-style-text > a > span:first-child {
    position: static !important;
    width: auto !important;
    height: auto !important;
    margin: 0 !important;
    background: transparent !important;
    border-radius: 0 !important;
    flex: 0 0 auto !important;
}
/* sit the two buttons on one tidy row with a divider gap */
.single-product .wd-add-btns {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 22px;
}
/* hover: tint icon + label gold (no pill background) */
.single-product .wd-action-btn.wd-style-text > a:hover,
.single-product .wd-action-btn.wd-style-text > a:hover .wd-action-icon,
.single-product .wd-action-btn.wd-style-text > a:hover .wd-action-icon:before {
    color: var(--dilan-gold-dark, #9a7d4f) !important;
    background: transparent !important;
}

/* ---------- Page-title banner (GLOBAL): replace the WoodMart demo furniture
   photo with an on-brand dark gradient on every inner page (Account, Cart,
   Checkout, Collection, Category, Wishlist, blog, etc). The furniture is a real
   <img> inside .wd-page-title-bg, so we hide it and recolour the title bar. ---------- */
.wd-page-title .wd-page-title-bg {
    display: none !important;
}
.wd-page-title {
    background: linear-gradient(135deg, #2B2118 0%, #4a3826 55%, #6b5234 100%) !important;
}
/* keep title + breadcrumb text light & readable on the dark brand banner */
.wd-page-title .title,
.wd-page-title .entry-title,
.wd-page-title .woocommerce-breadcrumb,
.wd-page-title .woocommerce-breadcrumb *,
.wd-page-title .wd-breadcrumbs,
.wd-page-title .wd-breadcrumbs *,
.wd-page-title a {
    color: #fff !important;
}
.wd-page-title .wd-breadcrumbs a:hover,
.wd-page-title .woocommerce-breadcrumb a:hover {
    color: var(--dilan-gold, #B89968) !important;
}

/* ---------- Promo popup: on-brand espresso background (demo used a furniture photo).
   WoodMart bakes the bg into cached CSS, so override it here. ---------- */
.wd-promo-popup.wd-popup,
.wd-popup.wd-promo-popup,
.mfp-content .wd-promo-popup {
    background-image: none !important;
    background-color: #241A12 !important;
}

/* ---------- Modern centered Sign-in (My Account, logged out) ---------- */
.woocommerce-account:not(.logged-in) #customer_login.wd-grid-f-col {
    display: block !important;
    max-width: 440px;
    margin: 0 auto;
    gap: 0;
}
.woocommerce-account:not(.logged-in) #customer_login .wd-col {
    width: 100% !important;
    max-width: 100% !important;
    flex: none !important;
    padding: 0 !important;
    border: 0 !important;
}
/* default: show login only; register appears on toggle */
.woocommerce-account #customer_login .col-register,
.woocommerce-account #customer_login .col-register-text { display: none !important; }
.woocommerce-account #customer_login.dilan-show-reg .col-login { display: none !important; }
.woocommerce-account #customer_login.dilan-show-reg .col-register { display: block !important; }
/* hide WooCommerce's own "Login"/"Register" column headings (we use one heading) */
.woocommerce-account #customer_login .col-login > h2,
.woocommerce-account #customer_login .col-register > h2,
.woocommerce-account #customer_login .col-login .wd-login-header,
.woocommerce-account #customer_login .col-register .wd-login-header { display: none !important; }

.dilan-auth-head {
    max-width: 440px;
    margin: 8px auto 22px;
    text-align: left;
}
.dilan-auth-title {
    font-size: 30px;
    line-height: 1.1;
    margin: 0 0 6px;
    color: var(--dilan-charcoal, #2B2118);
}
.dilan-auth-sub { color: #9a9488; margin: 0; font-size: 15px; }

.dilan-social-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    width: 100%;
    min-height: 50px;
    padding: 0 16px;
    margin: 0 0 14px;
    border: 1px solid #e3ddd1;
    border-radius: 12px;
    background: #fff;
    color: var(--dilan-charcoal, #2B2118);
    font-weight: 600;
    font-size: 15px;
    transition: border-color .15s ease, box-shadow .15s ease;
}
.dilan-social-btn:hover {
    border-color: var(--dilan-gold, #B89968);
    box-shadow: 0 4px 14px rgba(0,0,0,.07);
    color: var(--dilan-charcoal, #2B2118);
}
.dilan-g-ico { flex: 0 0 20px; }

.dilan-auth-or {
    display: flex;
    align-items: center;
    gap: 12px;
    margin: 4px 0 18px;
    color: #b3ab9c;
    font-size: 13px;
    text-transform: lowercase;
}
.dilan-auth-or::before,
.dilan-auth-or::after { content: ""; flex: 1; height: 1px; background: #ece5d8; }

/* rounded brand inputs + full-width submit */
.woocommerce-account #customer_login input[type=text],
.woocommerce-account #customer_login input[type=email],
.woocommerce-account #customer_login input[type=password],
.woocommerce-account #customer_login input[type=tel] {
    width: 100%;
    min-height: 50px;
    border: 1px solid #e3ddd1;
    border-radius: 12px;
    padding: 0 16px;
    background: #fff;
}
.woocommerce-account #customer_login input:focus { border-color: var(--dilan-gold, #B89968); outline: none; }
.woocommerce-account #customer_login button[type=submit] {
    width: 100%;
    min-height: 50px;
    border-radius: 12px;
    font-weight: 600;
    letter-spacing: .3px;
    margin-top: 6px;
}
.dilan-auth-switch { text-align: center; margin: 18px 0 0; color: #8a8275; font-size: 14px; }
.dilan-auth-switch a { color: var(--dilan-gold-dark, #9a7d4f); font-weight: 600; }

/* ---------- Product page: trust badges ---------- */
.dilan-trust-badges {
    display: flex;
    gap: 14px;
    margin: 22px 0 6px;
    padding: 16px 0;
    border-top: 1px solid rgba(0,0,0,.07);
    border-bottom: 1px solid rgba(0,0,0,.07);
}
.dilan-trust {
    flex: 1 1 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 8px;
}
.dilan-trust-ico {
    width: 40px; height: 40px;
    color: var(--dilan-gold-dark, #9a7d4f);
    display: inline-flex; align-items: center; justify-content: center;
}
.dilan-trust-ico svg { width: 34px; height: 34px; }
.dilan-trust-txt { display: flex; flex-direction: column; line-height: 1.25; font-size: 13px; color: #6a6155; }
.dilan-trust-txt strong { color: var(--dilan-charcoal, #2B2118); font-size: 13.5px; }

/* ---------- Product page: section headings (You May Also Like / Recently Viewed) ---------- */
.related.products > h2,
.dilan-pp-head,
.up-sells > h2 {
    text-align: center !important;
    font-size: 26px !important;
    letter-spacing: .04em;
    margin: 10px 0 26px !important;
    position: relative;
    color: var(--dilan-charcoal, #2B2118);
}
.related.products > h2::before, .related.products > h2::after,
.dilan-pp-head::before, .dilan-pp-head::after {
    content: "\2756";
    color: var(--dilan-gold, #B89968);
    font-size: 14px;
    margin: 0 16px;
    vertical-align: middle;
}
.dilan-pp-section { margin-top: 44px; clear: both; }
.dilan-recently-viewed { border-top: 1px solid rgba(0,0,0,.06); padding-top: 30px; }

@media (max-width: 575px) {
    .dilan-trust-badges { gap: 8px; }
    .dilan-trust-txt { font-size: 12px; }
    .related.products > h2, .dilan-pp-head { font-size: 21px !important; }
}

/* ---------- Slim modern page-title bar (option B) ---------- */
.wd-page-title {
    padding-top: 26px !important;
    padding-bottom: 26px !important;
    min-height: 0 !important;
}
.wd-page-title .entry-title,
.wd-page-title .title {
    font-size: 30px !important;
    line-height: 1.15 !important;
    margin-bottom: 5px !important;
}
.wd-page-title .woocommerce-breadcrumb,
.wd-page-title .wd-breadcrumbs {
    font-size: 13px !important;
    opacity: .9;
}
@media (max-width: 768px) {
    .wd-page-title { padding-top: 18px !important; padding-bottom: 18px !important; }
    .wd-page-title .entry-title,
    .wd-page-title .title { font-size: 23px !important; }
}

/* ---------- Collections landing: dark, readable labels on the ivory logo cards ---------- */
.dilan-coll-page-grid .dilan-cat-style-name {
    color: var(--dilan-charcoal, #2B2118) !important;
    text-shadow: none !important;
    background: linear-gradient(to top, rgba(247,241,230,.95) 0%, rgba(247,241,230,.7) 60%, rgba(247,241,230,0) 100%) !important;
    font-weight: 700;
}

/* ---------- Watch & Shop (Instagram Reels, shoppable) ---------- */
.dilan-watch { max-width: min(1600px, 94vw); margin: 16px auto 40px; }
/* Trim the big gap between "Why Trust Us?" and "Shop by Reels" (was 48px pb + 60px mt = 108px) */
.elementor-element-adec28a { padding-bottom: 20px !important; }
.dilan-watch-head {
    display: flex; align-items: center; justify-content: center; gap: 6px;
    margin-bottom: 22px;
}
.dilan-watch-title {
    font-size: 30px; letter-spacing: .18em; text-transform: uppercase;
    color: var(--dilan-gold-dark, #9a7d4f); margin: 0 14px; font-weight: 600;
}
.dilan-watch-acct {
    display: flex; align-items: center; justify-content: center; gap: 14px; margin-bottom: 26px;
}
.dilan-watch-avatar {
    width: 56px; height: 56px; border-radius: 50%;
    /* d-mark (transparent PNG) centered on the gold circle; "DJ" text hidden.
       !important because a WoodMart link rule overrides the avatar background otherwise. */
    background:
        url('/wp-content/uploads/2026/06/dilan-dmark.png') center / 80% no-repeat,
        radial-gradient(circle at 30% 30%, #d9bd82, #a9863f) !important;
    color: transparent !important; font-size: 0 !important;
    display: flex; align-items: center; justify-content: center; flex: 0 0 56px;
}
.dilan-watch-acct-meta { display: flex; flex-direction: column; line-height: 1.4; }
.dilan-watch-acct-line { display: flex; align-items: center; gap: 12px; }
.dilan-watch-name { font-weight: 700; color: var(--dilan-charcoal, #2B2118); font-size: 15px; }
.dilan-watch-follow { color: var(--dilan-gold-dark, #9a7d4f); font-weight: 600; font-size: 14px; }
.dilan-watch-followers { color: #9a9488; font-size: 13px; }

.dilan-watch-row {
    display: grid; grid-template-columns: repeat(5, 1fr); gap: 20px;
}
.dilan-watch-card {
    background: #fff; border-radius: 16px; overflow: hidden;
    box-shadow: 0 6px 22px rgba(0,0,0,.06); border: 1px solid rgba(0,0,0,.04);
    display: flex; flex-direction: column;
}
.dilan-watch-video {
    position: relative; display: block; aspect-ratio: 3 / 4;
    background: #ece4d4 center/cover no-repeat;
}
.dilan-watch-play {
    position: absolute; inset: 0; margin: auto; width: 54px; height: 54px;
    border-radius: 50%; background: rgba(40,33,24,.55);
    display: flex; align-items: center; justify-content: center;
    transition: transform .15s ease, background .15s ease;
}
.dilan-watch-play svg { margin-left: 3px; }
.dilan-watch-video:hover .dilan-watch-play { background: var(--dilan-gold-dark, #9a7d4f); transform: scale(1.08); }
.dilan-watch-info { display: flex; gap: 10px; align-items: center; padding: 12px; }
.dilan-watch-thumb {
    width: 46px; height: 46px; flex: 0 0 46px; border-radius: 8px;
    background: #ece4d4 center/cover no-repeat;
}
.dilan-watch-meta { display: flex; flex-direction: column; gap: 4px; min-width: 0; }
.dilan-watch-pname {
    font-size: 13px; line-height: 1.3; color: var(--dilan-charcoal, #2B2118);
    display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;
}
.dilan-watch-pprice { font-size: 14px; font-weight: 700; color: var(--dilan-charcoal, #2B2118); }
.dilan-watch-pprice del { color: #b3ab9c; font-weight: 400; margin-right: 5px; }

@media (max-width: 1024px) { .dilan-watch-row { grid-template-columns: repeat(3, 1fr); } }
@media (max-width: 768px)  {
    .dilan-watch-row {
        grid-auto-flow: column; grid-template-columns: none; grid-auto-columns: 88%;
        overflow-x: auto; scroll-snap-type: x mandatory; -webkit-overflow-scrolling: touch;
        touch-action: pan-x;
        /* Constrain the row to the viewport so its columns overflow INSIDE it and it
           scrolls. Without this the row is a flex item with min-width:auto, so it grows
           to its full content width (~6000px) and never scrolls — that was the "not
           swiping" bug. */
        width: 100% !important; max-width: 100% !important; min-width: 0 !important;
        padding-bottom: 0;
        /* hide the horizontal scrollbar ("scroll ball") — swipe still works */
        scrollbar-width: none;            /* Firefox */
        -ms-overflow-style: none;         /* old Edge/IE */
    }
    .dilan-watch-row::-webkit-scrollbar { display: none; width: 0; height: 0; }  /* Chrome/Safari */
    .dilan-watch-card { scroll-snap-align: center; }
    .dilan-watch-title { font-size: 22px; }

    /* Footer was edge-to-edge on the home page (its container had 0 side
       padding, unlike other pages). Give it left/right breathing room. */
    .wd-footer .container,
    .wd-footer .main-footer {
        padding-left: 20px !important;
        padding-right: 20px !important;
        box-sizing: border-box !important;
    }
}

/* ---------- Product summary: free-shipping line + assistance box ---------- */
.dilan-pp-freeship { font-weight: 600; color: var(--dilan-charcoal, #2B2118); margin: 16px 0 2px; font-size: 14px; }
.dilan-pp-taxnote { color: #9a9488; font-size: 12.5px; margin: 0 0 16px; }
.dilan-assist-box {
    background: #f5efe2;
    border-radius: 8px;
    padding: 14px 18px;
    margin: 0 0 6px;
}
.dilan-assist-q { display: block; font-size: 13.5px; color: #6a6155; margin-bottom: 7px; }
.dilan-assist-links a { color: var(--dilan-gold-dark, #9a7d4f); font-weight: 600; text-decoration: underline; }
.dilan-assist-links i { color: #cabfa8; font-style: normal; margin: 0 9px; }

/* ---------- Hero slides: fill the fixed-height strip cleanly (cover), centered.
   WoodMart generates per-slide CSS with ID specificity, so we use .wd-slide#id
   (1,2,0) to win over it for every slide. Banners should be ~1920x590 to fill
   with no crop. ---------- */
.wd-slide#slide-11018 .wd-slide-bg,
.wd-slide#slide-11003 .wd-slide-bg,
.wd-slide#slide-30010 .wd-slide-bg,
.wd-slider .wd-slide .wd-slide-bg {
    background-size: cover !important;
    background-position: center center !important;
    background-color: #f6efe2 !important;
}

/* ---------- Currency float must sit BELOW the side cart / off-canvas panels (z-index 500),
   so it no longer overlaps the open cart drawer ---------- */
.dilan-currency-float { z-index: 490 !important; }
body.cart-widget-opened .dilan-currency-float,
body.wd-search-full-screen-opened .dilan-currency-float,
body.wd-mobile-menu-opened .dilan-currency-float,
body.wd-open .dilan-currency-float {
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
}

/* ---------- Single product: sticky gallery ----------
   With the accordions in the right summary column, the right side is long while
   the left image is short. Make the gallery sticky so it follows the scroll and
   fills that empty left space. ---------- */
@media (min-width: 769px) {
    .single-product .product-image-summary-inner .product-images {
        position: sticky;
        top: 100px;
        align-self: start;
    }
}

/* ---------- Single product: pin the sale badge to the top-LEFT of the gallery
   image so it no longer overlaps the product title ---------- */
.single-product .wd-gallery-images .product-labels,
.single-product .product-images .product-labels,
.single-product .product-image-summary .product-labels {
    left: 15px !important;
    right: auto !important;
    top: 15px !important;
    text-align: left !important;
    width: auto !important;
}
.single-product .wd-gallery-images .product-labels .onsale,
.single-product .product-images .product-labels .onsale {
    margin: 0 !important;
}

/* ---------- Watch & Shop: caption for an Instagram reel with no linked product ---------- */
.dilan-watch-info--reel { justify-content: center; }
.dilan-watch-info--reel .dilan-watch-pname { color: var(--dilan-gold-dark, #9a7d4f); font-weight: 600; }

/* ===================== Header refinements (v2.0.68) ===================== */
/* Menu / nav bar → serif (matches the category font) + no text shadow */
.whb-general-header .wd-nav-main > li > a,
.whb-general-header .whb-main-menu .menu-item > a,
.whb-general-header .menu-item.item-level-0 > a {
    font-family: Georgia, "Cormorant Garamond", "Playfair Display", serif !important;
    font-size: 16px !important;
    font-weight: 500;
    letter-spacing: 1.2px;
    text-transform: uppercase;
    text-shadow: none !important;
}
/* Remove any shadow on the top line (announcement bar + its text) */
.whb-top-bar, .whb-top-bar *,
.wd-header-text, .wd-header-text *,
.whb-general-header .wd-nav-main a {
    text-shadow: none !important;
}

/* Social icons (top header): Instagram → YouTube → Facebook → Pinterest, brand colours, hide only X */
.whb-header .wd-social-icon.social-instagram { order: 1; }
.whb-header .wd-social-icon.social-youtube   { order: 2; }
.whb-header .wd-social-icon.social-facebook  { order: 3; }
.whb-header .wd-social-icon.social-pinterest { order: 4; }
.whb-header .wd-social-icon.social-twitter,
.whb-header .wd-social-icon.social-x { display: none !important; }
.whb-header .wd-social-icon.social-instagram { color: #E1306C !important; }
.whb-header .wd-social-icon.social-youtube   { color: #FF0000 !important; }
.whb-header .wd-social-icon.social-facebook  { color: #1877F2 !important; }
.whb-header .wd-social-icon.social-pinterest { color: #E60023 !important; }
.whb-header .wd-social-icon.social-instagram:hover { color: #c1306c !important; }
.whb-header .wd-social-icon.social-youtube:hover   { color: #cc0000 !important; }
.whb-header .wd-social-icon.social-facebook:hover  { color: #145fc0 !important; }
.whb-header .wd-social-icon.social-pinterest:hover { color: #b3001b !important; }

/* Same treatment everywhere else (footer, widgets, mobile) — brand colours + hide only X/Twitter */
.wd-social-icon.social-instagram { color: #E1306C !important; }
.wd-social-icon.social-youtube   { color: #FF0000 !important; }
.wd-social-icon.social-facebook  { color: #1877F2 !important; }
.wd-social-icon.social-pinterest { color: #E60023 !important; }
.wd-social-icon.social-instagram:hover { color: #c1306c !important; }
.wd-social-icon.social-youtube:hover   { color: #cc0000 !important; }
.wd-social-icon.social-facebook:hover  { color: #145fc0 !important; }
.wd-social-icon.social-pinterest:hover { color: #b3001b !important; }
.wd-social-icon.social-twitter,
.wd-social-icon.social-x { display: none !important; }

/* Footer "Contact Us" social icons (.dilan-fsocial) — brand colours instead of dark currentColor */
.dilan-fsocial a[aria-label="Facebook"]  { color: #1877F2 !important; }
.dilan-fsocial a[aria-label="Instagram"] { color: #E1306C !important; }
.dilan-fsocial a[aria-label="YouTube"]   { color: #FF0000 !important; }
.dilan-fsocial a[aria-label="Pinterest"] { color: #E60023 !important; }
.dilan-fsocial a[aria-label="Facebook"]:hover  { color: #145fc0 !important; }
.dilan-fsocial a[aria-label="Instagram"]:hover { color: #c1306c !important; }
.dilan-fsocial a[aria-label="YouTube"]:hover   { color: #cc0000 !important; }
.dilan-fsocial a[aria-label="Pinterest"]:hover { color: #b3001b !important; }

/* (Reverted: uniform zoom-out shrank the full-width banner.) */

/* ===== Shorter hero on limited-height screens (e.g. 125% scaling) so New Arrivals peeks in ===== */
@media (min-width:1025px) and (max-height:780px) {
    .wd-slider .wd-slide,
    .elementor-widget-wd_slider .wd-slide,
    .wd-slide,
    .wd-slide-bg {
        min-height: 56vh !important;
        height: 56vh !important;
    }
}
@media (min-width:1025px) and (max-height:640px) {
    .wd-slider .wd-slide,
    .elementor-widget-wd_slider .wd-slide,
    .wd-slide,
    .wd-slide-bg {
        min-height: 52vh !important;
        height: 52vh !important;
    }
}

/* ===== New Arrivals: clean single-card style (image full, heart top-left, left-aligned text) ===== */
.elementor-element-9c01e07 .wd-product { box-shadow: none !important; border: none !important; text-align: left !important; }
.elementor-element-9c01e07.elementor-element .wd-products .wd-product .wd-entities-title,
.elementor-element-9c01e07.elementor-element .wd-products .wd-product .price,
.elementor-element-9c01e07.elementor-element .wd-products .wd-product .wd-product-detail,
.elementor-element-9c01e07.elementor-element .wd-products .wd-product .product-element-bottom,
.elementor-element-9c01e07.elementor-element .wd-products .wd-product .product-rating {
    text-align: left !important;
    justify-content: flex-start !important;
    align-items: flex-start !important;
}
/* Card: full-width image (3:4 — shortened from the taller 2:3) + title & price pinned to the bottom (aligned across cards) */
.elementor-element-9c01e07 .wd-product,
.elementor-element-9c01e07 .wd-product .wd-product-wrapper {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    height: 100% !important;
}
.elementor-element-9c01e07 .wd-product .wd-product-thumb {
    width: 100% !important;
    aspect-ratio: 3 / 4 !important;
    overflow: visible !important;
    flex: 0 0 auto !important;
    margin: 0 !important;
}
/* Image edge-to-edge + NO photoframe: drop the 15px wrapper padding AND the wrapper box-shadow
   (badge, cart/hover icons and their positions are unchanged — they sit on the thumb). */
.elementor-element-9c01e07 .wd-product .wd-product-wrapper {
    padding: 0 !important;
    box-shadow: none !important;
    border: 0 !important;
}
/* Equal-height cards (symmetric) */
.elementor-element-9c01e07 .swiper-wrapper { align-items: stretch !important; }
.elementor-element-9c01e07 .wd-carousel-item,
.elementor-element-9c01e07 .swiper-slide { height: auto !important; }
.elementor-element-9c01e07 .wd-product .wd-product-img-link {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    overflow: hidden !important;   /* contains the hover zoom (cart icons sit on the thumb, so they stay visible) */
}
.elementor-element-9c01e07 .wd-product .wd-product-img-link img,
.elementor-element-9c01e07 .wd-product .wd-product-thumb img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    max-width: none !important;
    transition: transform .6s ease, opacity .45s ease !important;
}
/* ---- Product hover slideshow (mortantra-style): cross-fade through ALL gallery images ----
   The PHP hook outputs each gallery image as .dilan-gallery-img; the footer JS adds .is-active
   to cycle them on hover. Each active image cross-fades in with a slow Ken-Burns zoom. Hidden
   everywhere by default so it never affects other loops; only New Arrivals runs the slideshow. */
.dilan-hover-gallery { display: none; }
.elementor-element-9c01e07 .wd-product .product-wrapper,
.elementor-element-9c01e07 .wd-product .wd-product-wrapper { position: relative; }
.elementor-element-9c01e07 .dilan-hover-gallery { display: block; }
.elementor-element-9c01e07 .dilan-gallery-img {
    display: block;
    position: absolute; top: 0; left: 0; width: 100%;
    aspect-ratio: 3 / 4;
    background-size: cover; background-position: center; background-repeat: no-repeat;
    opacity: 0; transform: scale(1.03);
    transition: opacity 1.1s ease, transform 3.4s ease;
    pointer-events: none; z-index: 3;
}
.elementor-element-9c01e07 .dilan-gallery-img.is-active { opacity: 1; transform: scale(1.08); }
/* Main image: gentle zoom on hover (its frame in the slideshow + products that have no gallery). */
.elementor-element-9c01e07 .wd-product:hover .wd-product-img-link img { transform: scale(1.06) !important; }
.elementor-element-9c01e07 .wd-product .wd-product-img-link img { transition: transform 2.6s ease, opacity .45s ease !important; }
/* title hugs the image (small gap), price right under it; spare space falls to card bottom */
.elementor-element-9c01e07.elementor-element .wd-products .wd-product .wd-entities-title {
    min-height: 0 !important;
    margin: 8px 0 2px !important;
    line-height: 1.3 !important;
}
.elementor-element-9c01e07.elementor-element .wd-products .wd-product .price {
    margin: 0 0 6px !important;
}
/* Hide the carousel pagination dots on EVERY carousel/slider site-wide
   (hero banner, New Arrivals, Wedding Collection, etc.). WoodMart sliders use
   .wd-nav-pagin; the coverflow uses .dilan-cf-pagination; products use .swiper-pagination. */
.wd-nav-pagin-wrap,
.wd-nav-pagin,
.dilan-cf-pagination,
.wd-slider-pagin,
.woocommerce .wd-nav-pagin { display: none !important; }

/* Reduce the gap between New Arrivals cards: the slide spacing is the carousel-item's
   10px L/R padding (=20px between cards). Halve it to 5px (=10px gap, slightly wider cards). */
.elementor-element-9c01e07 .wd-carousel-item {
    padding-left: 5px !important;
    padding-right: 5px !important;
}

/* Mobile: let the New Arrivals images render at natural ratio (the desktop 2/3 aspect + cover
   squished them on the narrow phone cards). */
@media (max-width: 767px) {
    .elementor-element-9c01e07 .wd-product,
    .elementor-element-9c01e07 .wd-product .wd-product-wrapper { height: auto !important; }
    .elementor-element-9c01e07 .wd-product .wd-product-thumb {
        aspect-ratio: auto !important;
        height: auto !important;
    }
    .elementor-element-9c01e07 .wd-product .wd-product-img-link img,
    .elementor-element-9c01e07 .wd-product .wd-product-thumb img {
        height: auto !important;
        object-fit: contain !important;
    }
    .elementor-element-9c01e07 .swiper-wrapper { align-items: flex-start !important; }
    .elementor-element-9c01e07.elementor-element .wd-products .wd-product .wd-entities-title { margin-top: 10px !important; }
}

/* Remove the empty spacer section below Google Reviews on the home page */
.home .elementor-element-43608bf { display: none !important; }

/* ===== Match Shop by Reels + Google Reviews headings to the Elementor section style ===== */
/* Hide the old square-diamond + line spans in these two custom headings */
.dilan-watch-head .dilan-cat-style-orn,
.dilan-watch-head .dilan-cat-style-rule,
.dilan-greviews-head .dilan-cat-style-orn,
.dilan-greviews-head .dilan-cat-style-rule { display: none !important; }
/* Recreate the exact "✦ ───── TITLE ───── ✦" ornament with em-dash rules */
.dilan-watch-title::before,
.dilan-greviews-title::before {
    content: "✦ ─────";
    font-family: Georgia, serif;
    font-weight: 400;
    color: var(--dilan-gold-dark, #C8A05D);
    font-size: 0.82em;
    letter-spacing: 0;
    margin-right: 0.45em;
    vertical-align: middle;
}
.dilan-watch-title::after,
.dilan-greviews-title::after {
    content: "───── ✦";
    font-family: Georgia, serif;
    font-weight: 400;
    color: var(--dilan-gold-dark, #C8A05D);
    font-size: 0.82em;
    letter-spacing: 0;
    margin-left: 0.45em;
    vertical-align: middle;
}

/* =========================================================================
   FLUID DISPLAY TYPOGRAPHY  (Dilan Jewels — 2026-07)
   Headings/titles were fixed px, so they looked oversized on smaller / low-res
   desktops and undersized on very large monitors. clamp() makes them scale with
   the viewport: IDENTICAL to the previous fixed sizes at ~1600px+ (the design
   reference — so large screens are unchanged), scaling down smoothly to ~1024px.
   Body text is intentionally left at a stable 15px for readability.
   Scoped to min-width:1025px so the theme's existing mobile/tablet sizes are
   untouched. Resolved sizes, e.g. product title: 1920→34  1440→31  1200→27  1024→25.
   ========================================================================= */
@media (min-width: 1025px) {
    /* Homepage band titles: NEW ARRIVALS / SHOP BY COLLECTION / BEST-SELLERS … (reduced to 20px max) */
    .elementor-widget-heading.dilan-section-title .elementor-heading-title {
        font-size: clamp(17px, 8px + 0.8vw, 20px) !important;
    }
    /* Secondary section titles: Why Trust Us? / Watch & Shop (was 26px) */
    .dilan-trust-title,
    .dilan-ws-title {
        font-size: clamp(20px, 8px + 1.1vw, 26px) !important;
    }
    /* Page titles h1 (was 30px) */
    h1,
    .wd-page-title .title {
        font-size: clamp(23px, 10px + 1.2vw, 30px) !important;
    }
    /* Single product title (reduced from 34px → 28px max) */
    .product_title,
    h1.product_title {
        font-size: clamp(22px, 11px + 1.05vw, 28px) !important;
    }
    /* Related / up-sell / cross-sell section headings (was ~30px) */
    .related.products > h2,
    .up-sells > h2,
    .cross-sells > h2 {
        font-size: clamp(22px, 9px + 1.35vw, 30px) !important;
    }
}

/* =========================================================================
   INNER-PAGE TITLE BAND — remove the dark gradient strip behind the header
   The WooCommerce page-title band (About Us and other inner pages) has a dark
   brown gradient background and sits partly behind the header, so only a ~14px
   dark sliver peeked out under the nav. Neutralise the background so it blends.
   ========================================================================= */
.wd-page-title,
.wd-page-title .wd-page-title-bg {
    background: transparent !important;
    background-image: none !important;
}
