.product-page { background: #fff; }
.breadcrumbs { min-height: 58px; display: flex; align-items: center; gap: 10px; color: #8793a0; font-size: 9px; }
.breadcrumbs a:hover { color: var(--blue); }
.breadcrumbs strong { color: #526171; font-weight: 600; }
.breadcrumbs span { color: #bdc5cc; }

.product-hero { padding: 20px 0 72px; display: grid; grid-template-columns: minmax(0, 1.08fr) minmax(420px, .92fr); gap: 60px; }
.product-gallery { min-width: 0; display: grid; grid-template-columns: 72px 1fr; gap: 14px; }
.product-gallery__thumbs { display: flex; flex-direction: column; gap: 10px; }
.product-gallery__thumbs button { height: 72px; padding: 5px; border: 1px solid var(--line); border-radius: 7px; background: #fff; cursor: pointer; display: grid; place-items: center; overflow: hidden; }
.product-gallery__thumbs button:hover, .product-gallery__thumbs button.active { border-color: var(--blue); box-shadow: 0 0 0 2px rgba(22,135,201,.08); }
.thumb-bucket { width: 27px; height: 37px; border-radius: 2px 2px 7px 7px; background: linear-gradient(135deg, #1988be, #0d3e5f); box-shadow: 10px 8px 0 -4px #cad4d9; }
.thumb-floor { width: 56px; height: 45px; background: linear-gradient(165deg, #dee3e4 49%, #879096 50%); }
.thumb-layers { color: var(--blue); font-size: 31px; line-height: 1; transform: rotate(90deg); }
.thumb-video { width: 38px; height: 38px; display: grid; place-items: center; border-radius: 50%; background: var(--navy); color: var(--lime); padding-left: 3px; }
.product-gallery__stage { position: relative; min-height: 590px; border-radius: 10px; overflow: hidden; background: radial-gradient(circle at 60% 40%, #fff, #edf2f4 70%); }
.gallery-badge { position: absolute; z-index: 10; top: 18px; left: 18px; padding: 7px 10px; border-radius: 4px; background: var(--lime); color: var(--navy); font-size: 8px; font-weight: 900; text-transform: uppercase; letter-spacing: .8px; }
.gallery-zoom { position: absolute; z-index: 10; top: 16px; right: 17px; width: 35px; height: 35px; border: 1px solid var(--line); border-radius: 50%; background: rgba(255,255,255,.9); color: var(--navy); font-size: 20px; cursor: pointer; }
.gallery-scene { position: absolute; inset: 0; display: none; }
.product-gallery__stage[data-stage="set"] .gallery-scene--set,
.product-gallery__stage[data-stage="floor"] .gallery-scene--floor,
.product-gallery__stage[data-stage="layers"] .gallery-scene--layers,
.product-gallery__stage[data-stage="video"] .gallery-scene--video { display: block; }
.gallery-scene--set::after { content: ""; position: absolute; left: 12%; right: 7%; bottom: 60px; height: 45px; border-radius: 50%; background: rgba(23,44,60,.16); filter: blur(15px); }
.large-bucket { position: absolute; z-index: 2; width: 215px; height: 278px; padding: 0 20px 22px; border-radius: 9px 9px 31px 31px; background: linear-gradient(105deg, #f5f8f8, #bcc8cc 52%, #fff 78%); box-shadow: 0 30px 45px rgba(11,31,53,.22); }
.large-bucket::before { content: ""; position: absolute; left: -7px; right: -7px; top: -8px; height: 30px; border: 2px solid #b3c0c5; border-radius: 6px 6px 12px 12px; background: linear-gradient(#e7edef, #aab8bd); }
.large-bucket__handle { position: absolute; top: 27px; left: -12px; right: -12px; height: 105px; border: 5px solid rgba(177,190,196,.65); border-top: 0; border-radius: 0 0 105px 105px; }
.large-bucket > div { position: absolute; left: 18px; right: 18px; top: 55px; bottom: 24px; padding: 26px 19px; border-radius: 4px 4px 17px 17px; color: #fff; background: linear-gradient(145deg, #147fb8, #0d4768); display: flex; flex-direction: column; }
.large-bucket small { color: var(--lime); font-size: 8px; letter-spacing: 1.5px; font-weight: 800; }
.large-bucket b { margin-top: 13px; font: 700 27px/.9 "Space Grotesk"; }
.large-bucket em { margin-top: auto; color: #c6d7e1; font-style: normal; font-size: 8px; }
.large-bucket--main { left: 34%; bottom: 75px; transform: rotate(1deg); }
.large-bucket--primer { width: 155px; height: 205px; left: 12%; bottom: 72px; transform: rotate(-6deg); }
.large-bucket--primer > div { top: 43px; padding: 20px 14px; background: linear-gradient(145deg, #293f4f, #0e2231); }
.large-bucket--primer b { font-size: 20px; }
.gallery-box { position: absolute; z-index: 3; right: 8%; bottom: 70px; width: 135px; height: 210px; padding: 29px 18px 18px; color: var(--navy); background: linear-gradient(145deg, var(--lime), #a9d42c); box-shadow: 0 25px 38px rgba(11,31,53,.2); transform: rotate(5deg); display: flex; flex-direction: column; }
.gallery-box small { font-size: 7px; letter-spacing: 1.2px; font-weight: 800; }
.gallery-box b { margin-top: 15px; font: 700 23px/.9 "Space Grotesk"; }
.gallery-box em { margin-top: auto; font-style: normal; font-size: 8px; }
.gallery-scene--floor { overflow: hidden; background: linear-gradient(#e7ebed 0 52%, #92999e 53%); }
.garage-wall { position: absolute; inset: 0 0 48%; background: linear-gradient(90deg, #dde2e4, #f2f4f4); }
.garage-wall::after { content: ""; position: absolute; left: 12%; top: 12%; width: 33%; height: 70%; background: #253746; box-shadow: inset 0 0 0 8px #c9d0d3; }
.garage-wall span { position: absolute; width: 70px; height: 8px; right: 18%; background: #65717a; }
.garage-wall span:nth-child(1) { top: 25%; }.garage-wall span:nth-child(2) { top: 42%; }.garage-wall span:nth-child(3) { top: 59%; }
.garage-floor { position: absolute; inset: 48% 0 0; background: linear-gradient(160deg, #b7bdc0, #7f888d); }
.garage-floor::before, .garage-floor::after { content: ""; position: absolute; height: 1px; background: rgba(255,255,255,.3); transform-origin: left; }
.garage-floor::before { width: 90%; left: 10%; top: 35%; transform: rotate(-5deg); }
.garage-floor::after { width: 80%; left: 20%; top: 68%; transform: rotate(-8deg); }
.garage-label { position: absolute; left: 25px; bottom: 25px; padding: 14px 17px; color: #fff; background: rgba(7,24,39,.84); backdrop-filter: blur(7px); display: flex; flex-direction: column; border-left: 3px solid var(--lime); }
.garage-label small { color: var(--lime); font-size: 7px; letter-spacing: 1px; }
.garage-label b { margin: 5px 0; font-size: 12px; }
.garage-label span { color: #aabac6; font-size: 8px; }
.gallery-scene--layers { padding: 90px 55px 50px; }
.layer-diagram { height: 100%; display: flex; flex-direction: column; justify-content: center; perspective: 700px; }
.layer { position: relative; width: 90%; min-height: 83px; margin: -4px auto 0; padding: 18px 25px 15px 70px; color: #fff; transform: rotateX(45deg) rotateZ(-3deg); box-shadow: 0 11px 20px rgba(11,31,53,.13); display: flex; flex-direction: column; }
.layer span { position: absolute; left: 24px; top: 19px; width: 29px; height: 29px; display: grid; place-items: center; border: 1px solid rgba(255,255,255,.35); border-radius: 50%; font-size: 10px; font-weight: 800; }
.layer b { font-size: 12px; }.layer small { margin-top: 3px; opacity: .7; font-size: 8px; }
.layer--top { background: #6c7b83; }.layer--main { background: #1687c9; }.layer--primer { background: #17344c; }.layer--concrete { background: #a7a8a5; }
.gallery-scene--video { color: #fff; background: linear-gradient(rgba(7,24,39,.58), rgba(7,24,39,.72)), url("assets/usluga-posadzki.webp") center/cover; flex-direction: column; align-items: center; justify-content: center; }
.product-gallery__stage[data-stage="video"] .gallery-scene--video { display: flex; }
.video-play { width: 72px; height: 72px; margin-bottom: 19px; padding-left: 6px; border: 1px solid rgba(255,255,255,.5); border-radius: 50%; background: rgba(255,255,255,.16); color: var(--lime); font-size: 25px; cursor: pointer; backdrop-filter: blur(8px); }
.gallery-scene--video b { font: 700 24px "Space Grotesk"; }.gallery-scene--video span { margin-top: 8px; color: #d1dbe1; font-size: 10px; }

.product-buybox { padding-top: 5px; }
.product-meta { display: flex; justify-content: space-between; color: #8c98a3; font-size: 8px; text-transform: uppercase; letter-spacing: .6px; }
.product-brand { color: var(--blue); font-weight: 900; }
.product-buybox h1 { margin: 10px 0 14px; color: var(--navy); font: 700 37px/1.06 "Space Grotesk"; letter-spacing: -1.5px; }
.product-lead { color: var(--muted); font-size: 12px; line-height: 1.7; }
.product-rating-row { display: flex; align-items: center; gap: 8px; padding: 15px 0 17px; border-bottom: 1px solid var(--line); color: #84919e; font-size: 9px; }
.product-stars { color: #f1aa22; letter-spacing: 1px; }
.product-rating-row strong { color: var(--navy); }
.product-rating-row a { color: var(--blue); text-decoration: underline; }
.product-rating-row i { width: 1px; height: 14px; background: var(--line); }
.product-highlights { padding: 18px 0; display: grid; grid-template-columns: repeat(2, 1fr); gap: 9px 20px; }
.product-highlights span { color: #536475; font-size: 9px; }
.product-highlights b { color: #63a232; margin-right: 6px; }
.variant-group { padding: 15px 0; border-top: 1px solid var(--line); }
.variant-label { margin-bottom: 10px; display: flex; justify-content: space-between; color: #8b97a2; font-size: 8px; }
.variant-label strong { color: var(--navy); font-size: 10px; }
.variant-label span b { color: #536274; }
.color-options { display: flex; gap: 10px; }
.color-options button { width: 33px; height: 33px; padding: 4px; border: 1px solid var(--line); border-radius: 50%; background: #fff; cursor: pointer; }
.color-options button::before { content: ""; display: block; width: 100%; height: 100%; border-radius: 50%; background: var(--swatch); }
.color-options button.active { border: 2px solid var(--blue); box-shadow: 0 0 0 3px rgba(22,135,201,.1); }
.size-options { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; }
.size-options button { min-height: 62px; padding: 10px; border: 1px solid var(--line); border-radius: 6px; background: #fff; text-align: left; cursor: pointer; display: flex; flex-direction: column; }
.size-options button.active { border: 2px solid var(--blue); background: #f4fbff; }
.size-options b { color: var(--navy); font-size: 10px; }
.size-options small { color: #8d99a4; font-size: 7px; margin-top: 4px; line-height: 1.35; }
.area-calculator { margin: 14px 0; padding: 15px; border: 1px solid #cfe0e9; border-radius: 7px; background: #f4fafd; display: grid; grid-template-columns: 1fr auto; gap: 10px; }
.area-calculator > div:first-child { display: flex; align-items: center; gap: 10px; }
.area-calculator > div:first-child > div { display: flex; flex-direction: column; }
.calculator-icon { width: 34px; height: 34px; display: grid; place-items: center; border-radius: 50%; color: var(--blue); background: var(--blue-light); }
.area-calculator strong { color: var(--navy); font-size: 9px; }
.area-calculator small { color: #8795a1; font-size: 7px; margin-top: 2px; }
.area-input { display: grid; grid-template-columns: 27px 65px 27px; }
.area-input button { border: 1px solid #cfd9df; background: #fff; cursor: pointer; }
.area-input button:first-child { border-radius: 5px 0 0 5px; }.area-input button:last-child { border-radius: 0 5px 5px 0; }
.area-input label { position: relative; border-top: 1px solid #cfd9df; border-bottom: 1px solid #cfd9df; background: #fff; }
.area-input input { width: 100%; height: 100%; padding: 0 20px 0 5px; border: 0; outline: 0; text-align: center; font-size: 10px; font-weight: 800; }
.area-input label span { position: absolute; right: 7px; top: 9px; color: #7f8d98; font-size: 8px; }
.calculation-result { grid-column: 1 / -1; padding-top: 9px; border-top: 1px solid #dce8ee; color: #738391; font-size: 8px; text-align: right; }
.calculation-result strong { color: var(--blue); }
.buy-panel { margin-top: 17px; padding: 20px; border: 1px solid var(--line); border-radius: 8px; box-shadow: 0 12px 35px rgba(11,31,53,.08); }
.buy-price { display: flex; flex-direction: column; }
.buy-price small { color: #86939e; font-size: 8px; }.buy-price strong { color: var(--navy); font-size: 27px; line-height: 1.2; }.buy-price span { color: #9ba5ae; font-size: 8px; }
.stock-info { margin: 13px 0; display: flex; align-items: center; gap: 9px; }
.stock-info > span { width: 8px; height: 8px; border-radius: 50%; background: #68b348; box-shadow: 0 0 0 5px rgba(104,179,72,.1); }
.stock-info div { display: flex; flex-direction: column; }.stock-info b { color: #45852e; font-size: 9px; }.stock-info small { color: #8e9aa5; font-size: 7px; }
.buy-actions { display: grid; grid-template-columns: 100px 1fr; gap: 9px; }
.quantity { display: grid; grid-template-columns: 28px 1fr 28px; border: 1px solid var(--line); border-radius: 6px; overflow: hidden; }
.quantity button { border: 0; background: #f5f7f8; cursor: pointer; }.quantity input { min-width: 0; border: 0; outline: 0; text-align: center; font-size: 10px; font-weight: 800; }
.primary-add { min-height: 48px; border: 0; border-radius: 6px; color: var(--navy); background: var(--lime); font-size: 11px; font-weight: 900; cursor: pointer; display: flex; align-items: center; justify-content: center; gap: 9px; transition: .2s; }
.primary-add:hover { background: var(--lime-dark); transform: translateY(-1px); }
.primary-add svg { width: 19px; fill: none; stroke: currentColor; stroke-width: 1.8; }
.delivery-box { padding-top: 12px; }
.delivery-box > div { min-height: 52px; padding: 10px 0; border-bottom: 1px solid var(--line); display: grid; grid-template-columns: 31px 1fr auto; align-items: center; gap: 9px; }
.delivery-box > div > span { width: 31px; height: 31px; display: grid; place-items: center; border-radius: 50%; background: var(--paper); color: var(--blue); }
.delivery-box p { margin: 0; display: flex; flex-direction: column; }.delivery-box strong { color: var(--navy); font-size: 9px; }.delivery-box small { color: #8d99a4; font-size: 7px; margin-top: 2px; }
.delivery-box > div > b, .delivery-box a { color: #536475; font-size: 8px; }

.product-assurance { background: var(--navy); color: #fff; }
.product-assurance__grid { min-height: 105px; display: grid; grid-template-columns: repeat(3, 1fr); align-items: center; }
.product-assurance article { min-height: 56px; padding: 0 35px; border-right: 1px solid rgba(255,255,255,.13); display: flex; align-items: center; gap: 15px; }
.product-assurance article:first-child { padding-left: 0; }.product-assurance article:last-child { border: 0; }
.product-assurance article > span { width: 38px; height: 38px; flex: 0 0 auto; display: grid; place-items: center; border-radius: 50%; color: var(--lime); background: rgba(255,255,255,.07); }
.product-assurance article div { display: flex; flex-direction: column; }.product-assurance strong { font-size: 10px; }.product-assurance small { margin-top: 4px; color: #9fb0bd; font-size: 8px; line-height: 1.4; }
.product-tabs-nav { position: sticky; top: 134px; z-index: 30; border-bottom: 1px solid var(--line); background: rgba(255,255,255,.96); backdrop-filter: blur(9px); }
.product-tabs-nav .shell { height: 59px; display: flex; align-items: center; gap: 35px; overflow-x: auto; }
.product-tabs-nav a { height: 100%; display: flex; align-items: center; white-space: nowrap; border-bottom: 2px solid transparent; color: #74818d; font-size: 9px; font-weight: 800; }
.product-tabs-nav a:hover, .product-tabs-nav a.active { color: var(--blue); border-color: var(--blue); }

.product-content-grid { display: grid; grid-template-columns: 1fr 370px; gap: 80px; }
.product-description h2, .technical-section h2 { margin: 0 0 19px; color: var(--navy); font: 700 40px/1.05 "Space Grotesk"; letter-spacing: -1.3px; }
.large-copy { max-width: 730px; color: var(--muted); font-size: 13px; line-height: 1.85; }
.application-grid { margin-top: 35px; display: grid; grid-template-columns: repeat(2, 1fr); gap: 14px; }
.application-grid article { padding: 22px; border: 1px solid var(--line); border-radius: 8px; }
.application-grid article > span { width: 38px; height: 38px; display: grid; place-items: center; border-radius: 50%; color: var(--blue); background: var(--blue-light); }
.application-grid h3 { margin: 14px 0 7px; color: var(--navy); font-size: 11px; }.application-grid p { margin: 0; color: #778592; font-size: 8px; line-height: 1.6; }
.suitability-card { align-self: start; padding: 27px; border-radius: 10px; background: var(--paper); }
.suitability-card h3 { margin: 0 0 20px; color: var(--navy); font-size: 15px; line-height: 1.4; }
.suitability-row { padding: 13px 0; border-bottom: 1px solid #dde4e8; display: flex; gap: 11px; }
.suitability-row > span { width: 25px; height: 25px; flex: 0 0 auto; display: grid; place-items: center; border-radius: 50%; font-size: 10px; font-weight: 900; }
.suitability-row.yes > span { color: #478d31; background: #e4f1df; }.suitability-row.warning > span { color: #a46b10; background: #fff0cf; }.suitability-row.no > span { color: #a54d50; background: #f8e2e3; }
.suitability-row p { margin: 0; display: flex; flex-direction: column; }.suitability-row b { color: var(--navy); font-size: 9px; }.suitability-row small { margin-top: 3px; color: #8996a1; font-size: 7px; }
.suitability-card button { width: 100%; min-height: 40px; margin-top: 19px; border: 1px solid #c7d2da; border-radius: 5px; color: var(--blue); background: #fff; font-size: 9px; font-weight: 800; cursor: pointer; }

.kit-section { background: var(--paper); }
.kit-table { border: 1px solid var(--line); border-radius: 9px; overflow: hidden; background: #fff; }
.kit-head, .kit-row { display: grid; grid-template-columns: .8fr 1.3fr .45fr 1.4fr; align-items: center; gap: 25px; padding: 0 24px; }
.kit-head { min-height: 44px; color: #7e8b96; background: #edf1f3; text-transform: uppercase; font-size: 7px; font-weight: 900; letter-spacing: .8px; }
.kit-row { min-height: 85px; border-top: 1px solid var(--line); color: #71808d; font-size: 8px; }
.kit-row > span:first-child { color: var(--navy); font-weight: 700; }.kit-row > span:first-child b { color: var(--blue); margin-right: 8px; }
.kit-row > span:nth-child(2) { display: flex; align-items: center; gap: 12px; color: var(--navy); }
.kit-row > span:nth-child(3) { color: var(--navy); font-weight: 800; }
.kit-can { position: relative; width: 35px; height: 40px; flex: 0 0 auto; border-radius: 2px 2px 7px 7px; background: linear-gradient(135deg, #1987bd, #0e4c70); }
.kit-can::before { content: ""; position: absolute; left: -2px; right: -2px; top: -3px; height: 7px; background: #c9d2d6; border-radius: 2px; }
.kit-can--primer { background: linear-gradient(135deg, #3d5260, #152b3a); }.kit-can--finish { background: linear-gradient(135deg, var(--lime), #94c01f); }
.kit-row--optional { background: #fbfcfc; }.kit-flakes { width: 35px; height: 40px; background: radial-gradient(circle at 30% 30%, #344 0 4%, transparent 5%), radial-gradient(circle at 70% 60%, #8b9 0 4%, transparent 5%), radial-gradient(circle at 50% 80%, #567 0 3%, transparent 4%), #dfe4e3; border-radius: 4px; }

.application-section { background: #fff; }
.application-timeline { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; counter-reset: timeline; }
.application-timeline article { position: relative; min-height: 260px; padding: 25px 22px; border: 1px solid var(--line); border-radius: 8px; }
.application-timeline article > span { position: absolute; top: 18px; right: 18px; color: #e1e6e9; font: 700 30px "Space Grotesk"; }
.timeline-icon { width: 47px; height: 47px; display: grid; place-items: center; border-radius: 50%; color: var(--blue); background: var(--blue-light); font-size: 20px; }
.application-timeline h3 { margin: 22px 0 10px; color: var(--navy); font-size: 12px; }.application-timeline p { min-height: 65px; color: #74828f; font-size: 8px; line-height: 1.7; }.application-timeline small { color: var(--blue); font-size: 7px; font-weight: 800; }
.application-warning { margin-top: 20px; padding: 17px 20px; border-left: 3px solid var(--orange); background: #fff8ec; display: flex; gap: 14px; }
.application-warning > span { width: 25px; height: 25px; flex: 0 0 auto; display: grid; place-items: center; border-radius: 50%; color: #a56b0d; background: #ffe4b5; font-weight: 900; }
.application-warning p { margin: 0; color: #7c6b50; font-size: 9px; line-height: 1.6; }

.technical-section { background: var(--navy); color: #fff; }
.technical-grid { display: grid; grid-template-columns: 1.15fr .85fr; gap: 80px; }
.technical-section h2 { color: #fff; }
.technical-table { border-top: 1px solid rgba(255,255,255,.14); }
.technical-table div { min-height: 48px; border-bottom: 1px solid rgba(255,255,255,.12); display: flex; align-items: center; justify-content: space-between; gap: 20px; }
.technical-table span { color: #94a7b6; font-size: 9px; }.technical-table strong { font-size: 9px; text-align: right; }
.conditions-card { align-self: start; padding: 28px; border: 1px solid rgba(255,255,255,.12); border-radius: 9px; background: rgba(255,255,255,.05); }
.conditions-card h3 { margin: 0 0 17px; font-size: 14px; }
.conditions-card > div { min-height: 61px; border-bottom: 1px solid rgba(255,255,255,.1); display: flex; align-items: center; gap: 14px; }
.conditions-card > div > span { width: 34px; height: 34px; display: grid; place-items: center; border-radius: 50%; background: rgba(255,255,255,.07); }
.conditions-card p { margin: 0; display: flex; flex-direction: column; }.conditions-card small { color: #8fa3b2; font-size: 7px; }.conditions-card strong { margin-top: 3px; font-size: 10px; }
.conditions-note { margin-top: 17px !important; color: #8fa3b2; font-size: 7px; line-height: 1.6; }

.documents-section { background: var(--paper); }
.document-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 12px; }
.document-grid a { min-height: 80px; padding: 15px 18px; border: 1px solid var(--line); border-radius: 7px; background: #fff; display: grid; grid-template-columns: 42px 1fr auto; align-items: center; gap: 13px; transition: .2s; }
.document-grid a:hover { transform: translateY(-2px); box-shadow: var(--shadow); border-color: #c5d2db; }
.doc-icon { width: 40px; height: 47px; display: grid; place-items: center; color: #fff; background: #e25b57; clip-path: polygon(0 0, 75% 0, 100% 25%, 100% 100%, 0 100%); font-size: 8px; font-weight: 900; }
.doc-icon--blue { background: var(--blue); }
.document-grid p { margin: 0; display: flex; flex-direction: column; }.document-grid strong { color: var(--navy); font-size: 10px; }.document-grid small { margin-top: 5px; color: #8d98a2; font-size: 7px; }.document-grid b { color: var(--blue); font-size: 20px; }

.reviews-grid { display: grid; grid-template-columns: 300px 1fr; gap: 65px; }
.reviews-summary h2 { margin: 0; color: var(--navy); font: 700 50px "Space Grotesk"; }.reviews-summary h2 span { color: #f1aa22; font: 400 12px "Manrope"; letter-spacing: 1px; }
.reviews-summary p { color: #84919d; font-size: 8px; }.reviews-summary button { min-height: 39px; margin-top: 13px; padding: 0 18px; border: 1px solid var(--navy); border-radius: 5px; background: #fff; color: var(--navy); font-size: 9px; font-weight: 800; cursor: pointer; }
.review-list article { padding: 0 0 24px; margin-bottom: 23px; border-bottom: 1px solid var(--line); }
.review-list article > div { display: flex; justify-content: space-between; }.review-list strong { color: var(--navy); font-size: 11px; }.review-list article > div span { color: #f1aa22; font-size: 9px; letter-spacing: 1px; }
.review-list p { color: #697885; font-size: 9px; line-height: 1.7; }.review-list footer { display: flex; gap: 12px; color: #9aa4ad; font-size: 7px; }.review-list footer b { color: #536372; }
.related-section { padding: 80px 0; background: var(--paper); }
.related-section .section-heading > a { color: var(--blue); font-size: 9px; font-weight: 800; }
.related-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; }
.related-grid article { position: relative; padding: 0 16px 17px; border: 1px solid var(--line); border-radius: 8px; background: #fff; }
.related-visual { height: 170px; margin: 0 -16px 15px; display: grid; place-items: center; background: radial-gradient(circle, #fff, #edf1f2); border-radius: 8px 8px 0 0; }
.related-grid small { color: var(--blue); font-size: 7px; font-weight: 800; }.related-grid h3 { min-height: 42px; margin: 7px 0 10px; color: var(--navy); font-size: 11px; line-height: 1.45; }.related-grid strong { color: var(--navy); font-size: 14px; }.related-grid button { position: absolute; right: 15px; bottom: 13px; width: 32px; height: 32px; border: 0; border-radius: 5px; background: var(--lime); color: var(--navy); font-size: 17px; cursor: pointer; }
.tool-shape { display: block; position: relative; }
.tool-shape--roller { width: 90px; height: 32px; border-radius: 16px; background: #3b5467; transform: rotate(-15deg); }.tool-shape--roller::after { content: ""; position: absolute; width: 55px; height: 5px; right: -35px; bottom: -18px; background: #8ea0aa; transform: rotate(50deg); }
.tool-shape--shoes { width: 83px; height: 27px; border-radius: 40% 10% 20% 30%; background: #172f43; box-shadow: 20px 18px 0 #365269; transform: rotate(-10deg); }
.tool-shape--mixer { width: 14px; height: 105px; background: #9ba9af; }.tool-shape--mixer::after { content: ""; position: absolute; left: -22px; bottom: 0; width: 55px; height: 35px; border: 6px double #75868f; border-radius: 50%; }
.tool-shape--flakes { width: 85px; height: 105px; border-radius: 4px; background: radial-gradient(circle at 20% 30%, #304452 0 3%, transparent 4%), radial-gradient(circle at 70% 20%, #879894 0 3%, transparent 4%), radial-gradient(circle at 40% 70%, #566c78 0 4%, transparent 5%), #d9dedd; box-shadow: 0 15px 20px rgba(11,31,53,.15); }
.sticky-mobile-buy { display: none; }

@media (max-width: 1050px) {
  .product-hero { grid-template-columns: 1fr 430px; gap: 30px; }
  .product-gallery__stage { min-height: 520px; }
  .large-bucket--main { left: 29%; }
  .product-content-grid { gap: 40px; }
}

@media (max-width: 820px) {
  .breadcrumbs { padding-top: 12px; }
  .product-hero { grid-template-columns: 1fr; }
  .product-gallery__stage { min-height: 570px; }
  .product-buybox { padding: 0 5px; }
  .product-assurance__grid { grid-template-columns: 1fr; padding: 15px 0; }
  .product-assurance article { padding: 16px 0; border-right: 0; border-bottom: 1px solid rgba(255,255,255,.13); }
  .product-tabs-nav { top: 120px; }
  .product-content-grid, .technical-grid { grid-template-columns: 1fr; gap: 35px; }
  .application-timeline { grid-template-columns: repeat(2, 1fr); }
  .document-grid { grid-template-columns: 1fr; }
  .reviews-grid { grid-template-columns: 1fr; gap: 35px; }
  .related-grid { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 560px) {
  .product-page { padding-bottom: 72px; }
  .breadcrumbs { white-space: nowrap; overflow-x: auto; }
  .product-hero { padding-top: 4px; gap: 28px; }
  .product-gallery { grid-template-columns: 1fr; }
  .product-gallery__thumbs { order: 2; flex-direction: row; }
  .product-gallery__thumbs button { width: 64px; height: 60px; }
  .product-gallery__stage { min-height: 430px; }
  .large-bucket--main { left: 27%; bottom: 50px; transform: scale(.78); transform-origin: bottom; }
  .large-bucket--primer { left: 3%; bottom: 45px; transform: rotate(-6deg) scale(.72); transform-origin: bottom; }
  .gallery-box { right: 1%; bottom: 46px; transform: rotate(5deg) scale(.75); transform-origin: bottom; }
  .gallery-scene--layers { padding: 70px 15px 25px; }
  .layer { width: 100%; }
  .product-buybox h1 { font-size: 31px; }
  .product-highlights { grid-template-columns: 1fr; }
  .size-options { grid-template-columns: 1fr; }
  .area-calculator { grid-template-columns: 1fr; }
  .area-input { width: 150px; }
  .calculation-result { text-align: left; }
  .buy-actions { grid-template-columns: 85px 1fr; }
  .product-tabs-nav { top: 108px; }
  .product-tabs-nav .shell { gap: 24px; }
  .product-description h2, .technical-section h2 { font-size: 33px; }
  .application-grid { grid-template-columns: 1fr; }
  .kit-table { overflow-x: auto; }
  .kit-head, .kit-row { min-width: 720px; }
  .application-timeline { grid-template-columns: 1fr; }
  .application-timeline article { min-height: 220px; }
  .related-grid { grid-template-columns: 1fr; }
  .sticky-mobile-buy { position: fixed; z-index: 80; left: 0; right: 0; bottom: 0; min-height: 65px; padding: 9px 14px; background: #fff; border-top: 1px solid var(--line); box-shadow: 0 -10px 30px rgba(11,31,53,.12); display: flex; align-items: center; justify-content: space-between; gap: 15px; }
  .sticky-mobile-buy div { display: flex; flex-direction: column; }.sticky-mobile-buy small { color: #87939e; font-size: 7px; }.sticky-mobile-buy strong { color: var(--navy); font-size: 16px; }
  .sticky-mobile-buy button { min-height: 43px; padding: 0 17px; border: 0; border-radius: 5px; color: var(--navy); background: var(--lime); font-size: 9px; font-weight: 900; }
}

/* Korekta czytelności po pierwszym przeglądzie prototypu */
.breadcrumbs { font-size: 11px; }
.product-meta { font-size: 10px; }
.product-lead { font-size: 14px; }
.product-rating-row { font-size: 11px; }
.product-highlights span { font-size: 11px; }
.variant-label { font-size: 10px; }
.variant-label strong { font-size: 12px; }
.size-options b { font-size: 12px; }
.size-options small { font-size: 9px; }
.area-calculator strong { font-size: 11px; }
.area-calculator small,
.calculation-result { font-size: 9px; }
.buy-price small,
.buy-price span { font-size: 10px; }
.stock-info b { font-size: 11px; }
.stock-info small { font-size: 9px; }
.delivery-box strong { font-size: 11px; }
.delivery-box small,
.delivery-box > div > b,
.delivery-box a { font-size: 9px; }
.product-assurance strong { font-size: 12px; }
.product-assurance small { font-size: 10px; }
.product-tabs-nav a { font-size: 11px; }
.large-copy { font-size: 15px; }
.application-grid h3 { font-size: 13px; }
.application-grid p { font-size: 10px; }
.suitability-row b { font-size: 11px; }
.suitability-row small { font-size: 9px; }
.kit-head { font-size: 9px; }
.kit-row { font-size: 10px; }
.application-timeline h3 { font-size: 14px; }
.application-timeline p { font-size: 10px; }
.application-timeline small { font-size: 9px; }
.application-warning p { font-size: 11px; }
.technical-table span,
.technical-table strong { font-size: 11px; }
.conditions-card small,
.conditions-note { font-size: 9px; }
.conditions-card strong { font-size: 12px; }
.document-grid strong { font-size: 12px; }
.document-grid small { font-size: 9px; }
.reviews-summary p,
.review-list p { font-size: 11px; }
.review-list footer { font-size: 9px; }
.related-grid small { font-size: 9px; }
.related-grid h3 { font-size: 13px; }

/* Standard czytelności karty produktu */
.breadcrumbs { font-size: 13px; }
.gallery-badge { font-size: 11px; }
.product-meta { font-size: 12px; }
.product-lead { font-size: 16px; line-height: 1.7; }
.product-rating-row { font-size: 13px; }
.product-highlights span { font-size: 13px; }
.variant-label { font-size: 12px; }
.variant-label strong { font-size: 14px; }
.size-options b { font-size: 14px; }
.size-options small { font-size: 12px; line-height: 1.4; }
.area-calculator strong { font-size: 13px; }
.area-calculator small,
.calculation-result { font-size: 12px; line-height: 1.45; }
.area-input input { font-size: 13px; }
.area-input label span { font-size: 11px; }
.buy-price small,
.buy-price span { font-size: 12px; }
.stock-info b { font-size: 13px; }
.stock-info small { font-size: 12px; }
.primary-add { font-size: 14px; }
.delivery-box strong { font-size: 13px; }
.delivery-box small,
.delivery-box > div > b,
.delivery-box a { font-size: 12px; line-height: 1.4; }
.product-assurance strong { font-size: 14px; }
.product-assurance small { font-size: 12px; }
.product-tabs-nav a { font-size: 13px; }
.large-copy { font-size: 16px; }
.application-grid h3 { font-size: 15px; }
.application-grid p { font-size: 13px; }
.suitability-row b { font-size: 13px; }
.suitability-row small { font-size: 12px; line-height: 1.4; }
.suitability-card button { font-size: 13px; }
.kit-head { font-size: 12px; }
.kit-row { min-height: 96px; font-size: 13px; line-height: 1.45; }
.application-timeline h3 { font-size: 16px; }
.application-timeline p { min-height: 78px; font-size: 13px; }
.application-timeline small { font-size: 12px; }
.application-warning p { font-size: 13px; }
.technical-table span,
.technical-table strong { font-size: 13px; }
.conditions-card small,
.conditions-note { font-size: 12px; line-height: 1.45; }
.conditions-card strong { font-size: 14px; }
.document-grid strong { font-size: 14px; }
.document-grid small { font-size: 12px; }
.reviews-summary p,
.review-list p { font-size: 13px; }
.reviews-summary button { font-size: 13px; }
.review-list strong { font-size: 14px; }
.review-list article > div span { font-size: 12px; }
.review-list footer { font-size: 12px; }
.related-section .section-heading > a { font-size: 13px; }
.related-grid small { font-size: 11px; }
.related-grid h3 { min-height: 48px; font-size: 15px; }
.sticky-mobile-buy small { font-size: 11px; }
.sticky-mobile-buy button { font-size: 13px; }
