/* TELLTAK Lite WooCommerce presentation. Commerce behavior remains in WooCommerce/plugins. */
.woocommerce .woocommerce-breadcrumb{font-size:12px;color:var(--tt-muted);margin:0 0 18px}
.tt-archive-header{margin-bottom:18px}.woocommerce .woocommerce-result-count{color:var(--tt-muted);font-size:13px}.woocommerce .woocommerce-ordering select{border:1px solid var(--tt-line);border-radius:8px;background:#fff;padding:8px 30px 8px 10px;max-width:100%}
.woocommerce ul.products{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:0!important;padding:0!important}
.woocommerce ul.products:before,.woocommerce ul.products:after{display:none!important}.woocommerce ul.products li.product{float:none!important;width:auto!important;margin:0!important;min-width:0;border:1px solid var(--tt-line);border-radius:var(--tt-radius);padding:12px!important;background:#fff;display:flex;flex-direction:column;transition:box-shadow .15s ease,border-color .15s ease}
.woocommerce ul.products li.product:hover{border-color:#d3d9de;box-shadow:0 8px 24px rgba(20,40,55,.06)}.woocommerce ul.products li.product a img{width:100%;aspect-ratio:1/1;object-fit:contain;margin:0 0 10px}.woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:14px;line-height:1.75;color:var(--tt-color);padding:0;margin:0 0 8px}.woocommerce ul.products li.product .price{color:var(--tt-accent);font-weight:800;font-size:14px;margin: auto 0 10px}.woocommerce ul.products li.product .button{align-self:stretch;text-align:center;margin-top:8px;padding:9px 10px;font-size:13px}.woocommerce span.onsale{background:var(--tt-accent);min-height:0;line-height:1.5;padding:5px 9px;border-radius:6px;top:10px;right:10px;left:auto;margin:0}
.woocommerce div.product{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(20px,4vw,48px)}.woocommerce div.product div.images,.woocommerce div.product div.summary{float:none;width:auto;margin:0}.woocommerce div.product div.images img{border-radius:var(--tt-radius)}.woocommerce div.product .product_title{font-size:clamp(22px,3vw,32px);line-height:1.6;color:var(--tt-color)}.woocommerce div.product p.price,.woocommerce div.product span.price{color:var(--tt-accent);font-size:23px;font-weight:800}.woocommerce div.product form.cart{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.woocommerce .quantity .qty{min-height:42px;border:1px solid var(--tt-line);border-radius:8px;padding:6px;width:78px}.woocommerce div.product form.cart .button{min-height:42px}.woocommerce div.product .woocommerce-tabs{grid-column:1/-1;width:100%;float:none}.woocommerce div.product .woocommerce-tabs ul.tabs{padding:0;margin:20px 0}.woocommerce div.product .woocommerce-tabs ul.tabs li{border-radius:8px 8px 0 0}
.woocommerce table.shop_table{border-collapse:collapse;border-radius:10px;overflow:hidden;border-color:var(--tt-line)}.woocommerce table.shop_table th,.woocommerce table.shop_table td{padding:12px;border-color:var(--tt-line)}.woocommerce-cart table.cart img{width:76px}.woocommerce .cart-collaterals .cart_totals,.woocommerce-page .cart-collaterals .cart_totals{float:none;width:100%;max-width:560px;margin-inline-start:auto;background:var(--tt-bg);padding:20px;border-radius:var(--tt-radius)}
.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,.woocommerce form .form-row select{border:1px solid #d9dfe3;border-radius:8px;min-height:44px;padding:10px 12px;background:#fff;max-width:100%}.woocommerce form .form-row textarea{min-height:110px}.woocommerce form .form-row label{font-weight:700;margin-bottom:5px}.woocommerce-checkout #payment{background:var(--tt-bg);border-radius:10px}.woocommerce-checkout #payment div.payment_box{background:#fff}.woocommerce-checkout #payment div.payment_box:before{border-bottom-color:#fff}
.woocommerce-account .woocommerce-MyAccount-navigation{width:27%;float:right}.woocommerce-account .woocommerce-MyAccount-content{width:69%;float:left}.woocommerce-account .woocommerce-MyAccount-navigation ul{list-style:none;margin:0;padding:0;border:1px solid var(--tt-line);border-radius:10px;overflow:hidden}.woocommerce-account .woocommerce-MyAccount-navigation li a{display:block;padding:10px 14px;border-bottom:1px solid var(--tt-line)}.woocommerce-account .woocommerce-MyAccount-navigation li:last-child a{border-bottom:0}.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a{background:var(--tt-bg);font-weight:800;color:var(--tt-accent)}
.woocommerce-message,.woocommerce-info,.woocommerce-error{border-top-color:var(--tt-accent);border-radius:8px}.woocommerce-message:before,.woocommerce-info:before{color:var(--tt-accent)}
@media(max-width:900px){.woocommerce ul.products{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.woocommerce div.product{gap:20px}}
@media(max-width:600px){.woocommerce ul.products{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.woocommerce ul.products li.product{padding:9px!important}.woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:13px}.woocommerce ul.products li.product .button{font-size:12px;padding:8px 6px}.woocommerce div.product{display:block}.woocommerce div.product div.images{margin-bottom:22px}.woocommerce div.product .product_title{font-size:22px}.woocommerce table.shop_table th,.woocommerce table.shop_table td{padding:8px 6px;font-size:13px}.woocommerce-account .woocommerce-MyAccount-navigation,.woocommerce-account .woocommerce-MyAccount-content{float:none;width:100%;margin-bottom:22px}.woocommerce-cart table.cart img{width:54px}}

/* WooCommerce 9+ and block-style elements: neutral, RTL-safe controls */
.woocommerce .woocommerce-notices-wrapper:empty{display:none}.woocommerce .woocommerce-pagination ul.page-numbers{border:0;display:flex;gap:6px;flex-wrap:wrap}.woocommerce .woocommerce-pagination .page-numbers li{border:0}.woocommerce .woocommerce-pagination .page-numbers a,.woocommerce .woocommerce-pagination .page-numbers span{display:block;min-width:38px;padding:6px 10px;text-align:center;border:1px solid var(--tt-line);border-radius:7px}.woocommerce .woocommerce-pagination .page-numbers .current{background:var(--tt-color);color:#fff}.woocommerce div.product .woocommerce-product-gallery{min-width:0}.woocommerce div.product .woocommerce-product-gallery .flex-control-thumbs{display:flex;gap:8px;margin-top:10px}.woocommerce div.product .woocommerce-product-gallery .flex-control-thumbs li{width:calc(25% - 6px);float:none}.woocommerce div.product .woocommerce-product-gallery .flex-control-thumbs img{border:1px solid var(--tt-line);border-radius:8px}.woocommerce div.product .stock{font-weight:700}.woocommerce .quantity input{max-width:100%}.woocommerce .woocommerce-ordering{margin-bottom:16px}.woocommerce .woocommerce-result-count{margin-block:8px 16px}.woocommerce .woocommerce-info a,.woocommerce .woocommerce-message a{font-weight:800;text-decoration:underline;text-underline-offset:3px}
@media(max-width:600px){.woocommerce div.product form.cart{align-items:stretch}.woocommerce div.product form.cart .button{flex:1}.woocommerce .woocommerce-result-count{font-size:12px}}


/* TELLTAK Lite 0.6.0: account, cart and checkout refinements */
.woocommerce .col2-set,.woocommerce-page .col2-set{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;float:none;width:100%}
.woocommerce .col2-set .col-1,.woocommerce .col2-set .col-2,.woocommerce-page .col2-set .col-1,.woocommerce-page .col2-set .col-2{float:none;width:100%;min-width:0}
.woocommerce form.login,.woocommerce form.register,.woocommerce form.lost_reset_password{border:1px solid var(--tt-line);border-radius:var(--tt-radius);padding:clamp(16px,3vw,26px);margin:16px 0}
.woocommerce form.login .form-row,.woocommerce form.register .form-row{margin-bottom:14px}
.woocommerce .woocommerce-form-login .woocommerce-form-login__rememberme{display:inline-flex;align-items:center;gap:7px;margin-inline-end:12px}
.woocommerce .woocommerce-form-login .woocommerce-form-login__submit{float:none;margin-inline-end:10px}
.woocommerce-account .woocommerce-MyAccount-content{min-width:0;overflow-wrap:anywhere}
.woocommerce-account .woocommerce-MyAccount-content a{text-underline-offset:3px}
.woocommerce-account .woocommerce-MyAccount-content table{width:100%;max-width:100%}
.woocommerce .woocommerce-customer-details,.woocommerce .woocommerce-order-details,.woocommerce .woocommerce-order-downloads{margin-top:24px}
.woocommerce .woocommerce-notices-wrapper{margin-bottom:14px}
.woocommerce .woocommerce-error,.woocommerce .woocommerce-info,.woocommerce .woocommerce-message{padding:1em 1.2em 1em 2.5em;line-height:1.8}
.woocommerce .woocommerce-error a,.woocommerce .woocommerce-info a,.woocommerce .woocommerce-message a{text-underline-offset:3px}
.woocommerce-checkout .form-row .required{color:#b42318}
.woocommerce-checkout #place_order{width:100%;min-height:48px;font-size:16px}
.woocommerce-checkout-review-order-table{background:#fff}
.woocommerce-cart .coupon{display:flex;gap:8px;flex-wrap:wrap}
.woocommerce-cart .coupon input.input-text{width:min(220px,100%);min-height:42px}
.woocommerce-cart .actions .button[name=update_cart]{min-height:42px}
.woocommerce .woocommerce-pagination{margin-top:24px}
/* WooCommerce Blocks, where used by the site's page editor */
.wc-block-components-notice-banner{border-radius:10px;line-height:1.8}
.wc-block-components-text-input input,.wc-block-components-combobox .components-combobox-control__input,.wc-block-components-select .wc-block-components-select__select{border-radius:8px!important;min-height:44px}
.wc-block-cart,.wc-block-checkout{font-family:inherit}
.wc-block-components-button:not(.is-link){border-radius:8px;min-height:44px}
@media(max-width:700px){
 .woocommerce .col2-set,.woocommerce-page .col2-set{grid-template-columns:minmax(0,1fr);gap:12px}
 .woocommerce form.login,.woocommerce form.register,.woocommerce form.lost_reset_password{padding:14px}
 .woocommerce-cart table.cart td.actions .coupon{display:flex;flex-wrap:wrap;gap:8px}
 .woocommerce-cart table.cart td.actions .coupon .input-text{width:100%;margin:0}
 .woocommerce-cart .cart-collaterals .cart_totals{padding:14px}
 .woocommerce-checkout #payment ul.payment_methods{padding:14px}
 .woocommerce-checkout #payment div.payment_box{margin:10px 0;padding:12px}
}


/* TELLTAK Lite 0.8.0: compact product archive with right-side filters (RTL). */
.tt-shop-layout{display:grid;grid-template-columns:258px minmax(0,1fr);gap:22px;align-items:start;direction:rtl}
.tt-shop-sidebar{grid-column:1;grid-row:1;min-width:0}
.tt-shop-content{grid-column:2;grid-row:1;min-width:0}
.tt-shop-sidebar-inner{position:sticky;top:120px;border:1px solid var(--tt-line);border-radius:12px;background:#fff;padding:15px;min-height:calc(3 * 250px + 40px);max-height:calc(100vh - 140px);overflow:auto}
.tt-shop-sidebar-heading{font-size:17px;line-height:1.5;margin:0 0 14px;padding-bottom:12px;border-bottom:1px solid var(--tt-line);color:var(--tt-color)}
.tt-filter-widget{margin:0 0 18px;padding:0 0 16px;border:0;border-bottom:1px solid var(--tt-line);min-width:0}
.tt-filter-widget:last-child{margin-bottom:0;padding-bottom:0;border-bottom:0}
.tt-filter-title,.tt-filter-widget .widget-title{font-size:14px;font-weight:800;line-height:1.6;margin:0 0 10px;color:var(--tt-color)}
.tt-filter-toggle{display:flex;align-items:center;gap:8px;padding:7px 0;font-size:13px;line-height:1.5;color:var(--tt-text)}
.tt-filter-toggle:before{content:"";width:15px;height:15px;flex:0 0 15px;border:1px solid #c8d0d6;border-radius:4px;background:#fff}
.tt-filter-toggle.is-active{font-weight:800;color:var(--tt-accent)}
.tt-filter-toggle.is-active:before{content:"✓";display:grid;place-items:center;color:#fff;background:var(--tt-accent);border-color:var(--tt-accent);font-size:11px}
.tt-filter-clear{display:inline-block;margin-top:5px;font-size:12px;color:var(--tt-accent);text-decoration:underline;text-underline-offset:3px}
.tt-filter-setup-note{font-size:12px;line-height:1.8;color:var(--tt-muted)}
.tt-filter-widget ul{list-style:none;margin:0;padding:0}
.tt-filter-widget li{margin:0;padding:5px 0;font-size:13px;line-height:1.6}
.tt-filter-widget a{overflow-wrap:anywhere}
.tt-filter-widget select,.tt-filter-widget input[type=search],.tt-filter-widget input[type=text]{max-width:100%;border:1px solid var(--tt-line);border-radius:7px;padding:8px}
.tt-filter-widget .price_slider_wrapper{padding-top:8px}
.tt-filter-widget .price_slider{margin:0 4px 18px!important}
.tt-filter-widget .price_slider_amount{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap;font-size:12px}
.tt-filter-widget .price_slider_amount .button{order:3;padding:6px 10px;font-size:12px}
.tt-filter-widget .price_label{font-size:12px}
/* Compact cards: equal-height buttons and single-line prices */
.woocommerce ul.products{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.woocommerce ul.products li.product{height:100%;min-height:0;padding:10px!important;overflow:hidden}
.woocommerce ul.products li.product a img{height:auto;max-height:190px;aspect-ratio:1/1;object-fit:contain;margin:0 auto 8px}
.woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:13px;line-height:1.6;min-height:4.2em;max-height:4.2em;overflow:hidden;margin-bottom:6px}
.woocommerce ul.products li.product .price{display:flex;align-items:baseline;justify-content:flex-start;gap:5px;flex-wrap:nowrap;white-space:nowrap;font-size:12px;line-height:1.5;margin:0 0 8px;overflow:hidden}
.woocommerce ul.products li.product .price del,.woocommerce ul.products li.product .price ins{display:inline-block;white-space:nowrap;float:none;flex:0 1 auto}
.woocommerce ul.products li.product .price del{font-size:11px;opacity:.65}
.woocommerce ul.products li.product .price ins{text-decoration:none;font-weight:800}
.woocommerce ul.products li.product .button{display:flex;align-items:center;justify-content:center;align-self:flex-start;width:46px;min-width:46px;min-height:38px;line-height:1.35;margin:auto 0 0!important;padding:7px!important;font-size:0;white-space:nowrap;overflow:hidden;border-radius:8px}.woocommerce ul.products li.product .button svg{display:block;flex:0 0 20px}.woocommerce span.onsale.tt-discount-percent{background:var(--tt-accent);color:#fff;min-height:0;line-height:1.4;padding:4px 7px;border-radius:999px;top:10px;right:10px;left:auto;margin:0;font-size:11px;font-weight:800}
.woocommerce ul.products li.product a.added_to_cart{display:block;text-align:center;font-size:11px;margin-top:4px}
.woocommerce .woocommerce-result-count{float:right}
.woocommerce .woocommerce-ordering{float:left}
@media(max-width:1050px){.tt-shop-layout{grid-template-columns:225px minmax(0,1fr);gap:14px}.woocommerce ul.products{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.woocommerce ul.products li.product a img{max-height:180px}}
@media(max-width:700px){.tt-shop-layout{display:flex;flex-direction:column;gap:16px}.tt-shop-sidebar,.tt-shop-content{width:100%;grid-column:auto;grid-row:auto}.tt-shop-sidebar-inner{position:static;max-height:none;padding:12px}.tt-shop-sidebar-heading{margin-bottom:8px}.tt-shop-sidebar-inner .tt-filter-widget{margin-bottom:12px;padding-bottom:10px}.woocommerce ul.products{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.woocommerce ul.products li.product{padding:8px!important}.woocommerce ul.products li.product a img{max-height:150px}.woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:12px;min-height:3.9em;max-height:3.9em}.woocommerce ul.products li.product .price{font-size:11px;gap:3px}.woocommerce ul.products li.product .price del{font-size:10px}.woocommerce ul.products li.product .button{font-size:11px;min-height:36px;padding:7px 3px}}


/* TELLTAK Lite 0.9.0: single product layout, gallery, description and related products. */
.woocommerce.single-product div.product {
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  align-items: start;
  column-gap: clamp(22px, 3vw, 42px);
  row-gap: 24px;
}
.woocommerce.single-product div.product div.images,
.woocommerce.single-product div.product div.summary { min-width: 0; }
.woocommerce.single-product div.product div.images { width: 100%; max-width: 100%; }
.woocommerce.single-product div.product .woocommerce-product-gallery { width: 100%; }
.woocommerce.single-product div.product .woocommerce-product-gallery__wrapper { margin: 0; }
.woocommerce.single-product div.product .woocommerce-product-gallery__image {
  display: grid; place-items: center; overflow: hidden;
  border: 1px solid var(--tt-line); border-radius: 12px; background: #fff;
}
.woocommerce.single-product div.product .woocommerce-product-gallery__image img,
.woocommerce.single-product div.product div.images img {
  display: block; width: 100%; max-height: 410px; object-fit: contain;
}
.woocommerce.single-product div.product .woocommerce-product-gallery .flex-control-thumbs {
  display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 9px;
  margin: 10px 0 0; padding: 0; list-style: none;
}
.woocommerce.single-product div.product .woocommerce-product-gallery .flex-control-thumbs li {
  width: auto; float: none; min-width: 0; margin: 0;
}
.woocommerce.single-product div.product .woocommerce-product-gallery .flex-control-thumbs img {
  width: 100%; height: 82px; object-fit: contain; padding: 5px;
  border: 1px solid var(--tt-line); border-radius: 8px; background: #fff; opacity: .78;
}
.woocommerce.single-product div.product .woocommerce-product-gallery .flex-control-thumbs img.flex-active,
.woocommerce.single-product div.product .woocommerce-product-gallery .flex-control-thumbs img:hover { opacity: 1; border-color: var(--tt-accent); }
.woocommerce.single-product div.product .product_title {
  font-size: clamp(21px, 2vw, 27px); line-height: 1.65; font-weight: 800;
  margin: 0 0 14px; overflow-wrap: anywhere;
}
.woocommerce.single-product div.product div.summary { align-self: start; }
.woocommerce.single-product div.product .woocommerce-product-details__short-description {
  border: 1px solid var(--tt-line); border-radius: 12px; background: var(--tt-bg);
  padding: 16px 18px; margin: 18px 0; font-size: 14px; line-height: 2;
}
.woocommerce.single-product div.product .woocommerce-product-details__short-description > :last-child { margin-bottom: 0; }
.woocommerce.single-product div.product .woocommerce-tabs {
  grid-column: 1 / -1; width: 100%; min-width: 0; float: none;
  border: 1px solid var(--tt-line); border-radius: 12px; background: #fff;
  padding: clamp(14px, 2.2vw, 26px); margin-top: 4px; overflow: hidden;
}
.woocommerce.single-product div.product .woocommerce-tabs ul.tabs { display: flex; flex-wrap: wrap; gap: 6px; border: 0; margin: 0 0 20px; padding: 0; }
.woocommerce.single-product div.product .woocommerce-tabs ul.tabs:before { display: none; }
.woocommerce.single-product div.product .woocommerce-tabs ul.tabs li {
  margin: 0; border: 1px solid var(--tt-line); border-radius: 8px; background: var(--tt-bg); padding: 0;
}
.woocommerce.single-product div.product .woocommerce-tabs ul.tabs li:before,
.woocommerce.single-product div.product .woocommerce-tabs ul.tabs li:after { display: none; }
.woocommerce.single-product div.product .woocommerce-tabs ul.tabs li a { display: block; padding: 10px 14px; }
.woocommerce.single-product div.product .woocommerce-tabs .panel { margin: 0; line-height: 2; overflow-wrap: anywhere; }
.woocommerce.single-product div.product .woocommerce-tabs .panel h2 { font-size: 20px; line-height: 1.7; margin: 0 0 12px; }
.woocommerce.single-product div.product > .related,
.woocommerce.single-product div.product > .up-sells {
  grid-column: 1 / -1; width: 100%; min-width: 0; float: none; margin-top: 18px;
}
.woocommerce.single-product div.product > .related > h2,
.woocommerce.single-product div.product > .up-sells > h2 { font-size: 21px; line-height: 1.7; margin: 0 0 16px; }
.woocommerce.single-product div.product > .related ul.products,
.woocommerce.single-product div.product > .up-sells ul.products {
  display: grid !important; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px;
  width: 100%; margin: 0 !important; padding: 0 !important; align-items: stretch;
}
.woocommerce.single-product div.product > .related ul.products li.product,
.woocommerce.single-product div.product > .up-sells ul.products li.product {
  display: flex; flex-direction: column; min-width: 0; width: auto !important; height: 100%;
  float: none !important; margin: 0 !important; padding: 10px !important;
  border: 1px solid var(--tt-line); border-radius: 10px; background: #fff; overflow: hidden;
}
.woocommerce.single-product div.product > .related ul.products li.product a img,
.woocommerce.single-product div.product > .up-sells ul.products li.product a img {
  width: 100%; height: 150px; max-height: 150px; object-fit: contain; margin: 0 auto 8px;
}
.woocommerce.single-product div.product > .related ul.products li.product .woocommerce-loop-product__title,
.woocommerce.single-product div.product > .up-sells ul.products li.product .woocommerce-loop-product__title {
  font-size: 13px; line-height: 1.65; min-height: 4.9em; max-height: 4.9em; overflow: hidden; margin: 0 0 7px;
}
.woocommerce.single-product div.product > .related ul.products li.product .price,
.woocommerce.single-product div.product > .up-sells ul.products li.product .price {
  display: flex; flex-wrap: nowrap; align-items: baseline; gap: 4px; white-space: nowrap;
  font-size: 12px; line-height: 1.5; margin: auto 0 8px; overflow: hidden;
}
.woocommerce.single-product div.product > .related ul.products li.product .price del,
.woocommerce.single-product div.product > .related ul.products li.product .price ins,
.woocommerce.single-product div.product > .up-sells ul.products li.product .price del,
.woocommerce.single-product div.product > .up-sells ul.products li.product .price ins { white-space: nowrap; }
.woocommerce.single-product div.product > .related ul.products li.product .button,
.woocommerce.single-product div.product > .up-sells ul.products li.product .button {
  display: flex; justify-content: center; align-items: center; width: 100%; min-height: 38px;
  margin: auto 0 0 !important; padding: 8px 5px; font-size: 12px; line-height: 1.4; white-space: nowrap;
}
@media (max-width: 900px) {
  .woocommerce.single-product div.product > .related ul.products,
  .woocommerce.single-product div.product > .up-sells ul.products { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .woocommerce.single-product div.product .woocommerce-product-gallery__image img,
  .woocommerce.single-product div.product div.images img { max-height: 360px; }
}
@media (max-width: 650px) {
  .woocommerce.single-product div.product { display: block; }
  .woocommerce.single-product div.product div.images { margin-bottom: 20px; }
  .woocommerce.single-product div.product .woocommerce-product-gallery__image img,
  .woocommerce.single-product div.product div.images img { max-height: 340px; }
  .woocommerce.single-product div.product .woocommerce-product-gallery .flex-control-thumbs { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 6px; }
  .woocommerce.single-product div.product .woocommerce-product-gallery .flex-control-thumbs img { height: 68px; }
  .woocommerce.single-product div.product .product_title { font-size: 22px; }
  .woocommerce.single-product div.product .woocommerce-tabs { margin-top: 22px; padding: 12px; }
  .woocommerce.single-product div.product > .related ul.products,
  .woocommerce.single-product div.product > .up-sells ul.products { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 9px; }
  .woocommerce.single-product div.product > .related ul.products li.product,
  .woocommerce.single-product div.product > .up-sells ul.products li.product { padding: 8px !important; }
  .woocommerce.single-product div.product > .related ul.products li.product a img,
  .woocommerce.single-product div.product > .up-sells ul.products li.product a img { height: 125px; max-height: 125px; }
  .woocommerce.single-product div.product > .related ul.products li.product .woocommerce-loop-product__title,
  .woocommerce.single-product div.product > .up-sells ul.products li.product .woocommerce-loop-product__title { font-size: 12px; }
  .woocommerce.single-product div.product > .related ul.products li.product .price,
  .woocommerce.single-product div.product > .up-sells ul.products li.product .price { font-size: 10px; gap: 2px; }
  .woocommerce.single-product div.product > .related ul.products li.product .button,
  .woocommerce.single-product div.product > .up-sells ul.products li.product .button { font-size: 11px; padding-inline: 3px; }
}

/* TELLTAK Lite 0.10.0: accessible quantity stepper for classic WooCommerce cart. */
.woocommerce-cart .quantity.tt-quantity-control{width:auto;min-width:148px;display:inline-flex;align-items:center;justify-content:center;gap:5px}
.woocommerce-cart .tt-qty-stepper{display:inline-flex;align-items:center;justify-content:center;gap:5px;direction:ltr}
.woocommerce-cart .tt-qty-stepper .qty{width:52px!important;min-width:44px;text-align:center!important;padding:7px 3px!important;appearance:textfield;-moz-appearance:textfield}
.woocommerce-cart .tt-qty-stepper .qty::-webkit-inner-spin-button,.woocommerce-cart .tt-qty-stepper .qty::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
.woocommerce-cart .tt-qty-btn{display:inline-flex;align-items:center;justify-content:center;width:32px;height:38px;min-width:32px;padding:0!important;border:1px solid var(--tt-line)!important;border-radius:7px!important;background:#fff!important;color:var(--tt-color)!important;font-size:20px!important;line-height:1;font-weight:700;cursor:pointer}
.woocommerce-cart .tt-qty-btn:hover,.woocommerce-cart .tt-qty-btn:focus-visible{background:var(--tt-bg)!important;border-color:var(--tt-accent)!important;color:var(--tt-accent)!important}
.woocommerce-cart .tt-qty-btn:focus-visible{outline:2px solid var(--tt-accent);outline-offset:2px}
.woocommerce-cart .tt-qty-stepper .qty:focus{border-color:var(--tt-accent);outline:0}
.woocommerce-cart button[name="update_cart"],.woocommerce-cart input[name="update_cart"]{transition:opacity .15s ease}
@media(max-width:600px){.woocommerce-cart .quantity.tt-quantity-control{min-width:130px}.woocommerce-cart .tt-qty-btn{width:30px;height:36px;min-width:30px}.woocommerce-cart .tt-qty-stepper .qty{width:44px!important}}


/* TELLTAK Lite 0.11.0: clear call-to-action for an empty cart. */
.woocommerce-cart .cart-empty{
  max-width:760px;margin:26px auto 14px;padding:24px 22px;border:1px solid var(--tt-line);
  border-radius:14px;background:#fff;text-align:center;line-height:1.9;font-size:16px;
}
.woocommerce-cart .cart-empty:before{display:block;margin:0 auto 10px;font-size:30px;line-height:1.2;opacity:.7}
.woocommerce-cart .return-to-shop{
  display:flex;justify-content:center;align-items:center;margin:0 auto 34px;text-align:center;
}
.woocommerce-cart .return-to-shop .button,
.woocommerce-cart .tt-empty-cart-return .button{
  display:inline-flex;align-items:center;justify-content:center;min-height:46px;min-width:190px;
  padding:12px 24px;border:1px solid var(--tt-accent);border-radius:9px;background:var(--tt-accent);
  color:#fff;font-weight:800;text-decoration:none;line-height:1.5;transition:filter .15s ease,transform .15s ease;
}
.woocommerce-cart .return-to-shop .button:hover,
.woocommerce-cart .return-to-shop .button:focus-visible{
  color:#fff;filter:brightness(.94);transform:translateY(-1px);outline:2px solid var(--tt-accent);outline-offset:3px;
}
@media(max-width:600px){.woocommerce-cart .cart-empty{margin:18px 0 12px;padding:18px 14px;font-size:14px}.woocommerce-cart .return-to-shop .button{width:100%;max-width:320px}}


/* TELLTAK Lite 0.12.0: wider order summary and mobile usability. */
.woocommerce-checkout #order_review,
.woocommerce-checkout .woocommerce-checkout-review-order {
  width: 100%;
  max-width: 760px;
  margin-inline-start: auto;
  margin-inline-end: 0;
  min-width: 0;
}
.woocommerce-checkout #order_review_heading {
  width: 100%;
  max-width: 760px;
  margin-inline-start: auto;
  margin-inline-end: 0;
}
.woocommerce-checkout-review-order-table { width: 100%; table-layout: auto; }
.woocommerce-checkout-review-order-table th:first-child,
.woocommerce-checkout-review-order-table td:first-child { width: 65%; overflow-wrap: anywhere; }
.woocommerce-checkout-review-order-table th:last-child,
.woocommerce-checkout-review-order-table td:last-child { width: 35%; text-align: start; overflow-wrap: anywhere; }
.woocommerce-checkout #payment, .woocommerce-checkout form.checkout,
.woocommerce-cart-form, .woocommerce-cart .cart-collaterals { min-width: 0; max-width: 100%; }
.woocommerce form .form-row { min-width: 0; }
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select { width: 100%; min-width: 0; }
@media (max-width: 700px) {
  .woocommerce-checkout #order_review,
  .woocommerce-checkout .woocommerce-checkout-review-order,
  .woocommerce-checkout #order_review_heading { max-width: none; width: 100%; margin-inline: 0; }
  .woocommerce-checkout-review-order-table th,
  .woocommerce-checkout-review-order-table td { padding: 9px 7px; font-size: 13px; }
  .woocommerce-checkout-review-order-table th:first-child,
  .woocommerce-checkout-review-order-table td:first-child { width: 62%; }
  .woocommerce-checkout-review-order-table th:last-child,
  .woocommerce-checkout-review-order-table td:last-child { width: 38%; }
  .woocommerce-checkout #payment, .woocommerce-checkout #payment ul.payment_methods { padding: 12px; }
  .woocommerce-checkout #place_order { min-height: 48px; width: 100%; }
  .woocommerce-cart table.shop_table { display: block; width: 100%; overflow-x: auto; -webkit-overflow-scrolling: touch; }
  .woocommerce-cart table.cart td, .woocommerce-cart table.cart th { vertical-align: middle; }
  .woocommerce-cart .cart-collaterals .cart_totals { width: 100%; max-width: none; padding: 14px; }
  .woocommerce .woocommerce-message, .woocommerce .woocommerce-info, .woocommerce .woocommerce-error { overflow-wrap: anywhere; }
  .woocommerce .woocommerce-message .button, .woocommerce .woocommerce-info .button { float: none; display: inline-flex; margin: 8px 0 0; }
  .woocommerce div.product .woocommerce-tabs ul.tabs { display: flex; flex-wrap: wrap; gap: 5px; }
  .woocommerce div.product .woocommerce-tabs ul.tabs li { margin: 0; }
}

/* TELLTAK Lite 0.17.0: widget-based AJAX filters and mobile slide-in drawer. */
.tt-mobile-filter-open{display:none;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:9px 16px;margin:0 0 14px;border:1px solid var(--tt-line);border-radius:9px;background:#fff;color:var(--tt-color);font-weight:800;cursor:pointer}
.tt-filter-drawer-head{display:flex;align-items:center;justify-content:space-between;gap:8px}
.tt-filter-drawer-head .tt-shop-sidebar-heading{flex:1}
.tt-filter-close{display:none;width:36px;height:36px;padding:0;border:1px solid var(--tt-line);border-radius:8px;background:#fff;color:var(--tt-color);font-size:25px;line-height:1}
.tt-filter-accordion{border:0}
.tt-filter-accordion>summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:4px 0 10px}
.tt-filter-accordion>summary::-webkit-details-marker{display:none}
.tt-filter-accordion>summary:after{content:'+';font-size:20px;color:var(--tt-accent);line-height:1}
.tt-filter-accordion[open]>summary:after{content:'−'}
.tt-filter-accordion-body{padding:0 0 4px}
.tt-widget-filter select.tt-ajax-filter-select{width:100%;min-height:42px;padding:8px 10px;border:1px solid #d9dee7;border-radius:8px;background:#fff;color:var(--tt-text)}
.tt-filter-check{display:flex;align-items:center;gap:9px;font-size:13px;cursor:pointer;padding:5px 0}
.tt-filter-check input{width:17px;height:17px;accent-color:var(--tt-accent)}
.tt-filter-clear-all{display:flex;align-items:center;justify-content:center;width:100%;margin-top:16px;padding:10px 12px;border:1px solid #f0c7b8;border-radius:8px;color:#b34420;font-size:13px;font-weight:800}
.tt-filter-clear-all:hover{background:#fff4ef;color:#a53e1b}
.tt-filters-loading .tt-shop-content{opacity:.48;pointer-events:none;transition:opacity .15s ease}
@media(max-width:700px){
 .tt-mobile-filter-open{display:flex;width:100%}
 .tt-shop-sidebar{position:fixed!important;z-index:100002;top:0;right:0;bottom:0;width:min(88vw,360px)!important;max-width:100%;height:100dvh;overflow:auto;background:#fff;box-shadow:-12px 0 40px rgba(15,35,48,.18);transform:translateX(110%);visibility:hidden;transition:transform .25s ease,visibility .25s ease;padding:0!important}
 .tt-shop-sidebar.is-open{transform:translateX(0);visibility:visible}
 .tt-shop-sidebar-inner{position:static!important;max-height:none!important;height:100%;overflow:auto;border:0!important;border-radius:0!important;padding:18px 16px 28px!important}
 .tt-filter-drawer-head{position:sticky;top:-18px;background:#fff;padding:12px 0 4px;z-index:2}
 .tt-filter-drawer-head .tt-shop-sidebar-heading{margin:0 0 12px;padding-bottom:8px}
 .tt-filter-close{display:block;flex:0 0 36px;margin-bottom:10px}
 .tt-filter-backdrop:not([hidden]){position:fixed;inset:0;z-index:100001;background:rgba(10,25,35,.48)}
 html.tt-filter-drawer-open,html.tt-filter-drawer-open body{overflow:hidden}
 .tt-shop-layout{display:flex;flex-direction:column;gap:0}
 .tt-shop-content{width:100%}
}

/* 0.20.0 adjustments */
.woocommerce .col2-set,.woocommerce-page .col2-set{max-width:900px;margin-inline:auto;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.woocommerce form.login,.woocommerce form.register{width:100%;max-width:100%;margin:12px 0;padding:22px}
.woocommerce form.login .button,.woocommerce form.register .button{max-width:50%;min-width:130px}
.tt-filter-widget{border:1px solid #d9dee7!important;border-radius:8px;padding:12px!important;margin:0 0 10px!important}
.tt-shop-sidebar-inner{scrollbar-gutter:stable}
@media(max-width:700px){.woocommerce .col2-set,.woocommerce-page .col2-set{display:block;max-width:100%}.woocommerce .col2-set .col-1,.woocommerce-page .col2-set .col-1{display:block}.woocommerce .col2-set .col-2,.woocommerce-page .col2-set .col-2{display:none}.woocommerce .col2-set.tt-mobile-register-open .col-1,.woocommerce-page .col2-set.tt-mobile-register-open .col-1{display:none}.woocommerce .col2-set.tt-mobile-register-open .col-2,.woocommerce-page .col2-set.tt-mobile-register-open .col-2{display:block}.woocommerce form.login,.woocommerce form.register{padding:14px}.woocommerce form.login .button,.woocommerce form.register .button{max-width:100%;min-width:0}.tt-shop-sidebar-inner{min-height:0}}
@media(min-width:701px){.tt-mobile-membership-toggle{display:none!important}}


/* TELLTAK Lite 0.21.0 hotfix: separate shop sidebar and product grid; account layout */
.tt-shop-layout{grid-template-columns:minmax(230px,258px) minmax(0,1fr)!important}
.tt-shop-sidebar{grid-column:1!important;grid-row:1!important;min-width:0!important}
.tt-shop-content{grid-column:2!important;grid-row:1!important;min-width:0!important;width:100%!important}
.tt-shop-content .woocommerce ul.products{width:100%;min-width:0}
@media(max-width:700px){.tt-shop-layout{display:flex!important;flex-direction:column!important}.tt-shop-sidebar,.tt-shop-content{width:100%!important;grid-column:auto!important;grid-row:auto!important}}
/* Account forms: two equal columns on desktop when registration is enabled. */
body.woocommerce-account .woocommerce .u-columns.col2-set,
body.woocommerce-account .woocommerce-page .u-columns.col2-set{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:24px!important;width:100%!important;max-width:100%!important;margin-inline:auto!important}
body.woocommerce-account .woocommerce .u-columns.col2-set .col-1,
body.woocommerce-account .woocommerce .u-columns.col2-set .col-2{float:none!important;width:100%!important;max-width:100%!important;min-width:0!important}
body.woocommerce-account .woocommerce form.login,
body.woocommerce-account .woocommerce form.register{width:100%!important;max-width:100%!important;margin:12px 0!important;box-sizing:border-box}
@media(max-width:700px){body.woocommerce-account .woocommerce .u-columns.col2-set{display:block!important}body.woocommerce-account .woocommerce .u-columns.col2-set .col-2{display:none!important}body.woocommerce-account .woocommerce .u-columns.col2-set.tt-mobile-register-open .col-1{display:none!important}body.woocommerce-account .woocommerce .u-columns.col2-set.tt-mobile-register-open .col-2{display:block!important}body.woocommerce-account .woocommerce form.login,body.woocommerce-account .woocommerce form.register{padding:14px!important}}

/* TELLTAK Lite 0.22.0: full-height desktop filter column without inner scrollbar; half-width mobile drawer. */
@media (min-width:701px){
  .tt-shop-sidebar-inner{position:static!important;top:auto!important;max-height:none!important;height:auto!important;min-height:calc(3 * 250px + 40px);overflow:visible!important;overflow-y:visible!important;scrollbar-gutter:auto!important}
  .tt-shop-sidebar{align-self:stretch;overflow:visible!important}
}
@media (max-width:700px){
  .tt-shop-sidebar{width:50vw!important;max-width:50vw!important;min-width:0!important;right:0!important;left:auto!important;overflow-y:auto!important}
  .tt-shop-sidebar-inner{width:100%;height:auto!important;min-height:100%;max-height:none!important;overflow:visible!important;padding:14px 10px 24px!important}
  .tt-filter-drawer-head{gap:4px}
  .tt-filter-drawer-head .tt-shop-sidebar-heading{font-size:14px;line-height:1.5}
  .tt-filter-close{flex-basis:30px!important;width:30px!important;height:30px!important}
  .tt-filter-backdrop:not([hidden]){background:rgba(10,25,35,.16)!important}
}
