/* =========================================================
   SELECT SEVEN · WOOCOMMERCE
   Native WooCommerce templates + Block Cart/Checkout support.
   ========================================================= */

/* Shop canvas */
.woocommerce-page .site-main,.woocommerce .site-main{background:radial-gradient(circle at 92% 4%,rgba(119,105,255,.08),transparent 24rem),#fff}
.woocommerce .woocommerce-breadcrumb{width:var(--s7-shell);margin:0 auto;padding:30px 0 0;color:#9694a5;font-size:.78rem}.woocommerce .woocommerce-breadcrumb a{color:#737185}.s7-breadcrumb-sep{display:inline-block;margin:0 .55rem;color:#c8c6d3}
.woocommerce .woocommerce-products-header{width:var(--s7-shell);margin:0 auto;padding:48px 0 16px}.woocommerce .woocommerce-products-header__title.page-title{margin:0;max-width:12ch;font-size:clamp(3rem,6vw,5.8rem);line-height:.97;letter-spacing:-.055em}.woocommerce .term-description{max-width:720px;color:var(--s7-muted);font-size:1.05rem}
.woocommerce .woocommerce-notices-wrapper,.woocommerce .woocommerce-result-count,.woocommerce .woocommerce-ordering,.woocommerce ul.products,.woocommerce nav.woocommerce-pagination,.woocommerce .woocommerce-info,.woocommerce .woocommerce-message,.woocommerce .woocommerce-error{width:var(--s7-shell);margin-left:auto;margin-right:auto}

/* Category chips */
.s7-shop-chips{width:var(--s7-shell);margin:8px auto 28px;display:flex;gap:8px;overflow-x:auto;padding:2px 0 8px;scrollbar-width:thin}.s7-chip{flex:0 0 auto;display:inline-flex;align-items:center;gap:7px;min-height:38px;padding:0 13px;border:1px solid var(--s7-line);border-radius:999px;background:#fff;color:#363548;font-size:.81rem;font-weight:750}.s7-chip span{color:#9996aa;font-size:.7rem}.s7-chip:hover,.s7-chip.is-active{border-color:rgba(119,105,255,.35);color:#5f51eb;background:rgba(119,105,255,.07)}

/* Shop toolbar */
.woocommerce .woocommerce-result-count{float:none;width:auto;margin:0;color:#858394;font-size:.84rem}.woocommerce .woocommerce-ordering{float:none;width:auto;margin:0}.woocommerce .woocommerce-ordering select{min-width:210px;height:42px;padding:0 38px 0 12px;background-color:#fff}.woocommerce .woocommerce-result-count+.woocommerce-ordering{margin-left:auto}.woocommerce:has(.woocommerce-result-count) .woocommerce-result-count,.woocommerce:has(.woocommerce-ordering) .woocommerce-ordering{display:inline-flex;align-items:center}.woocommerce .woocommerce-result-count{margin-left:max(24px,calc((100vw - 1280px)/2))}.woocommerce .woocommerce-ordering{margin-right:max(24px,calc((100vw - 1280px)/2))}.woocommerce .woocommerce-ordering+.products{clear:both;padding-top:22px}

/* Product grid */
.woocommerce ul.products{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;clear:both;padding:30px 0 78px;list-style:none}.woocommerce ul.products::before,.woocommerce ul.products::after{display:none}.woocommerce ul.products li.product{float:none!important;width:auto!important;margin:0!important;position:relative;display:flex;flex-direction:column;padding:12px 12px 16px;border:1px solid var(--s7-line);border-radius:18px;background:rgba(255,255,255,.94);box-shadow:0 10px 30px rgba(36,31,70,.04);overflow:hidden;transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}.woocommerce ul.products li.product:hover{transform:translateY(-5px);border-color:rgba(119,105,255,.30);box-shadow:0 22px 48px rgba(36,31,70,.10)}.woocommerce ul.products li.product a img{width:100%;aspect-ratio:1/1;object-fit:contain;margin:0 0 14px;border-radius:13px;background:linear-gradient(145deg,#fbfbfd,#f5f4f9);transition:transform .35s ease}.woocommerce ul.products li.product:hover a img{transform:scale(1.02)}.woocommerce ul.products li.product .woocommerce-loop-product__title{padding:0;margin:0 2px 7px;color:var(--s7-ink);font-size:1rem;line-height:1.3;letter-spacing:-.015em}.s7-product-accent{display:block;width:34px;height:2px;margin:2px 2px 9px;border-radius:2px;background:linear-gradient(90deg,var(--s7-violet),var(--s7-magenta),var(--s7-cyan))}.woocommerce ul.products li.product .price{margin:0 2px 14px;color:#6254ed;font-size:1rem;font-weight:820}.woocommerce ul.products li.product .price del{color:#a3a0b0;font-weight:550}.woocommerce ul.products li.product .price ins{text-decoration:none}.woocommerce ul.products li.product .button{margin:auto 0 0;min-height:42px;padding:0 13px;border:1px solid #e1deef;border-radius:11px;display:flex;align-items:center;justify-content:center;background:#fff;color:#353348;font-size:.82rem;font-weight:800;box-shadow:none}.woocommerce ul.products li.product .button:hover{border-color:rgba(119,105,255,.35);background:rgba(119,105,255,.06);color:#5f51eb}.woocommerce ul.products li.product .added_to_cart{margin-top:8px;text-align:center;font-size:.78rem;font-weight:800}.woocommerce span.onsale{top:18px!important;left:18px!important;right:auto!important;min-width:0;min-height:0;line-height:1;padding:7px 9px;border-radius:999px;background:var(--s7-brand-gradient);font-size:.68rem;letter-spacing:.04em;box-shadow:0 6px 18px rgba(119,105,255,.22)}

/* Pagination */
.woocommerce nav.woocommerce-pagination{padding-bottom:76px}.woocommerce nav.woocommerce-pagination ul{border:0;display:flex;gap:7px}.woocommerce nav.woocommerce-pagination ul li{border:0}.woocommerce nav.woocommerce-pagination ul li a,.woocommerce nav.woocommerce-pagination ul li span{min-width:40px;height:40px;padding:0 9px;display:grid;place-items:center;border:1px solid var(--s7-line);border-radius:10px;background:#fff;color:#555368}.woocommerce nav.woocommerce-pagination ul li span.current{background:var(--s7-ink);border-color:var(--s7-ink);color:#fff}

/* Notices */
.woocommerce-message,.woocommerce-info,.woocommerce-error{margin-top:24px!important;padding:16px 18px 16px 48px!important;border:1px solid var(--s7-line)!important;border-top:1px solid var(--s7-line)!important;border-radius:14px;background:#fff;box-shadow:0 10px 28px rgba(36,31,70,.05)}.woocommerce-message::before,.woocommerce-info::before{color:var(--s7-violet)!important}.woocommerce-error::before{color:var(--s7-magenta)!important}.woocommerce-message .button,.woocommerce-info .button{border-radius:9px;background:var(--s7-ink);color:#fff}

/* Single product */
.single-product .woocommerce{padding-bottom:80px}.single-product div.product{width:var(--s7-shell);margin:38px auto 0;display:grid;grid-template-columns:minmax(0,1.06fr) minmax(390px,.94fr);gap:64px;align-items:start}.single-product div.product::before,.single-product div.product::after{display:none}.single-product div.product .woocommerce-product-gallery{float:none!important;width:auto!important;margin:0!important;position:sticky;top:118px}.single-product div.product .woocommerce-product-gallery__wrapper{border:1px solid var(--s7-line);border-radius:24px;background:linear-gradient(145deg,#fcfcfe,#f6f5fa);overflow:hidden}.single-product div.product .woocommerce-product-gallery__image a{display:block}.single-product div.product .woocommerce-product-gallery__image img{width:100%;object-fit:contain}.single-product .flex-control-thumbs{display:grid!important;grid-template-columns:repeat(5,1fr);gap:8px;margin-top:10px!important}.single-product .flex-control-thumbs li{width:auto!important;float:none!important}.single-product .flex-control-thumbs img{border:1px solid var(--s7-line);border-radius:10px;background:#faf9fc;opacity:.72}.single-product .flex-control-thumbs img.flex-active{border-color:var(--s7-violet);opacity:1}.single-product div.product .summary{float:none!important;width:auto!important;margin:0!important;padding:28px;border:1px solid var(--s7-line);border-radius:24px;background:rgba(255,255,255,.94);box-shadow:0 18px 60px rgba(36,31,70,.07)}.single-product .product_title{margin:0 0 13px;font-size:clamp(1.9rem,2.75vw,2.9rem);line-height:1.04;letter-spacing:-.045em}.single-product .summary .price{color:#6254ed!important;font-size:1.6rem!important;font-weight:850}.single-product .summary .price ins{text-decoration:none}.single-product .woocommerce-product-details__short-description{color:#666477}.single-product .summary form.cart{display:flex;gap:9px;flex-wrap:wrap;padding:18px 0;margin:0!important}.single-product .summary .quantity .qty{height:48px;border-radius:11px}.single-product .summary .single_add_to_cart_button{min-height:48px;padding:0 22px!important;border:0!important;border-radius:12px!important;background:var(--s7-brand-gradient)!important;color:#fff!important;box-shadow:0 13px 32px rgba(119,105,255,.22)}.single-product .summary .single_add_to_cart_button:hover{filter:brightness(1.04);transform:translateY(-1px)}.single-product .product_meta{padding-top:16px;border-top:1px solid var(--s7-line);display:grid;gap:6px;color:#8b899b;font-size:.8rem}.single-product .product_meta a{font-weight:700}.single-product .variations{margin:8px 0 0!important}.single-product .variations th,.single-product .variations td{padding:7px 0!important}.single-product .variations label{font-size:.82rem}.single-product .variations select{width:100%;min-height:44px}.single-product .reset_variations{display:inline-block;margin-top:7px;font-size:.77rem}.single-product .woocommerce-variation-price{margin:9px 0}.single-product .woocommerce-variation-availability{font-size:.82rem;color:#6f6d7d}

/* Tabs / related */
.single-product .woocommerce-tabs,.single-product .related,.single-product .upsells{grid-column:1/-1;width:100%;margin-top:10px}.single-product .woocommerce-tabs{padding:0}.single-product .woocommerce-tabs ul.tabs{display:flex;gap:6px;padding:0!important;margin:0 0 16px!important}.single-product .woocommerce-tabs ul.tabs::before{border-bottom-color:var(--s7-line)!important}.single-product .woocommerce-tabs ul.tabs li{margin:0!important;padding:0!important;border:1px solid var(--s7-line)!important;border-radius:10px 10px 0 0!important;background:#f8f7fb!important}.single-product .woocommerce-tabs ul.tabs li a{padding:10px 14px!important;font-size:.85rem}.single-product .woocommerce-tabs .panel{padding:28px;border:1px solid var(--s7-line);border-radius:0 18px 18px 18px}.single-product .related>h2,.single-product .upsells>h2{margin:58px 0 20px;font-size:2rem;letter-spacing:-.035em}

/* Cart / checkout classic */
.woocommerce-cart .woocommerce,.woocommerce-checkout .woocommerce,.woocommerce-account .woocommerce{width:var(--s7-shell);margin:0 auto;padding:56px 0 84px}.woocommerce-cart table.shop_table,.woocommerce-checkout .woocommerce-checkout-review-order-table,.woocommerce-account .woocommerce-MyAccount-content{border:1px solid var(--s7-line)!important;border-radius:18px!important;background:#fff;overflow:hidden}.woocommerce table.shop_table th,.woocommerce table.shop_table td{padding:14px!important;border-top-color:var(--s7-line)!important}.woocommerce-cart .cart-collaterals .cart_totals{padding:22px;border:1px solid var(--s7-line);border-radius:18px;background:#fff;box-shadow:0 14px 42px rgba(36,31,70,.05)}.woocommerce .cart .button,.woocommerce .checkout-button,.woocommerce #payment #place_order,.woocommerce-account .woocommerce-button{min-height:46px!important;border:0!important;border-radius:11px!important;background:var(--s7-brand-gradient)!important;color:#fff!important;font-weight:800!important}.woocommerce-checkout #payment{border-radius:18px!important;background:#f7f6fa!important}.woocommerce-checkout #payment div.payment_box{background:#fff!important}.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea{min-height:46px}.woocommerce form .form-row textarea{min-height:120px}.select2-container--default .select2-selection--single{height:46px;border-color:#deddea;border-radius:12px}.select2-container--default .select2-selection--single .select2-selection__rendered{line-height:44px}.select2-container--default .select2-selection--single .select2-selection__arrow{height:44px}

/* My Account */
.woocommerce-account .woocommerce{display:grid;grid-template-columns:240px minmax(0,1fr);gap:22px}.woocommerce-account .woocommerce>.woocommerce-notices-wrapper{grid-column:1/-1;width:100%}.woocommerce-account .woocommerce-MyAccount-navigation{float:none!important;width:auto!important}.woocommerce-account .woocommerce-MyAccount-navigation ul{list-style:none;margin:0;padding:10px;border:1px solid var(--s7-line);border-radius:16px;background:#fff}.woocommerce-account .woocommerce-MyAccount-navigation li a{display:block;padding:10px 11px;border-radius:9px;color:#555368;font-size:.88rem;font-weight:700}.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a,.woocommerce-account .woocommerce-MyAccount-navigation li a:hover{background:rgba(119,105,255,.08);color:#5f51eb}.woocommerce-account .woocommerce-MyAccount-content{float:none!important;width:auto!important;padding:24px}

/* Woo Blocks: Cart / Checkout / Grid */
.wc-block-cart,.wc-block-checkout,.wp-block-woocommerce-cart,.wp-block-woocommerce-checkout{width:var(--s7-shell);max-width:1280px!important;margin:0 auto;padding:56px 0 84px}.wc-block-components-sidebar-layout{gap:30px!important}.wc-block-components-sidebar{border:1px solid var(--s7-line);border-radius:18px;padding:22px!important;background:#fff}.wc-block-components-main{padding-right:0!important}.wc-block-components-totals-wrapper{border-color:var(--s7-line)!important}.wc-block-components-button{border-radius:12px!important;background:var(--s7-brand-gradient)!important;color:#fff!important;font-weight:800!important}.wc-block-components-text-input input,.wc-block-components-combobox .wc-block-components-combobox-control input.components-combobox-control__input{border-color:#deddea!important;border-radius:12px!important}.wc-block-grid__products{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.wc-block-grid__product{width:auto!important;max-width:none!important;flex:none!important;border:1px solid var(--s7-line);border-radius:18px;padding:12px!important;background:#fff}.wc-block-grid__product-image img{border-radius:13px}.wc-block-grid__product-title{color:var(--s7-ink);font-weight:800}.wc-block-grid__product-price{color:#6254ed;font-weight:800}.wp-block-woocommerce-product-collection ul.wc-block-product-template{gap:16px}.wp-block-woocommerce-product-collection li.wc-block-product{border:1px solid var(--s7-line);border-radius:18px;padding:12px;background:#fff}

/* Empty cart */
.woocommerce-cart .cart-empty{padding:20px 0;text-align:center;font-size:1.2rem}.woocommerce-cart .return-to-shop{text-align:center}

@media(max-width:1050px){.woocommerce ul.products,.wc-block-grid__products{grid-template-columns:repeat(3,minmax(0,1fr))}.single-product div.product{grid-template-columns:1fr 1fr;gap:30px}.woocommerce-account .woocommerce{grid-template-columns:210px 1fr}}
@media(max-width:800px){.woocommerce ul.products,.wc-block-grid__products{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.woocommerce .woocommerce-result-count,.woocommerce .woocommerce-ordering{display:block!important;float:none!important;width:var(--s7-shell);margin:10px auto!important}.single-product div.product{grid-template-columns:1fr;gap:24px}.single-product div.product .woocommerce-product-gallery{position:relative;top:auto}.single-product .woocommerce-tabs,.single-product .related,.single-product .upsells{grid-column:1}.woocommerce-account .woocommerce{grid-template-columns:1fr}.woocommerce-account .woocommerce>.woocommerce-notices-wrapper{grid-column:1}.woocommerce-account .woocommerce-MyAccount-navigation ul{display:flex;overflow-x:auto}.woocommerce-account .woocommerce-MyAccount-navigation li{flex:0 0 auto}.wc-block-components-sidebar-layout{display:block!important}.wc-block-components-sidebar{width:100%!important;margin-top:24px!important}}
@media(max-width:520px){.woocommerce ul.products,.wc-block-grid__products{grid-template-columns:1fr 1fr;gap:9px}.woocommerce ul.products li.product{padding:9px 9px 12px;border-radius:14px}.woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:.87rem}.woocommerce ul.products li.product .price{font-size:.9rem}.woocommerce ul.products li.product .button{font-size:.72rem;padding:0 8px}.single-product div.product{width:min(100% - 28px,1280px);margin-top:22px}.single-product div.product .summary{padding:20px;border-radius:18px}.single-product .product_title{font-size:2.2rem}.single-product .woocommerce-tabs .panel{padding:18px}.s7-shop-chips{width:min(100% - 28px,1280px)}}

/* =========================================================
   SELECT SEVEN COMMERCE 1.2 · Specialist catalogue layout
   ========================================================= */
.woocommerce .woocommerce-products-header{padding:34px 0 12px}
.woocommerce .woocommerce-products-header__title.page-title{
  max-width:none;
  font-size:clamp(2.2rem,3.4vw,3.9rem);
  line-height:1;
  letter-spacing:-.045em;
}
.woocommerce .term-description{font-size:.96rem;max-width:680px}

/* Sidebar + catalogue */
.s7-shop-layout{width:var(--s7-shell);margin:6px auto 0;display:grid;grid-template-columns:245px minmax(0,1fr);gap:28px;align-items:start}
.s7-shop-products{min-width:0}
.s7-shop-filters{position:sticky;top:104px;border:1px solid var(--s7-line);border-radius:18px;background:#fff;box-shadow:0 14px 38px rgba(35,30,70,.045);overflow:hidden;max-height:calc(100vh - 126px);overflow-y:auto;scrollbar-width:thin}
body.admin-bar .s7-shop-filters{top:136px;max-height:calc(100vh - 158px)}
.s7-shop-filters__head{position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:17px 18px;border-bottom:1px solid var(--s7-line);background:rgba(255,255,255,.97);backdrop-filter:blur(10px)}
.s7-shop-filters__head span{display:block;color:#8c899c;font-size:.68rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.s7-shop-filters__head strong{display:block;margin-top:2px;font-size:.94rem}
.s7-filter-close{display:none;width:34px;height:34px;border:0;border-radius:10px;background:#f5f4fa;color:#403e52;font-size:1.35rem;line-height:1}
.s7-filter-widget{padding:17px 18px;border-bottom:1px solid #efedf4}
.s7-filter-widget:last-child{border-bottom:0}
.s7-filter-widget__title{margin:0 0 11px;font-size:.83rem;letter-spacing:-.01em}
.s7-filter-search .woocommerce-product-search{display:flex}
.s7-filter-search .search-field{min-width:0;width:100%;height:40px;padding:0 10px;border-radius:10px 0 0 10px;font-size:.78rem}
.s7-filter-search button{width:42px;padding:0;border:0;border-radius:0 10px 10px 0;background:var(--s7-ink);color:#fff;font-size:0}
.s7-filter-search button::before{content:"⌕";font-size:18px}
.s7-price-filter__fields{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.s7-price-filter label span{display:block;margin-bottom:4px;color:#8b8999;font-size:.65rem}
.s7-price-filter input{width:100%;height:38px;padding:0 8px;border-radius:9px;font-size:.76rem}
.s7-filter-apply{width:100%;min-height:38px;margin-top:9px;border:1px solid rgba(119,105,255,.22);border-radius:9px;background:rgba(119,105,255,.065);color:#6254ed;font-size:.76rem;font-weight:800}
.s7-filter-apply:hover{background:rgba(119,105,255,.11)}
.s7-filter-list{list-style:none;margin:0;padding:0;display:grid;gap:2px}
.s7-filter-list li{margin:0}
.s7-filter-list a{display:flex;align-items:center;gap:8px;padding:7px 6px;border-radius:8px;color:#4e4c5e;font-size:.76rem;line-height:1.25}
.s7-filter-list a:hover,.s7-filter-list a.is-active{background:#f7f6fb;color:#5f51eb}
.s7-filter-list a>span:not(.s7-filter-check){min-width:0;flex:1}
.s7-filter-list small{margin-left:auto;color:#aaa7b6;font-size:.65rem}
.s7-filter-check{width:15px;height:15px;flex:0 0 15px;display:grid;place-items:center;border:1px solid #d7d4e2;border-radius:4px;background:#fff;color:#fff;font-size:.62rem;font-weight:900}
.s7-filter-list a.is-active .s7-filter-check{border-color:transparent;background:var(--s7-brand-gradient)}

/* Shop categories and action bar */
.s7-shop-layout .s7-shop-chips{width:100%;margin:0 0 14px;padding-bottom:6px}
.s7-shop-toolbar{position:sticky;top:82px;z-index:20;min-height:54px;margin:0 0 16px;padding:7px 9px;display:flex;align-items:center;gap:12px;border:1px solid var(--s7-line);border-radius:14px;background:rgba(255,255,255,.94);backdrop-filter:blur(15px);box-shadow:0 9px 28px rgba(35,30,70,.045)}
body.admin-bar .s7-shop-toolbar{top:114px}
.s7-shop-toolbar .woocommerce-result-count{width:auto!important;margin:0!important;font-size:.76rem;color:#777485}
.s7-shop-toolbar .woocommerce-ordering{width:auto!important;margin:0 0 0 auto!important}
.s7-shop-toolbar .woocommerce-ordering select{height:38px;min-width:190px;border-radius:9px;font-size:.76rem}
.s7-filter-toggle{display:none;align-items:center;gap:7px;min-height:38px;padding:0 11px;border:1px solid #dfdce9;border-radius:9px;background:#fff;color:#333144;font-size:.76rem;font-weight:800}

/* Product cards become denser and easier to scan on laptops. */
.s7-shop-products .woocommerce ul.products,
.woocommerce .s7-shop-products ul.products{width:100%;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;padding:0 0 56px}
.woocommerce .s7-shop-products ul.products li.product{padding:10px 10px 14px;border-radius:16px}
.woocommerce .s7-shop-products ul.products li.product a img{aspect-ratio:4/3;max-height:225px;margin-bottom:11px;padding:7px}
.woocommerce .s7-shop-products ul.products li.product .woocommerce-loop-product__title{font-size:.91rem;line-height:1.28;margin-bottom:6px}
.woocommerce .s7-shop-products ul.products li.product .price{font-size:.98rem;margin-bottom:11px}
.woocommerce .s7-shop-products ul.products li.product .button{min-height:38px;font-size:.76rem}
.woocommerce .s7-shop-products nav.woocommerce-pagination{width:100%;padding-bottom:62px}

/* Cart/checkout should feel compact, not oversized. */
.woocommerce-cart .woocommerce,.woocommerce-checkout .woocommerce,.woocommerce-account .woocommerce{padding-top:38px}
.woocommerce-cart table.shop_table{font-size:.9rem}
.woocommerce-cart table.shop_table th,.woocommerce-cart table.shop_table td{padding:11px!important}
.woocommerce-cart .cart-collaterals .cart_totals h2{font-size:1.55rem}
.woocommerce-cart .cart-collaterals .cart_totals{font-size:.9rem}

@media(max-width:1440px) and (min-width:901px){
  .woocommerce .woocommerce-breadcrumb{padding-top:20px}
  .woocommerce .woocommerce-products-header{padding-top:26px}
  .woocommerce .woocommerce-products-header__title.page-title{font-size:clamp(2rem,3vw,3.15rem)}
  .s7-shop-layout{grid-template-columns:220px minmax(0,1fr);gap:20px}
  .s7-shop-filters{top:91px}
  body.admin-bar .s7-shop-filters{top:123px}
  .s7-shop-toolbar{top:78px}
  body.admin-bar .s7-shop-toolbar{top:110px}
  .woocommerce .s7-shop-products ul.products li.product a img{max-height:205px}
  .woocommerce .s7-shop-products ul.products li.product .woocommerce-loop-product__title{font-size:.86rem}
  .woocommerce .s7-shop-products ul.products li.product .price{font-size:.92rem}
}

@media(max-width:1050px){
  .s7-shop-layout{grid-template-columns:210px minmax(0,1fr);gap:16px}
  .woocommerce .s7-shop-products ul.products{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media(max-width:900px){
  .s7-shop-layout{display:block;width:var(--s7-shell)}
  .s7-shop-filters{position:fixed;z-index:10020;inset:0 auto 0 0;width:min(86vw,330px);max-height:none;border-radius:0;transform:translateX(-105%);transition:transform .25s ease;box-shadow:25px 0 70px rgba(20,16,45,.18)}
  body.admin-bar .s7-shop-filters{top:46px;max-height:calc(100vh - 46px)}
  .s7-shop-filters.is-open{transform:translateX(0)}
  .s7-filter-close,.s7-filter-toggle{display:inline-flex;align-items:center;justify-content:center}
  .s7-shop-toolbar{top:72px}
  body.admin-bar .s7-shop-toolbar{top:118px}
  .s7-shop-toolbar .woocommerce-result-count{display:none!important}
  .s7-shop-toolbar .woocommerce-ordering{margin-left:auto!important;width:auto!important}
  .s7-shop-toolbar .woocommerce-ordering select{min-width:150px}
  .s7-shop-layout .s7-shop-chips{margin-top:2px}
}

@media(max-width:520px){
  .woocommerce .woocommerce-products-header__title.page-title{font-size:2.35rem}
  .woocommerce .s7-shop-products ul.products{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
  .woocommerce .s7-shop-products ul.products li.product a img{aspect-ratio:1/1;max-height:none;padding:3px}
  .s7-shop-toolbar{min-height:48px;padding:5px 6px;gap:6px}
  .s7-filter-toggle{padding:0 8px}
  .s7-shop-toolbar .woocommerce-ordering select{min-width:128px;max-width:155px;font-size:.69rem}
}


/* =========================================================
   1.2.1 HOTFIX · Product alternate-image hover
   The two catalogue images live in one clipped media stage so
   third-party hover-image plugins cannot slide behind the next card.
   ========================================================= */
.woocommerce ul.products li.product .woocommerce-LoopProduct-link,
.woocommerce ul.products li.product .woocommerce-loop-product__link{
  min-width:0;
}
.woocommerce ul.products li.product .s7-product-media{
  position:relative;
  isolation:isolate;
  display:grid;
  width:100%;
  aspect-ratio:4/3;
  max-height:225px;
  margin:0 0 11px;
  overflow:hidden;
  border-radius:13px;
  background:linear-gradient(145deg,#fbfbfd,#f5f4f9);
}
.woocommerce ul.products li.product .s7-product-media>img{
  grid-area:1/1;
  position:relative!important;
  inset:auto!important;
  z-index:1;
  display:block!important;
  width:100%!important;
  height:100%!important;
  max-width:none!important;
  max-height:none!important;
  aspect-ratio:auto!important;
  margin:0!important;
  padding:7px!important;
  border-radius:0!important;
  background:transparent!important;
  object-fit:contain!important;
  opacity:1;
  transform:none!important;
  translate:none!important;
  pointer-events:none;
  transition:opacity .28s ease,transform .36s cubic-bezier(.2,.7,.2,1)!important;
}
.woocommerce ul.products li.product .s7-product-media>.s7-product-image-primary{z-index:1}
.woocommerce ul.products li.product .s7-product-media>.s7-product-image-hover{
  position:absolute!important;
  inset:0!important;
  z-index:2;
  opacity:0;
}
.woocommerce ul.products li.product.s7-has-hover-image:hover .s7-product-media>.s7-product-image-primary{opacity:0}
.woocommerce ul.products li.product:hover .s7-product-media>.s7-product-image-hover{
  opacity:1;
  transform:scale(1.018)!important;
}
.woocommerce ul.products li.product .s7-product-media>img[hidden],
.woocommerce ul.products li.product .s7-suppressed-product-image{display:none!important}
.woocommerce ul.products li.product .woocommerce-LoopProduct-link>img,
.woocommerce ul.products li.product .woocommerce-loop-product__link>img{
  /* After JS builds .s7-product-media there must never be a loose image. */
  max-width:100%;
}
/* A one-image product keeps the familiar subtle zoom. */
.woocommerce ul.products li.product:not(.s7-has-hover-image):hover .s7-product-media>.s7-product-image-primary{
  opacity:1;
  transform:scale(1.025)!important;
}
/* Neutralise common alternate-image plugin positioning only inside our media stage. */
.woocommerce ul.products li.product .s7-product-media .secondary-image,
.woocommerce ul.products li.product .s7-product-media .hover-image,
.woocommerce ul.products li.product .s7-product-media .product-secondary-image{
  position:absolute!important;
  inset:0!important;
}
@media(max-width:1440px) and (min-width:901px){
  .woocommerce ul.products li.product .s7-product-media{max-height:205px}
}
@media(max-width:520px){
  .woocommerce ul.products li.product .s7-product-media{aspect-ratio:1/1;max-height:none;padding:0}
  .woocommerce ul.products li.product .s7-product-media>img{padding:3px!important}
}
@media(hover:none){
  .woocommerce ul.products li.product .s7-product-media>.s7-product-image-hover{display:none!important}
}


/* =========================================================
   1.2.2 · Product page and shop scale for 13-inch laptops
   ========================================================= */
@media (min-width:901px) and (max-width:1800px) and (max-height:1050px){
  .woocommerce .woocommerce-breadcrumb{padding-top:18px;font-size:.72rem}
  .woocommerce .woocommerce-products-header{padding-top:24px;padding-bottom:12px}
  .woocommerce .woocommerce-products-header__title.page-title{font-size:clamp(2rem,2.75vw,3rem)!important;line-height:1}
  .woocommerce .term-description{font-size:.92rem}

  .single-product .woocommerce{padding-bottom:58px}
  .single-product div.product{
    margin-top:24px;
    grid-template-columns:minmax(0,1.08fr) minmax(410px,.82fr);
    gap:38px;
  }
  .single-product div.product .woocommerce-product-gallery{top:94px}
  .single-product div.product .summary{padding:22px;border-radius:20px}
  .single-product .product_title{font-size:clamp(1.8rem,2.25vw,2.4rem)!important;line-height:1.07;letter-spacing:-.035em;margin-bottom:10px}
  .single-product .summary .price{font-size:1.35rem!important;margin-bottom:10px}
  .single-product .woocommerce-product-details__short-description{font-size:.92rem;line-height:1.52}
  .single-product .summary form.cart{padding:13px 0}
  .single-product .summary .single_add_to_cart_button{min-height:44px}
  .single-product .summary .quantity .qty{height:44px}
  .single-product .product_meta{padding-top:12px}

  .s7-shop-layout{gap:18px}
  .s7-shop-toolbar{min-height:48px}
  .woocommerce .s7-shop-products ul.products{gap:12px}
  .woocommerce .s7-shop-products ul.products li.product{padding:9px 9px 12px}
  .woocommerce .s7-shop-products ul.products li.product .woocommerce-loop-product__title{font-size:.84rem;line-height:1.24}
  .woocommerce .s7-shop-products ul.products li.product .price{font-size:.9rem}
  .woocommerce ul.products li.product .s7-product-media{max-height:190px}
}
