/* Silent Wave WooCommerce product card refinements. */
.sw-products ul.products,.woocommerce-page ul.products{column-gap:clamp(24px,3vw,52px)!important;row-gap:clamp(58px,6vw,92px)!important}
.woocommerce ul.products li.product{display:flex!important;flex-direction:column;align-items:flex-start}
.woocommerce ul.products li.product .woocommerce-loop-product__title{margin:0!important;padding:0!important;font-size:clamp(16px,1.35vw,20px)!important;line-height:1.2!important;letter-spacing:-.035em!important;font-weight:700!important}
.woocommerce ul.products li.product .price{display:flex!important;align-items:baseline;flex-wrap:wrap;gap:8px;margin:12px 0 18px!important;color:#080808!important;font-size:clamp(23px,2vw,31px)!important;line-height:1!important;font-weight:800!important}
.woocommerce ul.products li.product .price del{order:2;color:#858585!important;font-size:13px!important;font-weight:400!important;opacity:1!important}
.woocommerce ul.products li.product .price ins{order:1;color:#080808!important;font-weight:800!important;text-decoration:none!important}
.woocommerce ul.products li.product .button{display:inline-flex!important;width:auto!important;min-width:148px;min-height:46px;align-items:center;justify-content:center!important;margin:0!important;padding:13px 20px!important;font-size:13px!important;line-height:1!important;text-align:center}
.woocommerce span.onsale{top:16px!important;right:16px!important;left:auto!important;min-width:54px!important;min-height:32px!important;padding:8px 11px!important;border-radius:0!important;background:#d8ff43!important;color:#080808!important;font-size:12px!important;line-height:16px!important;font-weight:800!important}
@media(max-width:1024px){.sw-products ul.products,.woocommerce-page ul.products{column-gap:28px!important;row-gap:64px!important}}
@media(max-width:600px){.sw-products ul.products,.woocommerce-page ul.products{row-gap:52px!important}.woocommerce ul.products li.product .button{min-width:138px}}

@media(max-width:600px){
  .home .sw-products ul.products li.product .price,.front-page .sw-products ul.products li.product .price{margin-bottom:26px!important}
  .home .sw-products ul.products li.product .button,.front-page .sw-products ul.products li.product .button{margin-top:18px!important}
}

/* Home collection density: 5 desktop, 4 tablet and 3 mobile. */
.home .sw-products ul.products,.front-page .sw-products ul.products,.sw-products ul.products{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;column-gap:18px!important;row-gap:58px!important}
.home .sw-products ul.products li.product,.front-page .sw-products ul.products li.product,.sw-products ul.products li.product{display:flex!important;flex-direction:column!important;align-items:stretch!important;width:100%!important;min-width:0!important;margin:0!important;float:none!important}
.home .sw-products ul.products li.product a.woocommerce-LoopProduct-link,.front-page .sw-products ul.products li.product a.woocommerce-LoopProduct-link,.sw-products ul.products li.product a.woocommerce-LoopProduct-link{display:block;width:100%}
.home .sw-products ul.products li.product img,.front-page .sw-products ul.products li.product img,.sw-products ul.products li.product img{width:100%!important;height:auto!important;aspect-ratio:1/1!important;object-fit:contain!important}
.home .sw-products ul.products li.product .button,.front-page .sw-products ul.products li.product .button,.sw-products ul.products li.product .button{width:100%!important;margin:auto 0 0!important;align-self:stretch!important}
@media(max-width:1024px){.home .sw-products ul.products,.front-page .sw-products ul.products,.sw-products ul.products{grid-template-columns:repeat(4,minmax(0,1fr))!important;column-gap:16px!important}.home .sw-products ul.products li.product:nth-child(n+9),.front-page .sw-products ul.products li.product:nth-child(n+9),.sw-products ul.products li.product:nth-child(n+9){display:none!important}}
@media(max-width:600px){.home .sw-products ul.products,.front-page .sw-products ul.products,.sw-products ul.products{grid-template-columns:repeat(3,minmax(0,1fr))!important;column-gap:8px!important;row-gap:36px!important}.home .sw-products ul.products li.product:nth-child(n+7),.front-page .sw-products ul.products li.product:nth-child(n+7),.sw-products ul.products li.product:nth-child(n+7){display:none!important}.home .sw-products ul.products li.product .woocommerce-loop-product__title,.front-page .sw-products ul.products li.product .woocommerce-loop-product__title,.sw-products ul.products li.product .woocommerce-loop-product__title{font-size:11px!important;overflow-wrap:anywhere}.home .sw-products ul.products li.product .price,.front-page .sw-products ul.products li.product .price,.sw-products ul.products li.product .price{font-size:16px!important;gap:4px}}

/* Elementor's imported template carried older 3/2-column declarations. These
   selectors intentionally win only inside the Home collection. */
@media(min-width:1025px){.home .elementor .sw-products ul.products{grid-template-columns:repeat(5,minmax(0,1fr))!important}}
@media(min-width:601px) and (max-width:1024px){.home .elementor .sw-products ul.products{grid-template-columns:repeat(4,minmax(0,1fr))!important}.home .elementor .sw-products ul.products li.product:nth-child(n+9){display:none!important}}
@media(max-width:600px){.home .elementor .sw-products ul.products{grid-template-columns:repeat(3,minmax(0,1fr))!important}.home .elementor .sw-products ul.products li.product:nth-child(n+7){display:none!important}}

/* Square catalogue media on shop, category, tag and search archives. */
.woocommerce-shop ul.products li.product a.woocommerce-LoopProduct-link img,
.tax-product_cat ul.products li.product a.woocommerce-LoopProduct-link img,
.tax-product_tag ul.products li.product a.woocommerce-LoopProduct-link img,
.post-type-archive-product ul.products li.product a.woocommerce-LoopProduct-link img,
.search-results ul.products li.product a.woocommerce-LoopProduct-link img{
  display:block;width:100%!important;height:auto!important;aspect-ratio:1/1!important;
  object-fit:contain!important;object-position:center;background:#e3e4df;margin:0 0 18px!important;
}

/* Curated /products/ catalogue. */
.sw-catalogue{width:min(1440px,92vw);margin:0 auto;padding:90px 0 120px}
.sw-catalogue-hero{padding:38px 0 88px;border-bottom:1px solid #d9dad6}
.sw-catalogue-hero h1{margin:0;font-size:clamp(42px,5.5vw,82px);line-height:.9;letter-spacing:-.06em}
.sw-catalogue-hero>p:last-child{max-width:560px;margin:28px 0 0;color:#666;line-height:1.7}
.sw-best-seller{padding:88px 0}
.sw-best-seller>header{display:flex;align-items:end;justify-content:space-between;margin-bottom:34px}
.sw-best-seller h2{margin:0;font-size:clamp(38px,5vw,72px);letter-spacing:-.06em}
.sw-best-seller .sw-kicker{margin:0 0 10px}
.sw-best-seller-grid ul.products{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr));gap:26px 18px!important;margin:0!important}
.sw-best-seller-grid ul.products li.product{width:auto!important;margin:0!important;float:none!important}
.sw-catalogue-controls{display:flex;align-items:end;justify-content:space-between;gap:30px;padding:30px 0;border:0}
.sw-category-tabs{display:flex;gap:7px}
.sw-category-tabs button,.sw-no-results button{min-width:92px;padding:12px 18px;border:1px solid #111;background:transparent;font-size:12px;font-weight:800;letter-spacing:.08em;cursor:pointer}
.sw-category-tabs button.is-active,.sw-category-tabs button:hover,.sw-no-results button:hover{background:#111;color:#fff}
.sw-product-search{display:grid;grid-template-columns:1fr auto;align-items:center;width:min(420px,100%);border-bottom:1px solid #111}
.sw-product-search span{grid-column:1/-1;font-size:9px;font-weight:800;letter-spacing:.18em}
.sw-product-search input{padding:10px 0;border:0!important;outline:0;background:transparent;font-size:16px}
.sw-product-search b{font-size:22px;font-weight:400}
.sw-catalogue-results{padding-top:36px}
.sw-result-count{margin:0 0 30px;color:#777;font-size:12px;text-transform:uppercase;letter-spacing:.1em}
.sw-catalogue-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:62px 18px}
.sw-catalogue-item[hidden]{display:none!important}
.sw-catalogue-item li.product,.sw-best-seller-grid li.product{display:flex!important;flex-direction:column!important;align-items:stretch!important;width:100%!important;height:100%;margin:0!important;float:none!important}
.sw-catalogue-item li.product a.woocommerce-LoopProduct-link{display:block;width:100%}
.sw-catalogue-item li.product img,.sw-best-seller-grid li.product img{width:100%!important;height:auto!important;aspect-ratio:1/1!important;object-fit:contain!important;background:#e3e4df}
.sw-catalogue-item li.product .woocommerce-loop-product__title,.sw-best-seller-grid li.product .woocommerce-loop-product__title{font-size:clamp(14px,1.15vw,18px)!important;line-height:1.2!important}
.sw-catalogue-item li.product .price,.sw-best-seller-grid li.product .price{font-size:clamp(19px,1.6vw,25px)!important;margin:10px 0 14px!important}
.sw-catalogue-item li.product .button,.sw-best-seller-grid li.product .button{position:static!important;display:flex!important;width:100%!important;min-height:46px;margin:auto 0 0!important;align-self:stretch!important}
.sw-catalogue .onsale{display:none!important}
.sw-catalogue-item li.product .button,.sw-best-seller-grid li.product .button{margin-top:28px!important}
.sw-products-elementor-content>.elementor{width:100%}
.sw-no-results{text-align:center;padding:90px 20px}

/* Site-wide product CTA matching the reference Buy now treatment. */
.woocommerce ul.products li.product .button,.sw-catalogue .button{display:flex!important;width:100%!important;min-height:50px;align-items:center!important;justify-content:space-between!important;margin-top:18px!important;padding:15px 18px!important;border:1px solid #111!important;background:#111!important;color:#fff!important;font-size:14px!important;font-weight:800!important}
.woocommerce ul.products li.product .button:after,.sw-catalogue .button:after{content:"→";margin-left:26px;color:#d8ff43;font-size:17px}
.woocommerce ul.products li.product .button:hover,.sw-catalogue .button:hover{background:transparent!important;color:#111!important}
.single-product .single_add_to_cart_button{display:inline-flex!important;align-items:center;justify-content:space-between;min-width:170px}
.single-product .single_add_to_cart_button:after{content:"→";margin-left:28px;color:#d8ff43;font-size:17px}
@media(max-width:1024px){.sw-best-seller-grid ul.products,.sw-catalogue-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:50px 16px}}
@media(max-width:600px){.sw-catalogue{width:calc(100% - 24px);padding:58px 0 80px}.sw-catalogue-hero{padding-bottom:58px}.sw-best-seller{padding:58px 0}.sw-best-seller-grid ul.products,.sw-catalogue-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:36px 8px}.sw-catalogue-controls{align-items:stretch;flex-direction:column}.sw-product-search{width:100%}.sw-category-tabs{width:100%}.sw-category-tabs button{flex:1}.sw-catalogue-item li.product .woocommerce-loop-product__title,.sw-best-seller-grid li.product .woocommerce-loop-product__title{font-size:11px!important;overflow-wrap:anywhere}.sw-catalogue-item li.product .price,.sw-best-seller-grid li.product .price{font-size:16px!important;gap:4px}.sw-catalogue-item li.product .price del,.sw-best-seller-grid li.product .price del{font-size:9px!important}.woocommerce ul.products li.product .button,.sw-catalogue .button{min-width:0!important;min-height:40px;padding:11px 7px!important;font-size:9px!important}.woocommerce ul.products li.product .button:after,.sw-catalogue .button:after{margin-left:5px;font-size:13px}}

/* Single-product related carousel: square media, randomised order and touch scrolling. */
.single-product .sw-product-breadcrumb{display:flex;align-items:center;gap:9px;float:none!important;clear:both;width:100%;margin:0 0 24px;padding:0;font-size:11px;line-height:1.4;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#747674}
.single-product .sw-product-breadcrumb a{color:inherit;text-decoration:none;transition:color .2s ease}
.single-product .sw-product-breadcrumb a:hover{color:#080808}
.single-product .sw-product-breadcrumb span{color:#a4a6a4}
.single-product .sw-shipping-reassurance{margin:18px 0 22px;padding:15px 0;border-top:1px solid #d9dad6;border-bottom:1px solid #d9dad6}
.single-product .sw-shipping-reassurance p{margin:0;font-size:14px;line-height:1.55}
.single-product .sw-shipping-reassurance p+ p{margin-top:3px;color:#626462;font-size:12px}
.single-product form.variations_form .sw-native-variations{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;white-space:nowrap!important}
.single-product .sw-variation-picker{margin:20px 0 22px}
.single-product .sw-variation-heading{margin:0 0 12px;font-size:14px;font-weight:700}
.single-product .sw-variation-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;max-height:410px;overflow-y:auto;padding:2px}
.single-product .sw-variation-card{display:flex;flex-direction:column;align-items:stretch;min-width:0;padding:7px;border:1px solid #b7b9b7;border-radius:3px;background:#fff;color:#111;text-align:left;cursor:pointer}
.single-product .sw-variation-card:hover,.single-product .sw-variation-card.is-selected{border:2px solid #111;padding:6px;box-shadow:0 0 0 2px rgba(216,255,67,.55)}
.single-product .sw-variation-card:disabled{opacity:.42;cursor:not-allowed}
.single-product .sw-variation-card img{display:block;width:100%;aspect-ratio:1/1;object-fit:contain;background:#f0f1ed;margin:0 0 7px}
.single-product .sw-variation-name{font-size:12px;line-height:1.3;font-weight:700;min-height:32px;overflow-wrap:anywhere}
.single-product .sw-variation-price{margin-top:6px;font-size:14px;line-height:1.25;font-weight:800}
.single-product .sw-variation-price del{display:block;color:#888;font-size:11px;font-weight:400}
.single-product .sw-variation-price ins{text-decoration:none}
.single-product .woocommerce-variation-description{display:none!important}
.single-product .sw-product-details{clear:both;width:80vw;max-width:1440px;margin:80px calc(50% - 40vw) 30px;padding:50px 0;border-top:1px solid #d9dad6}
.single-product .sw-product-details>h2{margin:0 0 32px;font-size:clamp(30px,4vw,54px);letter-spacing:-.045em}
.single-product .sw-product-details-content{font-size:15px;line-height:1.75}
.single-product .sw-product-details-content img{display:block;max-width:100%;height:auto;margin:24px auto}
.single-product div.product:after{content:"";display:table;clear:both}
.single-product .related.products{position:relative;display:block!important;clear:both!important;float:none!important;width:100%!important;max-width:none!important;margin:72px 0 0!important;padding-top:1px;overflow:hidden}
.single-product .related.products:before{content:"";display:table;clear:both}
.single-product .related.products>h2{margin:0 0 28px;font-size:clamp(28px,3vw,44px);letter-spacing:-.045em}
.single-product .related.products ul.products{position:relative;display:flex!important;float:none!important;clear:both!important;width:100%!important;max-width:100%!important;grid-template-columns:none!important;gap:28px!important;overflow-x:auto;overflow-y:hidden;scroll-behavior:smooth;scroll-snap-type:x mandatory;padding:0 0 18px!important;margin:0!important;scrollbar-width:none}
.single-product .related.products ul.products::-webkit-scrollbar{display:none}
.single-product .related.products ul.products{align-items:stretch!important}
.single-product .related.products ul.products li.product{position:relative!important;float:none!important;clear:none!important;display:flex!important;flex-direction:column!important;align-items:stretch!important;align-self:stretch!important;flex:0 0 calc((100% - 100px)/6)!important;width:calc((100% - 100px)/6)!important;max-width:calc((100% - 100px)/6)!important;min-width:0!important;height:auto!important;margin:0!important;scroll-snap-align:start}
.single-product .related.products ul.products li.product a.woocommerce-LoopProduct-link{display:block;width:100%}
.single-product .related.products ul.products li.product a img{display:block;width:100%!important;height:auto!important;aspect-ratio:1/1;object-fit:contain!important;background:#e3e4df;margin:0 0 18px!important}
.single-product .related.products ul.products li.product .woocommerce-loop-product__title{display:-webkit-box;min-height:47px;margin:0!important;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-height:1.2!important}
.single-product .related.products ul.products li.product .price{display:flex!important;align-content:flex-start;min-height:50px;margin:10px 0 14px!important}
.single-product .related.products ul.products li.product .button{width:100%!important;min-height:50px;margin:auto 0 0!important;align-self:stretch!important}
.single-product .related.products .sw-related-controls{display:flex;gap:8px;position:absolute;right:0;top:0}
.single-product .related.products .sw-related-control{width:42px;height:42px;border:1px solid #111;background:transparent;color:#111;font-size:20px;line-height:1;cursor:pointer}
.single-product .related.products .sw-related-control:hover{background:#111;color:#fff}
@media(max-width:1024px){.single-product .sw-variation-cards{grid-template-columns:repeat(3,minmax(0,1fr))}.single-product .related.products ul.products li.product{flex-basis:calc((100% - 54px)/4)!important;width:calc((100% - 54px)/4)!important;max-width:calc((100% - 54px)/4)!important}.single-product .related.products ul.products{gap:18px!important}.single-product .sw-product-details{width:88vw;margin-left:calc(50% - 44vw);margin-right:calc(50% - 44vw)}}
@media(max-width:600px){.single-product .sw-product-breadcrumb{gap:6px;margin-bottom:18px;font-size:9px;letter-spacing:.08em;white-space:nowrap;overflow-x:auto}.single-product .sw-variation-cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;max-height:360px}.single-product .sw-variation-card{padding:5px}.single-product .sw-variation-card:hover,.single-product .sw-variation-card.is-selected{padding:4px}.single-product .sw-variation-name{font-size:10px;min-height:28px}.single-product .sw-variation-price{font-size:12px}.single-product .related.products{margin-top:54px!important}.single-product .related.products ul.products li.product{flex-basis:calc((100% - 20px)/3)!important;width:calc((100% - 20px)/3)!important;max-width:calc((100% - 20px)/3)!important}.single-product .related.products ul.products{gap:10px!important}.single-product .related.products .sw-related-controls{position:static;margin:-12px 0 18px;justify-content:flex-end}.single-product .sw-product-details{width:92vw;margin:58px calc(50% - 46vw) 20px;padding-top:36px}}
