.bt-section { padding-block: clamp(var(--bt-space-12), 7vw, var(--bt-space-16)); }
.bt-section h1, .bt-section h2, .bt-product-detail h1, .bt-product-detail h2 { font-family: var(--bt-font-display); letter-spacing: -0.035em; }
.bt-section h1, .bt-product-detail h1 { font-size: clamp(2.25rem, 5vw, 4.5rem); line-height: 1; }
.bt-section h2, .bt-product-detail h2 { font-size: clamp(1.75rem, 3vw, 2.75rem); line-height: 1.08; }
.bt-section--fog { background: var(--bt-color-fog); }
.bt-section--ink { background: var(--bt-color-ink); color: var(--bt-color-white); }
.bt-breadcrumbs { display: flex; flex-wrap: wrap; gap: var(--bt-space-2); margin-bottom: var(--bt-space-8); color: var(--bt-color-muted); font-size: .875rem; }
.bt-breadcrumbs a { text-decoration: none; }
.bt-breadcrumbs a:hover, .bt-breadcrumbs a:focus-visible { color: var(--bt-color-signal); text-decoration: underline; }
.bt-actions, .bt-product-actions { display: flex; flex-wrap: wrap; gap: var(--bt-space-3); align-items: center; }
.bt-button, .bt-product-actions .single_add_to_cart_button { display: inline-flex; min-height: 48px; align-items: center; justify-content: center; padding: var(--bt-space-3) var(--bt-space-6); border: 1px solid var(--bt-color-signal); border-radius: var(--bt-radius); background: var(--bt-color-signal); color: var(--bt-color-white); font-weight: 800; text-decoration: none; }
.bt-button--secondary { border-color: var(--bt-color-steel); background: transparent; color: inherit; }
.bt-hero-search { display: flex; width: min(100%, 45rem); margin-block: var(--bt-space-6) var(--bt-space-3); }
.bt-hero-search input { min-width: 0; min-height: 52px; flex: 1; appearance: none; border: 1px solid var(--bt-color-steel); border-radius: 0; background: var(--bt-color-white); color: var(--bt-color-ink); font-family: var(--bt-font-display); font-size: 1rem; font-weight: 650; padding-inline: var(--bt-space-4); }
.bt-hero-search input::placeholder { color: var(--bt-color-muted); font: inherit; opacity: 1; }
.bt-hero-search input:focus-visible { outline: 3px solid var(--bt-color-signal); outline-offset: 2px; }
.bt-hero-search button { min-height: 52px; border: 0; padding-inline: var(--bt-space-6); background: var(--bt-color-ink); color: var(--bt-color-white); font-weight: 800; }
.bt-family-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1px; margin-top: var(--bt-space-6); background: var(--bt-color-line); border: 1px solid var(--bt-color-line); }
.bt-family-card { display: flex; min-width: 0; flex-direction: column; background: var(--bt-color-white); }
.bt-family-card__primary { position: relative; display: grid; min-height: 100%; grid-template-rows: auto 1fr; gap: var(--bt-space-3); padding: var(--bt-space-3); color: var(--bt-color-ink); font-family: var(--bt-font-display); font-weight: 800; text-decoration: none; }
.bt-family-card__primary:focus-visible { z-index: 2; outline: 3px solid var(--bt-color-signal); outline-offset: -3px; }
.bt-family-card__visual { display: grid; width: 100%; aspect-ratio: 4 / 3; place-items: center; overflow: hidden; background: var(--bt-color-fog); color: var(--bt-color-ink); }
.bt-family-card__visual img { display: block; width: 100%; height: 100%; object-fit: contain; }
.bt-family-card__visual svg { width: min(42%, 6rem); height: auto; }
.bt-family-card__label { display: flex; min-width: 0; align-items: center; justify-content: space-between; gap: var(--bt-space-2); line-height: 1.25; }
.bt-family-card__label > span:first-child { overflow-wrap: anywhere; }
.bt-product-grid { display: grid; grid-template-columns: 1fr; gap: var(--bt-space-6); clear: both; }
.bt-product-card { display: flex; min-width: 0; flex-direction: column; border: 1px solid var(--bt-color-line); background: var(--bt-color-white); color: var(--bt-color-ink); }
.bt-product-card__image { display: grid; aspect-ratio: 4 / 3; place-items: center; overflow: hidden; background: var(--bt-color-fog); }
.bt-product-card__image img { width: 100%; height: 100%; object-fit: contain; }
.bt-image-fallback { display: grid; width: 100%; min-height: 100%; place-content: center; place-items: center; gap: var(--bt-space-2); padding: var(--bt-space-6); background: linear-gradient(135deg, #f4f5f5, #fff); color: var(--bt-color-muted); text-align: center; }
.bt-image-fallback__mark { display: grid; width: 4.75rem; height: 4.75rem; place-content: center; border: 2px solid var(--bt-color-ink); background: var(--bt-color-white); color: var(--bt-color-ink); font-family: var(--bt-font-display); font-size: .8rem; font-weight: 800; letter-spacing: .18em; line-height: 1.05; }
.bt-image-fallback > span:not(.bt-image-fallback__mark) { color: var(--bt-color-ink); font-weight: 800; }
.bt-image-fallback small { font-size: .72rem; letter-spacing: .06em; text-transform: uppercase; }
.bt-product-card__body { display: flex; flex: 1; flex-direction: column; padding: var(--bt-space-4); }
.bt-product-card__meta { margin: 0 0 var(--bt-space-3); color: var(--bt-color-muted); font-size: .75rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.bt-product-card__title { margin: 0; font-size: 1.15rem !important; line-height: 1.25 !important; letter-spacing: -.02em !important; }
.bt-product-card__title a { text-decoration: none; }
.bt-product-card__price { margin: var(--bt-space-6) 0 var(--bt-space-2); font-family: var(--bt-font-display); font-size: 1.25rem; font-weight: 800; }
.bt-product-card__price span { font-family: var(--bt-font-body); font-size: .75rem; }
.bt-product-card__availability { margin: 0 0 var(--bt-space-4); color: var(--bt-color-muted); font-size: .875rem; }
.bt-text-link { margin-top: auto; font-weight: 800; }
.bt-proof-grid { display: grid; gap: var(--bt-space-8); }
.bt-proof-grid p { color: var(--bt-color-steel); line-height: 1.7; }
.bt-lead-panel { display: flex; flex-direction: column; gap: var(--bt-space-6); align-items: flex-start; }
.bt-filters { display: grid; grid-template-columns: 1fr; gap: var(--bt-space-4); margin-block: var(--bt-space-8); padding: var(--bt-space-4); border: 1px solid var(--bt-color-line); background: var(--bt-color-fog); }
.bt-filters > div { display: grid; gap: var(--bt-space-2); }
.bt-filters label { font-family: var(--bt-font-display); font-size: .7rem; font-weight: 800; letter-spacing: .09em; text-transform: uppercase; }
.bt-filters input { width: 100%; min-height: 48px; border: 1px solid var(--bt-color-ink); border-radius: 0; background-color: var(--bt-color-white); color: var(--bt-color-ink); font-family: var(--bt-font-display); font-size: 1rem; font-weight: 650; padding-inline: var(--bt-space-3); }
.bt-filters input[type="number"] { appearance: textfield; }
.bt-filters input[type="number"]::-webkit-inner-spin-button, .bt-filters input[type="number"]::-webkit-outer-spin-button { margin: 0; appearance: none; }
.bt-filters input:focus-visible, .bt-facet-filter summary:focus-visible, .bt-facet-filter a:focus-visible { outline: 3px solid var(--bt-color-signal); outline-offset: 2px; }
.bt-facet-filter { position: relative; }
.bt-facet-filter summary { display: grid; min-height: 48px; cursor: pointer; grid-template-columns: 1fr auto; gap: var(--bt-space-1) var(--bt-space-3); align-items: center; border: 1px solid var(--bt-color-ink); background: var(--bt-color-white); padding: var(--bt-space-2) var(--bt-space-3); list-style: none; }
.bt-facet-filter summary::-webkit-details-marker { display: none; }
.bt-facet-filter summary::after { grid-column: 2; grid-row: 1 / span 2; content: "+"; color: var(--bt-color-signal); font-family: var(--bt-font-display); font-size: 1.4rem; font-weight: 800; }
.bt-facet-filter[open] summary::after { content: "−"; }
.bt-facet-filter summary span { color: var(--bt-color-muted); font-family: var(--bt-font-display); font-size: .7rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.bt-facet-filter summary strong { overflow: hidden; font-family: var(--bt-font-display); font-size: .95rem; font-weight: 700; text-overflow: ellipsis; white-space: nowrap; }
.bt-facet-filter__links { display: grid; gap: 1px; margin-top: -1px; border: 1px solid var(--bt-color-steel); background: var(--bt-color-line); }
.bt-facet-filter__links a { display: flex; min-height: 44px; align-items: center; gap: var(--bt-space-3); background: var(--bt-color-white); color: var(--bt-color-ink); font-family: var(--bt-font-display); font-size: .9rem; font-weight: 700; padding: var(--bt-space-3); text-decoration: none; }
.bt-facet-filter__links a:hover, .bt-facet-filter__links a[aria-current="page"] { background: var(--bt-color-ink); color: var(--bt-color-white); }
.bt-facet-filter__links a[aria-current="page"] { box-shadow: inset 3px 0 0 var(--bt-color-signal); }
.bt-catalog-toolbar { display: grid; gap: var(--bt-space-3); align-items: start; margin: 0 0 var(--bt-space-6); }
.bt-catalog-toolbar .bt-order-filter { width: min(100%, 24rem); }
.bt-catalog-toolbar > p { margin: 0; color: var(--bt-color-muted); font-size: .82rem; line-height: 1.5; }
.woocommerce-result-count, .woocommerce-ordering { margin-block: 0 var(--bt-space-6); }
.woocommerce-ordering { float: right; }
.woocommerce-pagination { margin-top: var(--bt-space-8); }
.woocommerce-pagination ul { display: flex; gap: var(--bt-space-2); padding: 0; list-style: none; }
.woocommerce-pagination a, .woocommerce-pagination span { display: grid; min-width: 44px; min-height: 44px; place-items: center; border: 1px solid var(--bt-color-line); }
.bt-empty-state { padding: var(--bt-space-12); background: var(--bt-color-fog); }
.bt-product-detail { display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--bt-space-6); }
.bt-product-gallery .woocommerce-product-gallery { width: 100% !important; float: none !important; opacity: 1 !important; }
.bt-product-gallery .woocommerce-product-gallery__wrapper { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--bt-space-3); margin: 0; }
.bt-product-gallery .woocommerce-product-gallery__image { background: var(--bt-color-fog); }
.bt-product-gallery .woocommerce-product-gallery__image:first-child { grid-column: 1 / -1; }
.bt-product-gallery .woocommerce-product-gallery__image img { display: block; width: 100%; height: auto; }
.bt-product-gallery > .bt-image-fallback { min-height: clamp(22rem, 55vw, 38rem); }
.bt-product-identity h1 { margin: var(--bt-space-2) 0; }
.bt-product-prices p { margin: 0; }
.bt-price-net { font-family: var(--bt-font-display); font-size: clamp(1.75rem, 5vw, 2.75rem); font-weight: 800; }
.bt-price-net span, .bt-price-gross { color: var(--bt-color-muted); font-family: var(--bt-font-body); font-size: .9rem; font-weight: 500; }
.bt-price-gross { margin-top: var(--bt-space-2) !important; }
.bt-product-availability { margin: 0; padding: var(--bt-space-3) var(--bt-space-4); border-left: 3px solid var(--bt-color-signal); background: var(--bt-color-fog); }
.bt-product-actions form.cart { display: flex; flex: 1 1 100%; flex-wrap: wrap; gap: var(--bt-space-2); margin: 0; }
.bt-purchase-form .quantity { flex: 0 0 auto; }
.bt-purchase-form .bt-button { flex: 1 1 12rem; }
.bt-purchase-form .bt-button--secondary { border-color: var(--bt-color-ink); background: var(--bt-color-white); color: var(--bt-color-ink); }
.bt-cart-status { display: flex; flex: 1 1 100%; flex-wrap: wrap; gap: var(--bt-space-3); align-items: center; min-height: 1.5rem; }
.bt-cart-status:empty { display: none; }
.bt-cart-status > span { font-weight: 750; }
.bt-cart-status a { color: var(--bt-color-ink); font-family: var(--bt-font-display); font-weight: 800; text-underline-offset: .2em; }
.bt-product-actions .quantity input { width: 4.5rem; min-height: 48px; border: 1px solid var(--bt-color-steel); padding-inline: var(--bt-space-2); }
.woocommerce .bt-product-detail .bt-product-actions button.single_add_to_cart_button { border-color: var(--bt-color-signal); background: var(--bt-color-signal); color: var(--bt-color-white); }
.woocommerce .bt-product-detail .bt-product-actions .bt-button--quote { border-color: var(--bt-color-steel); background: var(--bt-color-white); color: var(--bt-color-ink); }
.woocommerce .bt-product-detail .bt-product-actions .bt-button--contact { border-color: var(--bt-color-ink); background: var(--bt-color-ink); color: var(--bt-color-white); }
.woocommerce .bt-product-detail .bt-product-actions button.single_add_to_cart_button:hover { border-color: var(--bt-color-ink); background: var(--bt-color-ink); }
.woocommerce .bt-product-detail .bt-product-actions .bt-button--quote:hover { border-color: var(--bt-color-ink); }
.woocommerce .bt-product-detail .bt-product-actions .bt-button--contact:hover { border-color: var(--bt-color-signal); background: var(--bt-color-signal); }
.bt-product-callout { display: flex; flex: 1 1 100%; flex-wrap: wrap; gap: var(--bt-space-2); margin: var(--bt-space-1) 0 0; color: var(--bt-color-muted); font-size: .9rem; }
.bt-product-callout a { color: var(--bt-color-ink); font-family: var(--bt-font-display); font-weight: 800; text-underline-offset: .2em; }
.bt-product-section { border-top: 1px solid var(--bt-color-line); padding-top: var(--bt-space-8); }
.bt-specs { display: grid; grid-template-columns: 1fr; margin: 0; }
.bt-specs div { display: grid; grid-template-columns: minmax(7rem, 1fr) 2fr; gap: var(--bt-space-4); padding: var(--bt-space-3) 0; border-bottom: 1px solid var(--bt-color-line); }
.bt-specs dt { font-weight: 800; }
.bt-specs dd { margin: 0; }
.bt-prose { max-width: 68ch; line-height: 1.75; }
.bt-document-list { display: grid; gap: var(--bt-space-3); padding-left: 1.2rem; }
.woocommerce-cart .bt-page-content, .woocommerce-checkout .bt-page-content { margin-top: var(--bt-space-8); }
.woocommerce-checkout .bt-checkout-shell { width: 100%; max-width: none; }
.bt-checkout-intro { display: grid; gap: var(--bt-space-2); max-width: 52rem; margin-top: var(--bt-space-4); }
.bt-checkout-intro p { margin: 0; }
.bt-checkout-intro > p:last-child { color: var(--bt-color-muted); line-height: 1.6; }
.bt-checkout-trust { display: grid; grid-template-columns: 1fr; gap: 1px; margin: var(--bt-space-8) 0 0; padding: 1px; border: 0; background: var(--bt-color-line); list-style: none; }
.bt-checkout-trust li { display: grid; gap: var(--bt-space-1); min-width: 0; padding: var(--bt-space-4); background: var(--bt-color-fog); }
.bt-checkout-trust strong { font-family: var(--bt-font-display); font-size: .9rem; font-weight: 800; }
.bt-checkout-trust span, .bt-checkout-trust a { color: var(--bt-color-muted); font-size: .78rem; line-height: 1.45; }
.bt-checkout-trust a { color: var(--bt-color-ink); font-family: var(--bt-font-display); font-weight: 800; text-decoration: none; }
.woocommerce-checkout form.checkout { display: grid; gap: var(--bt-space-6); width: 100%; }
.woocommerce-checkout #customer_details { display: grid; gap: var(--bt-space-6); min-width: 0; }
.woocommerce-checkout #customer_details :is(.col-1, .col-2) { width: 100%; float: none; }
.woocommerce-checkout :is(.woocommerce-billing-fields, .woocommerce-shipping-fields, .woocommerce-additional-fields, #order_review) { border: 1px solid var(--bt-color-line); background: var(--bt-color-white); padding: clamp(var(--bt-space-4), 3vw, var(--bt-space-6)); }
.woocommerce-checkout :is(.woocommerce-billing-fields > h3, #ship-to-different-address, .woocommerce-additional-fields > h3, #order_review_heading) { margin: 0 0 var(--bt-space-6); font-family: var(--bt-font-display); font-size: clamp(1.15rem, 2vw, 1.45rem); letter-spacing: -.025em; }
.woocommerce-checkout .woocommerce-billing-fields > h3::before { content: "01 · "; color: var(--bt-color-signal); }
.woocommerce-checkout #ship-to-different-address::before { content: "02 · "; color: var(--bt-color-signal); }
.woocommerce-checkout .woocommerce-additional-fields > h3::before { content: "02 · "; color: var(--bt-color-signal); }
.woocommerce-checkout #order_review_heading::before { content: "03 · "; color: var(--bt-color-signal); }
.woocommerce-checkout #ship-to-different-address label { display: inline-flex; min-height: 44px; align-items: center; gap: var(--bt-space-2); cursor: pointer; }
.woocommerce-checkout #ship-to-different-address input { width: 1.25rem; height: 1.25rem; accent-color: var(--bt-color-signal); }
.woocommerce-checkout :is(.woocommerce-billing-fields__field-wrapper, .woocommerce-shipping-fields__field-wrapper, .woocommerce-additional-fields__field-wrapper) { display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--bt-space-4); }
.woocommerce-checkout .form-row { display: grid; width: 100% !important; margin: 0 !important; float: none !important; gap: var(--bt-space-2); }
.woocommerce-checkout .form-row label { margin: 0; font-size: .78rem; letter-spacing: .025em; }
.woocommerce-checkout .form-row .optional { color: var(--bt-color-muted); font-family: var(--bt-font-body); font-weight: 500; }
.woocommerce-checkout .form-row .woocommerce-input-wrapper { display: block; width: 100%; }
.woocommerce-checkout :is(input:not([type="checkbox"]):not([type="radio"]), textarea, select:not(.select2-hidden-accessible)),
.woocommerce-checkout .select2-container,
.woocommerce-checkout .select2-container .select2-selection { width: 100% !important; box-sizing: border-box; }
.woocommerce-checkout select.select2-hidden-accessible { position: absolute !important; width: 1px !important; height: 1px !important; overflow: hidden !important; clip: rect(0 0 0 0) !important; clip-path: inset(50%) !important; white-space: nowrap !important; }
.woocommerce-checkout :is(input:not([type="checkbox"]):not([type="radio"]), textarea, select) { padding: var(--bt-space-3); }
.woocommerce-checkout textarea { min-height: 7rem; resize: vertical; }
.woocommerce-checkout .select2-container .select2-selection { display: flex; align-items: center; padding-inline: var(--bt-space-3); }
.woocommerce-checkout .select2-container .select2-selection__rendered { padding: 0; color: var(--bt-color-ink); line-height: 1.3; }
.woocommerce-checkout #order_review_heading { align-self: end; margin-bottom: 0; padding: var(--bt-space-4) var(--bt-space-4) 0; border: 1px solid var(--bt-color-line); border-bottom: 0; background: var(--bt-color-fog); }
.woocommerce-checkout #order_review { border-top: 0; background: var(--bt-color-fog); }
.woocommerce-checkout-review-order-table { table-layout: fixed; }
.woocommerce-checkout-review-order-table :is(th, td) { vertical-align: top; }
.woocommerce-checkout-review-order-table :is(th:last-child, td:last-child) { text-align: right; }
.woocommerce-checkout-review-order-table .order-total :is(th, td) { border-top: 2px solid var(--bt-color-ink); color: var(--bt-color-ink); font-family: var(--bt-font-display); font-size: 1.1rem; font-weight: 800; }
.woocommerce-checkout #payment { margin-top: var(--bt-space-6); }
.woocommerce-checkout .wc-upe-form { position: relative; }
.woocommerce-checkout #place_order { width: 100%; margin-top: var(--bt-space-4); padding: var(--bt-space-3) var(--bt-space-6); font-size: 1rem; }
.woocommerce-checkout .woocommerce-privacy-policy-text { color: var(--bt-color-muted); font-size: .78rem; line-height: 1.55; }
.woocommerce-checkout .bt-whatsapp-float { display: none; }
.wc-block-cart, .wc-block-checkout { font-family: var(--bt-font-body); }
.wc-block-cart__main, .wc-block-cart__sidebar, .wc-block-components-sidebar-layout { border-color: var(--bt-color-line); }
.wc-block-cart-item__product a, .wc-block-components-product-name { color: var(--bt-color-ink); font-family: var(--bt-font-display); font-weight: 750; text-decoration: none; }
.wc-block-components-quantity-selector { border-radius: 0 !important; }
.wc-block-cart__submit-button, .wc-block-components-checkout-place-order-button { min-height: 52px; border: 1px solid var(--bt-color-signal) !important; border-radius: 0 !important; background: var(--bt-color-signal) !important; color: var(--bt-color-white) !important; font-family: var(--bt-font-display); font-weight: 800; }
.wc-block-cart__submit-button:hover, .wc-block-components-checkout-place-order-button:hover { border-color: var(--bt-color-ink) !important; background: var(--bt-color-ink) !important; }
.woocommerce-checkout :is(input:not([type="checkbox"]):not([type="radio"]), textarea, select),
.wc-block-checkout :is(input:not([type="checkbox"]):not([type="radio"]), textarea, select),
.woocommerce-checkout .select2-container .select2-selection {
  min-height: 48px;
  border: 1px solid var(--bt-color-ink) !important;
  border-radius: 0 !important;
  background: var(--bt-color-white);
  color: var(--bt-color-ink);
  font-family: var(--bt-font-display);
  font-size: 1rem;
  font-weight: 650;
}
.woocommerce-checkout :is(input, textarea, select)::placeholder,
.wc-block-checkout :is(input, textarea, select)::placeholder { color: var(--bt-color-muted); font: inherit; opacity: 1; }
.woocommerce-checkout :is(input, textarea, select):focus-visible,
.wc-block-checkout :is(input, textarea, select):focus-visible,
.woocommerce-checkout .select2-container--focus .select2-selection { outline: 3px solid var(--bt-color-signal) !important; outline-offset: 2px; }
.woocommerce-checkout :is(input, textarea, select):disabled,
.wc-block-checkout :is(input, textarea, select):disabled { cursor: not-allowed; background: var(--bt-color-fog); color: var(--bt-color-muted); }
.woocommerce-checkout input:-webkit-autofill,
.wc-block-checkout input:-webkit-autofill { -webkit-text-fill-color: var(--bt-color-ink); box-shadow: 0 0 0 1000px var(--bt-color-white) inset; font: inherit; }
.woocommerce-checkout .woocommerce-invalid :is(input, textarea, select),
.wc-block-checkout .has-error :is(input, textarea, select),
.wc-block-checkout .wc-block-components-validation-error { border-color: var(--bt-color-signal) !important; }
.woocommerce-checkout .form-row label,
.wc-block-checkout label { color: var(--bt-color-ink); font-family: var(--bt-font-display); font-weight: 750; }
.woocommerce-checkout #payment,
.wc-block-checkout .wc-block-components-checkout-step { border: 1px solid var(--bt-color-line); border-radius: 0; background: var(--bt-color-fog); padding: var(--bt-space-4); }
.woocommerce-checkout #payment ul.payment_methods { margin: 0; padding: 0; list-style: none; }
.woocommerce-checkout #payment .payment_box { margin-top: var(--bt-space-3); padding: var(--bt-space-3); border-left: 3px solid var(--bt-color-signal); background: var(--bt-color-white); }
.woocommerce-checkout #place_order { min-height: 52px; border: 1px solid var(--bt-color-signal); border-radius: 0; background: var(--bt-color-signal); color: var(--bt-color-white); font-family: var(--bt-font-display); font-weight: 800; padding-inline: var(--bt-space-6); }
.woocommerce-checkout #place_order:hover { border-color: var(--bt-color-ink); background: var(--bt-color-ink); }
.woocommerce-checkout-review-order-table { width: 100%; border-collapse: collapse; }
.woocommerce-checkout-review-order-table :is(th, td) { border-bottom: 1px solid var(--bt-color-line); padding: var(--bt-space-3); text-align: left; }
.woocommerce-cart-form table, .cart_totals table { width: 100%; border-collapse: collapse; }
.woocommerce-cart-form th, .woocommerce-cart-form td, .cart_totals th, .cart_totals td { border-bottom: 1px solid var(--bt-color-line); padding: var(--bt-space-3); text-align: left; }
.woocommerce-cart-form thead th { color: var(--bt-color-muted); font-family: var(--bt-font-display); font-size: .72rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.woocommerce-cart-form :is(th, td).product-price,
.woocommerce-cart-form :is(th, td).product-subtotal,
.cart_totals td { text-align: right; }
.woocommerce-cart-form :is(.product-price, .product-subtotal) .amount,
.cart_totals .amount { color: var(--bt-color-ink); font-family: var(--bt-font-display); font-variant-numeric: tabular-nums; font-weight: 800; }
.woocommerce-cart-form .product-name a { color: var(--bt-color-ink); font-family: var(--bt-font-display); font-weight: 750; text-decoration: none; }
.woocommerce-cart-form .quantity input { min-height: 44px; border: 1px solid var(--bt-color-ink); font-family: var(--bt-font-display); font-weight: 650; }
.woocommerce-cart .cart_totals { width: min(100%, 32rem); margin-block-start: var(--bt-space-8); margin-inline-start: auto; border: 1px solid var(--bt-color-line); background: var(--bt-color-fog); padding: var(--bt-space-4); }
.woocommerce-cart .cart_totals h2 { margin: 0 0 var(--bt-space-4); font-family: var(--bt-font-display); font-size: 1.35rem; letter-spacing: -.025em; }
.woocommerce-cart .cart_totals th { font-family: var(--bt-font-display); font-weight: 750; }
.woocommerce-cart .cart_totals .order-total :is(th, td) { border-top: 2px solid var(--bt-color-ink); font-size: 1.15rem; }
.woocommerce-cart .cart_totals .order-total .amount { font-size: 1.3rem; }
.woocommerce-cart .checkout-button { display: inline-flex; min-height: 52px; align-items: center; justify-content: center; padding-inline: var(--bt-space-6); background: var(--bt-color-signal); color: var(--bt-color-white); font-family: var(--bt-font-display); font-weight: 800; text-decoration: none; }
.woocommerce-cart .bt-cart-remove { display: inline-flex; min-width: 44px; min-height: 44px; align-items: center; justify-content: center; gap: var(--bt-space-2); color: var(--bt-color-ink) !important; font-family: var(--bt-font-display); font-size: .82rem; font-weight: 800; text-decoration: none; }
.woocommerce-cart .bt-cart-remove:hover { color: var(--bt-color-signal) !important; }

@media (max-width: 47.999rem) {
  .woocommerce-cart .bt-page-content, .woocommerce-cart-form, .woocommerce-cart-form .shop_table { width: 100%; max-width: 100%; min-width: 0; }
  .woocommerce-cart-form .shop_table { display: block; }
  .woocommerce-cart-form thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); clip-path: inset(50%); white-space: nowrap; }
  .woocommerce-cart-form tbody { display: grid; gap: var(--bt-space-4); width: 100%; }
  .woocommerce-cart-form tr.woocommerce-cart-form__cart-item { display: grid; grid-template-columns: 5.25rem minmax(0, 1fr); grid-template-areas: "image name" "price price" "quantity quantity" "subtotal subtotal" "remove remove"; gap: var(--bt-space-3) var(--bt-space-4); width: 100%; min-width: 0; border: 1px solid var(--bt-color-line); background: var(--bt-color-white); padding: var(--bt-space-4); }
  .woocommerce-cart-form tr.woocommerce-cart-form__cart-item > td { width: auto; min-width: 0; border: 0; padding: 0; }
  .woocommerce-cart-form .product-thumbnail { grid-area: image; }
  .woocommerce-cart-form .product-thumbnail img { display: block; width: 100%; height: auto; aspect-ratio: 1; object-fit: contain; }
  .woocommerce-cart-form .product-name { grid-area: name; align-self: center; overflow-wrap: anywhere; }
  .woocommerce-cart-form .product-price { grid-area: price; }
  .woocommerce-cart-form .product-quantity { grid-area: quantity; }
  .woocommerce-cart-form .product-subtotal { grid-area: subtotal; }
  .woocommerce-cart-form .product-remove { grid-area: remove; border-top: 1px solid var(--bt-color-line) !important; padding-top: var(--bt-space-2) !important; }
  .woocommerce-cart-form :is(.product-price, .product-quantity, .product-subtotal) { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: var(--bt-space-3); align-items: center; text-align: right; }
  .woocommerce-cart-form :is(.product-price, .product-quantity, .product-subtotal)::before { content: attr(data-title); color: var(--bt-color-muted); font-family: var(--bt-font-display); font-size: .72rem; font-weight: 800; letter-spacing: .08em; text-align: left; text-transform: uppercase; }
  .woocommerce-cart-form .quantity input { width: 5rem; min-height: 48px; text-align: center; }
  .woocommerce-cart-form .bt-cart-remove { width: 100%; justify-content: flex-start; }
  .woocommerce-cart-form tr:not(.woocommerce-cart-form__cart-item), .woocommerce-cart-form td.actions { display: block; width: 100%; }
  .woocommerce-cart-form td.actions { border: 0; padding: var(--bt-space-3) 0 0; }
  .woocommerce-cart-form td.actions .button { width: 100%; min-height: 48px; }
  .woocommerce-cart .cart-collaterals, .woocommerce-cart .cart_totals { width: 100%; max-width: 100%; min-width: 0; }
  .woocommerce-cart .wc-proceed-to-checkout, .woocommerce-cart .wc-proceed-to-checkout .checkout-button { width: 100%; box-sizing: border-box; }
  .wc-block-cart__main, .wc-block-cart__sidebar { width: 100%; min-width: 0; }
  .wc-block-cart-items__row { border: 1px solid var(--bt-color-line); background: var(--bt-color-white); padding: var(--bt-space-3); }
  .wc-block-cart__submit-button { width: 100%; }
}

/* Campaign discounts are applied by controlled Baltrion links. Applied totals
   stay visible, but the public coupon hunt is deliberately removed. */
.woocommerce-cart .coupon,
.woocommerce-checkout .woocommerce-form-coupon-toggle,
.wc-block-cart .wc-block-components-totals-coupon,
.wc-block-checkout .wc-block-components-totals-coupon {
  display: none !important;
}

@media (min-width: 40rem) {
  .bt-family-grid, .bt-product-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .bt-filters { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .bt-facet-filter__links { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .bt-checkout-trust { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .woocommerce-checkout .woocommerce-billing-fields__field-wrapper { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .woocommerce-checkout .woocommerce-shipping-fields__field-wrapper { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .woocommerce-checkout :is(.woocommerce-billing-fields__field-wrapper, .woocommerce-shipping-fields__field-wrapper) .form-row { grid-column: 1 / -1; }
  .woocommerce-checkout :is(.woocommerce-billing-fields__field-wrapper, .woocommerce-shipping-fields__field-wrapper) .form-row-first { grid-column: 1; }
  .woocommerce-checkout :is(.woocommerce-billing-fields__field-wrapper, .woocommerce-shipping-fields__field-wrapper) .form-row-last { grid-column: 2; }
  .bt-catalog-toolbar { grid-template-columns: minmax(16rem, 24rem) minmax(0, 1fr); align-items: center; }
}

@media (min-width: 48rem) {
  .bt-family-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}

@media (min-width: 64rem) {
  .bt-family-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .bt-product-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .bt-proof-grid { grid-template-columns: 2fr 1fr 1fr; }
  .bt-lead-panel { flex-direction: row; align-items: center; justify-content: space-between; }
  .bt-filters { grid-template-columns: repeat(3, minmax(0, 1fr)); align-items: end; }
  .bt-facet-filter__links { position: absolute; z-index: 20; width: min(32rem, 70vw); box-shadow: 0 1rem 2rem rgb(17 18 20 / 12%); }
  .bt-product-detail { grid-template-columns: minmax(0, 1.15fr) minmax(22rem, .85fr); align-items: start; }
  .bt-product-gallery { grid-column: 1; grid-row: 1 / span 5; }
  .bt-product-identity, .bt-product-prices, .bt-product-availability, .bt-product-actions { grid-column: 2; }
  .bt-product-section { grid-column: 1 / -1; }
  .woocommerce-checkout form.checkout { grid-template-columns: minmax(0, 1.35fr) minmax(20rem, .65fr); column-gap: var(--bt-space-8); align-items: start; }
  .woocommerce-checkout #customer_details { grid-column: 1; grid-row: 1; }
  .woocommerce-checkout #order_review_heading { z-index: 1; align-self: start; grid-column: 2; grid-row: 1; }
  .woocommerce-checkout #order_review { position: sticky; top: var(--bt-space-4); align-self: start; grid-column: 2; grid-row: 1; margin-top: 3.25rem; }
}
