/*
 * WFX Furniture Catalog v1.0
 * Modern Elxis 5.6+ catalogue template.
 * Source intentionally readable and unminified.
 */
@font-face {font-family: 'Drtoc-Bold'; src: url('../fonts/Drtoc-Bold.woff2') format('woff2'),url('../fonts/Drtoc-Bold.woff') format('woff');font-weight: bold;font-style: normal;font-display: swap;}
@font-face {font-family: AeonikPro-Regular;src: url(../fonts/AeonikPro-Regular.woff2) format("woff2"), url(../Fonts/AeonikPro-Regular.woff) format("woff");font-display: swap;}
@font-face {font-family: wsfxsemibold-Regular;src: url(../fonts/wsfxsemibold-Regular.woff2) format("woff2"), url(../Fonts/wsfxsemibold-Regular.woff) format("woff");font-display: swap;}
@font-face {font-family: BookAntiqua-Regular;src: url(../fonts/BookAntiqua-Regular.woff2) format("woff2"), url(../Fonts/BookAntiqua-Regular.woff) format("woff");font-display: swap;}


:root {
    --wfxf-max: 1440px;
    --wfxf-pad: 32px;
    --wfxf-bg: #F5F2EC;
    --wfxf-surface: #FFFFFF;
    --wfxf-text: #24231F;
    --wfxf-muted: #756F66;
    --wfxf-accent: #8B6F47;
    --wfxf-accent2: #2F4638;
    --wfxf-border: #DDD7CE;
    --wfxf-footer: #1E211D;
    --wfxf-hero-h: 320px;
    --wfxf-sidebar: 320px;
    --wfxf-gap: 28px;
    --wfxf-overlay: 0.42;
    --wfxf-radius: 2px;
    --wfxf-shadow: 0 18px 50px rgba(28, 25, 20, 0.08);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body.wfxf-body {
    margin: 0;
    background: var(--wfxf-bg);
    color: var(--wfxf-text);
     font-family: 'AeonikPro-Regular', "Segoe UI", Arial, sans-serif;
    font-size: 16px;
    line-height: 1.7;
    -webkit-font-smoothing: antialiased;
}

p{font-family: 'AeonikPro-Regular', "Segoe UI", Arial, sans-serif !important;}
p span{font-family: 'AeonikPro-Regular', "Segoe UI", Arial, sans-serif !important;/*font-size: 17px !important;*/}
p em, p span em{font-family: 'AeonikPro-Regular', "Segoe UI", Arial, sans-serif !important;}{font-family: 'AeonikPro-Regular', "Segoe UI", Arial, sans-serif !important;font-size: inherit !important;}
p *{font-family: 'AeonikPro-Regular', "Segoe UI", Arial, sans-serif !important;}
a { color: var(--wfxf-accent2); text-decoration-thickness: 1px; text-underline-offset: 3px; }
a:hover { color: var(--wfxf-accent); }
img { max-width: 100%; height: auto; }
button, input, select, textarea { font: inherit; }

.wfxf-container {
    width: min(100%, calc(var(--wfxf-max) + (var(--wfxf-pad) * 2)));
    margin: 0 auto;
    padding-left: var(--wfxf-pad);
    padding-right: var(--wfxf-pad);
}

.wfxf-topbar {
    background: var(--wfxf-accent2);
    color: #fff;
    font-size: 13px;
    letter-spacing: 0.02em;
}
.wfxf-topbar .module { margin: 0; padding: 7px 0; }

.wfxf-header {
    position: relative;
    z-index: 900;
    background: color-mix(in srgb, var(--wfxf-surface) 96%, transparent);
    border-bottom: 1px solid var(--wfxf-border);
    backdrop-filter: blur(14px);
}
.wfxf-sticky-header .wfxf-header { position: sticky; top: 0; }
.wfxf-header-row {
    min-height: 86px;
    display: grid;
    grid-template-columns: auto 1fr auto;
    align-items: center;
    gap: 30px;
}
.wfxf-brand a { display: inline-flex; flex-direction: column; text-decoration: none; color: var(--wfxf-text); }
.wfxf-logo-text { font-family: wsfxsemibold-Regular, "Times New Roman", serif; font-size: 26px; line-height: 1; letter-spacing: 0.12em; }
.wfxf-logo-sub { margin-top: 8px; font-size: 10px; text-transform: uppercase; letter-spacing: 0.22em; color: var(--wfxf-muted); }
.wfxf-logo-image { max-height: 58px; width: auto; display: block; }

.wfxf-navigation { justify-self: center; min-width: 0; }
.wfxf-navigation .module { margin: 0; }
.wfxf-navigation .elx_menu { display: flex; flex-wrap: wrap; gap: 4px; align-items: center; margin: 0; padding: 0; list-style: none; }
.wfxf-navigation .elx_menu > li { position: relative; list-style: none; }
.wfxf-navigation .elx_menu > li > a {
    display: block;
    padding: 15px 14px;
    color: var(--wfxf-text);
    text-decoration: none;
    text-transform: uppercase;
    font-size: 12px;
    font-weight: 650;
    letter-spacing: 0.09em;
}
.wfxf-navigation .elx_menu > li > a:hover,
.wfxf-navigation .elx_menu > li.menu_active > a { color: var(--wfxf-accent); }
.wfxf-navigation .elx_menu ul {
    display: none;
    position: absolute;
    left: 0;
    top: 100%;
    min-width: 220px;
    margin: 0;
    padding: 10px;
    background: var(--wfxf-surface);
    border: 1px solid var(--wfxf-border);
    box-shadow: var(--wfxf-shadow);
    list-style: none;
}
.wfxf-navigation .elx_menu li:hover > ul { display: block; }
.wfxf-navigation .elx_menu ul li { position: relative; display: block; }
.wfxf-navigation .elx_menu ul a { display: block; padding: 10px 12px; color: var(--wfxf-text); text-decoration: none; font-size: 14px; }
.wfxf-navigation .elx_menu ul a:hover { background: var(--wfxf-bg); color: var(--wfxf-accent); }
.wfxf-navigation .elx_menu ul ul { left: 100%; top: -11px; }

.wfxf-header-search { min-width: 190px; max-width: 360px; }
.wfxf-header-search .module { margin: 0; }
.wfxf-menu-toggle {
    display: none;
    width: 44px;
    height: 44px;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    gap: 5px;
    padding: 0;
    border: 1px solid var(--wfxf-border);
    background: var(--wfxf-surface);
    cursor: pointer;
}
.wfxf-menu-toggle span { width: 19px; height: 1px; background: var(--wfxf-text); transition: transform .2s ease, opacity .2s ease; }
.wfxf-menu-open .wfxf-menu-toggle span:nth-child(1) { transform: translateY(6px) rotate(45deg); }
.wfxf-menu-open .wfxf-menu-toggle span:nth-child(2) { opacity: 0; }
.wfxf-menu-open .wfxf-menu-toggle span:nth-child(3) { transform: translateY(-6px) rotate(-45deg); }

.wfxf-header-bottom { background: var(--wfxf-surface); border-bottom: 1px solid var(--wfxf-border); }
.wfxf-header-bottom .module { margin: 0; padding: 10px 0; }

.wfxf-hero {
    position: relative;
    min-height: var(--wfxf-hero-h);
    display: flex;
    align-items: flex-end;
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    color: #fff;
    overflow: hidden;
}
.wfxf-hero.no-image { background: linear-gradient(120deg, var(--wfxf-accent2), #53675a); }
.wfxf-hero-overlay { position: absolute; inset: 0; background: rgba(12, 14, 12, var(--wfxf-overlay)); }
.wfxf-hero-inner { position: relative; z-index: 1; padding-top: 64px; padding-bottom: 54px; }
.wfxf-hero h1 { max-width: 900px; margin: 18px 0 8px; color: #fff; font-family: wsfxsemibold-Regular, "Times New Roman", serif; font-size: clamp(38px, 6vw, 76px); line-height: 1.02; font-weight: 500; letter-spacing: -0.025em; }
.wfxf-hero p { max-width: 720px; margin: 0; color: rgba(255,255,255,.86); font-size: clamp(15px, 2vw, 19px); }

.wfxf-breadcrumb-band { background: var(--wfxf-surface); border-bottom: 1px solid var(--wfxf-border); }
.wfxf-breadcrumb { padding: 14px 0; font-size: 13px; }
.wfxf-breadcrumb ol { display: flex; flex-wrap: wrap; gap: 0; margin: 0; padding: 0; list-style: none; }
.wfxf-breadcrumb li { display: inline-flex; align-items: center; color: var(--wfxf-muted); }
.wfxf-breadcrumb li + li::before { content: "/"; margin: 0 9px; opacity: .5; }
.wfxf-breadcrumb a { color: inherit; text-decoration: none; }
.wfxf-breadcrumb a:hover { color: var(--wfxf-accent); }
.wfxf-hero .wfxf-breadcrumb { color: rgba(255,255,255,.75); }
.wfxf-hero .wfxf-breadcrumb a { color: rgba(255,255,255,.9); }

.wfxf-main { padding: clamp(38px, 5vw, 78px) 0; }
.wfxf-position-top { margin-bottom: 42px; }
.wfxf-position-bottom { margin-top: 54px; }
.wfxf-content-grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--wfxf-gap); align-items: start; }
.wfxf-content-grid.has-sidebar { grid-template-columns: minmax(0, 1fr) var(--wfxf-sidebar); }
.wfxf-content { min-width: 0; }
.wfxf-sidebar { min-width: 0; }
.wfxf-sticky-sidebar .wfxf-sidebar-inner { position: sticky; top: 118px; }

/* Generic Elxis content restyling */
.wfxf-content h1, .wfxf-content h2, .wfxf-content h3, .wfxf-content h4, .wfxf-content h5,
.module h3 {
    color: var(--wfxf-text);
    font-family: wsfxsemibold-Regular, "Times New Roman", serif;
    font-weight: 500;
    line-height: 1.2;
}
.wfxf-content h1 { font-size: clamp(34px, 4vw, 54px); }
.wfxf-content h2 { margin-top: 1.5em; font-size: clamp(28px, 3vw, 40px); }
.wfxf-content h3, .module h3 { font-size: 24px; }
.wfxf-content p { margin: 0 0 1.15em; }
.wfxf-content blockquote { margin: 36px 0; padding: 24px 30px; border-left: 3px solid var(--wfxf-accent); background: var(--wfxf-surface); font-family: wsfxsemibold-Regular, serif; font-size: 20px; }

.elx5_artbox {
    margin-bottom: var(--wfxf-gap);
    background: var(--wfxf-surface);
    border: 1px solid var(--wfxf-border);
    box-shadow: 0 8px 30px rgba(28,25,20,.04);
    overflow: hidden;
}
.elx5_artbox_inner { padding: 20px 22px; }
.elx5_artbox h3 { margin-top: 0; }
.elx5_content_imagebox { margin: 0; overflow: hidden; }
.elx5_content_imagebox img { width: 100%; transition: transform .45s ease; }
.elx5_artbox:hover .elx5_content_imagebox img { transform: scale(1.025); }
.elx5_dateauthor, .elx5_content_subtitle { color: var(--wfxf-muted); }

.elx5_btn, button.elx5_btn, input.elx5_btn {
    border: 1px solid var(--wfxf-accent2);
    border-radius: 0;
    background: var(--wfxf-accent2);
    color: #fff;
}
.elx5_btn:hover, button.elx5_btn:hover, input.elx5_btn:hover { background: var(--wfxf-accent); border-color: var(--wfxf-accent); }
.elx5_text, .elx5_select, textarea.elx5_text { border-color: var(--wfxf-border); border-radius: 0; }
.elx5_pagination { display: flex; gap: 6px; flex-wrap: wrap; }
.elx5_pagination li a { border: 1px solid var(--wfxf-border); background: var(--wfxf-surface); color: var(--wfxf-text); }
.elx5_pagination li.elx5_pagactive a, .elx5_pagination li a:hover { background: var(--wfxf-accent2); color: #fff; border-color: var(--wfxf-accent2); }

.wfxf-sidebar .module {
    margin: 0 0 22px;
    padding: 22px;
    background: var(--wfxf-surface);
    border: 1px solid var(--wfxf-border);
}
.wfxf-sidebar .module h3 { margin: 0 0 16px; font-size: 21px; }

.wfxf-module-band { padding: 28px 0; background: var(--wfxf-surface); border-bottom: 1px solid var(--wfxf-border); }
.wfxf-prefooter { padding: 48px 0; background: var(--wfxf-accent2); color: #fff; }
.wfxf-prefooter .module h3, .wfxf-prefooter .module a { color: #fff; }

.wfxf-footer { padding: var(--wfxf-footer-pad-top, 62px) 0 var(--wfxf-footer-pad-bottom, 26px); background: var(--wfxf-footer); color: rgba(255,255,255,.72); }
.wfxf-footer-grid { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 36px; }
.wfxf-footer .module { margin: 0; }
.wfxf-footer .module h3 { margin: 0 0 18px; color: #fff; font-size: 20px; }
.wfxf-footer a { color: rgba(255,255,255,.75); text-decoration: none; }
.wfxf-footer a:hover { color: #fff; }
.wfxf-footer-lower { display: flex; justify-content: space-between; align-items: center; gap: 20px; margin-top: 48px; padding-top: 24px; border-top: 1px solid rgba(255,255,255,.14); }
.wfxf-socials { display: flex; gap: 8px; flex-wrap: wrap; }
.wfxf-socials a { width: 38px; height: 38px; display: inline-flex; align-items: center; justify-content: center; border: 1px solid rgba(255,255,255,.22); }
.wfxf-socials a:hover { background: #fff; color: var(--wfxf-footer); }
.wfxf-footer-menu { margin-top: 20px; }
.wfxf-footer-menu .elx_menu { display: flex; flex-wrap: wrap; gap: 18px; margin: 0; padding: 0; list-style: none; }
.wfxf-footer-menu .elx_menu ul { display: none; }

.wfxf-to-top {
    position: fixed;
    right: 22px;
    bottom: 22px;
    width: 46px;
    height: 46px;
    z-index: 800;
    border: 0;
    background: var(--wfxf-accent2);
    color: #fff;
    opacity: 0;
    pointer-events: none;
    transform: translateY(8px);
    transition: opacity .2s ease, transform .2s ease, background .2s ease;
    cursor: pointer;
}
.wfxf-to-top.is-visible { opacity: 1; pointer-events: auto; transform: translateY(0); }
.wfxf-to-top:hover { background: var(--wfxf-accent); }

.clear { clear: both; }

@media (max-width: 1180px) {
    .wfxf-header-row { grid-template-columns: auto auto 1fr; }
    .wfxf-header-search { justify-self: end; }
    .wfxf-content-grid.has-sidebar { grid-template-columns: minmax(0,1fr) 290px; }
}

@media (max-width: 980px) {
    :root { --wfxf-pad: 22px; }
    .wfxf-header-row { grid-template-columns: 1fr auto; min-height: 74px; }
    .wfxf-menu-toggle { display: inline-flex; justify-self: end; }
    .wfxf-navigation {
        position: fixed;
        inset: 74px 0 auto 0;
        max-height: calc(100vh - 74px);
        overflow-y: auto;
        display: none;
        padding: 18px var(--wfxf-pad) 28px;
        background: var(--wfxf-surface);
        border-top: 1px solid var(--wfxf-border);
        box-shadow: var(--wfxf-shadow);
    }
    .wfxf-menu-open .wfxf-navigation { display: block; }
    .wfxf-navigation .elx_menu { display: block; }
    .wfxf-navigation .elx_menu > li { display: block; border-bottom: 1px solid var(--wfxf-border); }
    .wfxf-navigation .elx_menu > li > a { padding: 14px 4px; }
    .wfxf-navigation .elx_menu ul,
    .wfxf-navigation .elx_menu ul ul { position: static; display: block; width: 100%; min-width: 0; box-shadow: none; border: 0; padding: 0 0 8px 16px; background: transparent; }
    .wfxf-navigation .elx_menu ul a { padding: 8px 4px; }
    .wfxf-header-search { grid-column: 1 / -1; width: 100%; max-width: none; padding-bottom: 14px; }
    .wfxf-content-grid.has-sidebar { grid-template-columns: 1fr; }
    .wfxf-sidebar { order: 2; }
    .wfxf-sticky-sidebar .wfxf-sidebar-inner { position: static; }
    .wfxf-footer-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
}

@media (max-width: 640px) {
    :root { --wfxf-pad: 18px; }
    .wfxf-hero-inner { padding-top: 40px; padding-bottom: 34px; }
    .wfxf-hero h1 { font-size: 40px; }
    .wfxf-main { padding: 40px 0; }
    .wfxf-footer-grid { grid-template-columns: 1fr; }
    .wfxf-footer-lower { align-items: flex-start; flex-direction: column; }
    .wfxf-logo-text { font-size: 22px; }
    .wfxf-logo-sub { display: none; }
}

@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; }
}

/* ========================================================================== */
/* WFX Furniture Catalog v1.2                                                  */
/* Off-canvas navigation + premium catalogue category presentation             */
/* ========================================================================== */

:root {
    --wfxf-menu-width: 390px;
    --wfxf-category-cols: 3;
}

body.wfxf-menu-open { overflow: hidden; }

/* Header becomes deliberately simple: menu trigger, brand, search. */
.wfxf-header-row {
    grid-template-columns: auto minmax(180px, 1fr) minmax(220px, 390px);
    gap: 24px;
}
.wfxf-menu-toggle {
    display: inline-flex;
    justify-self: start;
    position: relative;
    z-index: 2;
}
.wfxf-brand { justify-self: start; }
.wfxf-header-search { width: 100%; max-width: 390px; justify-self: end; }

/* Off-canvas menu. */
.wfxf-menu-drawer {
    position: fixed;
    top: 0;
    bottom: 0;
    width: min(var(--wfxf-menu-width), 92vw);
    z-index: 1200;
    display: flex;
    flex-direction: column;
    background: var(--wfxf-surface);
    box-shadow: 0 30px 80px rgba(19, 18, 16, .22);
    visibility: hidden;
    transition: transform .32s ease, visibility .32s ease;
    overflow: hidden;
}
.wfxf-menu-side-left .wfxf-menu-drawer { left: 0; transform: translateX(-104%); }
.wfxf-menu-side-right .wfxf-menu-drawer { right: 0; transform: translateX(104%); }
.wfxf-menu-open .wfxf-menu-drawer { transform: translateX(0); visibility: visible; }
.wfxf-menu-drawer-head {
    min-height: 88px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    padding: 20px 24px;
    border-bottom: 1px solid var(--wfxf-border);
}
.wfxf-menu-brand { display: flex; flex-direction: column; }
.wfxf-menu-close {
    width: 44px;
    height: 44px;
    border: 1px solid var(--wfxf-border);
    background: transparent;
    color: var(--wfxf-text);
    font-size: 30px;
    line-height: 1;
    cursor: pointer;
}
.wfxf-menu-overlay {
    position: fixed;
    inset: 0;
    z-index: 1190;
    padding: 0;
    border: 0;
    background: rgba(18, 18, 16, .48);
    opacity: 0;
    visibility: hidden;
    transition: opacity .25s ease, visibility .25s ease;
    cursor: default;
}
.wfxf-menu-open .wfxf-menu-overlay { opacity: 1; visibility: visible; }

.wfxf-navigation {
    position: static;
    justify-self: stretch;
    min-width: 0;
    flex: 1;
    overflow-y: auto;
    padding: 14px 24px 34px;
}
.wfxf-navigation .module { margin: 0; }
.wfxf-navigation .elx_menu,
.wfxf-navigation .elx_menu ul {
    display: block;
    position: static;
    width: 100%;
    min-width: 0;
    margin: 0;
    padding: 0;
    border: 0;
    box-shadow: none;
    background: transparent;
    list-style: none;
}
.wfxf-navigation .elx_menu li,
.wfxf-navigation .elx_menu ul li {
    position: relative;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    margin: 0;
    border-bottom: 1px solid color-mix(in srgb, var(--wfxf-border) 78%, transparent);
}
.wfxf-navigation .elx_menu li > a,
.wfxf-navigation .elx_menu > li > a,
.wfxf-navigation .elx_menu ul a {
    display: block;
    min-width: 0;
    padding: 14px 4px;
    color: var(--wfxf-text);
    background: transparent;
    text-decoration: none;
    text-transform: none;
    font-size: 15px;
    font-weight: 600;
    line-height: 1.4;
    letter-spacing: .015em;
}
.wfxf-navigation .elx_menu > li > a { font-size: 17px; font-family: wsfxsemibold-Regular, "Times New Roman", serif; font-weight: 500; }
.wfxf-navigation .elx_menu a:hover,
.wfxf-navigation .elx_menu li.menu_active > a { color: var(--wfxf-accent); background: transparent; }
.wfxf-navigation .elx_menu ul { grid-column: 1 / -1; padding: 0 0 8px 16px; }
.wfxf-navigation .elx_menu ul[hidden] { display: none !important; }
.wfxf-navigation .elx_menu ul li { border-bottom-color: color-mix(in srgb, var(--wfxf-border) 52%, transparent); }
.wfxf-navigation .elx_menu ul a { padding-top: 10px; padding-bottom: 10px; font-size: 14px; font-family: inherit; }
.wfxf-submenu-toggle {
    width: 38px;
    height: 38px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 0;
    background: transparent;
    color: var(--wfxf-muted);
    cursor: pointer;
}
.wfxf-submenu-toggle i { transition: transform .2s ease; }
.wfxf-submenu-open > .wfxf-submenu-toggle i { transform: rotate(180deg); }
.wfxf-menu-top, .wfxf-menu-bottom { padding: 18px 24px; }
.wfxf-menu-top { border-bottom: 1px solid var(--wfxf-border); }
.wfxf-menu-bottom { border-top: 1px solid var(--wfxf-border); }

/* Stronger, cleaner Hero for catalogue pages. */
.wfxf-hero { min-height: var(--wfxf-hero-h); background-position: 50% 50%; }
.wfxf-hero-inner { padding-top: clamp(66px, 8vw, 112px); padding-bottom: clamp(52px, 7vw, 96px); }
.wfxf-hero h1 { max-width: 980px; font-size: clamp(44px, 6.2vw, 82px); text-wrap: balance; }
.wfxf-context-category .wfxf-hero h1 { max-width: 780px; }

/* Premium category catalogue cards. JS only marks the existing Elxis list parent. */
.wfxf-category-cards {
    display: grid;
    grid-template-columns: repeat(var(--wfxf-category-cols), minmax(0, 1fr));
    gap: clamp(20px, 2.4vw, 34px);
    align-items: stretch;
}
.wfxf-category-cards > .elx5_artbox {
    min-width: 0;
    height: 100%;
    margin: 0;
    display: flex;
    flex-direction: column;
    border: 1px solid color-mix(in srgb, var(--wfxf-border) 86%, transparent);
    border-radius: 0;
    background: var(--wfxf-surface);
    box-shadow: 0 12px 36px rgba(31, 28, 23, .055);
    transition: transform .28s ease, box-shadow .28s ease;
}
.wfxf-category-cards > .elx5_artbox:hover {
    transform: translateY(-4px);
    box-shadow: 0 22px 54px rgba(31, 28, 23, .10);
}
.wfxf-category-cards .elx5_content_imagebox,
.wfxf-category-cards figure,
.wfxf-category-cards .elx5_art_image {
    float: none !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
}
.wfxf-category-cards .elx5_content_imagebox img,
.wfxf-category-cards figure img,
.wfxf-category-cards .elx5_art_image img {
    display: block;
    width: 100%;
    aspect-ratio: 4 / 3;
    object-fit: cover;
}
.wfxf-category-cards .elx5_artbox_inner { flex: 1; padding: 24px 24px 28px; }
.wfxf-category-cards .elx5_artbox h2,
.wfxf-category-cards .elx5_artbox h3 { margin: 0 0 10px; font-size: clamp(24px, 2.1vw, 32px); line-height: 1.08; }
.wfxf-category-cards .elx5_dateauthor { margin-bottom: 12px; font-size: 12px; text-transform: uppercase; letter-spacing: .055em; }
.wfxf-category-cards .elx5_pagination,
.wfxf-category-cards > .elx5_pagination { grid-column: 1 / -1; }

/* Footer columns fit the number of populated module positions automatically. */
.wfxf-footer-grid {
    grid-template-columns: repeat(auto-fit, minmax(min(230px, 100%), 1fr));
    gap: 36px 48px;
}

@media (max-width: 1180px) {
    .wfxf-header-row { grid-template-columns: auto minmax(170px, 1fr) minmax(220px, 340px); }
    .wfxf-category-cards { grid-template-columns: repeat(2, minmax(0,1fr)); }
}

@media (max-width: 760px) {
    .wfxf-header-row { grid-template-columns: auto 1fr auto; min-height: 74px; gap: 14px; }
    .wfxf-brand { justify-self: center; }
    .wfxf-header-search { grid-column: 1 / -1; max-width: none; padding-bottom: 14px; }
    .wfxf-category-cards { grid-template-columns: 1fr; }
    .wfxf-menu-drawer-head { min-height: 74px; }
}

/* ========================================================================== */
/* WFX Furniture Catalog v1.3                                                  */
/* Desktop horizontal navigation; off-canvas navigation only on responsive UI. */
/* ========================================================================== */
@media (min-width: 981px) {
    body.wfxf-menu-open { overflow: auto; }
    .wfxf-header-row {
        grid-template-columns: auto minmax(0, 1fr) minmax(220px, 360px);
        gap: 30px;
    }
    .wfxf-menu-toggle { display: none !important; }
    .wfxf-brand { justify-self: start; }
    .wfxf-menu-drawer {
        position: static;
        inset: auto;
        width: auto;
        max-width: none;
        height: auto;
        transform: none !important;
        visibility: visible !important;
        display: block;
        overflow: visible;
        background: transparent;
        box-shadow: none;
        z-index: auto;
        justify-self: center;
        align-self: stretch;
        align-self: center;
    }
    .wfxf-menu-drawer-head,
    .wfxf-menu-top,
    .wfxf-menu-bottom,
    .wfxf-menu-overlay { display: none !important; }
    .wfxf-navigation {
        height: 100%;
        display: flex;
        align-items: center;
        justify-content: center;
        overflow: visible;
        padding: 0;
    }
    .wfxf-navigation .module { overflow: visible; }
    .wfxf-navigation .elx_menu {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        justify-content: center;
        gap: 4px;
        width: auto;
        margin: 0;
        padding: 0;
        overflow: visible;
    }
    .wfxf-navigation .elx_menu li,
    .wfxf-navigation .elx_menu ul li {
        position: relative;
        display: block;
        margin: 0;
        border: 0;
    }
    .wfxf-navigation .elx_menu > li > a {
        display: block;
        padding: 16px 13px;
        font-family: inherit;
        font-size: 15px;
        font-weight: 700;
        line-height: 1.2;
        letter-spacing: .075em;
        text-transform: uppercase;
        white-space: nowrap;
    }
    .wfxf-navigation .elx_menu ul {
        display: none;
        position: absolute;
        top: 100%;
        left: 0;
        width: 240px;
        min-width: 240px;
        padding: 10px;
        background: var(--wfxf-surface);
        border: 1px solid var(--wfxf-border);
        box-shadow: 0 18px 48px rgba(31, 28, 23, .12);
        z-index: 30;
    }
    .wfxf-navigation .elx_menu ul[hidden] { display: none !important; }
    .wfxf-navigation .elx_menu li:hover > ul,
    .wfxf-navigation .elx_menu li:focus-within > ul { display: block; }
    .wfxf-navigation .elx_menu ul ul { top: -11px; left: 100%; }
    .wfxf-navigation .elx_menu ul a {
        display: block;
        padding: 10px 12px;
        font-size: 14px;
        font-family: inherit;
        text-transform: none;
    }
    .wfxf-submenu-toggle { display: none !important; }
    .wfxf-header-search { width: 100%; max-width: 360px; justify-self: end; }
}

@media (max-width: 980px) {
    .wfxf-header-row {
        grid-template-columns: auto minmax(0, 1fr) minmax(190px, 310px);
        gap: 18px;
    }
    .wfxf-menu-toggle { display: inline-flex !important; justify-self: start; }
    .wfxf-brand { justify-self: start; }
    .wfxf-menu-drawer {
        position: fixed;
        top: 0;
        bottom: 0;
        width: min(var(--wfxf-menu-width), 92vw);
        height: 100dvh;
        z-index: 1200;
        display: flex;
        flex-direction: column;
        background: var(--wfxf-surface);
        box-shadow: 0 30px 80px rgba(19,18,16,.22);
        visibility: hidden;
        overflow: hidden;
        transition: transform .32s ease, visibility .32s ease;
    }
    .wfxf-menu-side-left .wfxf-menu-drawer { left: 0; right: auto; transform: translateX(-104%) !important; }
    .wfxf-menu-side-right .wfxf-menu-drawer { right: 0; left: auto; transform: translateX(104%) !important; }
    .wfxf-menu-open .wfxf-menu-drawer { transform: translateX(0) !important; visibility: visible !important; }
    .wfxf-menu-drawer-head { display: flex; }
    .wfxf-menu-top, .wfxf-menu-bottom { display: block; }
    .wfxf-navigation {
        display: block;
        flex: 1;
        overflow-y: auto;
        padding: 14px 24px 34px;
    }
    .wfxf-navigation .elx_menu,
    .wfxf-navigation .elx_menu ul {
        display: block;
        position: static;
        width: 100%;
        min-width: 0;
        margin: 0;
        padding: 0;
        border: 0;
        box-shadow: none;
        background: transparent;
    }
    .wfxf-navigation .elx_menu li,
    .wfxf-navigation .elx_menu ul li {
        display: grid;
        grid-template-columns: minmax(0, 1fr) auto;
        align-items: center;
        border-bottom: 1px solid color-mix(in srgb, var(--wfxf-border) 78%, transparent);
    }
    .wfxf-navigation .elx_menu > li > a,
    .wfxf-navigation .elx_menu ul a {
        padding: 14px 4px;
        text-transform: none;
        font-size: 15px;
        font-weight: 600;
        letter-spacing: .015em;
    }
    .wfxf-navigation .elx_menu > li > a { font-size: 17px; font-family: wsfxsemibold-Regular, "Times New Roman", serif; font-weight: 500; }
    .wfxf-navigation .elx_menu ul { grid-column: 1 / -1; padding: 0 0 8px 16px; }
    .wfxf-navigation .elx_menu ul[hidden] { display: none !important; }
    .wfxf-submenu-toggle { display: inline-flex; }
}

@media (max-width: 760px) {
    .wfxf-header-row { grid-template-columns: auto 1fr auto; min-height: 74px; gap: 14px; }
    .wfxf-brand { justify-self: center; }
    .wfxf-header-search { grid-column: 1 / -1; max-width: none; padding-bottom: 14px; }
}

/* Keep non-card category heading/description elements above the catalogue grid. */
.wfxf-category-cards > :not(.elx5_artbox) { grid-column: 1 / -1; }
.wfxf-category-cards > :not(.elx5_artbox):empty { display: none; }

/* ========================================================================== */
/* WFX Furniture Catalog v1.4 - responsive menu stacking fix                  */
/* Drawer and overlay now share the header stacking context.                   */
/* ========================================================================== */
@media (max-width: 980px) {
    .wfxf-header { z-index: 1300; }
    .wfxf-menu-overlay { z-index: 1190; }
    .wfxf-menu-drawer { z-index: 1200; }
    body.wfxf-menu-open .wfxf-menu-drawer {
        opacity: 1;
        filter: none;
        pointer-events: auto;
    }
    body.wfxf-menu-open .wfxf-menu-overlay { pointer-events: auto; }
}

/* ========================================================================== */
/* WFX Furniture Catalog v1.5 - Header Infos                                  */
/* ========================================================================== */
.wfxf-topbar-inner {
    min-height: 40px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
}
.wfxf-headerinfos {
    flex: 1 1 auto;
    min-width: 0;
}
.wfxf-headerinfos-main,
.wfxf-headerinfos-social,
.wfxf-header-top-modules {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px 16px;
}
.wfxf-headerinfos-main { display: inline-flex; }
.wfxf-headerinfos-social { display: inline-flex; margin-inline-start: 18px; }
.wfxf-headerinfo-item {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    color: inherit;
    font-size: 12px;
    line-height: 1.35;
    text-decoration: none;
}
.wfxf-headerinfo-item i { color: var(--wfxf-accent); }
.wfxf-headerinfo-note { opacity: .82; }
.wfxf-header-top-modules { margin-inline-start: auto; justify-content: flex-end; }

@media (max-width: 900px) {
    .wfxf-topbar-inner { align-items: flex-start; padding-top: 9px; padding-bottom: 9px; }
    .wfxf-headerinfos-social { margin-inline-start: 0; }
}
@media (max-width: 680px) {
    .wfxf-topbar-inner { display: block; }
    .wfxf-headerinfos-main,
    .wfxf-headerinfos-social,
    .wfxf-header-top-modules { width: 100%; justify-content: center; text-align: center; }
    .wfxf-header-top-modules { margin-top: 8px; }
}


/* ========================================================================== */
/* WFX Furniture Catalog v1.7 - mobile overlay + responsive Header Infos       */
/* ========================================================================== */
.wfxf-menu-mobile-infos { display: none; }

@media (max-width: 980px) {
    /* Header Infos/topbar do not consume vertical space on responsive views. */
    .wfxf-topbar { display: none !important; }

    /* The drawer is moved to <body> by JS, outside header stacking contexts. */
    .wfxf-header { z-index: 900; }
    body > .wfxf-menu-overlay {
        position: fixed;
        inset: 0;
        display: block;
        width: 100vw;
        height: 100vh;
        margin: 0;
        padding: 0;
        border: 0;
        background: rgba(15, 15, 15, .58);
        opacity: 0;
        visibility: hidden;
        pointer-events: none;
        z-index: 1190;
        cursor: default;
    }
    body.wfxf-menu-open > .wfxf-menu-overlay {
        opacity: 1;
        visibility: visible;
        pointer-events: auto;
    }
    body > .wfxf-menu-drawer {
        z-index: 1200 !important;
    }

    .wfxf-menu-mobile-infos {
        display: block;
        padding: 0 24px 18px;
        border-bottom: 1px solid var(--wfxf-border);
    }
    .wfxf-menu-mobile-infos .wfxf-topbar-inner {
        min-height: 0;
        display: block;
        padding: 0;
    }
    .wfxf-menu-mobile-infos .wfxf-headerinfos-main,
    .wfxf-menu-mobile-infos .wfxf-headerinfos-social,
    .wfxf-menu-mobile-infos .wfxf-header-top-modules {
        width: 100%;
        display: flex;
        justify-content: flex-start;
        align-items: flex-start;
        gap: 8px 12px;
        text-align: left;
    }
    .wfxf-menu-mobile-infos .wfxf-headerinfos-main {
        flex-direction: column;
        margin-bottom: 10px;
    }
    .wfxf-menu-mobile-infos .wfxf-headerinfos-social {
        margin: 0 0 10px;
    }
    .wfxf-menu-mobile-infos .wfxf-header-top-modules {
        margin: 0;
    }
    .wfxf-menu-mobile-infos .wfxf-headerinfo-item {
        color: var(--wfxf-text);
        font-size: 13px;
    }
}

@media (min-width: 981px) {
    body > .wfxf-menu-overlay { display: none !important; }
}

/* ========================================================================== */
/* WFX Furniture Catalog v1.10 - responsive drawer scroll                      */
/* ========================================================================== */
.wfxf-menu-scroll { min-width: 0; }

@media (max-width: 980px) {
    body > .wfxf-menu-drawer,
    .wfxf-menu-drawer {
        overflow: hidden !important;
        max-height: 100dvh;
    }

    .wfxf-menu-drawer-head {
        flex: 0 0 auto;
        position: relative;
        z-index: 2;
        background: var(--wfxf-surface);
    }

    .wfxf-menu-scroll {
        flex: 1 1 auto;
        min-height: 0;
        min-width: 0;
        overflow-x: hidden;
        overflow-y: auto;
        overscroll-behavior: contain;
        -webkit-overflow-scrolling: touch;
        scrollbar-gutter: stable;
        padding-bottom: max(18px, env(safe-area-inset-bottom));
    }

    .wfxf-navigation {
        flex: none;
        min-height: 0;
        overflow: visible !important;
    }

    .wfxf-menu-top,
    .wfxf-menu-bottom,
    .wfxf-menu-mobile-infos {
        flex: none;
    }
}


/* ========================================================================== */
/* WFX Furniture Catalog v1.13 - inline expandable header search              */
/* ========================================================================== */
.wfxf-search-shell {
    position: relative;
    justify-self: end;
    display: flex;
    align-items: center;
    z-index: 940;
}
.wfxf-search-toggle {
    width: 44px;
    height: 44px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--wfxf-border);
    background: var(--wfxf-surface);
    color: var(--wfxf-text);
    cursor: pointer;
    padding: 0;
}
.wfxf-search-toggle:hover,
.wfxf-search-toggle:focus-visible,
.wfxf-search-shell.is-open .wfxf-search-toggle { color: var(--wfxf-accent); border-color: var(--wfxf-accent); }
.wfxf-search-toggle svg { width: 20px; height: 20px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; }
.wfxf-search-shell.is-expandable .wfxf-header-search {
    position: absolute;
    top: calc(100% + 10px);
    right: 0;
    width: min(430px, calc(100vw - 24px));
    max-width: none;
    min-width: min(360px, calc(100vw - 24px));
    padding: 14px;
    background: var(--wfxf-surface);
    border: 1px solid var(--wfxf-border);
    box-shadow: 0 20px 55px rgba(20, 20, 20, .16);
    opacity: 0;
    visibility: hidden;
    transform: translateY(-6px);
    pointer-events: none;
    transition: opacity .18s ease, transform .18s ease, visibility .18s ease;
}
.wfxf-search-shell.is-expandable.is-open .wfxf-header-search {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
    pointer-events: auto;
}
.wfxf-search-shell.is-static .wfxf-header-search { position: static; width: min(360px, 28vw); max-width: 360px; min-width: 190px; padding: 0; }
@media (max-width: 980px) {
    .wfxf-search-shell { grid-column: auto !important; width: auto; max-width: none; padding: 0; }
    .wfxf-search-shell.is-expandable .wfxf-header-search { right: 0; }
}
@media (max-width: 760px) {
    .wfxf-header-row { grid-template-columns: auto minmax(0, 1fr) auto !important; }
    .wfxf-search-shell { grid-column: 3 !important; grid-row: 1 !important; justify-self: end; }
    .wfxf-brand { grid-column: 2 !important; grid-row: 1 !important; justify-self: center !important; }
    .wfxf-menu-toggle { grid-column: 1 !important; grid-row: 1 !important; }
    .wfxf-search-shell.is-expandable .wfxf-header-search { width: min(420px, calc(100vw - 20px)); min-width: 0; }
    .wfxf-search-shell.is-static .wfxf-header-search { display: none; }
}


/* ========================================================================== */
/* WFX Furniture Catalog v1.15 - Template Module Layout Manager               */
/* ========================================================================== */
:root {
    --wfxf-layout-pad-d: 32px;
    --wfxf-layout-pad-t: 24px;
    --wfxf-layout-pad-m: 16px;
}
.wfxf-layout-full-bg,
.wfxf-layout-full-bg-padded {
    position: relative;
    width: 100%;
    max-width: 100%;
    min-width: 0;
    box-sizing: border-box;
    background: var(--wfxf-layout-bg, transparent);
    box-shadow: 0 0 0 100vmax var(--wfxf-layout-bg, transparent);
    clip-path: inset(0 -100vmax);
}
.wfxf-layout-full-bg > .wfxf-layout-inner,
.wfxf-layout-full-bg-padded > .wfxf-layout-inner {
    width: 100%;
    max-width: var(--wfxf-layout-inner-max, var(--wfxf-max));
    margin-left: auto;
    margin-right: auto;
    box-sizing: border-box;
}
.wfxf-layout-full-bg-padded > .wfxf-layout-inner { padding-left: var(--wfxf-layout-pad-d); padding-right: var(--wfxf-layout-pad-d); }
.wfxf-layout-debug { outline: 2px dashed #d92d20 !important; outline-offset: -2px; }
@media (max-width:1024px) { .wfxf-layout-full-bg-padded > .wfxf-layout-inner { padding-left: var(--wfxf-layout-pad-t); padding-right: var(--wfxf-layout-pad-t); } }
@media (max-width:640px) { .wfxf-layout-full-bg-padded > .wfxf-layout-inner { padding-left: var(--wfxf-layout-pad-m); padding-right: var(--wfxf-layout-pad-m); } }

/* ========================================================================== */
/* WFX Furniture v1.18 - Native Elxis Mega Menu + adaptive More overflow       */
/* ========================================================================== */
@media (min-width: 981px) {
    .wfxf-navigation .elx_menu { flex-wrap: nowrap; }

    .wfxf-navigation .elx_menu > li.wfxf-mega-trigger { position: static; }
    .wfxf-navigation .elx_menu > li.wfxf-mega-trigger > .wfxf-mega-panel {
        position: fixed;
        display: none;
        grid-template-columns: repeat(var(--wfxf-mega-columns, 4), minmax(0, 1fr));
        gap: 4px 28px;
        max-height: min(72vh, 720px);
        overflow: auto;
        margin: 0;
        padding: 28px 30px 32px;
        background: var(--wfxf-surface);
        border: 1px solid var(--wfxf-border);
        box-shadow: 0 24px 64px rgba(31, 28, 23, .16);
        z-index: 1500;
    }
    .wfxf-navigation .elx_menu > li.wfxf-mega-trigger:hover > .wfxf-mega-panel,
    .wfxf-navigation .elx_menu > li.wfxf-mega-trigger:focus-within > .wfxf-mega-panel,
    .wfxf-navigation .elx_menu > li.wfxf-mega-trigger.wfxf-mega-open > .wfxf-mega-panel { display: grid; }
    .wfxf-navigation .wfxf-mega-panel > li { min-width: 0; padding: 4px 0 14px; }
    .wfxf-navigation .wfxf-mega-panel > li > a {
        padding: 8px 0 10px;
        color: var(--wfxf-text);
        font-size: 14px;
        font-weight: 800;
        letter-spacing: .04em;
        text-transform: uppercase;
        border-bottom: 1px solid color-mix(in srgb, var(--wfxf-border) 80%, transparent);
    }
    .wfxf-navigation .wfxf-mega-panel > li > ul,
    .wfxf-navigation .wfxf-mega-panel > li > ul ul {
        position: static;
        display: block !important;
        width: auto;
        min-width: 0;
        margin: 5px 0 0;
        padding: 0;
        border: 0;
        box-shadow: none;
        background: transparent;
    }
    .wfxf-navigation .wfxf-mega-panel > li > ul a,
    .wfxf-navigation .wfxf-mega-panel > li > ul ul a {
        padding: 7px 0;
        font-size: 14px;
        font-weight: 500;
        line-height: 1.35;
        text-transform: none;
        background: transparent;
    }
    .wfxf-navigation .wfxf-mega-panel > li > ul a:hover { color: var(--wfxf-accent); }

    .wfxf-navigation .elx_menu > li.wfxf-more-item { position: relative; }
    .wfxf-navigation .wfxf-more-link { cursor: pointer; }
    .wfxf-navigation .wfxf-more-menu { right: 0; left: auto; width: 260px; min-width: 260px; }
    .wfxf-navigation .wfxf-more-item:hover > .wfxf-more-menu,
    .wfxf-navigation .wfxf-more-item:focus-within > .wfxf-more-menu,
    .wfxf-navigation .wfxf-more-item.wfxf-more-open > .wfxf-more-menu { display: block; }
    .wfxf-navigation .wfxf-more-menu > li { position: relative; }
    .wfxf-navigation .wfxf-more-menu > li > ul { left: auto; right: 100%; top: -11px; }
}


/* WFX Furniture v1.19 — Footer Contact Panel */
.wfxf-footer-grid.has-contact-panel.wfxf-footer-count-4 { grid-template-columns: repeat(3, minmax(0, 1fr)) minmax(280px, var(--wfxf-footer-contact-width, 420px)); }
.wfxf-footer-grid.has-contact-panel.wfxf-footer-count-3 { grid-template-columns: repeat(2, minmax(0, 1fr)) minmax(280px, var(--wfxf-footer-contact-width, 420px)); }
.wfxf-footer-grid.has-contact-panel.wfxf-footer-count-2 { grid-template-columns: minmax(0, 1fr) minmax(280px, var(--wfxf-footer-contact-width, 420px)); }
.wfxf-footer-column.wfxf-footer-contact { position: relative; isolation: isolate; overflow: hidden; box-sizing: border-box; }
.wfxf-footer-column.wfxf-footer-contact::before { content: ""; position: absolute; inset: 0; z-index: -1; background: var(--wfxf-footer-contact-overlay, #000); opacity: var(--wfxf-footer-contact-overlay-opacity, 0); pointer-events: none; }
.wfxf-footer-column.wfxf-footer-contact > * { position: relative; z-index: 1; }
@media (max-width: 1180px) {
    .wfxf-footer-grid.has-contact-panel { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 760px) {
    .wfxf-footer-grid.has-contact-panel { grid-template-columns: 1fr; }
    .wfxf-footer-column.wfxf-footer-contact { min-height: 0 !important; }
}

/* WFX Furniture v1.20 — Full-height Footer Side Panel */
.wfxf-footer.wfxf-footer-has-side-panel {
    padding: 0;
    overflow: hidden;
}
.wfxf-footer-split {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(280px, var(--wfxf-footer-contact-width, 420px));
    width: 100%;
    min-height: 100%;
    align-items: stretch;
}
.wfxf-footer-main {
    min-width: 0;
    padding: 62px 0 26px;
}
.wfxf-footer-main-inner {
    width: 100%;
    padding-left: max(var(--wfxf-pad), calc((100vw - var(--wfxf-max)) / 2 + var(--wfxf-pad)));
    padding-right: max(40px, var(--wfxf-pad));
}
.wfxf-footer-main-grid {
    grid-template-columns: repeat(auto-fit, minmax(min(230px, 100%), 1fr));
    gap: 36px 48px;
}
.wfxf-footer-contact-side {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    min-width: 0;
    align-self: stretch;
    box-sizing: border-box;
}
.wfxf-footer-contact-side::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    background: var(--wfxf-footer-contact-overlay, #000);
    opacity: var(--wfxf-footer-contact-overlay-opacity, 0);
    pointer-events: none;
}
.wfxf-footer-contact-side > * {
    position: relative;
    z-index: 1;
}
.wfxf-footer-contact-inner {
    min-height: 100%;
}

@media (max-width: 1180px) {
    .wfxf-footer-split {
        display: block;
    }
    .wfxf-footer-main-inner {
        width: min(100%, calc(var(--wfxf-max) + (var(--wfxf-pad) * 2)));
        margin: 0 auto;
        padding-left: var(--wfxf-pad);
        padding-right: var(--wfxf-pad);
    }
    .wfxf-footer-contact-side {
        width: 100%;
        min-height: 0 !important;
    }
}


/* ========================================================================== */
/* WFX Furniture v1.21 — Header Search / Navigation / Footer authority         */
/* ========================================================================== */
@media (min-width: 981px) {
    .wfxf-navigation > ul,
    .wfxf-navigation .elx_menu { column-gap: var(--wfxf-menu-gap, 26px); }
    .wfxf-navigation > ul > li > a,
    .wfxf-navigation .elx_menu > li > a { font-size: var(--wfxf-menu-font-size, 15px); }
    .wfxf-search-shell.is-full { width: min(var(--wfxf-search-width, 420px), 34vw); max-width: var(--wfxf-search-width, 420px); min-width: 240px; }
    .wfxf-search-shell.is-full .wfxf-header-search { position: static !important; display: block !important; visibility: visible !important; opacity: 1 !important; transform: none !important; width: 100% !important; max-width: none !important; min-width: 0 !important; padding: 0 !important; }
    .wfxf-search-shell.is-full .mod_wfx_search { width: 100%; }
}
@media (max-width: 980px) {
    .wfxf-search-shell.is-full { grid-column: 1 / -1; width: 100%; max-width: none; padding-bottom: 14px; }
    .wfxf-search-shell.is-full .wfxf-header-search { display: block !important; width: 100% !important; max-width: none !important; padding: 0 !important; }
}


/* ========================================================================== */
/* WFX Furniture v1.22 - Category Showcase Mega Menu                          */
/* ========================================================================== */
@media (min-width:981px){
.wfxf-navigation .elx_menu>li.wfxf-showcase-trigger>ul{display:none!important}
.wfxf-navigation .elx_menu>li.wfxf-showcase-trigger>.wfxf-mega-showcase-panel{display:none;grid-template-columns:repeat(var(--wfxf-mega-columns,4),minmax(0,1fr));gap:28px;padding:30px;background:var(--wfxf-surface);border:1px solid var(--wfxf-border);box-shadow:0 24px 64px rgba(31,28,23,.16);overflow:auto;max-height:min(76vh,760px)}
.wfxf-navigation .elx_menu>li.wfxf-showcase-trigger:hover>.wfxf-mega-showcase-panel,.wfxf-navigation .elx_menu>li.wfxf-showcase-trigger:focus-within>.wfxf-mega-showcase-panel,.wfxf-navigation .elx_menu>li.wfxf-showcase-trigger.wfxf-mega-open>.wfxf-mega-showcase-panel{display:grid}
.wfxf-mega-showcase-card{min-width:0;display:flex;flex-direction:column;align-items:stretch}
.wfxf-mega-showcase-main{display:block!important;padding:0!important;color:var(--wfxf-text)!important;text-decoration:none!important;background:transparent!important}
.wfxf-mega-showcase-media{display:block;width:100%;height:var(--wfxf-showcase-image-height,140px);overflow:hidden;border-radius:var(--wfxf-showcase-radius,16px);background:var(--wfxf-bg);margin:0 0 16px}
.wfxf-mega-showcase-media img{display:block;width:100%;height:100%;object-fit:cover;max-width:none!important;margin:0!important;border:0!important}
.wfxf-mega-showcase-title{display:block;font-size:14px;line-height:1.25;font-weight:800;letter-spacing:.045em;text-transform:uppercase;margin:0 0 12px}
.wfxf-mega-showcase-links{display:grid!important;position:static!important;width:auto!important;min-width:0!important;margin:0!important;padding:0!important;border:0!important;box-shadow:none!important;background:transparent!important;gap:0}
.wfxf-mega-showcase-links li{display:block!important;border:0!important;padding:0!important}
.wfxf-mega-showcase-links a{display:block!important;padding:6px 0!important;font-size:14px!important;line-height:1.35!important;font-weight:500!important;text-transform:none!important;color:var(--wfxf-muted)!important;background:transparent!important}
.wfxf-mega-showcase-links a:hover{color:var(--wfxf-accent)!important}
.wfxf-mega-showcase-viewall{display:inline-flex!important;align-items:center;gap:7px;margin-top:16px;padding:0!important;color:var(--wfxf-accent)!important;font-size:13px!important;font-weight:700!important;text-transform:none!important;background:transparent!important}
}

/* WFX Furniture v1.24 - Category Showcase 3-level tree */
@media (min-width:981px){
.wfxf-mega-showcase-links>li.wfxf-mega-showcase-sub{display:block!important;padding:0!important;margin:0!important}
.wfxf-mega-showcase-sub-link{display:flex!important;align-items:center;justify-content:space-between;gap:8px}
.wfxf-mega-showcase-caret{font-size:18px;line-height:1;color:var(--wfxf-accent);transition:transform .18s ease}
.wfxf-mega-showcase-sub.has-third:hover>.wfxf-mega-showcase-sub-link .wfxf-mega-showcase-caret{transform:translateX(2px)}
.wfxf-mega-showcase-third{display:block!important;position:static!important;width:auto!important;min-width:0!important;margin:0 0 4px 0!important;padding:0 0 0 14px!important;border:0!important;box-shadow:none!important;background:transparent!important}
.wfxf-mega-showcase-third li{display:block!important;padding:0!important;margin:0!important;border:0!important}
.wfxf-mega-showcase-third a{position:relative;display:block!important;padding:3px 0 3px 12px!important;font-size:12.5px!important;line-height:1.35!important;font-weight:400!important;color:var(--wfxf-muted)!important;text-transform:none!important;background:transparent!important}
.wfxf-mega-showcase-third a:before{content:"";position:absolute;left:0;top:50%;width:4px;height:4px;border-radius:50%;background:currentColor;transform:translateY(-50%);opacity:.6}
.wfxf-mega-showcase-third a:hover{color:var(--wfxf-accent)!important}
}


/* WFX Furniture v1.25 - Category Subcategories Position + optional images */
.wfxf-subcategory-grid{
    display:grid;
    grid-template-columns:repeat(var(--wfxf-subcat-cols,4),minmax(0,1fr));
    gap:18px;
    margin:0 0 34px;
}
.wfxf-subcategory-grid + .elx5_component,
.wfxf-content > .wfxf-subcategory-grid:last-child{margin-top:28px}
.wfxf-subcategory-card{
    min-width:0;
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    grid-template-rows:auto auto;
    align-items:center;
    gap:0 12px;
    overflow:hidden;
    text-decoration:none;
    color:var(--wfxf-text);
    background:var(--wfxf-surface);
    border:1px solid var(--wfxf-border);
    border-radius:var(--wfxf-subcat-radius,0);
    transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;
}
.wfxf-subcategory-card:hover{
    transform:translateY(-2px);
    border-color:var(--wfxf-accent);
    box-shadow:0 12px 30px rgba(0,0,0,.07);
}
.wfxf-subcategory-media{
    grid-column:1/-1;
    display:block;
    height:var(--wfxf-subcat-image-height,180px);
    overflow:hidden;
    background:#ece9e4;
}
.wfxf-subcategory-media img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .35s ease}
.wfxf-subcategory-card:hover .wfxf-subcategory-media img{transform:scale(1.025)}
.wfxf-subcategory-title{padding:17px 0 17px 18px;font-weight:700;line-height:1.25}
.wfxf-subcategory-arrow{padding:17px 18px 17px 0;font-size:18px;line-height:1}
.wfxf-subcategory-card.no-image .wfxf-subcategory-title,
.wfxf-subcategory-card.no-image .wfxf-subcategory-arrow{padding-top:20px;padding-bottom:20px}
@media(max-width:1024px){
    .wfxf-subcategory-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:760px){
    .wfxf-subcategory-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:26px}
    .wfxf-subcategory-media{height:min(var(--wfxf-subcat-image-height,180px),150px)}
    .wfxf-subcategory-title{padding-left:14px;font-size:14px}
    .wfxf-subcategory-arrow{padding-right:14px}
}
@media(max-width:420px){
    .wfxf-subcategory-grid{grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce){
    .wfxf-subcategory-card,.wfxf-subcategory-media img{transition:none}
}

/* v1.25.1: when WFX custom subcategories are enabled, replace the native Elxis list. */


/* WFX Furniture v1.25.2 - enhance the real native Elxis subcategory list */
.wfxf-content > ul.elx_subcategories.wfxf-native-subcategories{
    list-style:none!important;
    margin:0 0 34px!important;
    padding:0!important;
    display:grid!important;
    grid-template-columns:repeat(var(--wfxf-subcat-cols,4),minmax(0,1fr))!important;
    gap:18px!important;
    width:100%!important;
    clear:both;
}
.wfxf-content > ul.elx_subcategories.wfxf-native-subcategories > li.wfxf-native-subcategory-card{
    list-style:none!important;
    margin:0!important;
    padding:0!important;
    min-width:0;
    overflow:hidden;
    background:var(--wfxf-surface);
    border:1px solid var(--wfxf-border);
    border-radius:var(--wfxf-subcat-radius,0);
    transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;
}
.wfxf-content > ul.elx_subcategories.wfxf-native-subcategories > li.wfxf-native-subcategory-card:hover{
    transform:translateY(-2px);
    border-color:var(--wfxf-accent);
    box-shadow:0 12px 30px rgba(0,0,0,.07);
}
.wfxf-native-subcategory-media{
    display:block;
    height:var(--wfxf-subcat-image-height,180px);
    overflow:hidden;
    background:#ece9e4;
}
.wfxf-native-subcategory-media img{
    display:block;
    width:100%;
    height:100%;
    object-fit:cover;
    transition:transform .35s ease;
}
.wfxf-native-subcategory-card:hover .wfxf-native-subcategory-media img{transform:scale(1.025)}
.wfxf-native-subcategory-link{
    display:flex!important;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    min-height:58px;
    padding:16px 18px!important;
    color:var(--wfxf-text)!important;
    text-decoration:none!important;
    font-weight:700;
    line-height:1.25;
}
.wfxf-native-subcategory-arrow{margin-left:auto;font-size:18px;line-height:1}
@media(max-width:1024px){
    .wfxf-content > ul.elx_subcategories.wfxf-native-subcategories{
        grid-template-columns:repeat(3,minmax(0,1fr))!important;
    }
}
@media(max-width:760px){
    .wfxf-content > ul.elx_subcategories.wfxf-native-subcategories{
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
        gap:12px!important;
        margin-bottom:26px!important;
    }
    .wfxf-native-subcategory-media{height:min(var(--wfxf-subcat-image-height,180px),150px)}
    .wfxf-native-subcategory-link{padding:14px!important;font-size:14px}
}
@media(max-width:420px){
    .wfxf-content > ul.elx_subcategories.wfxf-native-subcategories{
        grid-template-columns:1fr!important;
    }
}
@media(prefers-reduced-motion:reduce){
    .wfxf-native-subcategory-card,.wfxf-native-subcategory-media img{transition:none}
}
