/*
Theme Name: Twenty Twenty-Four Child (Luxury)
Template: twentytwentyfour
Version: 7.0.0
*/

/* ═══════════════════════════════════════
   CHAMPAGNE PALETTE
   ═══════════════════════════════════════ */
:root{
    --cream:#FAF7F2;
    --champagne:#EDE6DD;
    --warm:#E3D9CC;
    --sand:#D4C8B8;
    --card:#FFFFFF;
    --gold:#B8956A;
    --gold2:#9E7C55;
    --dark:#1E1A14;
    --mid:#3D3428;
    --dim:#6B5F4F;
    --border:rgba(42,34,25,.1);
    --glass:rgba(255,255,255,.65);
    --shadow:0 2px 12px rgba(42,34,25,.06);
    --shadow-hover:0 8px 30px rgba(42,34,25,.12);
    --sans:'Outfit',sans-serif;
    --serif:'Playfair Display',serif;
    --ease:cubic-bezier(.25,.8,.25,1);
    --radius:14px;
    --header-h:62px;
}

/* ═══════════════════════════════════════
   RESET
   ═══════════════════════════════════════ */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{
    background:var(--cream)!important;color:var(--dark)!important;
    font-family:var(--sans)!important;-webkit-font-smoothing:antialiased;
    overflow-x:hidden;font-size:16px;line-height:1.6
}
.wp-site-blocks,.has-global-padding{padding:0!important}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}

.reveal{opacity:0;transform:translateY(30px);transition:opacity .7s var(--ease),transform .7s var(--ease)}
.reveal.visible{opacity:1;transform:translateY(0)}
.stagger>.reveal:nth-child(1){transition-delay:.05s}
.stagger>.reveal:nth-child(2){transition-delay:.12s}
.stagger>.reveal:nth-child(3){transition-delay:.19s}
.stagger>.reveal:nth-child(4){transition-delay:.26s}

@keyframes marquee{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}
@keyframes pulse{0%,100%{opacity:.3}50%{opacity:.7}}

/* ═══════════════════════════════════════
   HEADER — burger on mobile, search on desktop
   ═══════════════════════════════════════ */
.lux-header{
    position:sticky;top:0;z-index:9999;
    display:flex;align-items:center;justify-content:space-between;
    padding:10px 16px;height:var(--header-h);
    background:rgba(250,247,242,.94);
    backdrop-filter:blur(25px);-webkit-backdrop-filter:blur(25px);
    border-bottom:1px solid var(--border)
}
.lux-header__left { display:flex; align-items:center; flex: 1; }
.lux-header__logo{ display:flex; align-items:center; justify-content:center; flex: 1; }
.lux-header__logo img{height:38px;width:auto}
.lux-header__actions{ display:flex; gap:8px; align-items:center; justify-content:flex-end; flex: 1; }

.lux-header__actions a,
.lux-header__actions button{
    display:flex;align-items:center;justify-content:center;
    width:38px;height:38px;border-radius:50%;border:none;
    background:var(--champagne);color:var(--mid);
    transition:all .3s var(--ease);-webkit-tap-highlight-color:transparent;
    cursor:pointer;font-size:0
}
.lux-header__actions a:hover,
.lux-header__actions button:hover{background:var(--gold);color:#fff}

/* FiboSearch Icon Wrapper */
.fibo-icon-wrapper { display: flex; align-items: center; }

/* Burger */
.burger{
    display:flex;flex-direction:column;justify-content:center;align-items:flex-start;
    gap:5px;width:38px;height:38px;border:none;background:transparent;
    border-radius:50%;cursor:pointer;padding:0 8px;
    -webkit-tap-highlight-color:transparent;transition:background .3s
}
.burger:hover{background:var(--champagne)}
.burger span{display:block;width:20px;height:1.5px;background:var(--dark);border-radius:2px;transition:all .3s var(--ease)}
.burger:hover span{background:var(--gold)}
.burger.active span:nth-child(1){transform:rotate(45deg) translate(5px,5px)}
.burger.active span:nth-child(2){opacity:0}
.burger.active span:nth-child(3){transform:rotate(-45deg) translate(5px,-5px)}

/* Desktop layout */
@media(min-width:768px){
    .lux-header{padding:12px 30px;height:68px}
    .lux-header__logo img{height:48px}
    .lux-header__actions{gap:16px}
    --header-h:68px;
}

/* FiboSearch overrides */

.dgwt-wcas-search-wrapp .dgwt-wcas-sf-wrapp input[type=search]{
    background:var(--champagne)!important;border:1px solid var(--border)!important;
    border-radius:50px!important;padding:10px 18px 10px 42px!important;
    font-family:var(--sans)!important;font-size:.85rem!important;
    color:var(--dark)!important;height:40px!important
}
.dgwt-wcas-sf-wrapp input::placeholder{color:var(--dim)!important}

/* Center magnifier icon and close button inside the input bar */
.dgwt-wcas-sf-wrapp .dgwt-wcas-search-submit {
    height: 40px !important;
    width: 40px !important;
    position: absolute !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    border: none !important;
    left: 0 !important;
    display: block !important;
    z-index: 10 !important;
}
.dgwt-wcas-sf-wrapp .dgwt-wcas-ico-magnifier {
    position: absolute !important;
    top: 50% !important;
    left: 14px !important;
    right: auto !important;
    bottom: auto !important;
    transform: translateY(-50%) !important;
    margin: 0 !important;
    display: block !important;
}
.dgwt-wcas-sf-wrapp .dgwt-wcas-close {
    position: absolute !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    bottom: auto !important;
    margin: 0 !important;
}

/* Prevent FiboSearch dropdown from causing horizontal scroll on mobile */
@media(max-width:767px) {
    .dgwt-wcas-search-wrapp .dgwt-wcas-search-form {
        max-width: calc(100vw - 32px) !important;
    }
}

/* Mobile search bar */
.mobile-search{
    display:none;position:sticky;top:var(--header-h);z-index:9998;
    padding:10px 16px;background:var(--cream);border-bottom:1px solid var(--border)
}
.mobile-search.open{display:block}
@media(min-width:768px){.mobile-search{display:none!important}}

/* hide default WP header + footer */
header.wp-block-template-part{display:none!important}
footer.wp-block-template-part{display:none!important}

/* ═══════════════════════════════════════
   MOBILE MENU
   ═══════════════════════════════════════ */
.mobile-menu{
    position:fixed;top:0;left:-400px;width:350px;max-width:85%;height:100vh;
    background:var(--cream);box-shadow:5px 0 25px rgba(0,0,0,.05);
    z-index:9998;display:flex;flex-direction:column;align-items:center;justify-content:center;
    padding:var(--header-h) 40px 0 40px;opacity:1;pointer-events:none;transition:left .4s var(--ease)
}
.mobile-menu.open{left:0;pointer-events:auto}
.mobile-menu__inner{text-align:center;padding:0;width:100%}
.mobile-menu__link{
    display:block;padding:12px 0;
    font-family:var(--sans);font-size:1.8rem;font-weight:300;
    color:var(--dark);letter-spacing:1px;
    border-bottom:none;
    transition:color .3s;-webkit-tap-highlight-color:transparent
}
.mobile-menu__link:hover,.mobile-menu__link:active{color:var(--gold)}
.mobile-menu__socials{display:flex;justify-content:center;gap:16px;margin-top:40px}
.mobile-menu__socials a{
    width:44px;height:44px;border-radius:50%;
    display:flex;align-items:center;justify-content:center;
    background:var(--champagne);border:1px solid var(--border);
    color:var(--mid);transition:all .3s var(--ease)
}
.mobile-menu__socials a:hover{background:var(--gold);color:#fff;border-color:var(--gold)}
.mobile-menu__socials svg{width:18px;height:18px;fill:currentColor}


/* ═══════════════════════════════════════
   HERO BANNER
   ═══════════════════════════════════════ */
.hero{
    position:relative;overflow:hidden;
    height:75vh;min-height:420px;
    display:flex;align-items:center;justify-content:center;text-align:center
}
.hero__img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform 6s ease-out}
.hero:hover .hero__img{transform:scale(1.03)}
.hero__overlay{
    position:absolute;inset:0;
    background:linear-gradient(180deg,rgba(30,26,20,.15) 0%,rgba(30,26,20,.25) 50%,rgba(250,247,242,.9) 100%)
}
.hero__content{position:relative;z-index:2;padding:0 25px;max-width:600px}
.hero__badge{
    display:inline-flex;align-items:center;gap:8px;
    padding:10px 22px;border-radius:50px;
    background:var(--gold);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);
    border:1px solid rgba(255,255,255,.4);
    font-size:.7rem;font-weight:600;letter-spacing:3px;text-transform:uppercase;
    color:#fff;margin-bottom:20px;
    text-shadow:0 1px 4px rgba(0,0,0,.3);
    box-shadow: 0 4px 15px rgba(184,149,106,.4);
}
.hero__badge::before{content:'';width:8px;height:8px;background:#fff;border-radius:50%;animation:pulse 2s ease infinite;box-shadow: 0 0 8px #fff;}
.hero__title{
    font-family:var(--sans);font-size:clamp(2.2rem,7vw,3.8rem);font-weight:200;
    line-height:1.1;color:var(--cream);margin-bottom:16px;letter-spacing:-1px;
    text-shadow:0 2px 20px rgba(0,0,0,.5),0 2px 6px rgba(0,0,0,.4)
}
.hero__title strong{
    font-weight:700;color:var(--gold);
    text-shadow:0 2px 20px rgba(0,0,0,.6),0 2px 6px rgba(0,0,0,.5)
}
.hero__sub{
    font-size:.92rem;font-weight:300;color:var(--cream);line-height:1.7;margin-bottom:28px;
    text-shadow:0 1px 8px rgba(0,0,0,.5)
}

.btn{
    display:inline-flex;align-items:center;gap:8px;
    padding:14px 32px;font-family:var(--sans);font-size:.75rem;font-weight:500;
    letter-spacing:2px;text-transform:uppercase;border-radius:50px;
    transition:all .4s var(--ease);cursor:pointer;border:none;
    -webkit-tap-highlight-color:transparent
}
.btn--gold{background:var(--gold);color:#fff}
.btn--gold:hover{background:var(--gold2);transform:translateY(-2px);box-shadow:0 12px 30px rgba(184,149,106,.3)}
.btn--outline{background:rgba(255,255,255,.2);color:#fff;border:2px solid rgba(255,255,255,.6);backdrop-filter:blur(4px)}
.btn--outline:hover{background:rgba(255,255,255,.4);transform:translateY(-2px)}

@media(min-width:768px){
    .hero{height:88vh}
    .hero__content{max-width:700px}
}

/* ═══════════════════════════════════════
   BRAND MARQUEE
   ═══════════════════════════════════════ */
.marquee{overflow:hidden;padding:18px 0;background:var(--champagne);border-bottom:1px solid var(--border)}
.marquee__track{display:flex;gap:40px;width:max-content;animation:marquee 35s linear infinite}
.marquee__item{
    font-size:.7rem;font-weight:400;letter-spacing:4px;text-transform:uppercase;
    color:var(--dim);white-space:nowrap;display:flex;align-items:center;gap:40px
}
.marquee__item::after{content:'✦';font-size:.45rem;color:var(--gold);opacity:.6}

/* ═══════════════════════════════════════
   SECTION HEAD
   ═══════════════════════════════════════ */
.section-head{text-align:center;margin-bottom:30px;padding:0 20px}
.section-head__tag{font-size:.65rem;font-weight:500;letter-spacing:4px;text-transform:uppercase;color:var(--gold);display:block;margin-bottom:10px}
.section-head__title{font-family:var(--sans);font-size:clamp(1.5rem,4vw,2.2rem);font-weight:300;color:var(--dark)}
@media(min-width:768px){.section-head{margin-bottom:45px}}

/* ═══════════════════════════════════════
   CATEGORIES (Luxurious Leaf Shapes)
   ═══════════════════════════════════════ */
.cats{padding:60px 15px;background:var(--cream)}
.cats__grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;max-width:1200px;margin:0 auto}
.cat-card{
    display:flex;flex-direction:column;align-items:center;
    text-align:center;text-decoration:none;transition:all .5s var(--ease);
    -webkit-tap-highlight-color:transparent;
}
.cat-card__img-wrap{
    width:100%;aspect-ratio:1/1;margin-bottom:20px;position:relative;
    border-radius:50% 0 50% 0;overflow:hidden;
    box-shadow:0 15px 35px rgba(184,149,106,.15);
    border:3px solid var(--champagne);
    transition:all .8s var(--ease);
}
.cat-card__img{
    width:100%;height:100%;object-fit:cover;transition:transform 1s ease;
}
.cat-card:hover .cat-card__img-wrap{
    border-radius:0 50% 0 50%;
    transform:translateY(-8px);
    box-shadow:0 25px 45px rgba(184,149,106,.25);
    border-color:var(--gold);
}
.cat-card:hover .cat-card__img{transform:scale(1.1);}
.cat-card__name{
    font-family:var(--serif);font-size:1.8rem;font-weight:400;
    color:var(--dark);margin-bottom:8px;font-style:italic;
    transition:color .4s var(--ease);
}
.cat-card:hover .cat-card__name{color:var(--gold);}
.cat-card__count{
    font-family:var(--sans);font-size:.7rem;letter-spacing:3px;
    text-transform:uppercase;color:var(--mid);
}
@media(min-width:768px){
    .cats{padding:80px 30px}
    .cats__grid{grid-template-columns:repeat(4,1fr);gap:40px}
    .cat-card__name{font-size:2.2rem;}
}

/* ═══════════════════════════════════════
   PRODUCT CAROUSEL
   ═══════════════════════════════════════ */
.products-section{padding:60px 15px;background:#fff}
.carousel-wrap{position:relative;max-width:1400px;margin:0 auto}
.carousel-track{
    display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;
    padding-bottom:20px;scrollbar-width:none;-ms-overflow-style:none;
}
.carousel-track::-webkit-scrollbar{display:none}
.p-card{
    flex:0 0 calc(50vw - 22px);max-width:300px;scroll-snap-align:start;
    background:var(--card);border:1px solid var(--border);border-radius:var(--radius);
    overflow:hidden;transition:all .4s var(--ease);display:flex;flex-direction:column;
    box-shadow:var(--shadow)
}
.p-card:hover{box-shadow:var(--shadow-hover);transform:translateY(-5px)}
.p-card__img-wrap{
    display:block;background:var(--cream);padding:12px;
    display:flex;align-items:center;justify-content:center;
}
.p-card__img-wrap img{
    width:100%;aspect-ratio:1/1;object-fit:contain;border-radius:8px;
    mix-blend-mode:multiply;transition:transform .6s var(--ease)
}
.p-card:hover .p-card__img-wrap img{transform:scale(1.05)}
.p-card__body{padding:16px;display:flex;flex-direction:column;flex:1}
.p-card__title{font-family:var(--sans);font-size:.9rem;font-weight:500;color:var(--dark);margin-bottom:8px;text-decoration:none;line-height:1.4}
.p-card__price{font-family:var(--sans);font-size:.95rem;font-weight:600;color:var(--gold);margin-bottom:16px}
.p-card__price del{color:var(--dim);font-weight:400;font-size:.8rem;margin-right:6px}
.p-card__btn{
    display:block;text-align:center;padding:12px;margin-top:auto;
    background:var(--champagne);color:var(--gold);font-family:var(--sans);
    font-size:.75rem;font-weight:600;letter-spacing:1px;text-transform:uppercase;
    border-radius:8px;text-decoration:none;transition:all .3s var(--ease)
}
.p-card:hover .p-card__btn{background:var(--gold);color:#fff}
.carousel-nav{display:none}

@media(min-width:768px){
    .products-section{padding:80px 30px}
    .carousel-track{gap:20px}
    .p-card{flex:0 0 calc(25% - 15px)}
    .carousel-nav{
        display:flex;position:absolute;top:50%;left:-20px;right:-20px;
        justify-content:space-between;transform:translateY(-50%);pointer-events:none
    }
    .carousel-nav button{
        width:48px;height:48px;border-radius:50%;background:#fff;
        border:1px solid var(--border);color:var(--dark);font-size:1.2rem;
        cursor:pointer;pointer-events:auto;transition:all .3s var(--ease);
        display:flex;align-items:center;justify-content:center;
        box-shadow:0 4px 15px rgba(0,0,0,.08)
    }
    .carousel-nav button:hover{background:var(--gold);color:#fff;border-color:var(--gold);transform:scale(1.1)}
}

/* ═══════════════════════════════════════
   WOOCOMMERCE — SHOP / ARCHIVE PAGES
   Support for both Standard and WC Blocks
   ═══════════════════════════════════════ */

/* Container */
body.woocommerce-page .site-main,
body.woocommerce .site-main,
body .woocommerce{
    max-width:1400px;margin:0 auto;padding:20px 15px
}
@media(min-width:768px){
    body.woocommerce-page .site-main,
    body.woocommerce .site-main,
    body .woocommerce{padding:40px 30px}
}

/* Page title */
body .woocommerce-products-header__title,
body .page-title,
body.woocommerce-page .page-title{
    font-family:var(--sans);font-weight:300;color:var(--dark);
    font-size:clamp(1.6rem,4vw,2.4rem);margin-bottom:15px;
    text-align:center;
}

/* Result count & ordering */
body .woocommerce-result-count{color:var(--mid);font-family:var(--sans);font-size:.85rem}
body .woocommerce-ordering select{
    font-family:var(--sans);border:2px solid var(--sand);
    border-radius:8px;padding:8px 12px;background:var(--card);
    color:var(--dark);font-size:.85rem
}

/* Product GRID */
body .woocommerce ul.products,
body.woocommerce ul.products,
body.woocommerce-page ul.products,
body ul.wc-block-grid__products,
body ul.wc-block-product-template{
    display:grid!important;grid-template-columns:repeat(2,1fr)!important;
    gap:14px!important;list-style:none!important;padding:0!important;margin:30px 0!important;
}
@media(min-width:768px){
    body .woocommerce ul.products,
    body.woocommerce ul.products,
    body ul.wc-block-grid__products,
    body ul.wc-block-product-template{grid-template-columns:repeat(3,1fr)!important;gap:18px!important}
}
@media(min-width:1024px){
    body .woocommerce ul.products,
    body.woocommerce ul.products,
    body ul.wc-block-grid__products,
    body ul.wc-block-product-template{grid-template-columns:repeat(4,1fr)!important;gap:20px!important}
}

/* Individual PRODUCT CARD (Standard & Blocks) */
body .woocommerce ul.products li.product,
body.woocommerce ul.products li.product,
body li.wc-block-grid__product,
body li.wc-block-product{
    background:var(--card)!important;
    border:1px solid var(--border)!important;
    border-radius:var(--radius)!important;
    padding:14px!important;
    margin:0!important;width:auto!important;float:none!important;
    box-shadow:var(--shadow)!important;
    transition:box-shadow .4s var(--ease),transform .4s var(--ease)!important;
    overflow:hidden!important;
    display:flex!important;flex-direction:column!important;
}
body .woocommerce ul.products li.product:hover,
body.woocommerce ul.products li.product:hover,
body li.wc-block-grid__product:hover,
body li.wc-block-product:hover{
    box-shadow:var(--shadow-hover)!important;transform:translateY(-4px)!important;
}

/* Product IMAGE wrapper & img */
body .woocommerce ul.products li.product a img,
body .woocommerce ul.products li.product img.attachment-woocommerce_thumbnail,
body.woocommerce ul.products li.product a img,
body .wc-block-components-product-image{
    border-radius:10px!important;margin:0 0 12px 0!important;
    background:var(--cream)!important;
    aspect-ratio:1/1!important;
    display:flex!important;align-items:center!important;justify-content:center!important;
    padding:12px!important;width:auto!important;height:auto!important;
}
body .wc-block-components-product-image img,
body .woocommerce ul.products li.product a img{
    object-fit:contain!important;width:100%!important;height:100%!important;
    margin:0!important;padding:0!important;
}

/* Product TITLE */
body .woocommerce ul.products li.product .woocommerce-loop-product__title,
body .woocommerce ul.products li.product h2,
body.woocommerce ul.products li.product .woocommerce-loop-product__title,
body.woocommerce ul.products li.product h2.woocommerce-loop-product__title,
body li.wc-block-product .wp-block-post-title,
body li.wc-block-product h2{
    font-family:var(--sans)!important;
    font-size:.85rem!important;
    font-weight:500!important;
    color:var(--dark)!important;
    padding:0 0 6px!important;
    line-height:1.4!important;
    text-align:left!important;
    margin:0!important;
}
body li.wc-block-product .wp-block-post-title a{
    color:var(--dark)!important;text-decoration:none!important;
}

/* Product PRICE */
body .woocommerce ul.products li.product .price,
body .woocommerce ul.products li.product .price span.woocommerce-Price-amount,
body.woocommerce ul.products li.product .price,
body .wc-block-components-product-price{
    color:var(--gold)!important;
    font-family:var(--sans)!important;
    font-weight:600!important;
    font-size:.95rem!important;
    margin-bottom:12px!important;
    text-align:left!important;
}
body .woocommerce ul.products li.product .price del,
body .woocommerce ul.products li.product .price del span,
body .wc-block-components-product-price del,
body .wc-block-components-product-price del span{
    color:var(--dim)!important;font-weight:400!important;font-size:.8rem!important;
}

/* Product BUTTON */
body .woocommerce ul.products li.product .button,
body .woocommerce ul.products li.product a.button,
body .woocommerce ul.products li.product a.add_to_cart_button,
body .woocommerce ul.products li.product a.product_type_variable,
body .woocommerce ul.products li.product a.product_type_simple,
body.woocommerce ul.products li.product .button,
body.woocommerce ul.products li.product a.button,
body .wc-block-components-product-button{
    margin-top:auto!important;margin-bottom:0!important;
}
body .wc-block-components-product-button__button,
body .woocommerce ul.products li.product .button{
    display:block!important;width:100%!important;text-align:center!important;
    padding:12px 16px!important;
    font-family:var(--sans)!important;font-size:.72rem!important;font-weight:600!important;
    letter-spacing:1.5px!important;text-transform:uppercase!important;
    color:#fff!important;background:var(--gold)!important;
    border:none!important;border-radius:10px!important;
    transition:all .3s var(--ease)!important;
    line-height:1.4!important;
}
body .wc-block-components-product-button__button:hover,
body .woocommerce ul.products li.product .button:hover{
    background:var(--gold2)!important;box-shadow:0 6px 20px rgba(184,149,106,.3)!important;
}

/* Star ratings */
body .woocommerce ul.products li.product .star-rating,
body .wc-block-components-product-rating{
    color:var(--gold)!important;margin:0 0 8px!important;
}

/* Sale badge */
body .woocommerce ul.products li.product .onsale,
body .woocommerce span.onsale,
body .wc-block-components-product-sale-badge{
    background:var(--gold)!important;color:#fff!important;font-family:var(--sans)!important;
    font-size:.65rem!important;font-weight:600!important;border-radius:50px!important;
    padding:4px 12px!important;min-height:auto!important;line-height:1.6!important;
}

/* Pagination */
body .woocommerce nav.woocommerce-pagination ul li a,
body .woocommerce nav.woocommerce-pagination ul li span,
body .wp-block-query-pagination .page-numbers,
body .wp-block-query-pagination .wp-block-query-pagination-next,
body .wp-block-query-pagination .wp-block-query-pagination-previous {
    display:inline-flex!important;align-items:center!important;justify-content:center!important;
    min-width:40px!important;height:40px!important;padding:0 12px!important;
    font-family:var(--sans)!important;font-weight:500!important;font-size:.9rem!important;
    color:var(--mid)!important;border:1px solid var(--border)!important;
    border-radius:8px!important;background:var(--card)!important;
    transition:all .3s var(--ease)!important;text-decoration:none!important;
}
body .woocommerce nav.woocommerce-pagination ul li span.current,
body .wp-block-query-pagination .page-numbers.current {
    background:var(--gold)!important;color:#fff!important;border-color:var(--gold)!important;
    box-shadow:0 4px 12px rgba(184,149,106,.3)!important;
}
body .woocommerce nav.woocommerce-pagination ul li a:hover,
body .wp-block-query-pagination .page-numbers:hover:not(.current),
body .wp-block-query-pagination .wp-block-query-pagination-next:hover,
body .wp-block-query-pagination .wp-block-query-pagination-previous:hover {
    background:var(--champagne)!important;color:var(--dark)!important;border-color:var(--sand)!important;
}
body .wp-block-query-pagination {
    margin-top:40px!important;gap:8px!important;
}
body .wp-block-query-pagination-numbers {
    gap:8px!important;display:flex!important;align-items:center!important;flex-wrap:wrap!important;
}

/* Make body pagination center */
body .wp-block-query-pagination.is-content-justification-center {
    justify-content:center!important;
}

/* ═══════════════════════════════════════
   CTA
   ═══════════════════════════════════════ */
.cta{
    padding:80px 20px;text-align:center;
    background:linear-gradient(180deg,var(--champagne),var(--cream));
    position:relative;overflow:hidden
}
.cta__glow{
    position:absolute;width:350px;height:350px;border-radius:50%;
    background:radial-gradient(circle,rgba(184,149,106,.12),transparent 70%);
    top:50%;left:50%;transform:translate(-50%,-50%);pointer-events:none;animation:pulse 5s ease infinite
}
.cta__text{
    font-family:var(--serif);font-size:clamp(1.3rem,3.5vw,2.2rem);
    font-weight:400;font-style:italic;color:var(--dark);
    max-width:550px;margin:0 auto 30px;line-height:1.5;position:relative;z-index:1
}

/* ═══════════════════════════════════════
   FOOTER
   ═══════════════════════════════════════ */
.lux-footer{
    padding:40px 20px 30px;text-align:center;
    background:var(--cream);border-top:1px solid var(--border)
}
.lux-footer__logo{margin:0 auto 20px}
.lux-footer__logo img{height:45px;margin:0 auto}
.lux-footer__socials{display:flex;justify-content:center;gap:14px;margin-bottom:25px}
.lux-footer__socials a{
    display:flex;align-items:center;justify-content:center;
    width:44px;height:44px;border-radius:50%;
    background:var(--champagne);border:1px solid var(--border);
    color:var(--mid);transition:all .3s var(--ease);-webkit-tap-highlight-color:transparent
}
.lux-footer__socials a:hover{background:var(--gold);color:#fff;border-color:var(--gold);transform:translateY(-3px);box-shadow:0 8px 20px rgba(184,149,106,.2)}
.lux-footer__socials svg{width:18px;height:18px;fill:currentColor}
.lux-footer__copy{font-size:.75rem;color:var(--dim);letter-spacing:1px}
.lux-footer__copy a{color:var(--gold);font-weight:500}

@media(min-width:768px){
    .lux-footer{padding:50px 30px 35px}
    .lux-footer__socials a{width:48px;height:48px}
    .lux-footer__socials svg{width:20px;height:20px}
}

/* ═══════════════════════════════════════
   GLOBAL — force all WooCommerce text dark
   ═══════════════════════════════════════ */
body .woocommerce a:not(.button),
body.woocommerce a:not(.button),
body .woocommerce-page a:not(.button){color:var(--dark)}
body .woocommerce a:not(.button):hover{color:var(--gold)}

/* Pagination */
body .woocommerce nav.woocommerce-pagination ul li a,
body .woocommerce nav.woocommerce-pagination ul li span{
    font-family:var(--sans);color:var(--mid);border-color:var(--border);
    border-radius:8px;background:var(--card)
}
body .woocommerce nav.woocommerce-pagination ul li span.current{
    background:var(--gold);color:#fff;border-color:var(--gold)
}


/* Fix FiboSearch and Cart overlap strictly */
.lux-header__actions { display: flex; gap: 16px; align-items: center; justify-content: flex-end; flex: 1; }
.fibo-icon-wrapper { flex-shrink: 0; display: inline-flex; align-items: center; justify-content: center; }
.fibo-icon-wrapper .dgwt-wcas-search-wrapp { 
    max-width: 40px !important; width: 40px !important; min-width: 0 !important; 
    margin: 0 !important; padding: 0 !important; flex-shrink: 0 !important;
}
.fibo-icon-wrapper .dgwt-wcas-search-wrapp.dgwt-wcas-has-submit.dgwt-wcas-style-solaris {
    width: 40px !important;
}
.cart-icon { flex-shrink: 0; position: relative; z-index: 10; }

.cart-icon { position: relative; }
.cart-count {
    position: absolute;
    top: -5px;
    right: -5px;
    background: var(--gold);
    color: #fff;
    font-size: 0.65rem;
    font-weight: 600;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: var(--sans);
    line-height: 1;
}
