.qt-shop { padding-bottom: 64px; }
.qt-shop__head { padding-top: 28px; }
.qt-shop__head .qt-lead { margin-top: 12px; }
.qt-shop__head .qt-lead img { display: none; }
.qt-shop__head .qt-lead p:last-child { margin-bottom: 0; }
.qt-shop__head h1, .qt-flowhead h1 {
  font-family: var(--display); font-weight: 600; font-size: clamp(32px, 4vw, 52px); line-height: 0.92; text-transform: uppercase; letter-spacing: -0.02em;
}
.qt-pdp h1, .product_title {
  font-family: var(--display); font-weight: 600; font-size: clamp(28px, 3vw, 40px); line-height: 0.95; text-transform: uppercase; letter-spacing: -0.02em;
}
.qt-lead { max-width: 68ch; color: var(--ink-soft); margin-top: 12px; }
.qt-crumbs { margin-bottom: 12px; }
.qt-crumbs ol { display: flex; flex-wrap: wrap; gap: 6px; font-size: 13px; color: var(--ink-soft); }
.qt-crumbs li:not(:last-child)::after { content: "/"; margin-left: 6px; }
.qt-crumbs a { color: inherit; }
.qt-shop__layout { display: grid; gap: 16px; margin-top: 24px; }
.qt-filters-toggle { width: 100%; }
.qt-filters { display: none; gap: 18px; align-content: start; background: #fff; border: 1px solid var(--line); padding: 16px; }
.qt-filters.is-open { display: grid; }
.qt-filters fieldset { border: 0; padding: 0; margin: 0; display: grid; gap: 8px; }
.qt-filters legend { font-family: var(--display); font-size: 15px; font-weight: 600; letter-spacing: 0.12em; text-transform: uppercase; margin-bottom: 4px; }
.qt-filters__cats { display: grid; gap: 2px; }
.qt-filters__cats a { display: flex; align-items: center; justify-content: space-between; gap: 8px; min-height: 40px; padding: 4px 8px; text-decoration: none; font-size: 14px; font-weight: 500; }
.qt-filters__cats a span { min-width: 0; }
.qt-filters__cats a small { color: var(--ink-soft); font-size: 12px; font-weight: 500; }
.qt-filters__cats a.is-active { background: var(--black); color: #fff; }
.qt-filters__cats a.is-active small { color: rgba(255,255,255,0.72); }
.qt-filters__cats summary { display: flex; align-items: center; list-style: none; cursor: pointer; }
.qt-filters__cats summary::-webkit-details-marker { display: none; }
.qt-filters__cats summary a { flex: 1; }
.qt-filters__chev { width: 44px; height: 44px; display: grid; place-items: center; flex: none; }
.qt-filters__cats details[open] > summary .qt-filters__chev svg { transform: rotate(180deg); }
.qt-filters__parent { position: sticky; top: 0; z-index: 1; background: #fff; }
.qt-filters__sub { margin: 0 0 10px 12px; padding: 4px 0 6px 12px; border-left: 2px solid var(--black); background: var(--paper); }
.qt-filters__sub a { min-height: 40px; font-size: 13px; font-weight: 500; color: #3a3a3a; }
.qt-filters__rest { margin-top: 8px; border-top: 1px solid var(--line); padding-top: 4px; }
.qt-filters__more { display: flex; align-items: center; min-height: 44px; font-size: 12px; font-weight: 600; letter-spacing: 0.08em; text-transform: uppercase; cursor: pointer; list-style: none; }
.qt-filters__more::-webkit-details-marker { display: none; }
.qt-filters__more span:first-child { flex: 1; }
.qt-filters__rest-list { list-style: none; margin: 0; padding: 0 0 4px; }
.qt-filters__options { display: flex; flex-wrap: wrap; gap: 8px; }
.qt-filterchip { position: relative; display: inline-flex; align-items: center; gap: 8px; min-height: 44px; padding: 6px 10px; border: 1px solid var(--line); background: #fff; cursor: pointer; }
.qt-filterchip input { position: absolute; width: 1px; height: 1px; opacity: 0; }
.qt-filterchip:has(input:checked) { border-color: var(--black); box-shadow: inset 0 0 0 1px var(--black); }
.qt-filterchip:focus-within { outline: 2px solid var(--olive); outline-offset: 2px; }
.qt-filterchip small { color: var(--ink-soft); font-size: 12px; }
.qt-filters__options--size .qt-filterchip span { font-family: var(--display); font-size: 18px; letter-spacing: 0.04em; text-transform: uppercase; }
.qt-filters__price { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.qt-filters__price label { display: grid; gap: 4px; font-size: 12px; font-weight: 600; letter-spacing: 0.08em; text-transform: uppercase; }
.qt-filters input[type="number"] { width: 100%; min-height: 44px; border: 1px solid var(--line); background: #fff; padding: 0 10px; font-size: 16px; letter-spacing: 0; text-transform: none; font-weight: 500; }
.qt-filters input[type="number"]::-webkit-outer-spin-button,
.qt-filters input[type="number"]::-webkit-inner-spin-button { appearance: none; margin: 0; }
.qt-filters__actions { display: grid; gap: 4px; }
.qt-filters__actions .qt-btn { width: 100%; }
.qt-filters__clear { display: flex; align-items: center; justify-content: center; min-height: 44px; text-decoration: underline; text-underline-offset: 3px; }
.qt-toolbar { display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 12px; margin: 0 0 20px; padding: 12px 0; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.qt-toolbar .woocommerce-result-count { margin: 0; color: var(--ink); font-size: 14px; }
.qt-toolbar__sort { display: flex; align-items: center; gap: 10px; margin-left: auto; }
.qt-toolbar__sort > span { font-size: 12px; font-weight: 600; letter-spacing: 0.12em; text-transform: uppercase; }
.woocommerce-ordering { margin: 0; }
.shop-toolbar .woocommerce-ordering select.orderby, .qt-toolbar select.orderby, .woocommerce-ordering select.orderby {
  appearance: none; min-height: 44px; min-width: 190px; border: 1px solid var(--black); border-radius: 0; background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%23111' stroke-width='1.4'/%3E%3C/svg%3E") no-repeat right 12px center;
  padding: 0 36px 0 12px; font-weight: 600;
}
.woocommerce-pagination { margin-top: 28px; }
.woocommerce-pagination ul { display: flex; flex-wrap: wrap; gap: 8px; justify-content: center; }
.woocommerce-pagination a, .woocommerce-pagination span { display: inline-flex; align-items: center; justify-content: center; min-width: 44px; min-height: 44px; padding: 0 12px; border: 1px solid var(--line); background: #fff; text-decoration: none; }
.woocommerce-pagination span.current { background: var(--black); color: #fff; border-color: var(--black); }
.qt-pdp__top { padding-top: 16px; }
.qt-pdp__grid { display: grid; gap: 24px; }
.qt-gallery { display: grid; gap: 8px; min-width: 0; }
.qt-gallery__stage { background: #fff; border: 1px solid var(--line); position: relative; }
.qt-gallery__main { width: 100%; aspect-ratio: 1 / 1; object-fit: contain; background: #fff; padding: 16px; cursor: zoom-in; }
.qt-gallery__zoom { position: absolute; right: 12px; bottom: 12px; min-height: 44px; min-width: 44px; background: #fff; border: 1px solid var(--line); padding: 0 12px; font-size: 13px; font-weight: 600; }
.qt-gallery__thumbs { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; list-style: none; margin: 0; padding: 0; }
.qt-gallery__thumbs li { min-width: 0; }
.qt-gallery__thumbs button { width: 100%; aspect-ratio: 1; height: auto; padding: 4px; border: 1px solid var(--line); background: #fff; cursor: pointer; }
.qt-gallery__thumbs button.is-active { border-color: var(--black); box-shadow: inset 0 0 0 1px var(--black); }
.qt-gallery__thumbs img { width: 100%; height: 100%; object-fit: contain; background: #fff; }
@media (min-width: 520px) {
  .qt-gallery__thumbs { grid-template-columns: repeat(6, minmax(0, 1fr)); }
}
.summary .product_title { margin-bottom: 8px; }
.summary .woocommerce-product-details__short-description { color: var(--ink-soft); max-width: 52ch; margin: 12px 0; }
.summary form.cart { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
.summary form.variations_form { flex-direction: column; align-items: stretch; gap: 4px; }
.summary form.cart .variations,
.summary form.cart .single_variation_wrap,
.summary form.cart .qt-var { width: 100%; min-width: 0; }
.woocommerce-variation-add-to-cart { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin-top: 8px; }
.summary .single_add_to_cart_button { flex: 1 1 200px; min-height: 52px; }
.summary .product_meta { color: var(--ink-soft); font-size: 13px; margin-top: 16px; }
.qt-lightbox { position: fixed; inset: 0; background: rgba(0,0,0,0.9); z-index: 120; display: grid; place-items: center; padding: 64px 72px; }
.qt-lightbox[hidden] { display: none; }
.qt-lightbox img { max-height: 100%; max-width: 100%; object-fit: contain; }
.qt-lightbox__close, .qt-lightbox__nav { position: absolute; width: 44px; height: 44px; display: grid; place-items: center; color: #fff; background: transparent; border: 1px solid rgba(255,255,255,0.5); cursor: pointer; }
.qt-lightbox__close { top: 12px; right: 12px; }
.qt-lightbox__nav--prev { left: 12px; top: 50%; transform: translateY(-50%) rotate(90deg); }
.qt-lightbox__nav--next { right: 12px; top: 50%; transform: translateY(-50%) rotate(-90deg); }
.qt-lightbox__count { position: absolute; left: 0; right: 0; bottom: 16px; margin: 0; text-align: center; color: #fff; font-size: 13px; letter-spacing: 0.06em; }
.qt-rating { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; margin: 8px 0; text-decoration: none; color: var(--ink); }
.qt-rating__stars { display: inline-flex; gap: 2px; color: #c8c2b6; }
.qt-rating__stars .is-on { color: var(--star); }
.qt-rating__stars .is-on svg { fill: currentColor; }
.qt-rating__score { font-weight: 600; font-variant-numeric: tabular-nums; }
.qt-rating__count { color: var(--ink-soft); text-decoration: underline; text-underline-offset: 3px; }
.summary .price { font-size: 22px; font-weight: 600; }
.qt-pdp-perks { list-style: none; margin: 20px 0 0; padding: 16px 0; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px 10px; }
.summary > .stock { margin: 16px 0 0; font-size: 14px; line-height: 1.4; }
.summary form.cart:not(.variations_form) { margin-top: 14px; }
.summary form.cart:not(.variations_form) .qt-qty { margin-top: 0; margin-bottom: 0; }
.qt-pdp-perks li { display: flex; align-items: center; gap: 8px; min-width: 0; }
.qt-pdp-perks svg { flex: none; }
.qt-pdp-perks strong { display: block; font-size: 13px; font-weight: 600; line-height: 1.2; }
.qt-pdp-perks small { display: block; margin-top: 2px; color: var(--ink-soft); font-size: 12px; line-height: 1.25; }
.qt-card__price .amount { font-size: 20px; font-weight: 600; color: #111; }
.summary .price del, .qt-card__price del { color: var(--ink-soft); font-weight: 500; margin-right: 6px; }
.summary .price ins { text-decoration: none; color: var(--sale); }
.qt-var { border: 0; margin: 18px 0; padding: 0; }
.qt-var legend { font-weight: 600; margin-bottom: 10px; }
.qt-var__picked { color: var(--ink-soft); font-weight: 500; }
.qt-var__options { display: flex; flex-wrap: wrap; gap: 8px; }
.qt-choice { position: relative; min-height: 48px; border: 1px solid var(--line); background: #fff; display: inline-flex; align-items: center; gap: 8px; padding: 8px 12px; cursor: pointer; }
.qt-choice input { position: absolute; width: 1px; height: 1px; opacity: 0; }
.qt-choice.is-selected, .qt-choice:has(input:checked) { border-color: var(--black); box-shadow: inset 0 0 0 1px var(--black); }
.qt-choice.is-missing { opacity: 0.32; pointer-events: none; }
.qt-choice.is-oos .qt-choice__name { text-decoration: line-through; }
.qt-choice small { display: block; color: var(--ink-soft); font-size: 11px; line-height: 1.2; }
.qt-choice--pill .qt-choice__name { font-weight: 600; }
.qt-var--size .qt-var__options { display: grid; grid-template-columns: repeat(auto-fill, minmax(88px, 1fr)); }
.qt-var--size .qt-choice { justify-content: center; flex-direction: column; gap: 2px; min-height: 56px; padding: 8px; text-align: center; }
.qt-var--size .qt-choice__name { font-family: var(--display); font-size: 18px; letter-spacing: 0.04em; text-transform: uppercase; line-height: 1; }
.qt-var--swatch { --camo-wz93: #6d7642 url("../camo/wz93.webp"); --camo-mc: #c4b48a url("../camo/mc.webp"); --camo-mct: #1c4a30 url("../camo/mct.webp"); --camo-mcb: #1a1a1a url("../camo/mcb.webp"); --camo-m81: #4e6234 url("../camo/m81.webp"); --camo-atacs: #7d8658 url("../camo/atacs.webp"); --camo-atacsix: #8b8e86 url("../camo/atacsix.webp"); --camo-concamo: #6b5340 url("../camo/concamo.webp"); --camo-rg: #4d5738 url("../camo/rg.webp"); --camo-black: #161616; --camo-coyote: #8d6b45 url("../camo/coyote.webp"); --camo-wolf: #8a8d90; --camo-navy: #1c2c4c; --camo-olive: #5c6234; --camo-white: #f3f1ec; --camo-khaki: #c3b091; --camo-green: #3d6b3a; --camo-yellow: #e2c044; --camo-cream: #efe6d2; --camo-orange: #e07a2f; --camo-neutral: #c8c2b6; }
.qt-var--swatch .qt-var__options { display: grid; grid-template-columns: repeat(auto-fill, minmax(112px, 1fr)); width: 100%; }
.qt-var--swatch .qt-choice { flex-direction: column; align-items: stretch; gap: 6px; min-height: 0; padding: 6px; }
.qt-var--swatch .qt-choice__chip { width: 100%; height: 84px; border-radius: 2px; border: 1px solid rgba(0,0,0,0.18); display: block; background-repeat: no-repeat; background-position: center; background-size: cover; }
.qt-var--swatch .qt-choice__name { font-size: 12px; line-height: 1.25; text-align: center; min-height: 2.5em; }
.qt-var--swatch .qt-choice__chip--split { display: grid; grid-template-columns: 1fr 1fr; padding: 0; overflow: hidden; }
.qt-var--swatch .qt-choice__chip--split .qt-swatch { display: block; width: auto; height: 100%; min-height: 84px; border: 0; border-radius: 0; }
.qt-var--swatch .qt-swatch--wz93, .qt-var--swatch .qt-choice__chip.qt-swatch--wz93 { background-color: #6d7642; background-image: url("../camo/wz93.webp"); }
.qt-var--swatch .qt-swatch--mc, .qt-var--swatch .qt-choice__chip.qt-swatch--mc { background-color: #c4b48a; background-image: url("../camo/mc.webp"); }
.qt-var--swatch .qt-swatch--mct, .qt-var--swatch .qt-choice__chip.qt-swatch--mct { background-color: #1c4a30; background-image: url("../camo/mct.webp"); }
.qt-var--swatch .qt-swatch--mcb, .qt-var--swatch .qt-choice__chip.qt-swatch--mcb { background-color: #1a1a1a; background-image: url("../camo/mcb.webp"); }
.qt-var--swatch .qt-swatch--m81, .qt-var--swatch .qt-choice__chip.qt-swatch--m81 { background-color: #4e6234; background-image: url("../camo/m81.webp"); }
.qt-var--swatch .qt-swatch--atacs, .qt-var--swatch .qt-choice__chip.qt-swatch--atacs { background-color: #7d8658; background-image: url("../camo/atacs.webp"); }
.qt-var--swatch .qt-swatch--atacsix, .qt-var--swatch .qt-choice__chip.qt-swatch--atacsix { background-color: #8b8e86; background-image: url("../camo/atacsix.webp"); }
.qt-var--swatch .qt-swatch--concamo, .qt-var--swatch .qt-choice__chip.qt-swatch--concamo { background-color: #6b5340; background-image: url("../camo/concamo.webp"); }
.qt-var--swatch .qt-swatch--rg, .qt-var--swatch .qt-choice__chip.qt-swatch--rg { background-color: #4d5738; background-image: url("../camo/rg.webp"); }
.qt-var--swatch .qt-swatch--black, .qt-var--swatch .qt-choice__chip.qt-swatch--black { background-color: #161616; }
.qt-var--swatch .qt-swatch--coyote, .qt-var--swatch .qt-choice__chip.qt-swatch--coyote { background-color: #8d6b45; background-image: url("../camo/coyote.webp"); }
.qt-var--swatch .qt-swatch--wolf, .qt-var--swatch .qt-choice__chip.qt-swatch--wolf { background-color: #8a8d90; }
.qt-var--swatch .qt-swatch--navy, .qt-var--swatch .qt-choice__chip.qt-swatch--navy { background-color: #1c2c4c; }
.qt-var--swatch .qt-swatch--olive, .qt-var--swatch .qt-choice__chip.qt-swatch--olive { background-color: #5c6234; }
.qt-var--swatch .qt-swatch--white, .qt-var--swatch .qt-choice__chip.qt-swatch--white { background-color: #f3f1ec; }
.qt-var--swatch .qt-swatch--khaki, .qt-var--swatch .qt-choice__chip.qt-swatch--khaki { background-color: #c3b091; }
.qt-var--swatch .qt-swatch--green, .qt-var--swatch .qt-choice__chip.qt-swatch--green { background-color: #3d6b3a; }
.qt-var--swatch .qt-swatch--yellow, .qt-var--swatch .qt-choice__chip.qt-swatch--yellow { background-color: #e2c044; }
.qt-var--swatch .qt-swatch--cream, .qt-var--swatch .qt-choice__chip.qt-swatch--cream { background-color: #efe6d2; }
.qt-var--swatch .qt-swatch--orange, .qt-var--swatch .qt-choice__chip.qt-swatch--orange { background-color: #e07a2f; }
.qt-var--swatch .qt-swatch--neutral, .qt-var--swatch .qt-choice__chip.qt-swatch--neutral { background-color: #c8c2b6; }
.qt-var--swatch .qt-choice__chip[class*="qt-swatch--"],
.qt-var--swatch .qt-swatch[class*="qt-swatch--"] { background-repeat: no-repeat; background-position: center; background-size: cover; }
.qt-native { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0,0,0,0); }
@media (hover: hover) {
  .qt-choice:hover { border-color: var(--black); }
}
.qt-qty { display: inline-flex; align-items: center; border: 1px solid var(--line); margin: 8px 8px 8px 0; }
.qt-qty button { width: 44px; height: 48px; border: 0; background: transparent; }
.qt-qty .qty { width: 56px; height: 48px; border: 0; text-align: center; background: transparent; }
.single_add_to_cart_button:disabled { opacity: 0.45; }
.qt-reset { background: none; border: 0; text-decoration: underline; min-height: 44px; padding: 0; }
.qt-bundle__list { display: grid; gap: 8px; margin: 12px 0; }
.qt-bundle__list li, .qt-bundle__pick { display: flex; justify-content: space-between; gap: 12px; border-bottom: 1px solid var(--line); padding: 8px 0; }
.qt-bundle__save s { color: var(--ink-soft); margin-right: 6px; }
.qt-bundle-offer { border: 1px solid var(--line); padding: 12px; margin-top: 16px; display: grid; gap: 8px; }
.qt-bundle-offer__opt { display: flex; gap: 8px; align-items: center; min-height: 44px; }
.qt-pdp { padding-bottom: 88px; }
.qt-sticky { position: fixed; left: 0; right: 0; bottom: 0; z-index: 30; background: var(--black); color: #fff; padding: 10px 16px calc(10px + env(safe-area-inset-bottom)); }
.qt-sticky[hidden] { display: none; }
.qt-sticky__inner { display: flex; gap: 16px; align-items: center; justify-content: space-between; max-width: var(--container); margin: 0 auto; }
.qt-sticky [data-sticky-name] { margin: 0; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 14px; font-weight: 500; }
.qt-sticky__buy { display: flex; align-items: center; gap: 12px; flex: none; }
.qt-sticky [data-sticky-price] { margin: 0; font-weight: 600; white-space: nowrap; }
.qt-sticky [data-sticky-price] del { opacity: 0.6; margin-right: 6px; }
.qt-sticky [data-sticky-price] ins { text-decoration: none; }
.qt-sticky .qt-btn { background: #fff; color: #111; border-color: #fff; min-width: 168px; }
.woocommerce-tabs { width: 100%; margin: 40px 0 0; }
.woocommerce-tabs ul.tabs { display: flex; gap: 8px; overflow: auto; border-bottom: 1px solid var(--line); margin: 0; padding: 0; }
.woocommerce-tabs ul.tabs li { list-style: none; }
.woocommerce-tabs ul.tabs a { display: inline-flex; min-height: 44px; align-items: center; padding: 0 12px; text-decoration: none; }
.woocommerce-tabs ul.tabs li.active a { border-bottom: 2px solid var(--black); }
.woocommerce-Tabs-panel { padding: 28px 0 8px; max-width: none; text-align: left; }
.woocommerce-Tabs-panel::after { content: ""; display: table; clear: both; }
.woocommerce-Tabs-panel img,
.woocommerce-Tabs-panel iframe,
.woocommerce-Tabs-panel video { display: block; max-width: 100%; height: auto; margin: 16px 0; }
.woocommerce-Tabs-panel table { width: 100%; max-width: 100%; border-collapse: collapse; }
.woocommerce-Tabs-panel p,
.woocommerce-Tabs-panel li,
.woocommerce-Tabs-panel h2,
.woocommerce-Tabs-panel h3 { text-align: left; margin-left: 0; margin-right: 0; }
.woocommerce-Tabs-panel p,
.woocommerce-Tabs-panel li { max-width: 72ch; font-size: 16px; line-height: 1.65; }
.woocommerce-Tabs-panel h2 { font-family: var(--display); font-weight: 600; text-transform: uppercase; font-size: 28px; line-height: 1; letter-spacing: 0.03em; margin: 1.4em 0 0.45em; }
.woocommerce-Tabs-panel h2:first-child { margin-top: 0; }
.woocommerce-Tabs-panel h3 { font-size: 18px; font-weight: 600; margin: 1.2em 0 0.35em; }
.woocommerce-Tabs-panel ul,
.woocommerce-Tabs-panel ol { margin: 0 0 16px; padding-left: 1.2em; }
.woocommerce-Tabs-panel li { margin: 6px 0; }
.woocommerce-Tabs-panel .alignleft,
.woocommerce-Tabs-panel .alignright,
.woocommerce-Tabs-panel .aligncenter { float: none; display: block; margin: 16px 0; }
.woocommerce-product-attributes { width: 100%; border-collapse: collapse; }
.woocommerce-product-attributes th,
.woocommerce-product-attributes td { text-align: left; padding: 12px 0; border-bottom: 1px solid var(--line); vertical-align: top; }
.woocommerce-product-attributes th { width: 42%; color: var(--ink-soft); font-weight: 600; padding-right: 16px; }
.qt-pdp__after { display: block; clear: both; width: min(var(--container), calc(100% - 32px)); margin-inline: auto; }
.woocommerce-tabs .woocommerce-Tabs-panel { display: none; }
.woocommerce-tabs .woocommerce-Tabs-panel:target,
.woocommerce-tabs:not(:has(.woocommerce-Tabs-panel:target)) .woocommerce-Tabs-panel:first-of-type { display: block; }
.qt-reviews { display: grid; gap: 16px; margin-top: 8px; }
.qt-reviews h2, #review_form #reply-title { font-family: var(--display); font-weight: 600; text-transform: uppercase; font-size: 26px; line-height: 1; letter-spacing: 0.04em; margin: 0 0 12px; }
.qt-reviews .commentlist { display: grid; gap: 12px; list-style: none; margin: 0; padding: 0; }
.qt-review { border: 1px solid var(--line); padding: 16px; background: #fff; list-style: none; }
.qt-review__head { display: flex; justify-content: space-between; gap: 8px; }
.qt-review__stars { display: flex; gap: 2px; color: #c8c2b6; }
.qt-review__stars .is-on { color: var(--star); }
.qt-review__stars .is-on svg { fill: currentColor; }
#review_form { background: #fff; border: 1px solid var(--line); padding: 20px; max-width: 640px; }
#review_form form { display: grid; gap: 12px; }
.qt-rate { display: grid; gap: 4px; margin: 0; }
.qt-rate__label { font-size: 13px; font-weight: 600; }
.qt-rate__value { margin: 0; font-size: 13px; color: var(--ink-soft); }
#review_form .comment-form-author,
#review_form .comment-form-email,
#review_form .comment-form-comment,
#review_form .form-submit,
#review_form .comment-form-cookies-consent { margin: 0; }
#review_form label { display: block; font-size: 13px; font-weight: 600; margin-bottom: 6px; }
#review_form .comment-form-cookies-consent { display: flex; align-items: flex-start; gap: 8px; font-size: 14px; }
#review_form .comment-form-cookies-consent label { margin: 0; font-weight: 500; }
#review_form .comment-form-cookies-consent input { width: 18px; height: 18px; min-height: 0; margin-top: 2px; }
.qt-stars { display: flex; flex-direction: row; gap: 0; border: 0; padding: 0; margin: 0; }
.qt-stars__pick { position: relative; width: 44px; height: 44px; display: grid; place-items: center; margin: 0; cursor: pointer; color: #c8c2b6; }
#review_form .qt-stars__pick { display: grid; margin: 0; }
.qt-stars__pick input { position: absolute; inset: 0; width: 100%; height: 100%; min-height: 0; margin: 0; padding: 0; opacity: 0; cursor: pointer; }
.qt-stars__pick svg { width: 26px; height: 26px; pointer-events: none; }
.qt-stars__pick.is-on,
.qt-stars__pick.is-hover { color: var(--star); }
.qt-stars__pick.is-on svg,
.qt-stars__pick.is-hover svg { fill: currentColor; }
.woocommerce #review_form #respond input#submit, .qt-reviews #respond input#submit { display: inline-flex; align-items: center; justify-content: center; width: auto; background: var(--black); color: #fff; border: 0; min-height: 48px; padding: 0 18px; letter-spacing: 0.08em; text-transform: uppercase; font-size: 13px; font-weight: 600; cursor: pointer; }
.qt-reviews textarea, .qt-reviews input[type="text"], .qt-reviews input[type="email"] { width: 100%; min-height: 48px; border: 1px solid var(--line); background: #fff; padding: 10px 12px; }
.qt-reviews textarea { min-height: 140px; }
.related.products, .upsells.products { display: block !important; width: 100% !important; float: none !important; clear: both; margin-top: 48px; padding-top: 28px; border-top: 1px solid var(--line); }
.related.products > h2, .upsells.products > h2 { display: block !important; width: 100% !important; float: none !important; font-family: var(--display); font-weight: 600; text-transform: uppercase; font-size: clamp(28px, 3vw, 40px); line-height: 0.95; margin: 0 0 20px; }
.related ul.products, .upsells ul.products { display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; width: 100% !important; max-width: none; margin: 0; padding: 0; list-style: none; float: none !important; clear: both; }
.related ul.products::before, .related ul.products::after, .upsells ul.products::before, .upsells ul.products::after { content: none; display: none; }
.related ul.products li.product, .upsells ul.products li.product { width: auto !important; max-width: none !important; float: none !important; margin: 0 !important; clear: none !important; }
.qt-flowhead { margin-bottom: 16px; }
.qt-steps { display: flex; gap: 8px; overflow: auto; margin: 12px 0 16px; }
.qt-steps li { min-height: 36px; display: inline-flex; align-items: center; padding: 0 12px; border: 1px solid var(--line); white-space: nowrap; font-size: 13px; letter-spacing: 0.06em; text-transform: uppercase; }
.qt-steps .is-active { background: var(--black); color: #fff; border-color: var(--black); }
.qt-steps .is-done { background: var(--paper-2); }
.qt-steps a { color: inherit; text-decoration: none; }
.qt-shipbar { border: 1px solid var(--line); padding: 12px; margin-bottom: 16px; background: #fff; }
.qt-shipbar.is-reached { background: #f3f6ef; border-color: #c9d3be; }
.qt-shipbar__track { height: 6px; background: var(--paper-2); margin-top: 8px; }
.qt-shipbar__track span { display: block; height: 100%; background: var(--olive); }
.qt-cart__grid, .qt-checkout__grid { display: grid; gap: 20px; }
.qt-line { display: grid; grid-template-columns: 88px minmax(0, 1fr); gap: 12px; padding: 12px; margin-bottom: 8px; background: #fff; border: 1px solid var(--line); }
.qt-line__thumb { display: block; background: var(--paper-2); }
.qt-line__thumb img { width: 88px; height: 110px; object-fit: contain; background: #fff; }
.qt-line__title { font-weight: 600; text-decoration: none; line-height: 1.3; }
.qt-line__body { min-width: 0; }
.qt-line dl.variation, .qt-line .wc-item-meta { margin: 6px 0 0; font-size: 13px; color: var(--ink-soft); }
.qt-line dl.variation dt, .qt-line dl.variation dd { display: inline; margin: 0; }
.qt-line dl.variation dd { margin-right: 8px; }
.qt-line__price { grid-column: 2; font-weight: 600; font-variant-numeric: tabular-nums; }
.qt-line__controls { display: flex; gap: 12px; align-items: center; margin-top: 8px; flex-wrap: wrap; }
.qt-cart .quantity { display: inline-flex; align-items: center; border: 1px solid var(--line); background: #fff; }
.qt-cart .quantity .qty { width: 52px; min-height: 44px; border: 0; background: transparent; text-align: center; padding: 0; font-size: 16px; }
.qt-cart .quantity .qty::-webkit-outer-spin-button,
.qt-cart .quantity .qty::-webkit-inner-spin-button { appearance: none; margin: 0; }
.qt-line__remove { min-height: 44px; display: inline-flex; align-items: center; font-size: 13px; text-decoration: underline; text-underline-offset: 3px; }
.qt-summarybox, .qt-account .qt-card, .qt-login .qt-card, .qt-addresses .qt-card { background: #fff; border: 1px solid var(--line); padding: 16px; }
.qt-summarybox h2 { font-family: var(--display); font-size: 22px; font-weight: 600; letter-spacing: 0.06em; text-transform: uppercase; margin: 0 0 12px; }
.qt-summarybox > p { display: flex; justify-content: space-between; align-items: baseline; gap: 12px; margin: 8px 0; }
.qt-summarybox strong { font-variant-numeric: tabular-nums; white-space: nowrap; }
.qt-summarybox > p.is-total { font-size: 18px; border-top: 1px solid var(--line); padding-top: 10px; }
.qt-summarybox .qt-btn, #place_order, .qt-checkout #place_order { width: 100%; margin-top: 12px; }
.qt-coupon__box { display: none; gap: 8px; margin-top: 8px; }
.qt-coupon.is-open .qt-coupon__box { display: flex; flex-wrap: wrap; }
.qt-coupon__box input[type="text"] { flex: 1 1 140px; min-height: 44px; border: 1px solid var(--line); background: #fff; padding: 0 12px; }
.qt-checkout .qt-card { display: block; background: #fff; border: 1px solid var(--line); padding: 16px; margin-bottom: 12px; }
.qt-checkout .qt-card h2 { font-family: var(--display); font-size: 22px; font-weight: 600; letter-spacing: 0.06em; text-transform: uppercase; margin: 0 0 12px; }
.qt-coupon__toggle { background: none; border: 0; text-decoration: underline; min-height: 44px; padding: 0; }
.qt-trustlist { margin-top: 16px; display: grid; gap: 6px; color: var(--ink-soft); font-size: 14px; }
.qt-checkout__form { display: block; }
.qt-checkout .col2-set, .qt-checkout .col-1, .qt-checkout .col-2 { width: auto; float: none; }
.qt-checkout .woocommerce-shipping-fields h2,
.qt-checkout .woocommerce-billing-fields > h2 {
  font-family: var(--display); font-size: 22px; font-weight: 600; letter-spacing: 0.06em; text-transform: uppercase; margin: 0 0 16px;
}
.qt-checkout .form-row { margin: 0 0 12px; float: none; width: auto; clear: none; }
.woocommerce-shipping-fields__field-wrapper,
.woocommerce-billing-fields__field-wrapper { display: grid; grid-template-columns: 1fr; gap: 0 12px; }
.woocommerce-billing-fields__field-wrapper { display: none; }
.woocommerce-address-fields__field-wrapper,
.woocommerce-EditAccountForm,
.qt-login form { display: grid; grid-template-columns: 1fr 1fr; gap: 0 12px; }
.qt-checkout form.checkout .form-row-first,
.qt-checkout form.checkout .form-row-last,
.qt-checkout form.checkout .form-row-wide {
  float: none; clear: none; width: 100%; margin-left: 0; margin-right: 0;
}
.qt-checkout .form-row-wide,
.form-row-wide { grid-column: 1 / -1; }
.qt-checkout .form-row label { display: block; font-size: 13px; font-weight: 600; margin-bottom: 6px; }
.qt-checkout .form-row .description { display: block; margin-top: 4px; color: var(--ink-soft); font-size: 13px; font-weight: 400; }
.qt-checkout .select2-container { width: 100% !important; }
.qt-checkout .form-row input:focus,
.qt-checkout .form-row select:focus,
.qt-checkout .form-row textarea:focus { outline: 2px solid #111; outline-offset: 1px; border-color: #111; }
.form-row input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),
.form-row select, .form-row textarea, .select2-container .select2-selection--single {
  width: 100%; min-height: 52px; border: 1px solid var(--line); background: #fff; padding: 0 12px;
}
.qt-checkout input[type="checkbox"],
.qt-checkout input[type="radio"],
.qt-cart input[type="checkbox"],
.qt-cart input[type="radio"] {
  width: 18px !important; min-width: 18px; height: 18px; min-height: 18px !important;
  margin: 3px 0 0; padding: 0 !important; accent-color: #111; flex: 0 0 18px;
}
.qt-checkout .woocommerce-form__label-for-checkbox,
.qt-checkout .woocommerce-terms-and-conditions-wrapper .form-row label {
  display: flex; align-items: flex-start; gap: 10px; font-size: 14px; font-weight: 500; line-height: 1.45; cursor: pointer;
}
.form-row textarea { min-height: 96px; padding: 12px; }
.select2-container .select2-selection--single { display: flex; align-items: center; }
.qt-skip-field { display: none !important; }
.woocommerce-billing-fields.is-open .woocommerce-billing-fields__field-wrapper,
.woocommerce-billing-fields:has(#qt_need_invoice:checked) .woocommerce-billing-fields__field-wrapper { display: grid; }
.qt-nip-status { grid-column: 1 / -1; margin: -4px 0 12px; font-size: 13px; color: var(--ink-soft); }
.qt-nip-status.is-ok { color: var(--olive); }
.qt-nip-status.is-bad { color: #9a3412; }
.qt-invoice-toggle { margin: 8px 0 16px; clear: both; }
.qt-checkout .qt-invoice-toggle__label {
  display: flex !important; align-items: center; gap: 16px; width: 100%; box-sizing: border-box;
  margin: 0; padding: 16px 18px; border: 1px solid var(--line); background: #fff; cursor: pointer;
}
.qt-checkout .qt-invoice-toggle__label:hover { border-color: #111; }
.qt-checkout .qt-invoice-toggle__label:has(input:checked) { border-color: #111; background: var(--paper); }
.qt-invoice-toggle__text { display: grid; gap: 3px; min-width: 0; }
.qt-invoice-toggle__text strong {
  font-family: var(--display); font-size: 22px; font-weight: 600; letter-spacing: 0.04em; text-transform: uppercase; line-height: 1.1;
}
.qt-invoice-toggle__text em { display: block; font-style: normal; font-size: 14px; font-weight: 400; line-height: 1.4; color: var(--ink-soft); }
.qt-checkout .qt-invoice-toggle__label input[type="checkbox"] {
  appearance: none; -webkit-appearance: none;
  width: 22px !important; height: 22px !important; min-width: 22px; min-height: 22px !important; max-width: 22px;
  margin: 0; padding: 0 !important; flex: 0 0 22px; border: 2px solid #111; border-radius: 2px;
  background: #fff center / 14px 14px no-repeat; cursor: pointer;
}
.qt-checkout .qt-invoice-toggle__label input[type="checkbox"]:checked {
  background-color: #111;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5 10 17.5 19 7'/%3E%3C/svg%3E");
}
.qt-checkout .qt-invoice-toggle__label input[type="checkbox"]:focus-visible { outline: 2px solid #111; outline-offset: 2px; }
.qt-ship-method { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; border: 1px solid var(--line); padding: 10px 12px; margin: 0 0 8px; min-height: 52px; }
.qt-ship-method:has(input:checked) { border-color: var(--black); }
.qt-ship-method .polkurier-shippment-container, .qt-ship-method .easypack-modal-button, .qt-ship-method #blpaczka-map { flex-basis: 100%; display: none; }
.qt-ship-method:has(input:checked) .polkurier-shippment-container,
.qt-ship-method:has(input[type="hidden"]) .polkurier-shippment-container,
.qt-ship-method:has(input:checked) .easypack-modal-button,
.qt-ship-method:has(input[type="hidden"]) .easypack-modal-button { display: flex; }
#polkurier-shipping--show-map { min-height: 44px; background: var(--black); color: #fff; border: 0; padding: 0 14px; letter-spacing: 0.06em; text-transform: uppercase; }
.polkurier-shippment-container.hidden, #polkurier-shipping-label-container.hidden { display: none; }
.qt-shipping-reloc-source { position: absolute; width: 1px; height: 1px; overflow: hidden; }
.qt-checkout #place_order {
  background: #111 !important; color: #fff !important; border: 1px solid #111 !important; border-radius: 0 !important;
  min-height: 52px; font-size: 14px; font-weight: 600; letter-spacing: 0.08em; text-transform: uppercase; cursor: pointer;
}
.qt-checkout #place_order:hover { background: #2a2a2a !important; }
.qt-checkout table.shop_table { width: 100%; border: 0 !important; border-collapse: collapse; background: transparent !important; margin: 0; }
.qt-checkout table.shop_table th,
.qt-checkout table.shop_table td {
  background: transparent !important; color: #111 !important; border: 0 !important;
  border-bottom: 1px solid var(--line) !important; padding: 10px 0 !important; text-align: left; vertical-align: top; font-weight: 500;
}
.qt-checkout table.shop_table .product-total,
.qt-checkout table.shop_table tfoot td { text-align: right; font-weight: 600; white-space: nowrap; }
.qt-checkout table.shop_table .order-total th,
.qt-checkout table.shop_table .order-total td { font-size: 18px; font-weight: 700; padding-top: 14px !important; }
.qt-checkout table.shop_table dl, .qt-checkout table.shop_table .variation { margin: 4px 0 0; color: var(--ink-soft); font-size: 13px; font-weight: 500; }
.woocommerce-checkout-payment,
#payment, #payment .payment_methods, #payment ul.wc_payment_methods { background: transparent !important; border: 0; padding: 0; }
.woocommerce-checkout-payment ul { list-style: none; padding: 0; margin: 0; }
.woocommerce-checkout-payment li { border: 1px solid var(--line); padding: 12px; margin-bottom: 8px; background: #fff !important; color: #111; }
.woocommerce-checkout-payment li:has(input:checked) { border-color: var(--black); }
.woocommerce-checkout-payment label { display: flex; align-items: center; gap: 10px; min-height: 44px; cursor: pointer; }
#payment div.payment_box, .payment_box { background: var(--paper) !important; color: #111 !important; border-radius: 0; margin: 8px 0 0; }
#payment div.payment_box::before { display: none; }
.woocommerce-checkout-payment img { max-height: 28px; width: auto; }
.qt-paylogos { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 12px; }
.qt-paylogos li { border: 1px solid var(--line); padding: 6px 10px; font-size: 12px; letter-spacing: 0.06em; text-transform: uppercase; }
.qt-paymethods { width: 100%; border-collapse: collapse; }
.qt-paymethods th, .qt-paymethods td { text-align: left; border-bottom: 1px solid var(--line); padding: 8px; }
.qt-account { display: grid; gap: 20px; padding-block: 28px; }
.qt-account__nav a { display: flex; min-height: 44px; align-items: center; text-decoration: none; padding: 0 12px; border-bottom: 1px solid var(--line); }
.qt-account__nav .is-active a { background: var(--black); color: #fff; }
.qt-stats, .qt-orders, .qt-addresses, .qt-login { display: grid; gap: 12px; }
.qt-order { border: 1px solid var(--line); padding: 12px; background: #fff; display: grid; gap: 8px; }
.qt-status { display: inline-flex; align-items: center; min-height: 28px; padding: 0 8px; background: var(--paper-2); font-size: 12px; letter-spacing: 0.06em; text-transform: uppercase; }
.qt-status--completed, .qt-status--processing { background: #e7efe0; }
.qt-status--cancelled, .qt-status--failed { background: #f8e4e4; }
.woocommerce-notices-wrapper, .woocommerce-message, .woocommerce-error, .woocommerce-info { max-width: var(--container); margin: 12px auto; padding: 12px 16px; }
.woocommerce-error { background: #f8e4e4; }
.woocommerce-message { background: #e7efe0; }
.qt-muted { color: var(--ink-soft); }
.star-rating { color: var(--star); }
@media (min-width: 640px) {
  #review_form form { grid-template-columns: 1fr 1fr; }
  #review_form .qt-rate,
  #review_form .comment-form-comment,
  #review_form .qt-stars,
  #review_form .form-submit,
  #review_form .comment-form-cookies-consent { grid-column: 1 / -1; }
}
@media (min-width: 640px) {
  .woocommerce-shipping-fields__field-wrapper,
  .woocommerce-billing-fields.is-open .woocommerce-billing-fields__field-wrapper,
  .woocommerce-billing-fields:has(#qt_need_invoice:checked) .woocommerce-billing-fields__field-wrapper {
    grid-template-columns: 1fr 1fr;
  }
}
@media (max-width: 699px) {
  .qt-pdp-perks { grid-template-columns: 1fr; gap: 10px; }
  .qt-lightbox { padding: 56px 12px 40px; }
  .qt-toolbar__sort, .woocommerce-ordering, .qt-toolbar select.orderby { width: 100%; }
  .qt-sticky [data-sticky-name] { display: none; }
  .qt-sticky__buy { width: 100%; justify-content: space-between; }
  .qt-sticky .qt-btn { min-width: 0; }
}
@media (hover: hover) {
  .qt-filters__cats a:hover { background: var(--paper-2); }
  .qt-filters__cats a.is-active:hover { background: var(--black); color: #fff; }
  .qt-filterchip:hover { border-color: var(--black); }
  .woocommerce-pagination a:hover { border-color: var(--black); }
  .qt-sticky .qt-btn:hover { background: transparent; color: #fff; border-color: #fff; }
  .qt-gallery__thumbs button:hover { border-color: var(--black); }
  .qt-checkout #place_order:hover { background: #2a2a2a !important; }
}
@media (min-width: 980px) {
  .qt-filters { display: grid; position: sticky; top: calc(var(--header-h) + var(--announce-h) + 16px); max-height: calc(100svh - var(--header-h) - var(--announce-h) - 32px); overflow: auto; }
  .qt-filters-toggle { display: none; }
  .qt-shop__layout { grid-template-columns: 300px minmax(0, 1fr); align-items: start; gap: 28px; }
  .qt-shop .products { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .related ul.products, .upsells ul.products { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .qt-pdp__grid { grid-template-columns: 1.15fr 0.85fr; align-items: start; }
  .qt-pdp__summary { position: sticky; top: calc(var(--header-h) + var(--announce-h) + 16px); }
  .qt-cart__grid, .qt-checkout__grid { grid-template-columns: 1.5fr 0.8fr; align-items: start; }
  .qt-cart__aside, .qt-checkout__aside { position: sticky; top: calc(var(--header-h) + var(--announce-h) + 12px); }
  .qt-summary--mobile { display: none; }
  .qt-account { grid-template-columns: 220px 1fr; }
  .qt-login, .qt-addresses { grid-template-columns: 1fr 1fr; }
  .qt-line { grid-template-columns: 96px 1fr auto; }
  .qt-line__price { grid-column: auto; align-self: center; }
}
@media (max-width: 979px) {
  .qt-checkout__aside .qt-summarybox { display: none; }
}
.qt-alert { margin-top: 16px; padding: 16px; border: 1px solid var(--line); background: #fff; display: grid; gap: 12px; }
.qt-alert[hidden] { display: none; }
.qt-alert__lead { margin: 0; font-weight: 600; }
.qt-alert__form { display: grid; gap: 8px; }
.qt-alert__field { display: grid; gap: 6px; font-size: 14px; }
.qt-alert__field input { width: 100%; min-height: 48px; border: 1px solid var(--line); background: #fff; padding: 0 12px; font: inherit; }
.qt-alert__form .qt-btn { width: 100%; }
.qt-alert__note, .qt-alert__msg { margin: 0; color: var(--ink-soft); font-size: 13px; }
.qt-alert.is-ok .qt-alert__msg { color: var(--olive, #3f6212); }
.qt-alert__hp { position: absolute; left: -9999px; }
