/* =========================================================================
   ta-product.css · Widok 14 · Karta produktu (pojedynczy produkt WooCommerce)
   Markup: template-parts/ta-product.php (wzorzec 1:1: podglad/index.html).
   Ładowanie: ta-fonts → ta-tokens → ta-product-card → ta-product. Progi: telefon < 700 · tablet 700–1199 · desktop ≥ 1200.
   Oznaczenia sekcji (A–F, C1–C8) jak w SPEC-frontend.md.
   Makieta liczy część obramowanych elementów bez box-sizing (ilość 52 + ramka = 54, kółko akordeonu 30/28 + ramka,
   kółko „odtwórz” 88/60/56 + ramka, „Napisz opinię” na telefonie 48 + ramka). Tu te wymiary są wpisane jako całość.
   ========================================================================= */
.ta-pdp { container: ta-pdp / inline-size; width: 100%; font-family: var(--ta-font); color: var(--ta-ink); -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
.ta-pdp *, .ta-pdp *::before, .ta-pdp *::after { box-sizing: border-box; }
.ta-pdp p, .ta-pdp h1, .ta-pdp h2, .ta-pdp dl, .ta-pdp dd, .ta-pdp ul, .ta-pdp li, .ta-pdp figure { margin: 0; }
.ta-pdp ul { padding: 0; list-style: none; }
.ta-pdp a { color: inherit; text-decoration: none; }
.ta-pdp strong { font-weight: 600; }
.ta-pdp :focus-visible { outline: 2px solid var(--ta-green); outline-offset: 2px; }
.ta-pdp :is(.ta-pdp__zoom, .ta-pdp__arrow, .ta-pdp__thumb, .ta-pdp__chip, .ta-pdp__tile, .ta-pdp__add, .ta-pdp__fav, .ta-pdp__acc-btn, .ta-pdp__vid, .ta-pdp__dialog-close, .ta-pdp__send, .ta-pdp__lb-btn, .ta-pdp__lb-thumb) {
  margin: 0; min-height: 0; max-width: none; padding: 0; border: 0; border-radius: 0; background: none; box-shadow: none; color: inherit;
  font: inherit; letter-spacing: normal; text-transform: none; text-shadow: none; vertical-align: middle; cursor: pointer;
}
.ta-pdp .ta-pdp__sr { position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; }
.ta-pdp .ta-pdp__i { display: block; flex: none; fill: none; stroke: currentColor; stroke-linecap: round; stroke-linejoin: round; }
.ta-pdp .ta-pdp__stars { display: inline-flex; gap: 1px; }
.ta-pdp .ta-pdp__stars svg { display: block; width: 13px; height: 13px; fill: var(--ta-star); }
.ta-pdp .ta-pdp__stars .ta-pdp__star-off { fill: var(--ta-line); }
.ta-pdp .ta-pdp__h2 { font: 300 24px/1.2 var(--ta-font); color: var(--ta-ink); }

/* Komunikaty WooCommerce */
.ta-pdp .ta-pdp__notices { padding: 16px 16px 0; }
.ta-pdp .woocommerce-notices-wrapper { display: flex; flex-direction: column; gap: 10px; }
.ta-pdp .woocommerce-notices-wrapper:empty { display: none; }
.ta-pdp .ta-pdp__notices :is(.woocommerce-error, .woocommerce-message, .woocommerce-info) {
  display: block; margin: 0; padding: 14px 18px; list-style: none; border: 1px solid var(--ta-line); border-radius: var(--ta-radius-sm);
  background: var(--ta-cream); box-shadow: none; font: 500 14px/1.5 var(--ta-font); color: var(--ta-ink); text-align: left;
}
.ta-pdp .ta-pdp__notices .woocommerce-error { color: var(--ta-error); }
.ta-pdp .ta-pdp__notices .woocommerce-message { color: var(--ta-green); }
.ta-pdp .ta-pdp__notices :is(.woocommerce-error, .woocommerce-message, .woocommerce-info)::before { content: none; }
.ta-pdp .ta-pdp__notices a { color: inherit; text-decoration: underline; text-underline-offset: 3px; }
.ta-pdp .ta-pdp__notices .button { float: none; margin: 0 0 0 12px; padding: 0; border: 0; background: none; font: inherit; letter-spacing: 0; text-transform: none; text-decoration: underline; color: inherit; }
.ta-pdp .ta-pdp__notices .message-container { max-width: none; margin: 0; padding: 0; text-align: left; color: inherit; }
.ta-pdp .ta-pdp__notices .message-icon { display: none; }

/* A. Ścieżka */
.ta-pdp .ta-pdp__crumbs { background: var(--ta-cream); }
.ta-pdp .ta-pdp__crumbs-in { display: flex; flex-wrap: wrap; align-items: center; gap: 2px 8px; padding: 12px 16px; font: 400 12.5px/1.6 var(--ta-font); color: var(--ta-ink-muted); }
.ta-pdp .ta-pdp__crumbs a { color: var(--ta-ink-muted); transition: color .2s ease; }
.ta-pdp .ta-pdp__crumbs a:hover { color: var(--ta-rust); }
.ta-pdp .ta-pdp__sep { color: var(--ta-dashed); }
.ta-pdp .ta-pdp__crumbs [aria-current] { color: var(--ta-ink); }

/* B. Galeria */
.ta-pdp .ta-pdp__gallery { padding: 12px 16px 0; }
.ta-pdp .ta-pdp__stage { position: relative; aspect-ratio: 4 / 5; overflow: hidden; border-radius: var(--ta-radius-md); background: var(--ta-thumb); }
.ta-pdp .ta-pdp__slides { position: absolute; inset: 0; display: flex; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; overscroll-behavior-x: contain; }
.ta-pdp .ta-pdp__slides::-webkit-scrollbar { display: none; }
.ta-pdp .ta-pdp__slide { flex: 0 0 100%; height: 100%; overflow: hidden; scroll-snap-align: start; }
.ta-pdp .ta-pdp__img { display: block; width: 100%; max-width: none; height: 100%; object-fit: cover; cursor: zoom-in; }
.ta-pdp .ta-pdp__zoom, .ta-pdp .ta-pdp__arrow {
  position: absolute; z-index: 2; display: flex; align-items: center; justify-content: center; width: 44px; height: 44px; border-radius: 50%;
  background: color-mix(in srgb, var(--ta-white) 92%, transparent); box-shadow: 0 2px 10px color-mix(in srgb, var(--ta-ink) 18%, transparent); color: var(--ta-ink);
}
.ta-pdp .ta-pdp__zoom { top: 10px; right: 10px; }
.ta-pdp .ta-pdp__zoom svg { width: 20px; height: 20px; stroke-width: 1.7; }
.ta-pdp .ta-pdp__arrow { top: 50%; transform: translateY(-50%); transition: opacity .2s ease; }
.ta-pdp .ta-pdp__arrow svg { width: 18px; height: 18px; stroke-width: 1.7; }
.ta-pdp .ta-pdp__arrow--prev { left: 10px; }
.ta-pdp .ta-pdp__arrow--next { right: 10px; }
.ta-pdp .ta-pdp__arrow:disabled { opacity: .35; cursor: default; }
.ta-pdp .ta-pdp__dots { position: absolute; z-index: 2; left: 0; right: 0; bottom: 16px; display: flex; justify-content: center; gap: 6px; pointer-events: none; }
.ta-pdp .ta-pdp__dot { width: 6px; height: 6px; border-radius: 3px; background: color-mix(in srgb, var(--ta-white) 55%, transparent); box-shadow: 0 0 0 1px color-mix(in srgb, var(--ta-ink) 15%, transparent); transition: width .25s ease, background-color .25s ease; }
.ta-pdp .ta-pdp__dot--on { width: 18px; background: var(--ta-white); }
.ta-pdp .ta-pdp__thumbs { display: flex; gap: 8px; margin-top: 10px; padding: 2px 2px 12px; overflow-x: auto; scrollbar-width: none; }
.ta-pdp .ta-pdp__thumbs::-webkit-scrollbar { display: none; }
.ta-pdp .ta-pdp__thumb { flex: 0 0 64px; width: 64px; height: 64px; overflow: hidden; border-radius: var(--ta-radius-sm); background: var(--ta-thumb); box-shadow: 0 0 0 2px transparent; opacity: .75; transition: opacity .25s ease, box-shadow .25s ease, outline-color .25s ease; }
.ta-pdp .ta-pdp__thumb[aria-current="true"] { box-shadow: 0 0 0 2px var(--ta-green); opacity: 1; }
.ta-pdp .ta-pdp__thumb img { display: block; width: 100%; max-width: none; height: 100%; object-fit: cover; }

/* C. Panel zakupu */
.ta-pdp .ta-pdp__panel { display: flex; flex-direction: column; gap: 22px; padding: 22px 16px 0; }
.ta-pdp .ta-pdp__form { display: flex; flex-direction: column; gap: 22px; margin: 0; }
/* C1 · telefon i tablet: tytuł i ocena w jednym bloku (ocena inline-flex, linia 16/24 jak w makiecie) */
.ta-pdp .ta-pdp__title { font: 400 16px/24px var(--ta-font); }
.ta-pdp .ta-pdp__h1 { font: 400 24px/1.25 var(--ta-font); letter-spacing: 0; color: var(--ta-ink); text-wrap: pretty; }
.ta-pdp .ta-pdp__rating { display: inline-flex; align-items: center; gap: 8px; margin-top: 10px; font: 500 13px/19.5px var(--ta-font); color: var(--ta-ink); transition: color .2s ease; }
.ta-pdp .ta-pdp__rating:hover { color: var(--ta-rust); }
/* C2 */
.ta-pdp .ta-pdp__price { display: flex; flex-wrap: wrap; align-items: baseline; gap: 6px 12px; }
.ta-pdp .ta-pdp__price .amount { margin: 0; opacity: 1; font-weight: inherit; color: inherit; white-space: nowrap; }
.ta-pdp .ta-pdp__now { font: 600 28px/42px var(--ta-font); color: var(--ta-rust); }
.ta-pdp .ta-pdp__was { font: 400 16px/24px var(--ta-font); color: var(--ta-ink-faint); text-decoration: line-through; }
.ta-pdp .ta-pdp__off { align-self: center; padding: 4px 8px; border-radius: var(--ta-radius-sm); background: var(--ta-rust); font: 600 12px/18px var(--ta-font); color: var(--ta-white); }
.ta-pdp .ta-pdp__lowest { flex-basis: 100%; font: 400 12.5px/18.75px var(--ta-font); color: var(--ta-ink-muted); }
/* C3 */
.ta-pdp .ta-pdp__selects, .ta-pdp .reset_variations { display: none; }
.ta-pdp .ta-pdp__group { display: flex; flex-direction: column; gap: 10px; }
.ta-pdp .ta-pdp__label { font: 400 14px/21px var(--ta-font); color: var(--ta-ink-muted); }
.ta-pdp .ta-pdp__label strong { color: var(--ta-ink); }
.ta-pdp .ta-pdp__chips { display: flex; flex-wrap: wrap; gap: 8px; }
.ta-pdp .ta-pdp__chip { height: auto; min-height: 44px; max-width: 100%; padding: 11px 14px; border: 1px solid var(--ta-line); border-radius: var(--ta-radius-sm); font: 500 13px/19.5px var(--ta-font); color: var(--ta-ink); white-space: normal; overflow-wrap: anywhere; transition: box-shadow .2s ease, background-color .2s ease; }
.ta-pdp .ta-pdp__tiles { display: grid; grid-template-columns: minmax(0, 1fr); gap: 8px; }
.ta-pdp .ta-pdp__tile { display: flex; align-items: center; gap: 12px; width: 100%; padding: 8px; border: 1px solid var(--ta-line); border-radius: var(--ta-radius-sm); text-align: left; transition: box-shadow .2s ease, background-color .2s ease; }
.ta-pdp .ta-pdp__tile img { display: block; flex: none; width: 48px; max-width: none; height: 48px; border-radius: 3px; object-fit: cover; }
.ta-pdp .ta-pdp__tile-txt { display: flex; flex-direction: column; gap: 2px; }
.ta-pdp .ta-pdp__tile-name { font: 500 14px/21px var(--ta-font); color: var(--ta-ink); }
.ta-pdp .ta-pdp__tile-note { font: 400 12px/18px var(--ta-font); color: var(--ta-ink-muted); }
.ta-pdp :is(.ta-pdp__chip, .ta-pdp__tile)[aria-pressed="true"] { background: var(--ta-white); box-shadow: inset 0 0 0 2px var(--ta-green); }
.ta-pdp :is(.ta-pdp__chip, .ta-pdp__tile):disabled { opacity: .4; text-decoration: line-through; cursor: not-allowed; }
/* C4 */
.ta-pdp .ta-pdp__specs { display: grid; grid-template-columns: 112px minmax(0, 1fr); gap: 10px 16px; font: 400 13.5px/1.5 var(--ta-font); }
.ta-pdp .ta-pdp__specs dt { color: var(--ta-ink-muted); font-weight: 400; }
.ta-pdp .ta-pdp__specs dd { font-weight: 500; color: var(--ta-ink); }
/* C5 */
.ta-pdp .ta-pdp__time { display: flex; gap: 10px; padding: 14px; border-radius: var(--ta-radius-sm); background: var(--ta-sand); font: 400 13.5px/1.55 var(--ta-font); color: var(--ta-ink); }
.ta-pdp .ta-pdp__time svg { width: 18px; height: 18px; margin-top: 1px; stroke: var(--ta-green); stroke-width: 1.8; }
.ta-pdp .ta-pdp__time[data-icon="clock"] .ta-pdp__i--check, .ta-pdp .ta-pdp__time[data-icon="check"] .ta-pdp__i--clock { display: none; }
/* C6 */
.ta-pdp .ta-pdp__buywrap { display: flex; flex-direction: column; }
.ta-pdp .single_variation :is(.woocommerce-variation-price, .stock.in-stock, .woocommerce-variation-description:empty) { display: none; }
.ta-pdp .single_variation p { margin: 0 0 12px; font: 500 14px/1.5 var(--ta-font); color: var(--ta-error); }
.ta-pdp .single_variation .woocommerce-variation-description p { color: var(--ta-ink-muted); font-weight: 400; }
.ta-pdp .ta-pdp__buy { display: flex; flex-wrap: wrap; gap: 10px; }
.ta-pdp .ta-pdp__qty { display: inline-flex; flex: none; align-items: center; height: 54px; border: 1px solid var(--ta-border); border-radius: var(--ta-radius-sm); background: var(--ta-white); }
.ta-pdp .ta-pdp__qty button { width: 44px; height: 50px; min-height: 0; margin: 0; padding: 0; border: 0; border-radius: 0; background: none; box-shadow: none; font: 400 18px/27px var(--ta-font); letter-spacing: 0; text-transform: none; color: var(--ta-ink); cursor: pointer; }
.ta-pdp .ta-pdp__qty input { width: 28px; max-width: none; height: 50px; margin: 0; padding: 0; border: 0; border-radius: 0; background: none; box-shadow: none; font: 500 15px/22.5px var(--ta-font); color: var(--ta-ink); text-align: center; appearance: textfield; -moz-appearance: textfield; }
.ta-pdp .ta-pdp__qty input::-webkit-inner-spin-button, .ta-pdp .ta-pdp__qty input::-webkit-outer-spin-button { margin: 0; -webkit-appearance: none; }
.ta-pdp .ta-pdp__add { order: 1; display: inline-flex; flex: 1 1 240px; align-items: center; justify-content: center; height: 52px; padding: 0 32px; border-radius: var(--ta-radius-sm); background: var(--ta-rust); font: 500 13px/19.5px var(--ta-font); letter-spacing: .1em; text-transform: uppercase; color: var(--ta-white); transition: background-color .25s ease, opacity .25s ease; }
.ta-pdp .ta-pdp__add:hover { background: var(--ta-rust-hover); color: var(--ta-white); }
.ta-pdp .ta-pdp__add.disabled { opacity: .5; cursor: not-allowed; }
.ta-pdp .ta-pdp__fav { display: flex; flex: none; align-items: center; justify-content: center; width: 52px; height: 52px; border: 1px solid var(--ta-border); border-radius: var(--ta-radius-sm); background: var(--ta-white); color: var(--ta-ink); transition: transform .35s cubic-bezier(.34, 1.8, .5, 1); }
.ta-pdp .ta-pdp__fav svg { width: 20px; height: 20px; fill: none; stroke: currentColor; stroke-width: 1.7; transition: fill .25s ease, stroke .25s ease; }
.ta-pdp .ta-pdp__fav[aria-pressed="true"] svg { fill: var(--ta-rust); stroke: var(--ta-rust); }
/* C7 */
.ta-pdp .ta-pdp__trust { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
.ta-pdp .ta-pdp__trust li { display: flex; flex-direction: column; align-items: center; gap: 8px; padding: 14px 6px; border-radius: var(--ta-radius-sm); background: var(--ta-white); text-align: center; font: 500 12px/1.35 var(--ta-font); color: var(--ta-ink); }
.ta-pdp .ta-pdp__trust img { display: block; width: auto; max-width: none; height: 36px; }
/* C8 */
.ta-pdp .ta-pdp__acc { border-top: 1px solid var(--ta-line); }
.ta-pdp .ta-pdp__acc-item { border-bottom: 1px solid var(--ta-line); }
.ta-pdp .ta-pdp__acc-h { margin: 0; padding: 0; font: inherit; }
.ta-pdp .ta-pdp__acc-btn { display: flex; align-items: center; justify-content: space-between; gap: 16px; width: 100%; min-height: 56px; padding: 12px 0; text-align: left; font: 500 15px/22.5px var(--ta-font); color: var(--ta-ink); }
.ta-pdp .ta-pdp__acc-ico { display: flex; flex: none; align-items: center; justify-content: center; width: 30px; height: 30px; border: 1px solid var(--ta-line); border-radius: 50%; font: 300 18px/1 var(--ta-font); color: var(--ta-green); transition: transform .3s ease, background-color .3s ease, color .3s ease; }
.ta-pdp .ta-pdp__acc-item--open .ta-pdp__acc-ico { transform: rotate(45deg); }
.ta-pdp .ta-pdp__acc-panel { display: grid; grid-template-rows: 0fr; transition: grid-template-rows .35s ease; }
.ta-pdp .ta-pdp__acc-item--open .ta-pdp__acc-panel { grid-template-rows: 1fr; }
.ta-pdp .ta-pdp__acc-in { min-height: 0; overflow: hidden; visibility: hidden; transition: visibility 0s .35s; }
.ta-pdp .ta-pdp__acc-item--open .ta-pdp__acc-in { visibility: visible; transition-delay: 0s; }
.ta-pdp .ta-pdp__acc-txt { padding: 0 0 18px; font: 400 14px/1.7 var(--ta-font); color: var(--ta-ink-muted); }
.ta-pdp .ta-pdp__acc-txt p + p, .ta-pdp .ta-pdp__acc-txt p + ul, .ta-pdp .ta-pdp__acc-txt ul + p { margin-top: 12px; }
.ta-pdp .ta-pdp__acc-txt ul { padding-left: 18px; list-style: disc; }
.ta-pdp .ta-pdp__acc-txt :is(h2, h3, h4) { margin: 16px 0 6px; font: 500 15px/1.5 var(--ta-font); color: var(--ta-ink); }
.ta-pdp .ta-pdp__acc-txt table { width: 100%; margin: 0; border: 0; border-collapse: collapse; }
.ta-pdp .ta-pdp__acc-txt :is(th, td) { padding: 6px 0; border: 0; border-bottom: 1px solid var(--ta-line); font: inherit; line-height: 1.6; text-align: left; vertical-align: top; }
.ta-pdp .ta-pdp__acc-txt th { width: 40%; padding-right: 16px; font-weight: 500; color: var(--ta-ink); }
.ta-pdp .ta-pdp__acc-txt td p { margin: 0; }
/* Regalia: krótki opis z Presty (materiał, wymiary) nad tabelą parametrów w „Wymiary i materiał”. */
.ta-pdp .ta-pdp__short { margin: 0 0 14px; }
.ta-pdp .ta-pdp__short p { margin: 0; }
.ta-pdp .ta-pdp__short p + p, .ta-pdp .ta-pdp__short ul + p { margin-top: 8px; }
.ta-pdp .ta-pdp__short :is(strong, b) { color: var(--ta-ink); }
.ta-pdp .ta-pdp__acc-txt a { color: var(--ta-ink); text-decoration: underline; text-underline-offset: 3px; }
.ta-pdp .ta-pdp__acc-txt img { max-width: 100%; height: auto; }

/* Pełny opis pod galerią i panelem zakupu. */
.ta-pdp .ta-pdp__description { margin: 48px auto 0; padding: 0 16px; }
.ta-pdp .ta-pdp__description-in { padding-top: 28px; border-top: 1px solid var(--ta-line); }
.ta-pdp .ta-pdp__description-body { display: flow-root; min-width: 0; margin-top: 24px; font: 400 16px/1.8 var(--ta-font); color: var(--ta-ink); overflow-wrap: anywhere; }
.ta-pdp .ta-pdp__description-body > * { max-width: 100%; }
.ta-pdp .ta-pdp__description-body > :first-child { margin-top: 0; }
.ta-pdp .ta-pdp__description-body > :last-child { margin-bottom: 0; }
.ta-pdp .ta-pdp__description-body :is(p, ul, ol, dl, figure, table, blockquote) { margin: 0 0 1em; }
.ta-pdp .ta-pdp__description-body :is(h2, h3, h4, h5, h6) { margin: 1.5em 0 .6em; font: 500 20px/1.35 var(--ta-font); color: var(--ta-ink); }
.ta-pdp .ta-pdp__description-body h2 { font-size: 24px; }
.ta-pdp .ta-pdp__description-body ul { padding-left: 24px; list-style: disc; }
.ta-pdp .ta-pdp__description-body ol { padding-left: 24px; list-style: decimal; }
.ta-pdp .ta-pdp__description-body li + li { margin-top: .35em; }
.ta-pdp .ta-pdp__description-body li > p { margin: 0; } /* opisy z DEV: <li><p>…</p></li>, równe odstępy w listach */
.ta-pdp .ta-pdp__description-body a { color: var(--ta-green); text-decoration: underline; text-underline-offset: 3px; }
.ta-pdp .ta-pdp__description-body :is(img, video) { max-width: 100%; height: auto; }
.ta-pdp .ta-pdp__description-body iframe { width: 100%; max-width: 100%; height: auto; aspect-ratio: 16 / 9; border: 0; }
.ta-pdp .ta-pdp__description-body :is(.wp-caption, .wp-video) { max-width: 100%; }
.ta-pdp .ta-pdp__description-body table { width: 100%; table-layout: fixed; border-collapse: collapse; font: inherit; }
.ta-pdp .ta-pdp__description-body :is(th, td) { padding: 12px; border: 1px solid var(--ta-line); font: inherit; text-align: left; vertical-align: top; overflow-wrap: anywhere; }
.ta-pdp .ta-pdp__description-body th { font-weight: 600; background: var(--ta-cream); }
.ta-pdp .ta-pdp__description-body pre { max-width: 100%; overflow-x: auto; }

/* Detale i materiały (2026-10-31): zdjęcia z opisu w siatce, inc/ta-product-details.php */
.ta-pdp .ta-pdp-details { clear: both; margin: 40px 0 0; padding-top: 32px; border-top: 1px solid var(--ta-line); }
.ta-pdp .ta-pdp__description-body .ta-pdp-details__title { margin: 0 0 20px; font: 300 26px/1.2 var(--ta-font); letter-spacing: -.01em; color: var(--ta-ink); }
.ta-pdp .ta-pdp-details__grid { display: grid; gap: 28px; }
.ta-pdp .ta-pdp__description-body .ta-pdp-details__item { margin: 0; }
.ta-pdp .ta-pdp-details__img { aspect-ratio: 4 / 3; overflow: hidden; border-radius: var(--ta-radius-md); background: var(--ta-thumb); }
.ta-pdp .ta-pdp__description-body .ta-pdp-details__img img { display: block; width: 100%; height: 100%; max-width: none; object-fit: cover; }
.ta-pdp .ta-pdp-details__cap { margin-top: 12px; font: 400 14px/1.6 var(--ta-font); color: var(--ta-ink-muted); text-wrap: pretty; }

/* Rzędy przewijane (opinie, filmy, „Do kompletu”) + pasek z uchwytem */
.ta-pdp .ta-pdp__rail { display: flex; gap: 12px; margin: 24px -16px 0; padding: 0 16px 4px; overflow-x: auto; scroll-padding-left: 16px; scrollbar-width: none; overscroll-behavior-x: contain; }
.ta-pdp .ta-pdp__rail::-webkit-scrollbar { display: none; }
.ta-pdp .ta-pdp__rail > * { flex: none; }
.ta-pdp .ta-pdp__track { position: relative; width: 100%; max-width: 320px; height: 16px; margin: 10px auto 0; cursor: pointer; touch-action: none; }
.ta-pdp .ta-pdp__track::before { content: ""; position: absolute; top: 7px; left: 0; right: 0; height: 2px; border-radius: 1px; background: var(--ta-line); }
.ta-pdp .ta-pdp__track-thumb { position: absolute; top: 6px; left: var(--ta-l, 0%); width: var(--ta-w, 30%); height: 4px; border-radius: 2px; background: var(--ta-rust); }
.ta-pdp .ta-pdp__head { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; }
.ta-pdp .ta-pdp__all { flex: none; font: 500 13px/19.5px var(--ta-font); color: var(--ta-ink); transition: color .2s ease; }
.ta-pdp .ta-pdp__all:hover { color: var(--ta-rust); }
.ta-pdp .ta-pdp__all-x { display: none; }

/* D. Opinie */
.ta-pdp .ta-pdp__reviews { margin-top: 56px; padding: 40px 16px; background: var(--ta-cream); }
.ta-pdp .ta-pdp__score { display: flex; flex-wrap: wrap; align-items: center; gap: 16px 28px; margin-top: 18px; }
.ta-pdp .ta-pdp__score > .ta-pdp__stars { display: none; }
.ta-pdp .ta-pdp__avg { display: flex; align-items: baseline; gap: 8px; }
.ta-pdp .ta-pdp__avg-n { font: 300 48px/1 var(--ta-font); color: var(--ta-ink); }
.ta-pdp .ta-pdp__avg-of { font: 400 13px/19.5px var(--ta-font); color: var(--ta-ink-muted); }
.ta-pdp .ta-pdp__bars { display: flex; flex: 1 1 200px; flex-direction: column; gap: 6px; }
.ta-pdp .ta-pdp__bars li { display: flex; align-items: center; gap: 10px; font: 400 12.5px/19.4px var(--ta-font); color: var(--ta-ink); } /* 19,4: makieta „normal” z gwiazdką ★ z kroju zastępczego */
.ta-pdp .ta-pdp__bars li > :first-child { width: 22px; }
.ta-pdp .ta-pdp__bars li > :last-child { width: 20px; text-align: right; color: var(--ta-ink-muted); }
.ta-pdp .ta-pdp__bar { flex: 1; height: 4px; overflow: hidden; border-radius: 2px; background: var(--ta-beige); }
.ta-pdp .ta-pdp__bar > span { display: block; height: 100%; border-radius: 2px; background: var(--ta-green); }
.ta-pdp .ta-pdp__none { margin-top: 12px; font: 400 14px/1.6 var(--ta-font); color: var(--ta-ink-muted); }
.ta-pdp .ta-pdp__revs > * { flex: 0 0 calc(82% + 36px); } /* makieta: 82% to szerokość treści, padding 18 + 18 dochodzi */
.ta-pdp .ta-pdp__review { display: flex; flex-direction: column; gap: 12px; padding: 18px; border-radius: var(--ta-radius-md); background: var(--ta-white); }
/* Pasek pod opiniami: postęp przewijania + strzałki (strzałki tylko na desktopie, od 4 opinii). */
.ta-pdp .ta-pdp__rnav { display: none; }
.ta-pdp .ta-pdp__rgo { margin: 0; min-height: 0; max-width: none; padding: 0; border: 1px solid var(--ta-ink); border-radius: 50%; background: none; box-shadow: none; color: var(--ta-ink); font: inherit; letter-spacing: normal; text-transform: none; cursor: pointer;
  display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; transition: background-color .2s ease, color .2s ease, opacity .2s ease; }
.ta-pdp .ta-pdp__rgo .ta-pdp__i { width: 18px; height: 18px; stroke-width: 1.7; }
.ta-pdp .ta-pdp__rgo:hover:not(:disabled) { background: var(--ta-ink); color: var(--ta-white); }
.ta-pdp .ta-pdp__rgo:disabled { opacity: .3; cursor: default; }
.ta-pdp .ta-pdp__review > .ta-pdp__stars { display: none; }
.ta-pdp .ta-pdp__review-txt { font: 400 14px/1.65 var(--ta-font); color: var(--ta-ink); }
.ta-pdp .ta-pdp__review-img { display: block; width: 72px; max-width: none; height: 72px; border-radius: var(--ta-radius-sm); object-fit: cover; }
.ta-pdp .ta-pdp__review-by { display: flex; flex-direction: column; gap: 2px; margin-top: auto; }
.ta-pdp .ta-pdp__review-who { font: 500 13px/19.5px var(--ta-font); color: var(--ta-ink); }
.ta-pdp .ta-pdp__review-what { font: 400 12px/18px var(--ta-font); color: var(--ta-ink-muted); }
.ta-pdp .ta-pdp__write {
  display: flex; align-items: center; justify-content: center; height: 50px; margin-top: 22px; border: 1px solid var(--ta-green); border-radius: var(--ta-radius-sm);
  background-color: transparent; background-image: linear-gradient(var(--ta-green), var(--ta-green)); background-position: left center; background-repeat: no-repeat; background-size: 0% 100%;
  font: 500 12.5px/18.75px var(--ta-font); letter-spacing: .1em; text-transform: uppercase; white-space: nowrap; color: var(--ta-green); transition: background-size .45s var(--ta-ease), color .3s ease;
}
.ta-pdp .ta-pdp__write:hover { background-size: 100% 100%; color: var(--ta-white); }

/* E. Filmy */
.ta-pdp .ta-pdp__videos { padding: 56px 16px; }
.ta-pdp .ta-pdp__vids { margin-top: 18px; }
.ta-pdp .ta-pdp__vid { position: relative; display: block; flex: 0 0 82%; aspect-ratio: 4 / 3; overflow: hidden; border-radius: var(--ta-radius-md); background: var(--ta-green); color: var(--ta-white); text-align: left; }
.ta-pdp .ta-pdp__cover { position: absolute; inset: 0; display: block; width: 100%; max-width: none; height: 100%; object-fit: cover; transition: transform .8s var(--ta-ease); }
.ta-pdp .ta-pdp__vid::after { content: ""; position: absolute; inset: 0; background: linear-gradient(to top, color-mix(in srgb, var(--ta-ink) 88%, transparent) 0%, color-mix(in srgb, var(--ta-ink) 35%, transparent) 45%, color-mix(in srgb, var(--ta-ink) 8%, transparent) 100%); pointer-events: none; }
.ta-pdp .ta-pdp__play { position: absolute; z-index: 1; top: 50%; left: 50%; display: flex; align-items: center; justify-content: center; width: 58px; height: 58px; margin: -28px 0 0 -28px; border: 1px solid color-mix(in srgb, var(--ta-white) 80%, transparent); border-radius: 50%; background: color-mix(in srgb, var(--ta-ink) 35%, transparent); color: var(--ta-white); transition: transform .45s var(--ta-ease), background-color .3s ease, color .3s ease; }
.ta-pdp .ta-pdp__play svg { width: 18px; height: 18px; fill: currentColor; stroke: none; }
.ta-pdp .ta-pdp__vid-txt { position: absolute; z-index: 1; left: 14px; right: 14px; bottom: 12px; display: flex; flex-direction: column; gap: 2px; }
.ta-pdp .ta-pdp__vid-title { font: 500 14px/1.35 var(--ta-font); text-wrap: pretty; text-shadow: 0 1px 2px color-mix(in srgb, var(--ta-ink) 55%, transparent), 0 0 18px color-mix(in srgb, var(--ta-ink) 30%, transparent); }
.ta-pdp .ta-pdp__len { font: 400 12px/18px var(--ta-font); opacity: .85; }
.ta-pdp .ta-pdp__dialog { width: min(1100px, 92vw); max-width: none; padding: 0; border: 0; background: transparent; }
.ta-pdp .ta-pdp__dialog::backdrop { background: color-mix(in srgb, var(--ta-ink) 85%, transparent); }
.ta-pdp .ta-pdp__dialog iframe { display: block; width: 100%; aspect-ratio: 16 / 9; border: 0; border-radius: var(--ta-radius-md); background: var(--ta-ink); }
.ta-pdp .ta-pdp__dialog-close { display: block; margin: 0 0 10px auto; padding: 6px 0; font: 500 14px/1 var(--ta-font); color: var(--ta-white); }

/* Lightbox zdjęć (B): lupa lub klik w zdjęcie. Telefon i tablet: miniatury pod zdjęciem; desktop: kolumna miniatur z lewej. */
html.ta-pdp-lb-open { overflow: hidden; }
.ta-pdp .ta-pdp__lb { position: fixed; inset: 0; width: 100%; max-width: none; height: 100%; max-height: none; margin: 0; padding: 0; border: 0; overflow: hidden; background: var(--ta-white); color: var(--ta-ink); }
.ta-pdp .ta-pdp__lb[open] { display: grid; grid-template-rows: minmax(0, 1fr) auto; }
.ta-pdp .ta-pdp__lb::backdrop { background: var(--ta-white); }
.ta-pdp .ta-pdp__lb-stage { position: relative; grid-row: 1; overflow: hidden; cursor: zoom-in; touch-action: pan-y pinch-zoom; }
.ta-pdp .ta-pdp__lb-img { display: block; width: 100%; max-width: none; height: 100%; object-fit: contain; transform: scale(1); transition: transform .3s var(--ta-ease); user-select: none; -webkit-user-select: none; }
.ta-pdp .ta-pdp__lb--zoom .ta-pdp__lb-stage { cursor: zoom-out; touch-action: none; }
.ta-pdp .ta-pdp__lb--zoom .ta-pdp__lb-img { transform: scale(var(--ta-lb-scale, 2)); }
.ta-pdp .ta-pdp__lb-thumbs { grid-row: 2; display: flex; gap: 8px; padding: 10px 16px 16px; overflow-x: auto; scrollbar-width: none; }
.ta-pdp .ta-pdp__lb-thumbs::-webkit-scrollbar { display: none; }
.ta-pdp .ta-pdp__lb-thumbs:empty { display: none; }
.ta-pdp .ta-pdp__lb-thumb { flex: 0 0 56px; width: 56px; height: 56px; overflow: hidden; border-radius: var(--ta-radius-sm); background: var(--ta-thumb); outline: 2px solid transparent; outline-offset: 2px; opacity: .6; transition: opacity .2s ease, outline-color .2s ease; }
.ta-pdp .ta-pdp__lb-thumb:hover { opacity: 1; }
.ta-pdp .ta-pdp__lb-thumb[aria-current="true"] { outline-color: var(--ta-green); opacity: 1; }
.ta-pdp .ta-pdp__lb-thumb img { display: block; width: 100%; max-width: none; height: 100%; object-fit: cover; }
.ta-pdp .ta-pdp__lb-btn {
  position: absolute; z-index: 2; display: flex; align-items: center; justify-content: center; width: 44px; height: 44px; border-radius: 50%;
  background: color-mix(in srgb, var(--ta-white) 92%, transparent); box-shadow: 0 2px 10px color-mix(in srgb, var(--ta-ink) 18%, transparent); color: var(--ta-ink); transition: opacity .2s ease;
}
.ta-pdp .ta-pdp__lb-btn svg { width: 18px; height: 18px; stroke-width: 1.7; }
.ta-pdp .ta-pdp__lb-btn--close { top: 12px; right: 12px; }
.ta-pdp .ta-pdp__lb-btn--close svg { width: 20px; height: 20px; }
.ta-pdp .ta-pdp__lb-btn--prev, .ta-pdp .ta-pdp__lb-btn--next { top: 50%; transform: translateY(-50%); }
.ta-pdp .ta-pdp__lb-btn--prev { left: 12px; }
.ta-pdp .ta-pdp__lb-btn--next { right: 12px; }
.ta-pdp .ta-pdp__lb--zoom :is(.ta-pdp__lb-btn--prev, .ta-pdp__lb-btn--next, .ta-pdp__lb-count) { opacity: 0; pointer-events: none; }
.ta-pdp .ta-pdp__lb-count { position: absolute; z-index: 2; top: 22px; left: 16px; font: 500 13px/1 var(--ta-font); color: var(--ta-ink-muted); transition: opacity .2s ease; }
.ta-pdp .ta-pdp__lb :focus-visible { outline: 2px solid var(--ta-green); outline-offset: 2px; }
@media (min-width: 1200px) {
  .ta-pdp .ta-pdp__lb[open] { grid-template-columns: 128px minmax(0, 1fr); grid-template-rows: minmax(0, 1fr); }
  .ta-pdp .ta-pdp__lb-stage { grid-column: 2; grid-row: 1; margin: 0 104px 0 80px; }
  .ta-pdp .ta-pdp__lb-thumbs { grid-column: 1; grid-row: 1; flex-direction: column; gap: 12px; padding: 32px 24px; overflow-x: hidden; overflow-y: auto; }
  .ta-pdp .ta-pdp__lb-thumb { flex: 0 0 80px; width: 80px; height: 80px; }
  .ta-pdp .ta-pdp__lb-btn { width: 48px; height: 48px; }
  .ta-pdp .ta-pdp__lb-btn--close { top: 24px; right: 24px; }
  .ta-pdp .ta-pdp__lb-btn--prev { left: 152px; }
  .ta-pdp .ta-pdp__lb-btn--next { right: 32px; }
  .ta-pdp .ta-pdp__lb-btn:hover { background: var(--ta-white); }
  .ta-pdp .ta-pdp__lb-count { top: 38px; left: 152px; }
  .ta-pdp .ta-pdp__lb-thumbs:empty + .ta-pdp__lb-stage, .ta-pdp .ta-pdp__lb-stage:has(+ .ta-pdp__lb-thumbs:empty) { grid-column: 1 / -1; }
}
@media (prefers-reduced-motion: reduce) { .ta-pdp .ta-pdp__lb-img { transition: none; } }

/* Formularz opinii (okno) */
.ta-pdp .ta-pdp__dialog--form { width: min(640px, 92vw); }
.ta-pdp .ta-pdp__form-box { padding: 24px 20px; border-radius: var(--ta-radius-md); background: var(--ta-white); color: var(--ta-ink); }
.ta-pdp .ta-pdp__form-box .ta-pdp__h2 { margin-bottom: 18px; }
.ta-pdp .ta-pdp__form-box form { margin: 0; }
.ta-pdp .ta-pdp__form-box p { margin: 0 0 14px; font: 400 14px/1.5 var(--ta-font); }
.ta-pdp .ta-pdp__form-box label { display: block; margin: 0 0 6px; font: 500 13px/19.5px var(--ta-font); color: var(--ta-ink); }
.ta-pdp .ta-pdp__form-box :is(input[type="text"], input[type="email"], input[type="url"], textarea, select) { width: 100%; max-width: none; height: auto; min-height: 48px; margin: 0; padding: 12px 14px; border: 1px solid var(--ta-border); border-radius: var(--ta-radius-sm); background: var(--ta-white); box-shadow: none; font: 400 15px/1.5 var(--ta-font); color: var(--ta-ink); }
.ta-pdp .ta-pdp__form-box :is(input, textarea, select):focus { border-color: var(--ta-green); outline: none; box-shadow: 0 0 0 1px var(--ta-green); }
.ta-pdp .ta-pdp__form-box .comment-form-cookies-consent { display: flex; gap: 10px; align-items: flex-start; }
.ta-pdp .ta-pdp__form-box .comment-form-cookies-consent label { margin: 0; font-weight: 400; }
.ta-pdp .ta-pdp__send { height: 48px; padding: 0 28px; border-radius: var(--ta-radius-sm); background: var(--ta-green); font: 500 13px/19.5px var(--ta-font); letter-spacing: .12em; text-transform: uppercase; color: var(--ta-white); transition: background-color .25s ease; }
.ta-pdp .ta-pdp__send:hover { background: var(--ta-green-hover); }

/* F. Do kompletu */
.ta-pdp .ta-pdp__more { padding: 56px 16px; background: var(--ta-cream); }
.ta-pdp .ta-pdp__cards { gap: 10px; margin-top: 18px; }
.ta-pdp .ta-pdp__cards > * { flex: 0 0 70%; }
.ta-pdp .ta-pdp__cards .ta-pcard { height: 100%; }

/* Tablet ≥ 700 */
@container ta-pdp (min-width: 700px) {
  .ta-pdp .ta-pdp__notices { padding: 16px 32px 0; }
  .ta-pdp .ta-pdp__crumbs-in { padding: 12px 32px; }
  .ta-pdp .ta-pdp__gallery { padding: 12px 32px 0; }
  .ta-pdp .ta-pdp__stage { aspect-ratio: 4 / 3; }
  .ta-pdp .ta-pdp__panel { padding: 22px 32px 0; }
  .ta-pdp .ta-pdp__description { margin-top: 64px; padding: 0 32px; }
  .ta-pdp .ta-pdp__description-in { padding-top: 36px; }
  .ta-pdp .ta-pdp__h1 { font-size: 30px; }
  .ta-pdp .ta-pdp__h2 { font-size: 30px; }
  .ta-pdp .ta-pdp__tiles { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ta-pdp .ta-pdp__rail { margin-left: -32px; margin-right: -32px; padding-left: 32px; padding-right: 32px; scroll-padding-left: 32px; }
  .ta-pdp .ta-pdp__reviews { margin-top: 72px; padding: 40px 32px; }
  .ta-pdp .ta-pdp__revs > * { flex-basis: calc(46% + 36px); }
  .ta-pdp .ta-pdp__vid { flex-basis: 46%; }
  .ta-pdp .ta-pdp__videos { padding: 72px 32px; }
  .ta-pdp .ta-pdp__more { padding: 72px 32px 56px; }
  .ta-pdp .ta-pdp__cards { gap: 16px; }
  .ta-pdp .ta-pdp__cards > * { flex-basis: 31%; }
  .ta-pdp .ta-pdp__form-box { padding: 32px; }
}

/* Desktop ≥ 1200 */
@container ta-pdp (min-width: 1200px) {
  .ta-pdp .ta-pdp__notices { max-width: 1440px; margin: 0 auto; padding: 20px 40px 0; }
  .ta-pdp .ta-pdp__crumbs-in { max-width: 1440px; margin: 0 auto; gap: 10px; padding: 20px 40px; font-size: 13px; line-height: 19.5px; }
  .ta-pdp .ta-pdp__h2 { font-size: 36px; line-height: 1.12; letter-spacing: -.01em; }
  .ta-pdp .ta-pdp__in { max-width: 1360px; margin: 0 auto; }

  .ta-pdp .ta-pdp__main { display: grid; grid-template-columns: minmax(0, 1fr) 540px; gap: 56px; align-items: start; max-width: 1440px; margin: 0 auto; padding: 24px 40px 0; }
  .ta-pdp .ta-pdp__description { max-width: 1440px; margin-top: 80px; padding: 0 40px; }
  .ta-pdp .ta-pdp__description-in { padding-top: 40px; }
  .ta-pdp .ta-pdp__description-body { margin-top: 32px; font-size: 17px; }
  .ta-pdp .ta-pdp__gallery { display: grid; grid-template-columns: 92px minmax(0, 1fr); gap: 16px; align-items: start; padding: 0; }
  .ta-pdp .ta-pdp__stage { grid-column: 2; grid-row: 1; aspect-ratio: 1 / 1.08; }
  .ta-pdp .ta-pdp__slides { overflow: hidden; scroll-snap-type: none; }
  .ta-pdp .ta-pdp__zoom { top: 16px; right: 16px; width: 48px; height: 48px; transition: background-color .2s ease; }
  .ta-pdp .ta-pdp__zoom:hover { background: var(--ta-white); }
  .ta-pdp .ta-pdp__arrow, .ta-pdp .ta-pdp__dots { display: none; }
  .ta-pdp .ta-pdp__thumbs { grid-column: 1; grid-row: 1; flex-direction: column; gap: 12px; margin: 0; padding: 0; overflow: visible; }
  .ta-pdp .ta-pdp__thumb { flex: none; width: 92px; height: 92px; box-shadow: none; outline: 2px solid transparent; outline-offset: 3px; opacity: .7; }
  .ta-pdp .ta-pdp__thumb[aria-current="true"] { box-shadow: none; outline-color: var(--ta-green); opacity: 1; }

  .ta-pdp .ta-pdp__panel { position: sticky; top: var(--ta-pdp-sticky, 80px); padding: 0; }
  .ta-pdp .ta-pdp__title { display: flex; flex-direction: column; align-items: flex-start; gap: 12px; }
  .ta-pdp .ta-pdp__h1 { font: 300 36px/1.12 var(--ta-font); letter-spacing: -.01em; text-wrap: balance; }
  .ta-pdp .ta-pdp__rating { margin: 0; font-size: 14px; line-height: 21px; }
  .ta-pdp .ta-pdp__rating .ta-pdp__stars { gap: 2px; }
  .ta-pdp .ta-pdp__rating .ta-pdp__stars svg { width: 15px; height: 15px; }
  .ta-pdp .ta-pdp__price { gap: 6px 14px; padding-bottom: 20px; border-bottom: 1px solid var(--ta-line); }
  .ta-pdp .ta-pdp__now { font-size: 32px; line-height: 48px; }
  .ta-pdp .ta-pdp__was { font-size: 18px; line-height: 27px; }
  .ta-pdp .ta-pdp__off { padding: 5px 9px; }
  .ta-pdp .ta-pdp__lowest { font-size: 13px; line-height: 19.5px; }
  .ta-pdp .ta-pdp__chip { height: auto; min-height: 46px; padding: 11px 16px; font-size: 14px; line-height: 21px; }
  .ta-pdp .ta-pdp__tiles { gap: 10px; }
  .ta-pdp .ta-pdp__specs { grid-template-columns: 140px minmax(0, 1fr); font-size: 14px; }
  .ta-pdp .ta-pdp__time { gap: 12px; padding: 16px 18px; background: var(--ta-beige); font-size: 14px; }
  .ta-pdp .ta-pdp__time svg { width: 20px; height: 20px; }
  .ta-pdp .ta-pdp__time .ta-pdp__i--clock { stroke: var(--ta-rust); stroke-width: 1.6; }
  .ta-pdp .ta-pdp__buy { flex-wrap: nowrap; }
  .ta-pdp .ta-pdp__add { order: 0; flex: 1; letter-spacing: .12em; }
  .ta-pdp .ta-pdp__fav svg { stroke-width: 1.6; }
  .ta-pdp .ta-pdp__fav[aria-pressed="true"] { transform: scale(1.06); }
  .ta-pdp .ta-pdp__trust { gap: 10px; }
  .ta-pdp .ta-pdp__trust li { padding: 14px 8px; font-size: 12.5px; }
  .ta-pdp .ta-pdp__trust img { width: 52px; height: 52px; object-fit: contain; mix-blend-mode: multiply; }
  .ta-pdp .ta-pdp__acc { border-top-color: var(--ta-ink); }
  .ta-pdp .ta-pdp__acc-item { border-bottom-color: var(--ta-ink); }
  .ta-pdp .ta-pdp__acc-btn { min-height: 0; padding: 18px 0; font-size: 16px; line-height: 24px; }
  .ta-pdp .ta-pdp__acc-ico { width: 32px; height: 32px; border-color: var(--ta-ink); color: var(--ta-ink); }
  .ta-pdp .ta-pdp__acc-item--open .ta-pdp__acc-ico { background: var(--ta-ink); color: var(--ta-white); }
  .ta-pdp .ta-pdp__acc-txt { padding-bottom: 20px; font-size: 14.5px; }

  .ta-pdp .ta-pdp__rail { margin: 0; padding: 0; overflow: visible; }
  .ta-pdp .ta-pdp__track { display: none; }
  .ta-pdp .ta-pdp__head { align-items: flex-end; gap: 24px; margin-bottom: 30px; }

  .ta-pdp .ta-pdp__reviews { margin-top: 96px; padding: 80px 40px; }
  .ta-pdp .ta-pdp__reviews-in { display: grid; grid-template-columns: 300px minmax(0, 1fr); grid-template-rows: auto 1fr; column-gap: 56px; align-items: start; max-width: 1360px; margin: 0 auto; }
  .ta-pdp .ta-pdp__rsum { grid-column: 1; grid-row: 1; display: flex; flex-direction: column; gap: 12px; }
  .ta-pdp .ta-pdp__score { flex-direction: column; flex-wrap: nowrap; align-items: stretch; gap: 12px; margin: 0; }
  .ta-pdp .ta-pdp__score > .ta-pdp__stars { display: flex; gap: 3px; }
  .ta-pdp .ta-pdp__score > .ta-pdp__stars svg { width: 20px; height: 20px; }
  .ta-pdp .ta-pdp__avg { gap: 12px; margin-top: 10px; }
  .ta-pdp .ta-pdp__avg-n { font-size: 64px; }
  .ta-pdp .ta-pdp__avg-of { font-size: 14px; line-height: 21px; }
  .ta-pdp .ta-pdp__bars { flex: none; gap: 12px; }
  .ta-pdp .ta-pdp__bars li { display: grid; grid-template-columns: 22px minmax(0, 1fr) 28px; gap: 10px; font-size: 13px; line-height: 19.5px; color: var(--ta-ink-muted); }
  .ta-pdp .ta-pdp__bars li > :first-child, .ta-pdp .ta-pdp__bars li > :last-child { width: auto; }
  .ta-pdp .ta-pdp__bar { height: 6px; border-radius: 3px; }
  .ta-pdp .ta-pdp__bar > span { border-radius: 0; background: var(--ta-star); }
  .ta-pdp .ta-pdp__revs { grid-column: 2; grid-row: 1 / span 2; display: flex; gap: 20px; overflow-x: auto; scroll-padding-left: 0; scroll-snap-type: x mandatory; overscroll-behavior-x: contain; }
  .ta-pdp .ta-pdp__revs > * { flex: 0 0 calc((100% - 40px) / 3); scroll-snap-align: start; }
  .ta-pdp .ta-pdp__rbar { grid-column: 2; grid-row: 3; display: flex; align-items: center; justify-content: space-between; gap: 24px; margin-top: 24px; }
  .ta-pdp .ta-pdp__rbar:not(:has(.ta-pdp__rnav, .ta-pdp__track:not([hidden]))) { display: none; }
  .ta-pdp .ta-pdp__reviews .ta-pdp__track:not([hidden]) { display: block; flex: 1 1 auto; max-width: 320px; margin: 0; }
  .ta-pdp .ta-pdp__rnav { display: flex; gap: 10px; margin-left: auto; }
  .ta-pdp .ta-pdp__review { gap: 14px; padding: 24px; border: 1px solid var(--ta-line); background: transparent; }
  .ta-pdp .ta-pdp__review > .ta-pdp__stars { display: flex; gap: 2px; }
  .ta-pdp .ta-pdp__review > .ta-pdp__stars svg { width: 14px; height: 14px; }
  .ta-pdp .ta-pdp__review-txt { font-size: 15px; text-wrap: pretty; }
  .ta-pdp .ta-pdp__review-img { width: 88px; height: 88px; }
  .ta-pdp .ta-pdp__review-by { padding-top: 12px; border-top: 1px solid var(--ta-line); }
  .ta-pdp .ta-pdp__review-who { font-weight: 600; font-size: 14px; line-height: 21px; }
  .ta-pdp .ta-pdp__review-what { font-size: 13px; line-height: 19.5px; }
  .ta-pdp .ta-pdp__write { grid-column: 1; grid-row: 2; justify-self: start; display: inline-flex; height: 50px; margin-top: 24px; padding: 0 30px; font-size: 13px; line-height: 19.5px; letter-spacing: .12em; }

  .ta-pdp .ta-pdp__videos { padding: 88px 40px; border-top: 1px solid var(--ta-line); }
  .ta-pdp .ta-pdp__videos .ta-pdp__h2 { font-size: 40px; line-height: 1.1; }
  .ta-pdp .ta-pdp__videos .ta-pdp__head { margin-bottom: 34px; }
  .ta-pdp .ta-pdp__all { padding-bottom: 8px; font-size: 14px; line-height: 21px; white-space: nowrap; text-decoration: underline; text-underline-offset: 5px; }
  .ta-pdp .ta-pdp__all-x { display: inline; }
  .ta-pdp .ta-pdp__vids { display: grid; grid-template-columns: minmax(0, 2fr) minmax(0, 1fr); grid-template-rows: 288px 288px; gap: 24px; }
  .ta-pdp .ta-pdp__vids--n3 > :first-child { grid-row: 1 / span 2; }
  .ta-pdp .ta-pdp__vids--n2 { grid-template-columns: repeat(2, minmax(0, 1fr)); grid-template-rows: 400px; }
  .ta-pdp .ta-pdp__vids--n1 { grid-template-columns: minmax(0, 1fr); grid-template-rows: 600px; }
  .ta-pdp .ta-pdp__vid { aspect-ratio: auto; height: 100%; min-height: 0; background: var(--ta-ink); }
  .ta-pdp .ta-pdp__vid::after { background: linear-gradient(180deg, transparent 0%, color-mix(in srgb, var(--ta-ink) 72%, transparent) 100%); }
  .ta-pdp .ta-pdp__vid::before { content: ""; position: absolute; z-index: 1; inset: 0; background: linear-gradient(180deg, color-mix(in srgb, var(--ta-ink) 30%, transparent) 0%, transparent 100%); opacity: 0; transition: opacity .4s ease; pointer-events: none; }
  .ta-pdp .ta-pdp__vid:hover::before { opacity: 1; }
  .ta-pdp .ta-pdp__vid:hover .ta-pdp__cover { transform: scale(1.05); }
  .ta-pdp .ta-pdp__play { width: 63px; height: 63px; margin: -30px 0 0 -30px; border: 1.5px solid var(--ta-white); background: color-mix(in srgb, var(--ta-ink) 30%, transparent); }
  .ta-pdp .ta-pdp__play svg { width: 20px; height: 20px; margin-left: 3px; }
  .ta-pdp .ta-pdp__vid:hover .ta-pdp__play { transform: scale(1.12); background: var(--ta-white); color: var(--ta-green); }
  .ta-pdp .ta-pdp__vid-txt { left: 20px; right: 20px; bottom: 20px; flex-direction: row; align-items: flex-end; justify-content: space-between; gap: 16px; }
  .ta-pdp .ta-pdp__vid-title { font: 400 18px/1.35 var(--ta-font); }
  .ta-pdp .ta-pdp__len { flex: none; padding: 4px 8px; border-radius: 3px; background: color-mix(in srgb, var(--ta-ink) 75%, transparent); font-weight: 500; opacity: 1; }
  .ta-pdp .ta-pdp__vids > :first-child .ta-pdp__play { width: 91px; height: 91px; margin: -44px 0 0 -44px; }
  .ta-pdp .ta-pdp__vids > :first-child .ta-pdp__play svg { width: 28px; height: 28px; }
  .ta-pdp .ta-pdp__vids > :first-child .ta-pdp__vid-txt { left: 32px; right: 32px; bottom: 32px; }
  .ta-pdp .ta-pdp__vids > :first-child .ta-pdp__vid-title { font-size: 30px; line-height: 1.25; }

  .ta-pdp .ta-pdp__more { padding: 88px 40px 96px; }
  .ta-pdp .ta-pdp__cards { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 20px; }
}

/* Ukryte elementy (atrybut hidden) — na końcu, żeby wygrać z regułami display powyżej. */
.ta-pdp [hidden] { display: none; }

@container ta-pdp (min-width: 700px) {
  .ta-pdp .ta-pdp-details__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 32px 24px; }
}
@container ta-pdp (min-width: 1200px) {
  .ta-pdp .ta-pdp-details { margin-top: 56px; padding-top: 40px; }
  .ta-pdp .ta-pdp__description-body .ta-pdp-details__title { margin-bottom: 28px; font-size: 32px; }
  .ta-pdp .ta-pdp-details__grid { gap: 40px 32px; }
  .ta-pdp .ta-pdp-details__cap { font-size: 15px; }
}
