/* =========================================================
   IMPRESSA inspired luxury layout for Wood Ville
   Keeps Wood Ville beige/stone/charcoal theme. Loaded last.
   ========================================================= */
:root{
    --wv-luxe-bg:#f8f5f2;
    --wv-luxe-bg-2:#f8f5f2;
    --wv-luxe-panel:#686357;
    --wv-luxe-panel-dark:#4e4a42;
    --wv-luxe-accent:var(--Third, #b8a38f);
    --wv-luxe-accent-2:var(--Accent, #8d7a68);
    --wv-luxe-line:rgba(184,163,143,.34);
    --wv-luxe-shadow:0 28px 80px rgba(21,21,21,.10);
}

body{
    background:var(--wv-luxe-bg) !important;
}

/* Small premium polish on header while keeping Wood Ville navigation + category strip */
.wv-main-nav{
    background:rgba(21,21,21,.96) !important;
}
.wv-category-strip{
    background:rgba(248,245,242,.96) !important;
    backdrop-filter:blur(16px);
}
.wv-category-title{
    background:var(--Secondary) !important;
}
.wv-category-title::before,
.wv-menu .nav-link::before,
.wv-category-link::after{
    background:var(--wv-luxe-accent) !important;
}

/* IMPRESSA hero feel: centered copy, dark cinematic image, rounded dot indicators */
.hero-slider.impressa-hero-slider{
    background:var(--Secondary) !important;
}
.hero-slider.impressa-hero-slider #homeHero,
.hero-slider.impressa-hero-slider #homeHero .carousel-inner,
.hero-slider.impressa-hero-slider #homeHero .carousel-item{
    height:calc(100svh - var(--wv-header-height)) !important;
    min-height:650px !important;
    background:var(--Secondary) !important;
}
.hero-slider.impressa-hero-slider #homeHero .carousel-item::before{
    content:"";
    position:absolute;
    inset:0;
    z-index:1;
    background:
        radial-gradient(circle at center, rgba(0,0,0,.12), rgba(0,0,0,.52)),
        linear-gradient(180deg, rgba(0,0,0,.16), rgba(0,0,0,.46));
    pointer-events:none;
}
.hero-slider.impressa-hero-slider .hero-carousel-img{
    height:100% !important;
    object-fit:cover !important;
    object-position:center center !important;
    opacity:.86 !important;
}
.hero-slider.impressa-hero-slider .hero-carousel-caption{
    left:50% !important;
    right:auto !important;
    top:50% !important;
    bottom:auto !important;
    width:min(960px, 92vw) !important;
    max-width:92vw !important;
    transform:translate(-50%, -50%) !important;
    text-align:center !important;
    z-index:3 !important;
    padding:0 16px;
}
.hero-slider.impressa-hero-slider .hero-tag{
    color:#fff !important;
    display:block;
    font-size:13px !important;
    font-weight:700 !important;
    letter-spacing:4px !important;
    text-transform:uppercase !important;
    margin-bottom:18px !important;
}
.hero-slider.impressa-hero-slider .hero-carousel-caption h1{
    color:#fff !important;
    font-family:'Marcellus', Georgia, serif !important;
    font-size:clamp(46px, 4.5vw, 94px) !important;
    font-weight:500 !important;
    line-height:.98 !important;
    letter-spacing:.02em !important;
    margin:0 0 18px !important;
    text-transform:uppercase;
    text-shadow:0 18px 46px rgba(0,0,0,.42);
}
.hero-slider.impressa-hero-slider .hero-carousel-caption p{
    margin:0 auto 30px !important;
    max-width:660px !important;
    color:rgba(255,255,255,.88) !important;
    font-size:17px !important;
    line-height:1.75 !important;
}
.hero-slider.impressa-hero-slider .premium-btn,
.wv-underlined-btn{
    color:#fff !important;
    border:0 !important;
    border-bottom:1px solid currentColor !important;
    background:transparent !important;
    box-shadow:none !important;
    min-height:auto !important;
    padding:8px 0 !important;
    letter-spacing:1.8px !important;
    text-transform:uppercase !important;
    font-size:13px !important;
}
.hero-slider.impressa-hero-slider .premium-btn::before,
.wv-underlined-btn::before{
    display:none !important;
}
.hero-slider.impressa-hero-slider #homeHero .carousel-indicators{
    bottom:32px !important;
    z-index:4 !important;
}
.hero-slider.impressa-hero-slider #homeHero .carousel-indicators [data-bs-target]{
    width:10px !important;
    height:10px !important;
    border-radius:50% !important;
    border:1px solid rgba(255,255,255,.9) !important;
    background:transparent !important;
    opacity:1 !important;
    margin:0 7px !important;
}
.hero-slider.impressa-hero-slider #homeHero .carousel-indicators .active{
    background:#f8f5f2 !important;
}
.hero-slider.impressa-hero-slider #homeHero .carousel-control-prev,
.hero-slider.impressa-hero-slider #homeHero .carousel-control-next{
    width:66px !important;
    z-index:4 !important;
    opacity:.85 !important;
}
.hero-slider.impressa-hero-slider #homeHero .carousel-control-prev-icon,
.hero-slider.impressa-hero-slider #homeHero .carousel-control-next-icon{
    width:42px !important;
    height:42px !important;
    border:1px solid rgba(255,255,255,.55) !important;
    background-color:rgba(0,0,0,.18) !important;
    background-size:16px !important;
}

/* Stats strip from IMPRESSA, recolored for Wood Ville */
.wv-elite-stats{
    background:var(--wv-luxe-bg-2);
    padding:35px 0;
    border-bottom:1px solid var(--wv-luxe-line);
}
.wv-elite-stats-grid{
    max-width:1600px;
    margin:0 auto;
    display:grid;
    grid-template-columns:repeat(5, minmax(0,1fr));
    gap:20px;
    text-align:center;
}
.wv-elite-stat-box{
    position:relative;
    padding:8px 8px;
}
.wv-elite-stat-box:not(:last-child)::after{
    content:"";
    position:absolute;
    right:-10px;
    top:18%;
    width:1px;
    height:64%;
    background:var(--wv-luxe-line);
}
.wv-elite-stat-box h2{
    margin:0 0 4px;
    font-size:clamp(20px, 1.7vw, 28px);
    font-weight:600;
    color:var(--wv-luxe-accent-2);
    letter-spacing:.5px;
}
.wv-elite-stat-box p{
    margin:0;
    font-family:'Marcellus', Georgia, serif;
    font-size:clamp(14px, 1.2vw, 18px);
    color:#77726b;
    font-weight:600;
}

/* Recolor old pink home section overrides back to Wood Ville theme */
.index-bg-section,
.index-category-section,
.index-featured-section,
.index-our-products-section{
    /*background-image:*/
    /*    linear-gradient(180deg, rgba(245,245,243,.94), rgba(250,249,246,.90)),*/
    /*    url('../images/backgroundimg.webp') !important;*/
    /*background-size:cover !important;*/
    /*background-position:center !important;*/
}
.index-bg-section::before{
    background:radial-gradient(circle at 50% 40%, rgba(255,255,255,.45), rgba(184,163,143,.10) 58%, transparent) !important;
}
.index-category-section .section-title,
.index-featured-section .section-title,
.index-our-products-section .section-title,
.wv-lookbook-section .section-title{
    font-family:'Marcellus', Georgia, serif !important;
    font-size:clamp(34px, 4.5vw, 58px) !important;
    font-weight:500 !important;
    color:#4e4e4e !important;
    text-transform:uppercase;
    letter-spacing:.01em !important;
}
.index-category-section .section-tag,
.index-featured-section .section-tag,
.index-our-products-section .section-tag,
.wv-lookbook-section .section-tag{
    color:var(--wv-luxe-accent-2) !important;
    letter-spacing:3px !important;
}
.index-pink-card{
    border-color:var(--wv-luxe-line) !important;
    box-shadow:none !important;
}
.index-pink-card:hover{
    border-color:var(--wv-luxe-accent) !important;
    box-shadow:var(--wv-luxe-shadow) !important;
}

/* IMPRESSA-style cards */
.impressa-home-card,
.premium-card.impressa-home-card{
    display:flex !important;
    flex-direction:column !important;
    gap:22px !important;
    height:100% !important;
    background:transparent !important;
    border:0 !important;
    box-shadow:none !important;
    overflow:visible !important;
    text-decoration:none !important;
    transition:transform .45s cubic-bezier(.22,1,.36,1) !important;
}
.impressa-home-card:hover,
.premium-card.impressa-home-card:hover{
    transform:translateY(-8px) !important;
    border:0 !important;
    box-shadow:none !important;
}
.impressa-home-card .impressa-card-media,
.premium-card.impressa-home-card .impressa-card-media{
    position:relative !important;
    width:100% !important;
    height:clamp(360px, 33vw, 520px) !important;
    min-height:360px !important;
    padding:0 !important;
    overflow:hidden !important;
    border-radius:0 !important;
    background:#f0eee9 !important;
    box-shadow:0 24px 64px rgba(21,21,21,.10) !important;
}
.impressa-home-card .impressa-card-media::after{
    content:"";
    position:absolute;
    inset:0;
    z-index:1;
    background:linear-gradient(180deg, transparent 58%, rgba(0,0,0,.10));
    pointer-events:none;
}
.impressa-home-card .card-img,
.premium-card.impressa-home-card .card-img{
    width:100% !important;
    height:100% !important;
    display:block !important;
    object-position:center center !important;
    transform:scale(1) !important;
    filter:none !important;
    transition:transform .58s cubic-bezier(.22,1,.36,1) !important;
    background:#f0eee9 !important;
}
.index-category-section .impressa-home-card .card-img{
    object-fit:cover !important;
}
.index-featured-section .impressa-home-card .card-img,
.index-our-products-section .impressa-home-card .card-img{
    object-fit:contain !important;
}
.impressa-home-card:hover .card-img,
.premium-card.impressa-home-card:hover .card-img{
    transform:scale(1.055) !important;
}
.impressa-home-card .impressa-card-content,
.premium-card.impressa-home-card .impressa-card-content{
    min-height:auto !important;
    padding:0 10px !important;
    background:transparent !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    justify-content:flex-start !important;
    text-align:center !important;
}
.impressa-home-card .impressa-card-content h3,
.premium-card.impressa-home-card .impressa-card-content h3{
    margin:0 0 9px !important;
    color:#3f3f3f !important;
    font-family:'Marcellus', Georgia, serif !important;
    font-style:italic;
    font-size:clamp(25px, 2.1vw, 34px) !important;
    font-weight:600 !important;
    line-height:1.12 !important;
    text-transform:uppercase;
}
.impressa-card-link{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:10px;
    color:#343434 !important;
    font-family:'Marcellus', Georgia, serif;
    font-size:20px;
    font-weight:400;
    line-height:1;
    transition:gap .28s ease, color .28s ease;
}
.impressa-card-link i{
    font-size:12px;
    color:var(--wv-luxe-accent-2);
    opacity:0;
    transform:translateX(-10px);
    transition:opacity .28s ease, transform .28s ease;
}
.impressa-home-card:hover .impressa-card-link{
    gap:14px;
    color:#111 !important;
}
.impressa-home-card:hover .impressa-card-link i{
    opacity:1;
    transform:translateX(0);
}

/* Existing custom center carousel: 3 visible, center bigger */
.index-featured-section .wv-focus-viewport,
.index-our-products-section .wv-focus-viewport{
    padding:44px 8px 56px !important;
    overflow:hidden !important;
}
.index-featured-section .wv-focus-track,
.index-our-products-section .wv-focus-track{
    gap:30px !important;
    align-items:center !important;
}
.index-featured-section .wv-focus-slide,
.index-our-products-section .wv-focus-slide{
    flex:0 0 calc((100% - 60px) / 3) !important;
    max-width:calc((100% - 60px) / 3) !important;
    transform:scale(.88) !important;
    opacity:.74 !important;
    filter:saturate(.90) !important;
    transition:transform .72s cubic-bezier(.22,1,.36,1), opacity .72s ease, filter .72s ease !important;
}
.index-featured-section .wv-focus-slide.is-center,
.index-our-products-section .wv-focus-slide.is-center{
    z-index:5 !important;
    transform:scale(1.08) !important;
    opacity:1 !important;
    filter:saturate(1) !important;
}
.index-featured-section .wv-focus-slide .impressa-card-media,
.index-our-products-section .wv-focus-slide .impressa-card-media{
    height:clamp(330px, 29vw, 465px) !important;
    min-height:330px !important;
    background:#f8f5f2 !important;
}
.index-featured-section .wv-focus-slide.is-center .impressa-card-media,
.index-our-products-section .wv-focus-slide.is-center .impressa-card-media{
    box-shadow:0 34px 82px rgba(21,21,21,.16) !important;
}
.index-featured-section .wv-swiper-pagination,
.index-our-products-section .wv-swiper-pagination{
    display:flex !important;
    justify-content:center !important;
    align-items:center !important;
    gap:9px !important;
}
.index-featured-section .wv-swiper-bullet,
.index-our-products-section .wv-swiper-bullet{
    width:12px !important;
    height:12px !important;
    min-width:12px !important;
    padding:0 !important;
    border-radius:50% !important;
    border:0 !important;
    background:rgba(21,21,21,.28) !important;
    color:transparent !important;
    font-size:0 !important;
    line-height:0 !important;
    box-shadow:none !important;
}
.index-featured-section .wv-swiper-bullet span,
.index-our-products-section .wv-swiper-bullet span{
    display:none !important;
}
.index-featured-section .wv-swiper-bullet.is-active,
.index-our-products-section .wv-swiper-bullet.is-active{
    width:15px !important;
    height:15px !important;
    min-width:15px !important;
    background:var(--Secondary) !important;
}

/* Split about sections from IMPRESSA, recolored */
.wv-luxora-about-section{
    width:100%;
    background:var(--wv-luxe-bg);
    overflow:hidden;
}
.wv-luxora-about-wrapper{
    display:grid;
    grid-template-columns:1fr 1fr;
    min-height:560px;
}
.wv-luxora-about-media{
    position:relative;
    overflow:hidden;
    min-height:560px;
    background:var(--Secondary);
}
.wv-luxora-about-media img{
    width:100%;
    height:100%;
    min-height:560px;
    object-fit:cover;
    display:block;
    transition:transform .7s cubic-bezier(.22,1,.36,1);
}
.wv-luxora-about-media:hover img{
    transform:scale(1.045);
}
.wv-luxora-about-overlay{
    position:absolute;
    inset:0;
    background:linear-gradient(90deg, rgba(0,0,0,.30), transparent 58%);
}
.wv-luxora-about-content{
    background:var(--wv-luxe-panel);
    display:flex;
    align-items:center;
    justify-content:center;
    padding:70px 42px;
}
.wv-luxora-reverse .wv-luxora-about-content{
    background:var(--wv-luxe-panel-dark);
}
.wv-luxora-about-inner{
    max-width:640px;
    text-align:center;
}
.wv-luxora-about-content .section-tag{
    color:rgba(255,255,255,.76) !important;
}
.wv-luxora-about-title{
    color:#fff !important;
    font-size:clamp(34px, 4.1vw, 58px) !important;
    font-weight:500 !important;
    margin-bottom:20px !important;
    letter-spacing:.02em;
}
.wv-luxora-about-text{
    color:rgba(255,255,255,.86) !important;
    font-size:17px;
    line-height:1.85;
    margin-bottom:15px;
}
.wv-mini-stat-row{
    display:grid;
    grid-template-columns:repeat(2, minmax(0,1fr));
    gap:16px;
    margin:28px auto 8px;
}
.wv-mini-stat-row div{
    padding:18px 16px;
    border:1px solid rgba(255,255,255,.16);
    background:rgba(255,255,255,.08);
}
.wv-mini-stat-row strong{
    display:block;
    color:var(--wv-luxe-accent);
    font-size:34px;
    font-family:'Marcellus', Georgia, serif;
    line-height:1;
}
.wv-mini-stat-row span{
    display:block;
    color:rgba(255,255,255,.76);
    font-size:13px;
    text-transform:uppercase;
    letter-spacing:.08em;
    margin-top:7px;
}
.wv-luxora-about-btn,
.wv-novera-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    margin-top:18px;
    padding:12px 28px;
    border:1px solid transparent;
    background:#f8f5f2;
    color:#333 !important;
    text-decoration:none;
    font-size:12px;
    font-weight:800;
    letter-spacing:1.4px;
    text-transform:uppercase;
    transition:all .3s ease;
}
.wv-luxora-about-btn:hover{
    background:var(--wv-luxe-accent);
    color:#111 !important;
    transform:translateY(-3px);
}

/* Lookbook gallery marquee */
.wv-lookbook-section{
    background:var(--wv-luxe-bg-2);
    overflow:hidden;
    border-top:1px solid var(--wv-luxe-line);
    border-bottom:1px solid var(--wv-luxe-line);
}
.wv-lookbook-marquee{
    overflow:hidden;
    width:100%;
}
.wv-lookbook-track{
    display:flex;
    gap:30px;
    width:max-content;
    animation:wvLookbookMove 32s linear infinite;
}
.wv-lookbook-marquee:hover .wv-lookbook-track{
    animation-play-state:paused;
}
.wv-lookbook-item{
    position:relative;
    flex:0 0 min(44vw, 620px);
    height:400px;
    overflow:hidden;
    background:#ece8df;
    box-shadow:0 18px 55px rgba(21,21,21,.08);
}
.wv-lookbook-item img{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
    transition:transform .6s ease;
}
.wv-lookbook-item:hover img{
    transform:scale(1.05);
}
.wv-lookbook-item::after{
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(180deg, transparent 55%, rgba(0,0,0,.48));
}
.wv-lookbook-item span{
    position:absolute;
    left:22px;
    right:22px;
    bottom:20px;
    z-index:2;
    color:#fff;
    font-family:'Marcellus', Georgia, serif;
    font-size:26px;
    text-transform:uppercase;
    letter-spacing:.04em;
}
@keyframes wvLookbookMove{
    from{transform:translateX(0);}
    to{transform:translateX(calc(-50% - 15px));}
}

/* Why choose: remove old pink theme */
.why-choose-section{
    background:
        radial-gradient(circle at top left, rgba(184,163,143,.18), transparent 35%),
        linear-gradient(135deg, #f8f5f2 0%, #f5f5f3 100%) !important;
    color:#111 !important;
}
.why-choose-section .section-tag{
    color:var(--wv-luxe-accent-2) !important;
}
.why-choose-section .section-title,
.why-choose-section h2,
.why-choose-section h5{
    color:#1f1f1f !important;
}
.why-choose-section .feature-card{
    background:rgba(255,255,255,.74) !important;
    border:1px solid var(--wv-luxe-line) !important;
    border-radius:0 !important;
    box-shadow:0 14px 42px rgba(21,21,21,.06) !important;
    text-align:left !important;
}
.why-choose-section .feature-card:hover{
    border-color:var(--wv-luxe-accent) !important;
    box-shadow:0 22px 58px rgba(21,21,21,.11) !important;
}
.why-choose-section .feature-card .card-icon{
    color:var(--wv-luxe-accent-2) !important;
    margin-bottom:15px !important;
}
.why-choose-section .why-choose-image{
    border:1px solid var(--wv-luxe-line) !important;
    border-radius:0 !important;
    box-shadow:var(--wv-luxe-shadow) !important;
}

/* Novera story + parallax CTA + service strip */
.wv-novera-showcase-wrap{
    padding:90px 20px;
    background:var(--wv-luxe-bg-2);
}
.wv-novera-showcase-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    max-width:1440px;
    margin:0 auto;
    gap:46px;
    align-items:center;
}
.wv-novera-showcase-image{
    overflow:hidden;
    box-shadow:var(--wv-luxe-shadow);
}
.wv-novera-showcase-image img{
    width:100%;
    height:520px;
    display:block;
    object-fit:cover;
    transition:transform .65s ease;
}
.wv-novera-showcase-image:hover img{
    transform:scale(1.04);
}
.wv-novera-showcase-content h2{
    font-size:clamp(34px, 4vw, 56px);
    margin:10px 0 18px;
    color:#252525;
}
.wv-novera-showcase-content p{
    max-width:650px;
    color:#5d5a55;
    font-size:17px;
    line-height:1.9;
}
.wv-novera-tag{
    display:inline-flex;
    margin-bottom:7px;
    color:var(--wv-luxe-accent-2);
    font-weight:800;
    font-size:13px;
    letter-spacing:2.8px;
    text-transform:uppercase;
}
.wv-novera-btn{
    background:transparent;
    border-color:#252525;
    color:#252525 !important;
}
.wv-novera-btn:hover{
    background:#252525;
    color:#fff !important;
    transform:translateY(-3px);
}
.wv-parallax-cta{
    position:relative;
    min-height:480px;
    display:grid;
    place-items:center;
    overflow:hidden;
    text-align:center;
    color:#fff;
}
.wv-parallax-bg{
    position:absolute;
    inset:0;
    background-size:cover;
    background-position:center;
    transform:scale(1.04);
}
.wv-parallax-bg::after{
    content:"";
    position:absolute;
    inset:0;
    /*background:linear-gradient(180deg, var(--wv-luxe-accent, #b8a38f), var(--wv-luxe-accent-2, #8d7a68));*/
}
.wv-parallax-content{
    position:relative;
    z-index:1;
    max-width:780px;
    padding:40px 20px;
}
.wv-parallax-content h2{
    color:#fff !important;
    font-size:clamp(38px, 5vw, 72px);
    text-transform:uppercase;
    margin-bottom:18px;
}
.wv-parallax-content p{
    color:rgba(255,255,255,.88) !important;
    font-size:17px;
    margin:0 auto 26px;
    max-width:600px;
}
.wv-underlined-btn:hover{
    color:var(--wv-luxe-accent) !important;
}
.wv-customer-services{
    background:var(--wv-luxe-bg-2);
    padding-top:70px !important;
    border-bottom:1px solid var(--wv-luxe-line);
}
.wv-service-grid{
    display:grid;
    grid-template-columns:repeat(4, minmax(0,1fr));
    gap:34px;
}
.wv-service-box{
    text-align:center;
    padding:10px 18px;
}
.wv-service-box i{
    display:inline-grid;
    place-items:center;
    width:58px;
    height:58px;
    margin-bottom:18px;
    border:1px solid var(--wv-luxe-line);
    color:var(--wv-luxe-accent-2);
    font-size:24px;
    background:#f8f5f2;
}
.wv-service-box h3{
    margin-bottom:10px;
    font-size:22px;
    text-transform:uppercase;
    color:#313131;
}
.wv-service-box p{
    color:#77726b;
    font-size:15px;
    line-height:1.7;
}

/* Product/category listing pages keep image-only cards clean and luxury */
.section-padding .product-grid .premium-card.product-image-only{
    background:#f8f5f2 !important;
    border:1px solid var(--wv-luxe-line) !important;
    border-radius:0 !important;
    box-shadow:0 16px 44px rgba(21,21,21,.06) !important;
}
.section-padding .product-grid .premium-card.product-image-only .card-img-wrap{
    border-radius:0 !important;
    background:#f0eee9 !important;
}
.section-padding .product-grid .premium-card.product-image-only .card-img{
    border-radius:0 !important;
}

/* About/contact/blog cards and page hero share same luxe feel */
.page-hero{
    background:
        linear-gradient(120deg, rgba(21,21,21,.82), rgba(21,21,21,.56)),
        url('../images/backgroundimg.webp') center/cover no-repeat !important;
}
.icon-card{
    padding:34px 28px !important;
    text-align:center;
    background:#f8f5f2 !important;
    border-color:var(--wv-luxe-line) !important;
}
.icon-card i{
    font-size:32px;
    color:var(--wv-luxe-accent-2);
    margin-bottom:18px;
}
.about-image-wrap,
.product-info-panel,
form.premium-card{
    border-radius:0 !important;
    border-color:var(--wv-luxe-line) !important;
    box-shadow:var(--wv-luxe-shadow) !important;
}
.form-control,
.form-select{
    border-radius:0 !important;
}

/* Testimonial/Faq on home blends with IMPRESSA theme */
.testimonial-section,
.woodville-faq-section{
    background:var(--wv-luxe-bg) !important;
}
.testimonial-card,
.google-rating-panel,
.woodville-faq-item,
.testimonial-cta-box{
    border-radius:0 !important;
    border-color:var(--wv-luxe-line) !important;
    box-shadow:0 16px 46px rgba(21,21,21,.07) !important;
}
.testimonial-cta-section{
    background:var(--wv-luxe-bg-2) !important;
}
.testimonial-cta-box{
    background:var(--wv-luxe-panel) !important;
}
.testimonial-cta-box h2,
.testimonial-cta-box p{
    color:#fff !important;
}
.testimonial-cta-box .section-tag{
    color:rgba(255,255,255,.72) !important;
}

/* Market area old pink -> Wood Ville beige */
.cx-city-section{
    background:linear-gradient(180deg, #f8f5f2 0%, #f8f5f2 100%) !important;
}
.cx-city-box{
    border-color:var(--wv-luxe-line) !important;
}
.cx-city-box:hover{
    background:var(--Secondary) !important;
    border-color:var(--Secondary) !important;
}

@media (max-width:1199.98px){
    .wv-lookbook-item{flex-basis:60vw;height:360px;}
}
@media (max-width:991.98px){
    .hero-slider.impressa-hero-slider #homeHero,
    .hero-slider.impressa-hero-slider #homeHero .carousel-inner,
    .hero-slider.impressa-hero-slider #homeHero .carousel-item{
        min-height:560px !important;
    }
    .wv-elite-stats-grid{grid-template-columns:repeat(2, minmax(0,1fr));}
    .wv-elite-stat-box::after{display:none;}
    .wv-luxora-about-wrapper,
    .wv-novera-showcase-grid{grid-template-columns:1fr;}
    .wv-luxora-reverse .wv-luxora-about-content{order:2;}
    .wv-luxora-reverse .wv-luxora-about-media{order:1;}
    .wv-luxora-about-media,
    .wv-luxora-about-media img{min-height:390px;}
    .wv-luxora-about-content{padding:52px 24px;}
    .wv-service-grid{grid-template-columns:repeat(2, minmax(0,1fr));}
    .index-featured-section .wv-focus-track,
    .index-our-products-section .wv-focus-track{gap:20px !important;}
    .index-featured-section .wv-focus-slide,
    .index-our-products-section .wv-focus-slide{
        flex-basis:calc((100% - 40px) / 3) !important;
        max-width:calc((100% - 40px) / 3) !important;
        transform:scale(.90) !important;
    }
    .index-featured-section .wv-focus-slide.is-center,
    .index-our-products-section .wv-focus-slide.is-center{transform:scale(1.04) !important;}
}
@media (max-width:767.98px){
    .hero-slider.impressa-hero-slider .hero-carousel-caption.d-none{display:block !important;}
    .hero-slider.impressa-hero-slider .hero-carousel-caption h1{font-size:clamp(34px, 9vw, 56px) !important;}
    .hero-slider.impressa-hero-slider .hero-carousel-caption p{font-size:14px !important;line-height:1.55 !important;}
    .hero-slider.impressa-hero-slider #homeHero .carousel-control-prev,
    .hero-slider.impressa-hero-slider #homeHero .carousel-control-next{display:none !important;}
    .impressa-home-card .impressa-card-media,
    .premium-card.impressa-home-card .impressa-card-media{height:340px !important;min-height:340px !important;}
    .index-featured-section .wv-focus-viewport,
    .index-our-products-section .wv-focus-viewport{padding:24px 0 38px !important;}
    .index-featured-section .wv-focus-track,
    .index-our-products-section .wv-focus-track{gap:0 !important;}
    .index-featured-section .wv-focus-slide,
    .index-our-products-section .wv-focus-slide,
    .index-featured-section .wv-focus-slide.is-center,
    .index-our-products-section .wv-focus-slide.is-center{
        flex:0 0 100% !important;
        max-width:100% !important;
        transform:scale(1) !important;
        opacity:1 !important;
        filter:none !important;
    }
    .wv-lookbook-item{flex-basis:82vw;height:310px;}
    .wv-lookbook-track{gap:18px;animation-duration:26s;}
    @keyframes wvLookbookMove{to{transform:translateX(calc(-50% - 9px));}}
    .wv-novera-showcase-image img{height:360px;}
    .wv-parallax-cta{min-height:390px;}
}
@media (max-width:575.98px){
    .hero-slider.impressa-hero-slider #homeHero,
    .hero-slider.impressa-hero-slider #homeHero .carousel-inner,
    .hero-slider.impressa-hero-slider #homeHero .carousel-item{
        min-height:430px !important;
    }
    .wv-elite-stats{padding:26px 0;}
    .wv-elite-stats-grid{gap:16px;}
    .wv-mini-stat-row{grid-template-columns:1fr;}
    .wv-luxora-about-inner{max-width:100%;}
    .wv-luxora-about-text{font-size:14px;line-height:1.75;}
    .wv-service-grid{grid-template-columns:1fr;gap:22px;}
    .wv-lookbook-item{height:270px;}
    .impressa-card-link{font-size:18px;}
}
@media (prefers-reduced-motion: reduce){
    .wv-lookbook-track{animation:none;}
}

/* Extra anti-pink overrides for FAQ/CTA buttons and older cards */
.testimonial-cta-box::before{border-color:rgba(184,163,143,.24) !important;}
.testimonial-cta-box .premium-btn{
    background:#f8f5f2 !important;
    border:1px solid rgba(255,255,255,.28) !important;
    color:#111 !important;
}
.testimonial-cta-box .premium-btn::before{background:var(--wv-luxe-accent) !important;}
.testimonial-cta-box .premium-btn:hover{border-color:var(--wv-luxe-accent) !important;}
.woodville-faq-item:hover,
.woodville-faq-item[open]{
    border-color:var(--wv-luxe-accent) !important;
    box-shadow:0 22px 60px rgba(21,21,21,.10) !important;
}
.woodville-faq-item summary::after{
    background:var(--wv-luxe-accent-2) !important;
}
.reviewer-avatar,
.google-rating-panel,
.review-service i{
    border-color:var(--wv-luxe-line) !important;
}
.reviewer-avatar{
    background:linear-gradient(135deg, var(--wv-luxe-accent), var(--wv-luxe-accent-2)) !important;
    color:#fff !important;
}
.review-service i{
    color:var(--wv-luxe-accent-2) !important;
    background:var(--wv-luxe-bg-2) !important;
}


/* =========================================================
   User update: center-focused category/review carousel,
   single-line Why Choose, removed side image, slow hero pan
   ========================================================= */
.hero-slider.impressa-hero-slider #homeHero .carousel-item{
    overflow:hidden !important;
}
.hero-slider.impressa-hero-slider #homeHero .carousel-item.active .hero-carousel-img{
    max-width:none !important;
    will-change:transform;
    animation:wvHeroSlowPanRight 13s ease-in-out both;
}
.hero-slider.impressa-hero-slider #homeHero .carousel-item:nth-child(even).active .hero-carousel-img{
    animation-name:wvHeroSlowPanLeft;
}
@keyframes wvHeroSlowPanRight{
    from{transform:scale(1.06) translate3d(-2.2%,0,0);}
    to{transform:scale(1.06) translate3d(2.2%,0,0);}
}
@keyframes wvHeroSlowPanLeft{
    from{transform:scale(1.06) translate3d(2.2%,0,0);}
    to{transform:scale(1.06) translate3d(-2.2%,0,0);}
}

.wv-center-carousel{
    width:100%;
    overflow:hidden !important;
    padding:18px 0 52px !important;
}
.wv-center-carousel .swiper-wrapper{
    align-items:stretch !important;
}
.wv-center-carousel .swiper-slide{
    height:auto !important;
    opacity:.62;
    transform:scale(.88);
    filter:saturate(.82);
    transition:transform .45s cubic-bezier(.22,1,.36,1), opacity .45s ease, filter .45s ease;
}
.wv-center-carousel .swiper-slide-active{
    opacity:1;
    transform:scale(1.06);
    filter:saturate(1);
    z-index:5;
}
.wv-center-carousel .swiper-slide .premium-card,
.wv-center-carousel .swiper-slide .testimonial-card{
    height:100% !important;
}
.wv-category-center-carousel .impressa-home-card{
    transform:none !important;
}
.wv-category-center-carousel .impressa-card-media,
.wv-category-center-carousel .premium-card.impressa-home-card .impressa-card-media{
    height:340px !important;
    min-height:340px !important;
}
.wv-category-center-carousel .card-img{
    height:100% !important;
    object-fit:cover !important;
}
.wv-review-center-carousel .testimonial-card{
    min-height:360px;
}
.wv-review-center-carousel .swiper-slide-active .testimonial-card,
.wv-category-center-carousel .swiper-slide-active .impressa-home-card{
    box-shadow:0 34px 86px rgba(21,21,21,.16) !important;
}
.wv-center-carousel .woodville-swiper-pagination{
    position:static !important;
    display:flex !important;
    justify-content:center !important;
    align-items:center !important;
    gap:9px !important;
    margin-top:26px !important;
}
.wv-center-carousel .woodville-swiper-bullet{
    width:12px !important;
    height:12px !important;
    min-width:12px !important;
    padding:0 !important;
    border-radius:50% !important;
    border:0 !important;
    background:rgba(21,21,21,.28) !important;
    color:transparent !important;
    font-size:0 !important;
    line-height:0 !important;
    opacity:1 !important;
    box-shadow:none !important;
}
.wv-center-carousel .woodville-swiper-bullet span{
    display:none !important;
}
.wv-center-carousel .woodville-swiper-bullet.swiper-pagination-bullet-active{
    width:15px !important;
    height:15px !important;
    min-width:15px !important;
    background:var(--Secondary) !important;
}
.wv-center-carousel.swiper-fallback-ready .swiper-wrapper{
    display:grid !important;
    grid-template-columns:repeat(3, minmax(0,1fr));
    gap:30px;
}
.wv-center-carousel.swiper-fallback-ready .swiper-slide{
    opacity:1;
    transform:none;
    filter:none;
}

.why-choose-single-line .section-header{
    text-align:center !important;
    margin-bottom:46px !important;
}
.why-choose-single-line .feature-card{
    padding:30px 20px !important;
    min-height:100% !important;
}
.why-choose-single-line .feature-card .card-icon{
    font-size:2.35rem !important;
    margin-bottom:15px !important;
}
.why-choose-single-line .feature-card h5{
    font-size:1.22rem !important;
}
.why-choose-single-line .feature-card p{
    font-size:.94rem !important;
}
.why-choose-single-line .why-choose-btn{
    margin-top:34px !important;
}

.testimonial-cta-section{
    display:none !important;
}

@media (max-width:991.98px){
    .wv-center-carousel .swiper-slide,
    .wv-center-carousel .swiper-slide-active{
        transform:scale(1) !important;
        opacity:1 !important;
        filter:none !important;
    }
    .wv-category-center-carousel .impressa-card-media,
    .wv-category-center-carousel .premium-card.impressa-home-card .impressa-card-media{
        height:310px !important;
        min-height:310px !important;
    }
    .wv-center-carousel.swiper-fallback-ready .swiper-wrapper{
        grid-template-columns:repeat(2, minmax(0,1fr));
        gap:22px;
    }
}
@media (max-width:767.98px){
    .wv-center-carousel{
        padding:8px 0 42px !important;
    }
    .wv-category-center-carousel .impressa-card-media,
    .wv-category-center-carousel .premium-card.impressa-home-card .impressa-card-media{
        height:320px !important;
        min-height:320px !important;
    }
    .wv-review-center-carousel .testimonial-card{
        min-height:auto;
    }
}
@media (max-width:575.98px){
    .hero-slider.impressa-hero-slider #homeHero .carousel-item.active .hero-carousel-img{
        animation-duration:15s;
    }
    .wv-center-carousel.swiper-fallback-ready .swiper-wrapper{
        grid-template-columns:1fr;
    }
}
@media (prefers-reduced-motion: reduce){
    .hero-slider.impressa-hero-slider #homeHero .carousel-item.active .hero-carousel-img{
        animation:none !important;
    }
}


/* =========================================================
   Single home banner: visible slow cinematic motion
   Note: image transform was blocked by another !important rule,
   so the movement is applied on .wv-hero-motion-frame instead.
   ========================================================= */
.hero-slider.impressa-hero-slider #homeHero.hero-single-image,
.hero-slider.impressa-hero-slider #homeHero.hero-single-image .carousel-inner,
.hero-slider.impressa-hero-slider #homeHero.hero-single-image .carousel-item{
    overflow:hidden !important;
}

.hero-slider.impressa-hero-slider #homeHero.hero-single-image .carousel-indicators,
.hero-slider.impressa-hero-slider #homeHero.hero-single-image .carousel-control-prev,
.hero-slider.impressa-hero-slider #homeHero.hero-single-image .carousel-control-next{
    display:none !important;
}

.hero-slider.impressa-hero-slider #homeHero.hero-single-image .carousel-item{
    position:relative !important;
}

.hero-slider.impressa-hero-slider #homeHero.hero-single-image .wv-hero-motion-frame{
    position:absolute !important;
    inset:-5% !important;
    width:110% !important;
    height:110% !important;
    z-index:0 !important;
    transform-origin:center center !important;
    will-change:transform !important;
    animation:wvSingleBannerCinematicMotion 18s ease-in-out infinite alternate !important;
}

.hero-slider.impressa-hero-slider #homeHero.hero-single-image .wv-hero-motion-frame .hero-carousel-img{
    width:100% !important;
    max-width:none !important;
    height:100% !important;
    display:block !important;
    object-fit:cover !important;
    object-position:center center !important;
    opacity:.86 !important;
}

.hero-slider.impressa-hero-slider #homeHero.hero-single-image .hero-carousel-caption{
    z-index:3 !important;
}

@keyframes wvSingleBannerCinematicMotion{
    0%{
        transform:translate3d(-3.5%, 0, 0) scale(1.04) rotate(0.001deg);
    }
    30%{
        transform:translate3d(1.5%, -1.2%, 0) scale(1.10) rotate(0.001deg);
    }
    65%{
        transform:translate3d(4.2%, 1%, 0) scale(1.08) rotate(0.001deg);
    }
    100%{
        transform:translate3d(-1.8%, -1%, 0) scale(1.13) rotate(0.001deg);
    }
}

@media (max-width:767.98px){
    .hero-slider.impressa-hero-slider #homeHero.hero-single-image .wv-hero-motion-frame{
        inset:-7% !important;
        width:114% !important;
        height:114% !important;
        animation-duration:20s !important;
    }
}

/* =========================================================
   FIX: Category listing/product grid images must show full on mobile
   Scope: category.php image-only cards only. Home page cards untouched.
   ========================================================= */
.section-padding .product-grid .premium-card.product-image-only{
    overflow:hidden !important;
    background:#f8f5f2 !important;
}

.section-padding .product-grid .premium-card.product-image-only .card-img-wrap{
    width:100% !important;
    height:320px !important;
    min-height:320px !important;
    aspect-ratio:1 / 1 !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    padding:0 !important;
    margin:0 !important;
    background:#f8f5f0 !important;
    overflow:hidden !important;
}

.section-padding .product-grid .premium-card.product-image-only .card-img{
    width:100% !important;
    height:100% !important;
    max-width:100% !important;
    max-height:100% !important;
    display:block !important;
    object-fit:cover !important;
    object-position:center center !important;
    margin:0 !important;
    padding:0 !important;
    transform:none !important;
    filter:none !important;
}

.section-padding .product-grid .premium-card.product-image-only:hover,
.section-padding .product-grid .premium-card.product-image-only:hover .card-img,
.section-padding .product-grid .premium-card.product-image-only:hover .card-img-wrap{
    transform:none !important;
    filter:none !important;
}

@media (max-width:991.98px){
    .section-padding .product-grid .premium-card.product-image-only .card-img-wrap{
        height:300px !important;
        min-height:300px !important;
    }
}

@media (max-width:575.98px){
    .section-padding .product-grid .premium-card.product-image-only .card-img-wrap{
        height:270px !important;
        min-height:270px !important;
    }
}

/* Floating left enquiry form + protected CTA button styling */
.wv-luxe-action-btn,
.about-brand-section .wv-luxe-action-btn,
.google-rating-panel .wv-luxe-action-btn{
    position:relative !important;
    overflow:hidden !important;
    background:var(--Secondary) !important;
    border:1px solid var(--Secondary) !important;
    color:#fff !important;
    min-height:46px !important;
    padding:12px 24px !important;
    box-shadow:0 14px 34px rgba(0,0,0,.13) !important;
}
.wv-luxe-action-btn::before,
.about-brand-section .wv-luxe-action-btn::before,
.google-rating-panel .wv-luxe-action-btn::before{
    content:'' !important;
    position:absolute !important;
    inset:0 !important;
    z-index:0 !important;
    background:linear-gradient(135deg, var(--wv-luxe-accent, #b8a38f), var(--wv-luxe-accent-2, #8d7a68)) !important;
    transform:translateY(101%) !important;
    transition:transform .38s cubic-bezier(.22,1,.36,1) !important;
}
.wv-luxe-action-btn span,
.wv-luxe-action-btn i,
.about-brand-section .wv-luxe-action-btn span,
.about-brand-section .wv-luxe-action-btn i,
.google-rating-panel .wv-luxe-action-btn span,
.google-rating-panel .wv-luxe-action-btn i,
.google-rating-panel .wv-luxe-action-btn .text-white{
    position:relative !important;
    z-index:1 !important;
    color:#fff !important;
}
.wv-luxe-action-btn:hover,
.about-brand-section .wv-luxe-action-btn:hover,
.google-rating-panel .wv-luxe-action-btn:hover{
    color:#fff !important;
    border-color:var(--wv-luxe-accent, #b8a38f) !important;
    transform:translateY(-3px) !important;
    box-shadow:0 20px 48px rgba(0,0,0,.18) !important;
}
.wv-luxe-action-btn:hover::before,
.about-brand-section .wv-luxe-action-btn:hover::before,
.google-rating-panel .wv-luxe-action-btn:hover::before{
    transform:translateY(0) !important;
}
.wv-luxe-action-btn:hover span,
.wv-luxe-action-btn:hover i,
.about-brand-section .wv-luxe-action-btn:hover span,
.about-brand-section .wv-luxe-action-btn:hover i,
.google-rating-panel .wv-luxe-action-btn:hover span,
.google-rating-panel .wv-luxe-action-btn:hover i{
    color:#fff !important;
}

.wv-enquiry-float{
    position:fixed;
    left:0;
    top:50%;
    width:318px;
    max-width:calc(100vw - 54px);
    z-index:10030;
    transform:translate(-100%, -50%);
    transition:transform .38s cubic-bezier(.22,1,.36,1), filter .28s ease;
    filter:drop-shadow(0 18px 42px rgba(0,0,0,.18));
}
.wv-enquiry-float.is-open,
.wv-enquiry-float:hover{
    transform:translate(0, -50%);
}
.wv-enquiry-tab{
    position:absolute;
    right:-44px;
    top:50%;
    transform:translateY(-50%);
    width:44px;
    min-height:142px;
    border:0;
    border-radius:0;
    background:linear-gradient(180deg, var(--wv-luxe-accent, #b8a38f), var(--wv-luxe-accent-2, #8d7a68));
    color:#fff;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    cursor:pointer;
    box-shadow:8px 12px 26px rgba(0,0,0,.18);
    overflow:hidden;
}
.wv-enquiry-tab i{
    font-size:15px;
    line-height:1;
    position:absolute;
    top:14px;
}
.wv-enquiry-tab span{
    writing-mode:vertical-rl;
    transform:rotate(180deg);
    font-size:14px;
    font-weight:900;
    letter-spacing:1px;
    text-transform:uppercase;
}
.wv-enquiry-form{
    width:100%;
    padding:16px;
    background:rgba(255,255,255,.96);
    border:1px solid rgba(184,163,143,.42);
    backdrop-filter:blur(12px);
    display:grid;
    gap:10px;
}
.wv-enquiry-head{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:12px;
    padding-bottom:8px;
    border-bottom:1px solid rgba(21,21,21,.08);
}
.wv-enquiry-head span{
    display:block;
    color:var(--wv-luxe-accent-2, #8d7a68);
    font-size:11px;
    font-weight:900;
    letter-spacing:1.7px;
    line-height:1;
    text-transform:uppercase;
    margin-bottom:5px;
}
.wv-enquiry-head strong{
    display:block;
    color:var(--Secondary);
    font-family:'Marcellus', Georgia, serif;
    font-size:20px;
    line-height:1.15;
    font-weight:500;
}
.wv-enquiry-close{
    width:28px;
    height:28px;
    border:1px solid rgba(21,21,21,.10);
    background:#f8f5f2;
    color:var(--Secondary);
    display:grid;
    place-items:center;
    cursor:pointer;
}
.wv-enquiry-form input,
.wv-enquiry-form textarea{
    width:100%;
    border:1px solid rgba(21,21,21,.13);
    background:#f8f5f2;
    color:#222;
    padding:9px 11px;
    font-size:13px;
    line-height:1.35;
    outline:none;
    border-radius:0;
    box-shadow:none;
}
.wv-enquiry-form textarea{
    min-height:78px;
    resize:vertical;
}
.wv-enquiry-form input:focus,
.wv-enquiry-form textarea:focus{
    border-color:var(--wv-luxe-accent, #b8a38f);
    box-shadow:0 0 0 3px rgba(184,163,143,.16);
}
.wv-enquiry-submit{
    width:100%;
    border:0;
    min-height:42px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    background:#25d366;
    color:#fff;
    font-weight:900;
    font-size:13px;
    letter-spacing:.2px;
    cursor:pointer;
    transition:transform .25s ease, box-shadow .25s ease, filter .25s ease;
}
.wv-enquiry-submit:hover{
    transform:translateY(-2px);
    box-shadow:0 12px 28px rgba(37,211,102,.28);
    filter:saturate(1.06);
}
@media (max-width:575.98px){
    .wv-enquiry-float{
        width:286px;
        top:auto;
        bottom:112px;
        transform:translateX(-100%);
    }
    .wv-enquiry-float.is-open,
    .wv-enquiry-float:hover{
        transform:translateX(0);
    }
    .wv-enquiry-tab{
        right:-42px;
        width:42px;
        min-height:128px;
    }
    .wv-enquiry-form{padding:14px;gap:9px;}
    .wv-enquiry-head strong{font-size:18px;}
}
