/* WallArt2D shop — premium WooCommerce catalog */
body.woocommerce-shop,
body.post-type-archive-product,
body.tax-product_cat,
body.tax-product_tag,
body[class*="tax-pa_"] {
    --wa-shop-pumpkin:#fa7921;
    --wa-shop-saffron:#fe9920;
    --wa-shop-bronze:#b9a44c;
    --wa-shop-fern:#566e3d;
    --wa-shop-yale:#0c4767;

    --wa-shop-ink:#0a344b;
    --wa-shop-text:#30434b;
    --wa-shop-muted:#6d777b;
    --wa-shop-paper:#f8f6f0;
    --wa-shop-white:#fff;
    --wa-shop-line:rgba(12,71,103,.12);
    --wa-shop-blue-soft:#edf3f5;
    --wa-shop-green-soft:#eef2e9;
    --wa-shop-orange-soft:#fff1e5;
    --wa-shop-gold-soft:#f6f1df;

    background:
        radial-gradient(circle at 7% 7%,rgba(254,153,32,.07),transparent 28rem),
        radial-gradient(circle at 94% 16%,rgba(86,110,61,.06),transparent 31rem),
        var(--wa-shop-paper);
}

/* Remove Blocksy's oversized archive title area. */
body.woocommerce-shop .hero-section,
body.post-type-archive-product .hero-section,
body.tax-product_cat .hero-section,
body.tax-product_tag .hero-section,
body[class*="tax-pa_"] .hero-section {
    display:none!important;
}

body.woocommerce-shop #main,
body.post-type-archive-product #main,
body.tax-product_cat #main,
body.tax-product_tag #main,
body[class*="tax-pa_"] #main {
    padding-top:0!important;
}

body.woocommerce-shop #main > .ct-container,
body.post-type-archive-product #main > .ct-container,
body.tax-product_cat #main > .ct-container,
body.tax-product_tag #main > .ct-container,
body[class*="tax-pa_"] #main > .ct-container {
    width:min(1320px,calc(100% - 72px));
    max-width:none;
    padding-top:46px;
    padding-bottom:88px;
}

body.woocommerce-shop .site-main,
body.post-type-archive-product .site-main,
body.tax-product_cat .site-main,
body.tax-product_tag .site-main,
body[class*="tax-pa_"] .site-main {
    width:100%;
}

/* Intro */
.wa-shop-intro {
    position:relative;
    overflow:hidden;
    display:grid;
    grid-template-columns:minmax(0,1.45fr) minmax(280px,.55fr);
    align-items:end;
    gap:50px;
    margin-bottom:26px;
    padding:46px 50px;
    border:1px solid rgba(12,71,103,.09);
    border-radius:30px;
    background:
        radial-gradient(circle at 87% 20%,rgba(254,153,32,.15),transparent 21rem),
        radial-gradient(circle at 98% 110%,rgba(86,110,61,.14),transparent 26rem),
        linear-gradient(138deg,#fffdf8 0%,#f5f3e9 62%,#eef2ec 100%);
    box-shadow:0 24px 70px rgba(12,71,103,.09);
    isolation:isolate;
}

.wa-shop-intro::before {
    content:"";
    position:absolute;
    z-index:-1;
    width:320px;
    height:320px;
    right:-160px;
    top:-180px;
    border:1px solid rgba(12,71,103,.09);
    border-radius:50%;
    box-shadow:
        0 0 0 34px rgba(12,71,103,.025),
        0 0 0 68px rgba(185,164,76,.025);
}

.wa-shop-eyebrow {
    margin:0 0 11px!important;
    color:var(--wa-shop-pumpkin);
    font-size:11px;
    font-weight:800;
    letter-spacing:.15em;
    text-transform:uppercase;
}

.wa-shop-intro h1 {
    max-width:760px;
    margin:0;
    color:var(--wa-shop-ink);
    font-family:Georgia,"Times New Roman",serif;
    font-size:clamp(36px,4vw,58px);
    font-weight:400;
    letter-spacing:-.045em;
    line-height:1.04;
}

.wa-shop-intro__lead {
    max-width:650px;
    margin:18px 0 0!important;
    color:var(--wa-shop-muted);
    font-size:16px;
    line-height:1.72;
}

.wa-shop-trust {
    display:grid;
    gap:9px;
    margin:0;
    padding:0;
    list-style:none;
}

.wa-shop-trust li {
    display:flex;
    align-items:center;
    gap:10px;
    min-height:42px;
    padding:8px 12px;
    border:1px solid rgba(12,71,103,.09);
    border-radius:999px;
    color:var(--wa-shop-yale);
    background:rgba(255,255,255,.66);
    font-size:12px;
    font-weight:650;
    backdrop-filter:blur(10px);
}

.wa-shop-trust li::before {
    content:"✓";
    display:grid;
    width:22px;
    height:22px;
    flex:0 0 22px;
    place-items:center;
    border-radius:50%;
    color:#fff;
    background:var(--wa-shop-fern);
    font-size:11px;
    font-weight:900;
}

/* Filters */
.wa-shop-filters {
    display:grid;
    gap:22px;
    margin:0 0 22px;
    padding:22px 24px 24px;
    border:1px solid var(--wa-shop-line);
    border-radius:20px;
    background:rgba(255,255,255,.84);
    box-shadow:0 14px 38px rgba(12,71,103,.06);
    backdrop-filter:blur(12px);
}

.wa-shop-filter-heading {
    display:flex;
    align-items:center;
    gap:13px;
    padding-bottom:18px;
    border-bottom:1px solid rgba(12,71,103,.09);
}

.wa-shop-filter-heading__icon {
    display:grid;
    width:42px;
    height:42px;
    flex:0 0 42px;
    place-items:center;
    border-radius:12px;
    color:var(--wa-shop-yale);
    background:var(--wa-shop-blue-soft);
}

.wa-shop-filter-heading strong,
.wa-shop-filter-heading span {
    display:block;
}

.wa-shop-filter-heading strong {
    color:var(--wa-shop-ink);
    font-size:15px;
}

.wa-shop-filter-heading div > span {
    margin-top:2px;
    color:var(--wa-shop-muted);
    font-size:12px;
}

.wa-shop-filter-reset {
    margin-left:auto;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:38px;
    padding:0 13px;
    border:1px solid rgba(250,121,33,.18);
    border-radius:999px;
    color:var(--wa-shop-pumpkin)!important;
    background:var(--wa-shop-orange-soft);
    font-size:11px;
    font-weight:750;
}

.wa-shop-filter-reset:hover {
    border-color:rgba(250,121,33,.34);
    text-decoration:none;
}

.wa-shop-filter-group {
    display:grid;
    grid-template-columns:150px minmax(0,1fr);
    align-items:start;
    gap:22px;
}

.wa-shop-filter-group + .wa-shop-filter-group {
    padding-top:18px;
    border-top:1px solid rgba(12,71,103,.075);
}

.wa-shop-filter-group__title {
    padding-top:8px;
}

.wa-shop-filter-group__title > span,
.wa-shop-filter-group__title > small {
    display:block;
}

.wa-shop-filter-group__title > span {
    color:var(--wa-shop-yale);
    font-size:11px;
    font-weight:850;
    letter-spacing:.11em;
    text-transform:uppercase;
}

.wa-shop-filter-group__title > small {
    margin-top:4px;
    color:var(--wa-shop-muted);
    font-size:10px;
}

.wa-shop-category-list,
.wa-shop-color-list {
    display:flex;
    flex-wrap:wrap;
    gap:9px;
}

.wa-shop-category-chip,
.wa-shop-color-chip {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    min-height:42px;
    padding:0 14px;
    border:1px solid rgba(12,71,103,.12);
    border-radius:999px;
    color:var(--wa-shop-ink)!important;
    background:#fff;
    box-shadow:0 4px 14px rgba(12,71,103,.035);
    font-size:12px;
    font-weight:650;
    line-height:1;
    transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease,background .18s ease,color .18s ease;
}

.wa-shop-category-chip small,
.wa-shop-color-chip small {
    display:grid;
    min-width:20px;
    height:20px;
    place-items:center;
    padding:0 5px;
    border-radius:999px;
    color:var(--wa-shop-muted);
    background:var(--wa-shop-blue-soft);
    font-size:9px;
    font-weight:800;
}

.wa-shop-category-chip:hover,
.wa-shop-color-chip:hover {
    transform:translateY(-2px);
    border-color:rgba(250,121,33,.24);
    box-shadow:0 8px 18px rgba(12,71,103,.07);
}

.wa-shop-category-chip.is-active {
    border-color:var(--wa-shop-yale);
    color:#fff!important;
    background:linear-gradient(115deg,var(--wa-shop-yale),#176482);
    box-shadow:0 9px 20px rgba(12,71,103,.16);
}

.wa-shop-category-chip.is-active small {
    color:var(--wa-shop-yale);
    background:#fff;
}

.wa-shop-color-chip {
    padding-left:8px;
}

.wa-shop-color-chip__swatch {
    position:relative;
    display:block;
    width:27px;
    height:27px;
    flex:0 0 27px;
    border:2px solid #fff;
    border-radius:50%;
    background:var(--wa-swatch,#d9d9d2);
    box-shadow:0 0 0 1px rgba(12,71,103,.15),0 3px 8px rgba(12,71,103,.08);
}

.wa-shop-color-chip__swatch--all {
    background:conic-gradient(
        var(--wa-shop-pumpkin) 0 25%,
        var(--wa-shop-yale) 25% 50%,
        var(--wa-shop-fern) 50% 75%,
        var(--wa-shop-bronze) 75% 100%
    );
}

.wa-shop-color-chip.is-active {
    border-color:rgba(250,121,33,.55);
    background:var(--wa-shop-orange-soft);
    box-shadow:0 8px 20px rgba(250,121,33,.10);
}

.wa-shop-color-chip.is-active .wa-shop-color-chip__swatch {
    box-shadow:
        0 0 0 2px var(--wa-shop-pumpkin),
        0 3px 8px rgba(12,71,103,.08);
}

.wa-shop-color-empty {
    width:fit-content;
    margin:0!important;
    padding:10px 13px;
    border:1px dashed rgba(12,71,103,.15);
    border-radius:10px;
    color:var(--wa-shop-muted);
    background:rgba(237,243,245,.55);
    font-size:11px;
}

/* Keep the native WooCommerce sort compact and separate from visual filters. */
.woocommerce-ordering select {
    width:100%;
    min-height:46px;
    margin:0;
    padding:0 42px 0 14px!important;
    border:1px solid rgba(12,71,103,.16)!important;
    border-radius:11px!important;
    color:var(--wa-shop-ink)!important;
    background-color:#fff!important;
    box-shadow:none!important;
    font-size:13px!important;
    font-weight:500;
    outline:none;
    transition:border-color .2s ease,box-shadow .2s ease;
}

.woocommerce-ordering select:focus {
    border-color:rgba(250,121,33,.58)!important;
    box-shadow:0 0 0 3px rgba(250,121,33,.10)!important;
}

/* Result count + sorting */
.wa-shop-toolbar {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;
    margin:0 0 26px;
    padding:4px 2px;
}

.wa-shop-toolbar::after {
    display:none!important;
}

.wa-shop-toolbar .woocommerce-result-count,
.wa-shop-toolbar .woocommerce-ordering {
    float:none!important;
    margin:0!important;
}

.wa-shop-result-count {
    color:var(--wa-shop-muted)!important;
    font-size:12px!important;
    font-weight:600;
    letter-spacing:.04em;
    text-transform:uppercase;
}

.woocommerce-ordering {
    min-width:240px;
}

.woocommerce-ordering select {
    min-height:44px;
}

/* Product grid */
body.woocommerce-shop .woocommerce ul.products,
body.post-type-archive-product .woocommerce ul.products,
body.tax-product_cat .woocommerce ul.products,
body.tax-product_tag .woocommerce ul.products,
body[class*="tax-pa_"] .woocommerce ul.products,
body.woocommerce-shop ul.products,
body.post-type-archive-product ul.products,
body.tax-product_cat ul.products,
body.tax-product_tag ul.products,
body[class*="tax-pa_"] ul.products {
    gap:28px!important;
    margin:0!important;
}

body.woocommerce-shop ul.products::before,
body.woocommerce-shop ul.products::after,
body.post-type-archive-product ul.products::before,
body.post-type-archive-product ul.products::after {
    display:none!important;
}

body.woocommerce-shop ul.products li.product,
body.post-type-archive-product ul.products li.product,
body.tax-product_cat ul.products li.product,
body.tax-product_tag ul.products li.product,
body[class*="tax-pa_"] ul.products li.product {
    position:relative;
    overflow:hidden;
    width:auto!important;
    margin:0!important;
    padding:11px 11px 21px!important;
    border:1px solid rgba(12,71,103,.08)!important;
    border-radius:20px!important;
    background:rgba(255,255,255,.9)!important;
    box-shadow:0 12px 34px rgba(12,71,103,.065)!important;
    transition:transform .28s ease,box-shadow .28s ease,border-color .28s ease!important;
}

body.woocommerce-shop ul.products li.product:hover,
body.post-type-archive-product ul.products li.product:hover,
body.tax-product_cat ul.products li.product:hover,
body.tax-product_tag ul.products li.product:hover,
body[class*="tax-pa_"] ul.products li.product:hover {
    transform:translateY(-6px);
    border-color:rgba(250,121,33,.18)!important;
    box-shadow:0 24px 54px rgba(12,71,103,.12)!important;
}

body.woocommerce-shop ul.products li.product .ct-product-card,
body.post-type-archive-product ul.products li.product .ct-product-card,
body.tax-product_cat ul.products li.product .ct-product-card,
body.tax-product_tag ul.products li.product .ct-product-card,
body[class*="tax-pa_"] ul.products li.product .ct-product-card {
    height:100%;
    border:0!important;
    background:transparent!important;
    box-shadow:none!important;
}

body.woocommerce-shop ul.products li.product .ct-media-container,
body.post-type-archive-product ul.products li.product .ct-media-container,
body.tax-product_cat ul.products li.product .ct-media-container,
body.tax-product_tag ul.products li.product .ct-media-container,
body[class*="tax-pa_"] ul.products li.product .ct-media-container,
body.woocommerce-shop ul.products li.product > a:first-child,
body.post-type-archive-product ul.products li.product > a:first-child {
    overflow:hidden;
    border-radius:14px;
    background:
        radial-gradient(circle at 80% 12%,rgba(185,164,76,.08),transparent 17rem),
        linear-gradient(145deg,#fbfaf6,var(--wa-shop-blue-soft));
}

body.woocommerce-shop ul.products li.product img,
body.post-type-archive-product ul.products li.product img,
body.tax-product_cat ul.products li.product img,
body.tax-product_tag ul.products li.product img,
body[class*="tax-pa_"] ul.products li.product img {
    width:100%!important;
    margin:0!important;
    aspect-ratio:1/1!important;
    object-fit:contain!important;
    transition:transform .5s cubic-bezier(.2,.8,.2,1)!important;
}

body.woocommerce-shop ul.products li.product:hover img,
body.post-type-archive-product ul.products li.product:hover img,
body.tax-product_cat ul.products li.product:hover img,
body.tax-product_tag ul.products li.product:hover img,
body[class*="tax-pa_"] ul.products li.product:hover img {
    transform:scale(1.035);
}

body.woocommerce-shop ul.products li.product .woocommerce-loop-product__title,
body.post-type-archive-product ul.products li.product .woocommerce-loop-product__title,
body.tax-product_cat ul.products li.product .woocommerce-loop-product__title,
body.tax-product_tag ul.products li.product .woocommerce-loop-product__title,
body[class*="tax-pa_"] ul.products li.product .woocommerce-loop-product__title {
    margin:18px 8px 0!important;
    color:var(--wa-shop-ink)!important;
    font-family:Georgia,"Times New Roman",serif!important;
    font-size:23px!important;
    font-weight:400!important;
    line-height:1.18!important;
    letter-spacing:-.025em;
}

body.woocommerce-shop ul.products li.product .woocommerce-loop-product__title a,
body.post-type-archive-product ul.products li.product .woocommerce-loop-product__title a {
    color:inherit!important;
}

body.woocommerce-shop ul.products li.product .product_categories,
body.post-type-archive-product ul.products li.product .product_categories,
body.tax-product_cat ul.products li.product .product_categories,
body.tax-product_tag ul.products li.product .product_categories,
body[class*="tax-pa_"] ul.products li.product .product_categories,
body.woocommerce-shop ul.products li.product .entry-meta,
body.post-type-archive-product ul.products li.product .entry-meta {
    margin:8px 8px 0!important;
    color:var(--wa-shop-fern)!important;
    font-size:10px!important;
    font-weight:800!important;
    letter-spacing:.11em!important;
    text-transform:uppercase!important;
}

body.woocommerce-shop ul.products li.product .price,
body.post-type-archive-product ul.products li.product .price,
body.tax-product_cat ul.products li.product .price,
body.tax-product_tag ul.products li.product .price,
body[class*="tax-pa_"] ul.products li.product .price {
    display:block;
    margin:11px 8px 0!important;
    color:var(--wa-shop-yale)!important;
    font-size:17px!important;
    font-weight:750!important;
}

body.woocommerce-shop ul.products li.product .price del,
body.post-type-archive-product ul.products li.product .price del {
    color:var(--wa-shop-muted)!important;
    opacity:.55;
}

body.woocommerce-shop ul.products li.product .price ins,
body.post-type-archive-product ul.products li.product .price ins {
    color:var(--wa-shop-pumpkin)!important;
    text-decoration:none!important;
}

body.woocommerce-shop ul.products li.product .button,
body.woocommerce-shop ul.products li.product .added_to_cart,
body.post-type-archive-product ul.products li.product .button,
body.post-type-archive-product ul.products li.product .added_to_cart,
body.tax-product_cat ul.products li.product .button,
body.tax-product_cat ul.products li.product .added_to_cart,
body.tax-product_tag ul.products li.product .button,
body.tax-product_tag ul.products li.product .added_to_cart,
body[class*="tax-pa_"] ul.products li.product .button,
body[class*="tax-pa_"] ul.products li.product .added_to_cart {
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-height:44px!important;
    margin:17px 8px 0!important;
    padding:0 18px!important;
    border:0!important;
    border-radius:10px!important;
    color:#fff!important;
    background:linear-gradient(108deg,var(--wa-shop-pumpkin),var(--wa-shop-saffron))!important;
    box-shadow:0 10px 22px rgba(250,121,33,.17)!important;
    font-size:13px!important;
    font-weight:700!important;
    line-height:1!important;
    transition:transform .2s ease,box-shadow .2s ease!important;
}

body.woocommerce-shop ul.products li.product .button:hover,
body.post-type-archive-product ul.products li.product .button:hover,
body.tax-product_cat ul.products li.product .button:hover,
body.tax-product_tag ul.products li.product .button:hover,
body[class*="tax-pa_"] ul.products li.product .button:hover {
    transform:translateY(-2px);
    box-shadow:0 14px 28px rgba(250,121,33,.24)!important;
}

body.woocommerce-shop ul.products li.product .onsale,
body.post-type-archive-product ul.products li.product .onsale,
body.tax-product_cat ul.products li.product .onsale,
body.tax-product_tag ul.products li.product .onsale,
body[class*="tax-pa_"] ul.products li.product .onsale {
    top:22px!important;
    right:22px!important;
    left:auto!important;
    min-width:0!important;
    min-height:0!important;
    padding:7px 10px!important;
    border-radius:999px!important;
    color:#fff!important;
    background:var(--wa-shop-fern)!important;
    box-shadow:0 8px 18px rgba(86,110,61,.2);
    font-size:10px!important;
    font-weight:800!important;
    line-height:1!important;
    letter-spacing:.05em;
}

/* Pagination */
.woocommerce-pagination {
    margin-top:42px!important;
}

.woocommerce-pagination ul.page-numbers {
    display:flex!important;
    justify-content:center;
    gap:7px;
    border:0!important;
}

.woocommerce-pagination ul.page-numbers li {
    border:0!important;
}

.woocommerce-pagination .page-numbers a,
.woocommerce-pagination .page-numbers span {
    display:grid!important;
    min-width:42px!important;
    height:42px!important;
    place-items:center;
    border:1px solid var(--wa-shop-line)!important;
    border-radius:10px!important;
    color:var(--wa-shop-yale)!important;
    background:#fff!important;
}

.woocommerce-pagination .page-numbers .current {
    border-color:var(--wa-shop-yale)!important;
    color:#fff!important;
    background:var(--wa-shop-yale)!important;
}

/* Empty state */
.woocommerce-info,
.woocommerce-no-products-found {
    border-radius:14px;
}

.woocommerce-no-products-found {
    padding:26px;
    border:1px solid var(--wa-shop-line);
    background:#fff;
}

/* Footer contrast on catalog pages. */
body.woocommerce-shop .wa-legal-footer a,
body.post-type-archive-product .wa-legal-footer a,
body.tax-product_cat .wa-legal-footer a,
body.tax-product_tag .wa-legal-footer a,
body[class*="tax-pa_"] .wa-legal-footer a {
    color:rgba(255,255,255,.84)!important;
}

body.woocommerce-shop .wa-legal-footer a:hover,
body.post-type-archive-product .wa-legal-footer a:hover,
body.tax-product_cat .wa-legal-footer a:hover,
body.tax-product_tag .wa-legal-footer a:hover,
body[class*="tax-pa_"] .wa-legal-footer a:hover {
    color:#fff!important;
}

@media (max-width:1050px) {
    body.woocommerce-shop #main > .ct-container,
    body.post-type-archive-product #main > .ct-container,
    body.tax-product_cat #main > .ct-container,
    body.tax-product_tag #main > .ct-container,
    body[class*="tax-pa_"] #main > .ct-container {
        width:calc(100% - 48px);
    }

    .wa-shop-intro {
        grid-template-columns:1fr;
        gap:28px;
        padding:38px;
    }

    .wa-shop-trust {
        grid-template-columns:repeat(3,minmax(0,1fr));
    }

    .wa-shop-filters {
        gap:18px;
    }

    .wa-shop-filter-group {
        grid-template-columns:130px minmax(0,1fr);
        gap:18px;
    }
}

@media (max-width:820px) {
    body.woocommerce-shop .woocommerce ul.products,
    body.post-type-archive-product .woocommerce ul.products,
    body.tax-product_cat .woocommerce ul.products,
    body.tax-product_tag .woocommerce ul.products,
    body[class*="tax-pa_"] .woocommerce ul.products,
    body.woocommerce-shop ul.products,
    body.post-type-archive-product ul.products,
    body.tax-product_cat ul.products,
    body.tax-product_tag ul.products,
    body[class*="tax-pa_"] ul.products {
        gap:20px!important;
    }

    .wa-shop-filter-group {
        grid-template-columns:1fr;
        gap:10px;
    }

    .wa-shop-filter-group__title {
        padding-top:0;
    }

    .wa-shop-filter-group__title > span,
    .wa-shop-filter-group__title > small {
        display:inline;
    }

    .wa-shop-filter-group__title > small {
        margin-left:7px;
    }
}

@media (max-width:620px) {
    body.woocommerce-shop #main > .ct-container,
    body.post-type-archive-product #main > .ct-container,
    body.tax-product_cat #main > .ct-container,
    body.tax-product_tag #main > .ct-container,
    body[class*="tax-pa_"] #main > .ct-container {
        width:calc(100% - 28px);
        padding-top:24px;
        padding-bottom:60px;
    }

    .wa-shop-intro {
        margin-bottom:18px;
        padding:28px 22px;
        border-radius:22px;
    }

    .wa-shop-intro h1 {
        font-size:clamp(34px,10vw,48px);
    }

    .wa-shop-trust {
        grid-template-columns:1fr;
        gap:7px;
    }

    .wa-shop-filters {
        padding:17px;
        border-radius:15px;
    }

    .wa-shop-filter-heading {
        align-items:flex-start;
        flex-wrap:wrap;
    }

    .wa-shop-filter-reset {
        margin-left:55px;
    }

    .wa-shop-category-list,
    .wa-shop-color-list {
        gap:7px;
    }

    .wa-shop-category-chip,
    .wa-shop-color-chip {
        min-height:39px;
        padding-inline:11px;
        font-size:11px;
    }

    .wa-shop-color-chip {
        padding-left:7px;
    }

    .wa-shop-color-chip__swatch {
        width:24px;
        height:24px;
        flex-basis:24px;
    }

    .wa-shop-toolbar {
        align-items:stretch;
        flex-direction:column;
        gap:10px;
    }

    .woocommerce-ordering {
        width:100%;
        min-width:0;
    }

    body.woocommerce-shop .woocommerce ul.products,
    body.post-type-archive-product .woocommerce ul.products,
    body.tax-product_cat .woocommerce ul.products,
    body.tax-product_tag .woocommerce ul.products,
    body[class*="tax-pa_"] .woocommerce ul.products,
    body.woocommerce-shop ul.products,
    body.post-type-archive-product ul.products,
    body.tax-product_cat ul.products,
    body.tax-product_tag ul.products,
    body[class*="tax-pa_"] ul.products {
        gap:18px!important;
    }

    body.woocommerce-shop ul.products li.product,
    body.post-type-archive-product ul.products li.product,
    body.tax-product_cat ul.products li.product,
    body.tax-product_tag ul.products li.product,
    body[class*="tax-pa_"] ul.products li.product {
        border-radius:17px!important;
    }

    body.woocommerce-shop ul.products li.product .woocommerce-loop-product__title,
    body.post-type-archive-product ul.products li.product .woocommerce-loop-product__title,
    body.tax-product_cat ul.products li.product .woocommerce-loop-product__title,
    body.tax-product_tag ul.products li.product .woocommerce-loop-product__title,
    body[class*="tax-pa_"] ul.products li.product .woocommerce-loop-product__title {
        font-size:22px!important;
    }
}

@media (prefers-reduced-motion:reduce) {
    body.woocommerce-shop *,
    body.post-type-archive-product *,
    body.tax-product_cat *,
    body.tax-product_tag *,
    body[class*="tax-pa_"] * {
        scroll-behavior:auto!important;
    }

    body.woocommerce-shop ul.products li.product,
    body.post-type-archive-product ul.products li.product,
    body.tax-product_cat ul.products li.product,
    body.tax-product_tag ul.products li.product,
    body[class*="tax-pa_"] ul.products li.product,
    body.woocommerce-shop ul.products li.product img,
    body.post-type-archive-product ul.products li.product img,
    body.tax-product_cat ul.products li.product img,
    body.tax-product_tag ul.products li.product img,
    body[class*="tax-pa_"] ul.products li.product img {
        transition:none!important;
    }

    body.woocommerce-shop ul.products li.product:hover,
    body.post-type-archive-product ul.products li.product:hover,
    body.tax-product_cat ul.products li.product:hover,
    body.tax-product_tag ul.products li.product:hover,
    body[class*="tax-pa_"] ul.products li.product:hover,
    body.woocommerce-shop ul.products li.product:hover img,
    body.post-type-archive-product ul.products li.product:hover img,
    body.tax-product_cat ul.products li.product:hover img,
    body.tax-product_tag ul.products li.product:hover img,
    body[class*="tax-pa_"] ul.products li.product:hover img {
        transform:none!important;
    }
}

/* Botiga production shell: reclaim its archive masthead and oversized margins. */
body.woocommerce-shop .woocommerce-page-header,
body.post-type-archive-product .woocommerce-page-header,
body.tax-product_cat .woocommerce-page-header,
body.tax-product_tag .woocommerce-page-header,
body[class*="tax-pa_"] .woocommerce-page-header {
    display:none!important;
    height:0!important;
    margin:0!important;
    padding:0!important;
}

body.woocommerce-shop .container.content-wrapper,
body.post-type-archive-product .container.content-wrapper,
body.tax-product_cat .container.content-wrapper,
body.tax-product_tag .container.content-wrapper,
body[class*="tax-pa_"] .container.content-wrapper {
    width:min(1320px,calc(100% - 72px))!important;
    max-width:none!important;
    margin:0 auto!important;
    padding:24px 0 76px!important;
}

body.woocommerce-shop .container.content-wrapper > .site-main,
body.post-type-archive-product .container.content-wrapper > .site-main,
body.tax-product_cat .container.content-wrapper > .site-main,
body.tax-product_tag .container.content-wrapper > .site-main,
body[class*="tax-pa_"] .container.content-wrapper > .site-main {
    width:100%!important;
    margin:0!important;
    padding:0!important;
}

.wa-shop-breadcrumb {
    display:flex;
    flex-wrap:wrap;
    gap:9px;
    align-items:center;
    margin:0 0 12px;
    color:var(--wa-shop-muted);
    font-size:11px;
    line-height:1.4;
}

.wa-shop-breadcrumb a { color:var(--wa-shop-yale)!important; }
.wa-shop-breadcrumb a:hover { color:var(--wa-shop-pumpkin)!important; }
.wa-shop-breadcrumb [aria-current="page"] { color:var(--wa-shop-muted); }

.wa-shop-intro {
    grid-template-columns:minmax(0,1fr) minmax(260px,.43fr);
    align-items:center;
    gap:clamp(28px,5vw,74px);
    margin:0 0 28px;
    padding:0 0 28px;
    border:0;
    border-bottom:1px solid var(--wa-shop-line);
    border-radius:0;
    background:transparent;
    box-shadow:none;
}

.wa-shop-intro::before { display:none; }
.wa-shop-intro__main { min-width:0; }
.wa-shop-eyebrow { margin-bottom:5px!important; color:var(--wa-shop-fern); }

.wa-shop-intro h1 {
    max-width:800px;
    font-size:clamp(40px,4vw,54px);
    line-height:.99;
}

.wa-shop-intro__lead {
    max-width:800px;
    margin-top:8px!important;
    color:#4e626c;
    font-size:14px;
    line-height:1.55;
}

.wa-shop-intro__aside {
    position:relative;
    display:grid;
    min-height:134px;
    grid-template-columns:64px minmax(0,1fr);
    align-content:center;
    align-items:center;
    column-gap:16px;
    padding:18px 0 18px 24px;
    border-left:1px solid rgba(12,71,103,.16);
}

.wa-shop-intro__mark {
    display:grid;
    width:58px;
    height:58px;
    grid-row:1 / span 3;
    place-items:center;
    color:var(--wa-shop-bronze);
}

.wa-shop-intro__mark svg { display:block; width:58px; height:58px; }
.wa-shop-intro__aside p { margin:0; color:var(--wa-shop-ink); font-family:Georgia,"Times New Roman",serif; font-size:20px; line-height:1.2; }
.wa-shop-intro__aside > span:not(.wa-shop-intro__mark) { margin-top:6px; color:var(--wa-shop-muted); font-size:12px; line-height:1.5; }
.wa-shop-intro__aside a { display:inline-flex; align-items:center; gap:8px; margin-top:10px; color:var(--wa-shop-yale)!important; font-size:12px; font-weight:750; }
.wa-shop-intro__aside a span { color:var(--wa-shop-pumpkin); transition:transform .2s ease; }
.wa-shop-intro__aside a:hover span { transform:translateY(3px); }
.wa-shop-intro__cta { display:none; }

.wa-shop-filters {
    gap:12px;
    margin-bottom:17px;
    padding:12px 18px;
    border-radius:14px;
    background:rgba(255,255,255,.78);
    box-shadow:0 8px 26px rgba(12,71,103,.045);
}

.wa-shop-filter-heading { gap:11px; padding-bottom:0; border-bottom:0; }
.wa-shop-filter-heading__icon { width:36px; height:36px; flex-basis:36px; border-radius:10px; }
.wa-shop-filter-group { grid-template-columns:118px minmax(0,1fr); gap:16px; }
.wa-shop-filter-heading div > span { display:none; }
.wa-shop-category-chip,.wa-shop-color-chip { min-height:38px; padding-inline:12px; font-size:11px; }
.wa-shop-color-chip { padding-left:7px; }
.wa-shop-color-chip__swatch { width:24px; height:24px; flex-basis:24px; }
.wa-shop-color-empty { display:none; }

.wa-shop-toolbar { margin-bottom:18px; }
.wa-shop-toolbar .woocommerce-sorting-wrapper { width:100%; margin:0!important; padding:0!important; }
.wa-shop-toolbar .woocommerce-sorting-wrapper > .row { display:flex; width:100%; align-items:center; margin:0!important; }
.wa-shop-toolbar .woocommerce-sorting-wrapper > .row > [class*="col-"] { width:auto; flex:1 1 50%; padding:0!important; }
.wa-shop-toolbar .botiga-sorting-right-inner { display:flex; justify-content:flex-end; }
.wa-shop-toolbar .woocommerce-result-count { padding:0!important; }
.wa-shop-toolbar .woocommerce-ordering { margin:0!important; }
.wa-shop-result-count { margin:0!important; color:var(--wa-shop-ink)!important; font-size:11px!important; letter-spacing:.06em; }
.woocommerce-ordering { min-width:220px; }
.woocommerce-ordering select { min-height:42px; font-size:12px!important; }

body.woocommerce-shop ul.products.wa-shop-products,
body.post-type-archive-product ul.products.wa-shop-products,
body.tax-product_cat ul.products.wa-shop-products,
body.tax-product_tag ul.products.wa-shop-products,
body[class*="tax-pa_"] ul.products.wa-shop-products {
    gap:24px!important;
    scroll-margin-top:28px;
}

.wa-shop-products .loop-image-wrap > a {
    background:
        radial-gradient(circle at 83% 14%,rgba(185,164,76,.13),transparent 48%),
        linear-gradient(145deg,#fcfbf7,#edf3f5);
}

body.woocommerce-shop ul.products.wa-shop-products--single,
body.post-type-archive-product ul.products.wa-shop-products--single,
body.tax-product_cat ul.products.wa-shop-products--single,
body.tax-product_tag ul.products.wa-shop-products--single,
body[class*="tax-pa_"] ul.products.wa-shop-products--single {
    max-width:1040px;
    margin-inline:auto!important;
}

body.woocommerce-shop ul.products.wa-shop-products--single > li.product,
body.post-type-archive-product ul.products.wa-shop-products--single > li.product,
body.tax-product_cat ul.products.wa-shop-products--single > li.product,
body.tax-product_tag ul.products.wa-shop-products--single > li.product,
body[class*="tax-pa_"] ul.products.wa-shop-products--single > li.product {
    display:grid!important;
    min-width:0;
    grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);
    grid-template-rows:repeat(3,min-content);
    align-items:center;
    align-content:center;
    column-gap:clamp(24px,4vw,54px);
    padding:16px!important;
    border-radius:18px!important;
    box-shadow:0 18px 44px rgba(12,71,103,.085)!important;
}

body.woocommerce-shop ul.products.wa-shop-products--single > li.product > a:first-child { display:none!important; }
body.woocommerce-shop ul.products.wa-shop-products--single > li.product .loop-image-wrap { grid-column:1; grid-row:1 / span 3; align-self:stretch; }
body.woocommerce-shop ul.products.wa-shop-products--single > li.product .loop-image-wrap > a { display:block; height:100%; }
body.woocommerce-shop ul.products.wa-shop-products--single > li.product .loop-image-wrap img { display:block; height:100%; min-height:300px; max-height:520px; aspect-ratio:1/1!important; object-fit:contain!important; }
body.woocommerce-shop ul.products.wa-shop-products--single > li.product .woocommerce-loop-product__title { grid-column:2; grid-row:1; margin:0 0 5px!important; font-size:clamp(34px,4vw,48px)!important; }
body.woocommerce-shop ul.products.wa-shop-products--single > li.product .price { grid-column:2; grid-row:2; margin:8px 8px 0!important; font-size:20px!important; }
.wa-shop-products--single > li.product .loop-image-wrap { display:contents!important; }
.wa-shop-products--single > li.product .loop-image-wrap > a { grid-column:1; grid-row:1 / span 3; align-self:stretch; overflow:hidden; border-radius:12px; }
.wa-shop-products--single > li.product .loop-image-wrap img { min-width:100%; }
.wa-shop-products--single > li.product .woocommerce-loop-product__title { align-self:end; }
.wa-shop-products--single > li.product > .loop-button-wrap { display:block!important; grid-column:2; grid-row:3; align-self:start; margin:8px!important; }
.wa-shop-products--single > li.product > .loop-button-wrap .button { min-height:48px!important; margin:0!important; border-radius:7px!important; }

.wa-shop-intro a:focus-visible,
.wa-shop-filters a:focus-visible,
.wa-shop-toolbar select:focus-visible,
ul.products li.product a:focus-visible,
.woocommerce-pagination a:focus-visible { outline:3px solid var(--wa-shop-saffron)!important; outline-offset:3px!important; }

@media (prefers-reduced-motion:no-preference) {
    .wa-shop-intro__main { animation:wa-shop-arrive .55s cubic-bezier(.2,.7,.25,1) both; }
    .wa-shop-intro__aside { animation:wa-shop-arrive .55s .12s cubic-bezier(.2,.7,.25,1) both; }
    @keyframes wa-shop-arrive { from { opacity:0; transform:translateY(10px); } to { opacity:1; transform:translateY(0); } }
}

@media (max-width:820px) {
    body.woocommerce-shop .container.content-wrapper,
    body.post-type-archive-product .container.content-wrapper,
    body.tax-product_cat .container.content-wrapper,
    body.tax-product_tag .container.content-wrapper,
    body[class*="tax-pa_"] .container.content-wrapper { width:calc(100% - 44px)!important; padding-top:26px!important; }

    .wa-shop-intro { grid-template-columns:minmax(0,1fr) minmax(200px,.48fr); gap:22px; }
    .wa-shop-intro__aside { grid-template-columns:48px minmax(0,1fr); gap:10px; padding-left:17px; }
    .wa-shop-intro__mark,.wa-shop-intro__mark svg { width:46px; height:46px; }

    body.woocommerce-shop ul.products.wa-shop-products,
    body.post-type-archive-product ul.products.wa-shop-products,
    body.tax-product_cat ul.products.wa-shop-products,
    body.tax-product_tag ul.products.wa-shop-products,
    body[class*="tax-pa_"] ul.products.wa-shop-products { gap:18px!important; }
}

@media (max-width:620px) {
    body.woocommerce-shop .container.content-wrapper,
    body.post-type-archive-product .container.content-wrapper,
    body.tax-product_cat .container.content-wrapper,
    body.tax-product_tag .container.content-wrapper,
    body[class*="tax-pa_"] .container.content-wrapper { width:calc(100% - 32px)!important; padding-top:20px!important; padding-bottom:52px!important; }

    .wa-shop-breadcrumb { margin-bottom:15px; font-size:10px; }
    .wa-shop-intro { grid-template-columns:1fr; gap:13px; margin-bottom:17px; padding-bottom:17px; }
    .wa-shop-intro h1 { font-size:clamp(38px,10.2vw,50px); }
    .wa-shop-intro__lead { margin-top:10px!important; font-size:14px; }
    .wa-shop-intro__aside { display:none; }
    .wa-shop-intro__cta { display:inline-flex; min-height:40px; align-items:center; gap:9px; margin-top:11px; color:var(--wa-shop-yale)!important; font-size:12px; font-weight:750; }
    .wa-shop-intro__cta span { color:var(--wa-shop-pumpkin); }
    .wa-shop-filters { gap:10px; padding:12px 14px; }
    .wa-shop-filter-heading { display:none; }
    .wa-shop-filter-heading.is-filtered { display:flex; min-height:30px; justify-content:flex-end; }
    .wa-shop-filter-heading.is-filtered .wa-shop-filter-heading__icon,
    .wa-shop-filter-heading.is-filtered > div { display:none; }
    .wa-shop-filter-heading { flex-wrap:wrap; }
    .wa-shop-filter-reset { margin-left:auto; }
    .wa-shop-filter-group { grid-template-columns:1fr; gap:8px; }
    .wa-shop-category-list,.wa-shop-color-list { gap:7px; }
    .wa-shop-category-chip,.wa-shop-color-chip { min-height:40px; }
    .wa-shop-toolbar { align-items:center; flex-direction:row; gap:12px; margin-bottom:15px; }
    .woocommerce-ordering { width:auto; min-width:0; flex:1 1 auto; }

    body.woocommerce-shop ul.products.wa-shop-products,
    body.post-type-archive-product ul.products.wa-shop-products,
    body.tax-product_cat ul.products.wa-shop-products,
    body.tax-product_tag ul.products.wa-shop-products,
    body[class*="tax-pa_"] ul.products.wa-shop-products { gap:16px!important; }

    body.woocommerce-shop ul.products.wa-shop-products--single > li.product,
    body.post-type-archive-product ul.products.wa-shop-products--single > li.product,
    body.tax-product_cat ul.products.wa-shop-products--single > li.product,
    body.tax-product_tag ul.products.wa-shop-products--single > li.product,
    body[class*="tax-pa_"] ul.products.wa-shop-products--single > li.product { grid-template-columns:minmax(0,1fr); gap:13px; padding:10px!important; }

    body.woocommerce-shop ul.products.wa-shop-products--single > li.product .loop-image-wrap,
    body.post-type-archive-product ul.products.wa-shop-products--single > li.product .loop-image-wrap,
    body.tax-product_cat ul.products.wa-shop-products--single > li.product .loop-image-wrap,
    body.tax-product_tag ul.products.wa-shop-products--single > li.product .loop-image-wrap,
    body[class*="tax-pa_"] ul.products.wa-shop-products--single > li.product .loop-image-wrap { grid-column:1; grid-row:auto; }

    .wa-shop-products--single > li.product .loop-image-wrap > a { grid-column:1!important; grid-row:1!important; align-self:auto; aspect-ratio:1/1; }
    .wa-shop-products--single > li.product .woocommerce-loop-product__title { grid-column:1!important; grid-row:2!important; }
    .wa-shop-products--single > li.product .price { grid-column:1!important; grid-row:3!important; }
    .wa-shop-products--single > li.product > .loop-button-wrap { grid-column:1!important; grid-row:4!important; margin:7px 8px 3px!important; }
    .wa-shop-products--single > li.product > .loop-button-wrap .button { width:100%; }

    body.woocommerce-shop ul.products.wa-shop-products--single > li.product .loop-image-wrap img,
    body.post-type-archive-product ul.products.wa-shop-products--single > li.product .loop-image-wrap img,
    body.tax-product_cat ul.products.wa-shop-products--single > li.product .loop-image-wrap img,
    body.tax-product_tag ul.products.wa-shop-products--single > li.product .loop-image-wrap img,
    body[class*="tax-pa_"] ul.products.wa-shop-products--single > li.product .loop-image-wrap img { min-height:0; max-height:none; }

    body.woocommerce-shop ul.products.wa-shop-products--single > li.product .woocommerce-loop-product__title,
    body.post-type-archive-product ul.products.wa-shop-products--single > li.product .woocommerce-loop-product__title,
    body.tax-product_cat ul.products.wa-shop-products--single > li.product .woocommerce-loop-product__title,
    body.tax-product_tag ul.products.wa-shop-products--single > li.product .woocommerce-loop-product__title,
    body[class*="tax-pa_"] ul.products.wa-shop-products--single > li.product .woocommerce-loop-product__title { grid-column:1; grid-row:auto; margin:4px 8px 0!important; font-size:28px!important; }

    body.woocommerce-shop ul.products.wa-shop-products--single > li.product .price,
    body.post-type-archive-product ul.products.wa-shop-products--single > li.product .price,
    body.tax-product_cat ul.products.wa-shop-products--single > li.product .price,
    body.tax-product_tag ul.products.wa-shop-products--single > li.product .price,
    body[class*="tax-pa_"] ul.products.wa-shop-products--single > li.product .price { grid-column:1; grid-row:auto; margin-top:4px!important; }
}

@media (prefers-reduced-motion:reduce) {
    .wa-shop-intro__main,.wa-shop-intro__aside { animation:none!important; }
}


/* Center a compact pair of products instead of leaving half of the catalog row empty. */



/* The editorial collection heading is the sole archive H1. */
body.woocommerce-shop .woocommerce-products-header__title,
body.post-type-archive-product .woocommerce-products-header__title,
body.tax-product_cat .woocommerce-products-header__title,
body.tax-product_tag .woocommerce-products-header__title,
body[class*="tax-pa_"] .woocommerce-products-header__title {
    display:none!important;
}


/* WallArt2D: vertical category and cross-collection motif navigation. */
.wa-shop-layout {
    display:grid;
    grid-template-columns:minmax(230px,270px) minmax(0,1fr);
    align-items:start;
    gap:clamp(20px,2.6vw,36px);
    margin-top:8px;
}
.wa-shop-sidebar,.wa-shop-catalog { min-width:0; }
.wa-shop-sidebar .wa-shop-filters {
    display:grid;
    gap:21px;
    margin:0;
    padding:21px 18px;
    border-radius:18px;
    background:#fff;
    box-shadow:0 8px 28px rgba(12,71,103,.05);
}
.wa-shop-sidebar .wa-shop-filter-heading {
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    padding:0 0 14px;
    border-bottom:1px solid rgba(12,71,103,.10);
}
.wa-shop-sidebar .wa-shop-filter-heading__icon { width:35px;height:35px;flex-basis:35px; }
.wa-shop-sidebar .wa-shop-filter-heading > div { flex:1 1 135px; }
.wa-shop-sidebar .wa-shop-filter-heading div > span { display:block;line-height:1.35; }
.wa-shop-sidebar .wa-shop-filter-reset { margin-left:0; }
.wa-shop-sidebar .wa-shop-filter-group {
    display:block;
    min-width:0;
}
.wa-shop-sidebar .wa-shop-filter-group + .wa-shop-filter-group {
    padding-top:18px;
}
.wa-shop-sidebar .wa-shop-filter-group__title {
    padding:0;
    margin-bottom:12px;
}
.wa-shop-sidebar .wa-shop-category-list,
.wa-shop-sidebar .wa-shop-tag-list,
.wa-shop-sidebar .wa-shop-color-list {
    display:grid;
    grid-template-columns:minmax(0,1fr);
    gap:7px;
}
.wa-shop-sidebar .wa-shop-category-chip,
.wa-shop-sidebar .wa-shop-tag-chip,
.wa-shop-sidebar .wa-shop-color-chip {
    display:flex;
    align-items:center;
    justify-content:space-between;
    min-width:0;
    min-height:39px;
    gap:9px;
    padding:8px 12px;
    border:1px solid rgba(12,71,103,.12);
    border-radius:10px;
    background:#fff;
    color:var(--wa-shop-ink)!important;
    font-size:12px;
    font-weight:650;
    text-align:left;
    line-height:1.3;
    box-shadow:none;
    text-decoration:none;
    transition:border-color .18s ease,background .18s ease,color .18s ease;
}
.wa-shop-sidebar .wa-shop-category-chip > span,
.wa-shop-sidebar .wa-shop-tag-chip > span { min-width:0; overflow-wrap:anywhere; }
.wa-shop-sidebar .wa-shop-category-chip small,
.wa-shop-sidebar .wa-shop-tag-chip small,
.wa-shop-sidebar .wa-shop-color-chip small {
    display:grid;
    place-items:center;
    flex:0 0 auto;
    min-width:22px;
    height:22px;
    padding:0 5px;
    border-radius:7px;
    background:var(--wa-shop-blue-soft);
    color:var(--wa-shop-muted);
    font-size:10px;
    font-weight:750;
}
.wa-shop-sidebar .wa-shop-category-chip:hover,
.wa-shop-sidebar .wa-shop-tag-chip:hover,
.wa-shop-sidebar .wa-shop-color-chip:hover {
    transform:none;
    border-color:var(--wa-shop-yale);
    box-shadow:none;
}
.wa-shop-sidebar .wa-shop-category-chip.is-active,
.wa-shop-sidebar .wa-shop-tag-chip.is-active {
    border-color:var(--wa-shop-yale);
    color:#fff!important;
    background:var(--wa-shop-yale);
}
.wa-shop-sidebar .wa-shop-category-chip.is-active small,
.wa-shop-sidebar .wa-shop-tag-chip.is-active small {
    background:#fff;
    color:var(--wa-shop-yale);
}
.wa-shop-sidebar .wa-shop-color-chip { justify-content:flex-start; }
.wa-shop-sidebar .wa-shop-color-chip small { margin-left:auto; }
.wa-shop-more-tags { margin-top:10px; }
.wa-shop-more-tags summary {
    display:flex;
    align-items:center;
    justify-content:space-between;
    cursor:pointer;
    padding:9px 10px;
    border-radius:9px;
    color:var(--wa-shop-yale);
    background:var(--wa-shop-blue-soft);
    font-size:12px;
    font-weight:700;
}
.wa-shop-more-tags[open] summary { margin-bottom:9px; }
.wa-shop-more-tags summary:focus-visible,
.wa-shop-sidebar a:focus-visible {
    outline:3px solid var(--wa-shop-saffron)!important;
    outline-offset:2px!important;
}
.wa-shop-catalog .wa-shop-toolbar { margin-bottom:17px; }
body.woocommerce-shop .wa-shop-catalog ul.products.wa-shop-products {
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
}
.wa-shop-empty {
    padding:18px;
    margin:0 0 12px;
    background:#f2f6f8;
    border-radius:12px;
    color:var(--wa-shop-ink);
    font-size:14px;
    line-height:1.6;
}
.wa-shop-empty a { color:var(--wa-shop-yale);text-decoration:underline; }
@media (max-width:1200px) {
    .wa-shop-layout { grid-template-columns:minmax(215px,240px) minmax(0,1fr);gap:22px; }
    body.woocommerce-shop .wa-shop-catalog ul.products.wa-shop-products {
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
    }
}
@media (max-width:900px) {
    .wa-shop-layout { grid-template-columns:minmax(0,1fr);gap:19px; }
    .wa-shop-sidebar .wa-shop-filters { padding:18px;gap:16px; }
    .wa-shop-sidebar .wa-shop-category-list,
    .wa-shop-sidebar .wa-shop-tag-list,
    .wa-shop-sidebar .wa-shop-color-list {
        display:flex;
        flex-wrap:wrap;
        gap:8px;
    }
    .wa-shop-sidebar .wa-shop-category-chip,
    .wa-shop-sidebar .wa-shop-tag-chip,
    .wa-shop-sidebar .wa-shop-color-chip {
        width:auto;
        min-height:39px;
    }
    .wa-shop-sidebar .wa-shop-filter-heading div > span { display:block; }
}
@media (max-width:620px) {
    .wa-shop-sidebar .wa-shop-filters { padding:15px; }
    .wa-shop-sidebar .wa-shop-filter-heading { display:flex; }
    .wa-shop-sidebar .wa-shop-filter-heading__icon { display:grid!important; }
    .wa-shop-sidebar .wa-shop-filter-heading > div { display:block!important; }
    .wa-shop-sidebar .wa-shop-filter-reset { margin-left:auto; }
    body.woocommerce-shop .wa-shop-catalog ul.products.wa-shop-products {
        grid-template-columns:minmax(0,1fr)!important;
    }
}


/* WallArt2D - mobile filters verified implementation 2026-10-18 */
@media screen and (max-width:620px) {
  body.woocommerce-shop .wa-shop-layout,
  body.post-type-archive-product .wa-shop-layout {
    gap:12px;
    margin-top:0;
  }
  body.woocommerce-shop .wa-shop-sidebar .wa-shop-filters,
  body.post-type-archive-product .wa-shop-sidebar .wa-shop-filters {
    padding:12px 13px;
    gap:9px;
    border-radius:14px;
  }
  body.woocommerce-shop .wa-shop-sidebar .wa-shop-filter-heading,
  body.post-type-archive-product .wa-shop-sidebar .wa-shop-filter-heading {
    display:none;
  }
  body.woocommerce-shop .wa-shop-sidebar .wa-shop-filter-heading.is-filtered,
  body.post-type-archive-product .wa-shop-sidebar .wa-shop-filter-heading.is-filtered {
    display:flex;
    padding-bottom:8px;
    margin:0;
  }
  body.woocommerce-shop .wa-shop-sidebar .wa-shop-filter-group + .wa-shop-filter-group,
  body.post-type-archive-product .wa-shop-sidebar .wa-shop-filter-group + .wa-shop-filter-group {
    padding-top:8px;
  }
  body.woocommerce-shop .wa-shop-sidebar .wa-shop-filter-group__title,
  body.post-type-archive-product .wa-shop-sidebar .wa-shop-filter-group__title {
    margin-bottom:6px;
    font-size:11px;
  }
  body.woocommerce-shop .wa-shop-sidebar .wa-shop-category-list,
  body.woocommerce-shop .wa-shop-sidebar .wa-shop-tag-list,
  body.woocommerce-shop .wa-shop-sidebar .wa-shop-color-list,
  body.post-type-archive-product .wa-shop-sidebar .wa-shop-category-list,
  body.post-type-archive-product .wa-shop-sidebar .wa-shop-tag-list,
  body.post-type-archive-product .wa-shop-sidebar .wa-shop-color-list {
    display:flex;
    flex-wrap:nowrap;
    overflow-x:auto;
    overflow-y:hidden;
    gap:7px;
    padding:0 0 6px;
    scrollbar-width:thin;
    overscroll-behavior-x:contain;
    -webkit-overflow-scrolling:touch;
  }
  body.woocommerce-shop .wa-shop-sidebar .wa-shop-category-chip,
  body.woocommerce-shop .wa-shop-sidebar .wa-shop-tag-chip,
  body.woocommerce-shop .wa-shop-sidebar .wa-shop-color-chip,
  body.post-type-archive-product .wa-shop-sidebar .wa-shop-category-chip,
  body.post-type-archive-product .wa-shop-sidebar .wa-shop-tag-chip,
  body.post-type-archive-product .wa-shop-sidebar .wa-shop-color-chip {
    flex:0 0 auto;
    width:auto;
    min-height:36px;
    white-space:nowrap;
    padding:7px 10px;
  }
  body.woocommerce-shop .wa-shop-sidebar .wa-shop-more-tags,
  body.post-type-archive-product .wa-shop-sidebar .wa-shop-more-tags {
    margin-top:5px;
  }
  body.woocommerce-shop .wa-shop-sidebar .wa-shop-more-tags summary,
  body.post-type-archive-product .wa-shop-sidebar .wa-shop-more-tags summary {
    min-height:38px;
  }
}
