/* N04-N06: wspólna typografia i narożniki, spokojna ekspozycja produktów. */
.shop-page { background:#fff; color:var(--ink); padding-bottom:0; }
.shop-page *, .shop-cart-summary * { min-width:0; }
.shop-page h1 { font-size:clamp(36px,3.5vw,50px); line-height:1.13; letter-spacing:-.025em; font-weight:550; }
.shop-page h2 { font-size:clamp(28px,2.7vw,38px); line-height:1.2; letter-spacing:-.02em; font-weight:550; }
.shop-page h3 { letter-spacing:-.015em; }
.shop-page p { margin-top:0; }
.shop-page .icon { flex:none; }
.shop-page :is(a,button,input,select):focus-visible { outline:2px solid #a94b0a; outline-offset:4px; }
.shop-breadcrumb { padding-top:30px; font-size:14px; color:#586772; }
.shop-breadcrumb ol { display:flex; flex-wrap:wrap; align-items:center; gap:8px 12px; padding:0; margin:0; list-style:none; }
.shop-breadcrumb li+li:before { content:'/'; margin-right:12px; color:#a5afb1; }
.shop-breadcrumb a:hover { color:var(--ink); text-decoration:underline; text-underline-offset:4px; }
.shop-heading { display:flex; align-items:center; justify-content:space-between; gap:36px; padding:34px 0 32px; }
.shop-heading .eyebrow { margin-bottom:20px; }
.shop-heading h1 { margin-bottom:20px; }
.shop-heading p:not(.eyebrow) { font-size:18px; line-height:1.65; max-width:630px; color:#586772; margin-bottom:0; }
.shop-heading-mark { display:flex; align-items:center; width:300px; flex:none; gap:0; padding-right:10px; opacity:.9; }
.shop-heading-mark svg { width:160px; }
.shop-heading-mark svg+svg { margin-left:-12px; width:190px; }
.shop-category-mark { width:145px; flex:none; }
.shop-category-nav { display:flex; flex-wrap:wrap; gap:4px 24px; border-top:1px solid var(--line); border-bottom:1px solid var(--line); padding:10px 0; font-size:15px; }
.shop-category-nav a { display:flex; align-items:center; min-height:44px; position:relative; color:#566670; }
.shop-category-nav a:hover, .shop-category-nav a[aria-current] { color:var(--ink); }
.shop-category-nav a[aria-current]:after { content:''; position:absolute; bottom:0; left:0; right:0; height:2px; background:var(--orange); }
.shop-category-nav a[aria-current] { font-weight:700; }
.shop-category-nav-full { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:0; padding:0; }
.shop-category-nav-full a { display:grid; grid-template-columns:1fr auto; gap:6px; padding:14px 16px 22px; font-size:15px; color:var(--ink); transition:background .18s; }
.shop-category-nav-full a:first-child { padding-left:0; }
.shop-category-nav-full a+a { border-left:1px solid var(--line); }
.shop-category-nav-full a:hover { background:#f6f4f1; }
.shop-category-nav-full .equipment-sketch { grid-column:1/-1; width:100px; height:86px; }
.shop-category-nav-full .icon { width:18px; height:18px; }
.shop-catalog { padding:46px 0 0; }
.shop-list-heading { display:flex; justify-content:space-between; align-items:center; gap:20px; margin-bottom:26px; }
.shop-count { font-size:14px; color:#586772; margin:0; }
.shop-toolbar { display:grid; grid-template-columns:1.6fr 1fr 1fr 1fr; gap:0; background:#f7f5f2; padding:12px 18px; border:1px solid #e2dfda; border-radius:3px; }
.shop-toolbar input,.shop-toolbar select { border:0; border-radius:0; background:transparent; color:var(--ink); width:100%; min-height:44px; font:inherit; font-size:15px; padding:6px 4px; }
.shop-search { display:flex; gap:10px; align-items:center; padding-right:20px; }
.shop-search .icon { width:19px; height:19px; }
.shop-select { padding:0 0 0 18px; margin-left:18px; border-left:1px solid #ddd9d4; display:flex; flex-direction:column; justify-content:center; }
.shop-select>span { font-size:12px; color:#656c72; padding-left:4px; line-height:1.2; }
.shop-select select { min-height:30px; padding-top:0; padding-bottom:0; }
.shop-active-filters { display:flex; align-items:center; justify-content:space-between; gap:20px; margin-top:18px; font-size:14px; }
.shop-active-filters[hidden] { display:none; }
.shop-active-filters button { display:flex; align-items:center; gap:8px; min-height:44px; border:0; background:none; color:var(--ink); padding:4px 0; white-space:nowrap; }
.shop-active-filters .icon { width:16px; height:16px; }
.shop-active-filters button:hover { text-decoration:underline; text-underline-offset:4px; }
.shop-product-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:34px 24px; margin-top:28px; }
.shop-category-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
.shop-card { position:relative; }
.shop-card-link { display:block; height:100%; }
.shop-card-photo { aspect-ratio:1.15; display:flex; align-items:center; justify-content:center; background:#f7f5f2; overflow:hidden; position:relative; border:1px solid #ece8e1; border-radius:3px; }
.shop-card-photo img { width:100%; height:100%; object-fit:contain; padding:18px; mix-blend-mode:multiply; transition:transform .3s ease; }
.shop-card-open { position:absolute; right:12px; bottom:12px; display:grid; place-items:center; width:34px; height:34px; color:#535a60; border-radius:50%; background:#fff; border:1px solid #dfdcd7; transition:background .2s; }
.shop-card-open .icon { width:17px; height:17px; }
.shop-card-link:hover .shop-card-photo img { transform:scale(1.04); }
.shop-card-link:hover .shop-card-open { background:var(--ink); color:#fff; }
.shop-card-copy { padding:18px 2px 10px; }
.shop-brand { font-size:12px; text-transform:uppercase; letter-spacing:.075em; font-weight:650; color:#5b636a; margin:0 0 8px; }
.shop-card h3 { font-size:20px; line-height:1.3; font-weight:600; margin:0 0 8px; }
.shop-card-spec { font-size:14px; color:#586772; margin:0; }
.shop-card-bottom { display:flex; align-items:center; justify-content:space-between; gap:10px; margin-top:15px; }
.shop-card-price { margin:0; font-size:20px; font-weight:650; line-height:1.4; }
.shop-card-price small { font-size:13px; color:#586772; font-weight:400; }
.shop-card-colors { display:flex; gap:5px; }
.shop-card-colors i { display:block; width:13px; height:13px; border:1px solid #adb2b6; border-radius:50%; background:var(--swatch); }
.shop-vat-note { font-size:14px; color:#586772; margin:24px 0 0; padding-top:20px; border-top:1px solid var(--line); }
.shop-compare { margin-top:32px; border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.shop-compare summary { display:flex; align-items:center; justify-content:space-between; gap:18px; padding:22px 0; font-size:17px; cursor:pointer; list-style:none; }
.shop-compare summary::-webkit-details-marker { display:none; }
.shop-compare summary .icon { width:18px; height:18px; }
.shop-compare[open] summary .icon { transform:rotate(45deg); }
.shop-compare-scroll { overflow:auto; }
.shop-compare table { width:100%; min-width:630px; border-collapse:collapse; font-size:15px; text-align:left; }
.shop-compare th,.shop-compare td { width:25%; vertical-align:top; border-bottom:1px solid var(--line); padding:17px 20px; }
.shop-compare th { font-weight:550; }.shop-compare thead { background:#f3f0ec; }
.shop-compare tbody th { padding-left:0; color:#586772; }.shop-compare td small { display:block; font-size:12px; color:#586772; margin-top:5px; }
.shop-compare>p { font-size:14px; color:#586772; margin:20px 0; }.shop-compare a:hover { text-decoration:underline; }
.shop-sr-only { position:absolute; width:1px; height:1px; padding:0; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; }
.shop-help { display:flex; align-items:center; justify-content:space-between; gap:32px; border-top:1px solid var(--line); padding:30px 0 42px; margin:48px 0 0; }
.shop-help h2 { font-size:25px; line-height:1.3; margin:0 0 8px; }
.shop-help p { font-size:16px; color:#586772; margin:0; }
.shop-help>.textlink { flex:none; font-size:16px; min-height:44px; gap:18px; }
.shop-no-results { grid-column:1/-1; text-align:center; padding:50px 20px; border:1px solid var(--line); }
.shop-no-results h3 { font-size:26px; margin-bottom:16px; }
.shop-no-results p { color:#586772; }
.shop-missing { padding:80px var(--gutter); }
.shop-missing h1 { margin-bottom:30px; }
.shop-product-layout { display:grid; grid-template-columns:minmax(0,1.08fr) minmax(0,1fr); gap:clamp(32px,5vw,76px); margin:36px 0 65px; align-items:start; }
.shop-main-photo { display:block; position:relative; width:100%; height:clamp(330px,36vw,520px); background:#f6f4f0; border:1px solid #e1ded9; border-radius:3px; padding:0; overflow:hidden; cursor:zoom-in; }
.shop-main-photo>img { display:block; width:100%; height:100%; object-fit:contain; padding:35px; mix-blend-mode:multiply; }
.shop-main-photo.corner:after { width:30px; height:30px; border-width:3px; }
.shop-zoom-label { position:absolute; right:16px; bottom:16px; display:flex; align-items:center; gap:10px; background:#fffffff0; padding:9px 14px; border:1px solid #e2ded9; border-radius:2px; font-size:14px; }
.shop-zoom-label .icon { width:17px; height:17px; }
.shop-main-photo:hover .shop-zoom-label { background:var(--ink); color:#fff; }
.shop-thumbnails { display:flex; gap:12px; margin-top:15px; }
.shop-thumbnails button { width:84px; height:68px; background:#f7f5f2; border:1px solid #e1ded9; border-radius:2px; padding:7px; }
.shop-thumbnails img { width:100%; height:100%; object-fit:contain; mix-blend-mode:multiply; }
.shop-thumbnails button[aria-pressed=true] { border-color:var(--ink); box-shadow:inset 0 -2px var(--ink); }
.shop-thumbnails button:hover { border-color:var(--ink); }
.shop-photo-caption { color:#586772; font-size:13px; margin-top:13px!important; }
.shop-product-info h1 { font-size:clamp(30px,3.1vw,44px); margin:14px 0 18px; }
.shop-product-lead { color:#586772; font-size:17px; line-height:1.65; margin:0 0 18px; }
.shop-feature-tags { display:flex; flex-wrap:wrap; gap:6px 14px; padding:0 0 24px; margin:0; border-bottom:1px solid var(--line); list-style:none; font-size:13px; }
.shop-feature-tags li { position:relative; padding-left:12px; }
.shop-feature-tags li:before { content:''; width:4px; height:4px; background:#666d74; position:absolute; left:0; top:10px; }
.shop-variants { border:0; padding:0; margin:24px 0 20px; }
.shop-variants legend { font-size:14px; margin-bottom:12px; }
.shop-variants legend strong { margin-left:8px; font-weight:600; }
.shop-variants>div { display:flex; flex-wrap:wrap; gap:12px; }
.shop-swatch { display:flex; gap:9px; align-items:center; position:relative; padding:8px 12px; border:1px solid #dedbd6; border-radius:3px; font-size:14px; cursor:pointer; }
.shop-swatch:has(input:checked) { border-color:var(--ink); box-shadow:inset 0 0 0 1px var(--ink); }
.shop-swatch:hover { background:#f6f4f0; }
.shop-swatch input { position:absolute; opacity:0; width:1px; height:1px; }
.shop-swatch:has(input:focus-visible) { outline:2px solid #a94b0a; outline-offset:4px; }
.shop-swatch [style] { display:block; background:var(--swatch); border:1px solid #a7acb0; border-radius:50%; width:21px; height:21px; }
.shop-price-block { margin:22px 0; }
.shop-price-block p { font-size:30px; letter-spacing:-.01em; font-weight:600; margin:0 0 2px; }
.shop-price-block>span { font-size:13px; color:#586772; }
.shop-buy-controls { display:flex; gap:12px; }
.shop-quantity { display:flex; align-items:stretch; border:1px solid #b9bfc4; border-radius:3px; flex:none; width:126px; }
.shop-quantity button { width:36px; border:0; background:transparent; color:var(--ink); font-size:22px; padding:0; }
.shop-quantity button:hover { background:#f2efea; }
.shop-quantity input { width:50px; padding:0; border:0; background:transparent; border-radius:0; text-align:center; font-size:16px; color:var(--ink); appearance:textfield; -moz-appearance:textfield; }
.shop-quantity input::-webkit-inner-spin-button { -webkit-appearance:none; }
.shop-buy-controls .button { flex:1; font-size:16px; min-height:54px; justify-content:center; gap:12px; padding:12px; }
.shop-buy-controls .button .icon { width:21px; height:21px; }
.shop-buy-controls .button.is-unavailable, .shop-buy-controls .button.is-unavailable:hover { background:#d5d9df; border-color:#d5d9df; color:#5f6b78; cursor:not-allowed; box-shadow:none; transform:none; }
.shop-availability-note { font-size:14px; color:#252c32; line-height:1.55; margin:12px 0 0!important; padding:10px 12px; background:#f3f5f7; border-left:3px solid #fd802e; }
.shop-delivery-note { font-size:13px; color:#586772; line-height:1.6; margin:12px 0 24px!important; }
.shop-included { border-top:1px solid var(--line); padding-top:20px; font-size:14px; }
.shop-included strong { font-weight:600; }
.shop-included p { color:#586772; margin:6px 0 18px; }
.shop-product-question { display:flex; align-items:center; gap:10px; font-size:14px; font-weight:600; min-height:44px; }
.shop-product-question .icon { width:17px; height:17px; }
.shop-product-question .icon:last-child { margin-left:auto; }
.shop-product-question:hover { color:#a94b0a; }
.shop-details { display:grid; grid-template-columns:1fr 1fr; gap:clamp(32px,5vw,76px); border-top:1px solid var(--line); padding:52px 0 32px; }
.shop-details .eyebrow { font-size:14px; }
.shop-details h2 { max-width:440px; font-size:32px; margin-bottom:20px; }
.shop-details p:not(.eyebrow) { color:#586772; font-size:16px; max-width:510px; }
.shop-details dl { margin:0; font-size:15px; }
.shop-details dl>div { display:grid; grid-template-columns:1fr 1.15fr; gap:20px; padding:14px 0; border-bottom:1px solid var(--line); }
.shop-details dt { color:#586772; }
.shop-details dd { margin:0; font-weight:500; }
.shop-information details { border-top:1px solid var(--line); padding:0; }
.shop-information details:last-child { border-bottom:1px solid var(--line); }
.shop-information summary { display:flex; justify-content:space-between; align-items:center; gap:20px; list-style:none; padding:22px 0; font-size:18px; cursor:pointer; }
.shop-information summary::-webkit-details-marker { display:none; }
.shop-information summary .icon { width:19px; height:19px; transition:transform .2s; }
.shop-information details[open] summary .icon { transform:rotate(45deg); }
.shop-information p,.shop-information .textlink { font-size:16px; max-width:750px; }
.shop-information .textlink { margin-bottom:24px; }
.shop-information p { color:#586772; }
.shop-lightbox img { max-height:65vh; width:100%; object-fit:contain; }
.shop-lightbox p { text-align:center; color:#586772; font-size:14px; margin-top:16px; }
.shop-image-error:before { content:'Zdjęcie chwilowo niedostępne'; display:block; position:absolute; inset:0; padding:30px 20px; align-content:center; text-align:center; background:#f3f0ec; color:#586772; font-size:14px; }
.shop-image-error>img { opacity:0; }
.shop-cart-count { position:absolute; top:0; right:0; min-width:17px; height:17px; border-radius:50%; background:var(--ink); color:#fff; padding:0 4px; font-size:10px; display:grid; place-items:center; }
[data-cart] { position:relative; }
.shop-cart-preview { font-size:12px; color:#666c72; margin:0 0 20px; }
.shop-cart-items { list-style:none; margin:0; padding:0; }
.shop-cart-row { display:grid; grid-template-columns:94px 1fr; gap:18px; padding:22px 0; border-bottom:1px solid var(--line); }
.shop-cart-row:first-child { padding-top:0; }
.shop-cart-photo { display:block; height:94px; background:#f6f4f0; border:1px solid #e7e5e1; }
.shop-cart-photo img { width:100%; height:100%; object-fit:contain; padding:8px; mix-blend-mode:multiply; }
.shop-cart-name { display:block; font-size:16px; line-height:1.4; font-weight:600; }
.shop-cart-name:hover { text-decoration:underline; text-underline-offset:3px; }
.shop-cart-variant { margin:5px 0 0; font-size:14px; color:#586772; }
.shop-cart-unit { margin:4px 0 12px; font-size:13px; color:#586772; }
.shop-cart-row-bottom { display:flex; justify-content:space-between; gap:10px; align-items:center; }
.shop-cart-quantity { display:flex; align-items:center; border:1px solid #d7d2cb; border-radius:2px; }
.shop-cart-quantity button { width:36px; height:38px; background:none; border:0; font-size:20px; color:var(--ink); }
.shop-cart-quantity button:hover:not(:disabled) { background:#f2efea; }
.shop-cart-quantity button:disabled { opacity:.35; cursor:default; }
.shop-cart-quantity span { min-width:26px; text-align:center; font-size:14px; }
.shop-cart-remove { border:0; background:none; color:#586772; font-size:13px; text-decoration:underline; text-underline-offset:3px; min-height:44px; }
.shop-cart-remove:hover { color:var(--ink); }
.shop-cart-line-price { display:block; text-align:right; font-size:16px; margin-top:8px; font-weight:600; }
.shop-cart-summary { padding:22px 28px; border-top:1px solid #dbd7d1; background:#f5f3f0; flex:none; }
.shop-cart-summary>div { display:flex; justify-content:space-between; gap:15px; align-items:center; font-size:15px; }
.shop-cart-summary strong { font-size:22px; font-weight:600; }
.shop-cart-summary p { margin:6px 0 18px; font-size:13px; color:#586772; }
.shop-cart-summary .button { width:100%; justify-content:center; gap:14px; min-height:52px; font-size:16px; }
.shop-cart-summary .icon { width:20px; height:20px; }
.shop-continue { display:flex; align-items:center; gap:12px; background:none; border:0; padding:20px 0 0; color:var(--ink); font-size:14px; min-height:44px; }
.shop-continue .icon { width:18px; height:18px; }
.shop-continue:hover { text-decoration:underline; text-underline-offset:3px; }
.shop-order-preview p { font-size:16px; }
.shop-order-preview .shop-preview-total { font-size:32px; font-weight:600; }
.shop-preview-total small { display:block; font-size:14px; font-weight:400; color:#586772; }
.shop-order-preview .button { font-size:16px; }
@media(min-width:1550px) { .shop-card-photo { aspect-ratio:1.23; } }
@media(max-width:1050px) {
 .shop-product-grid { grid-template-columns:repeat(3,minmax(0,1fr)); gap:28px 18px; }
 .shop-toolbar { grid-template-columns:1.2fr 1fr 1fr; gap:14px; padding:16px; }
 .shop-search { grid-column:1/-1; padding:0 0 8px; border-bottom:1px solid #ddd9d4; }
 .shop-select { margin:0; padding-left:12px; }.shop-select:nth-child(2) { border-left:0; padding-left:0; }
 .shop-category-nav-full { grid-template-columns:repeat(3,minmax(0,1fr)); }
 .shop-category-nav-full a { padding:12px 18px; }
 .shop-category-nav-full a:nth-child(4) { border-left:0; }.shop-category-nav-full a:nth-child(n+4) { border-top:1px solid var(--line); }
 .shop-category-nav-full .equipment-sketch { height:68px; }
 .shop-heading-mark { width:245px; }.shop-heading-mark svg { width:135px; }.shop-heading-mark svg+svg { width:160px; }
 .shop-help { gap:28px; }.shop-help h2 { font-size:24px; }
 .shop-product-layout { gap:28px; }.shop-main-photo>img { padding:20px; }
 .shop-feature-tags { gap:4px 10px; }.shop-product-lead { font-size:16px; }
 .shop-buy-controls { flex-wrap:wrap; }.shop-quantity { min-height:50px; width:114px; }.shop-buy-controls .button { flex-basis:100%; }
}
@media(max-width:760px) {
 body:has(.shop-page) .reviewbar { flex-direction:column; align-items:stretch; gap:4px; }
 body:has(.shop-page) .reviewbar>span { white-space:normal; font-size:10px; }
 body:has(.shop-page) .review-note { display:inline; }
 body:has(.shop-page) .reviewbar nav { flex-wrap:nowrap; overflow:auto; justify-content:flex-start; gap:14px; max-width:100%; }
 .shop-breadcrumb { padding-top:22px; font-size:12px; }.shop-breadcrumb ol { gap:6px 8px; }.shop-breadcrumb li+li:before { margin-right:8px; }
 .shop-heading { padding:32px 0; gap:15px; }.shop-heading .eyebrow { font-size:13px; }.shop-heading h1 { font-size:36px; }.shop-heading p:not(.eyebrow) { font-size:16px; }
 .shop-heading-mark { display:none; }.shop-category-mark { width:82px; align-self:flex-start; }
 .shop-category-nav { gap:2px 17px; font-size:13px; }.shop-category-nav-full { gap:0; }.shop-category-nav-full a { font-size:13px; padding:12px 9px; gap:3px; }
 .shop-category-nav-full a:first-child { padding-left:9px; }.shop-category-nav-full .equipment-sketch { width:78px; height:60px; }.shop-category-nav-full .icon { display:none; }
 .shop-catalog { padding-top:32px; }.shop-list-heading { gap:14px; margin-bottom:20px; }.shop-list-heading h2 { font-size:26px; }.shop-count { font-size:12px; white-space:nowrap; }
 .shop-toolbar { padding:10px 12px; gap:10px; }.shop-toolbar select { font-size:13px; padding-left:0; }.shop-select { padding-left:10px; }.shop-select>span { padding-left:0; }
 .shop-search { padding-bottom:2px; }.shop-active-filters { flex-wrap:wrap; gap:0 12px; }
 .shop-product-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:26px 16px; margin-top:22px; }
 .shop-card-photo { aspect-ratio:.96; }.shop-card-photo img { padding:10px; }.shop-card-open { width:28px; height:28px; right:7px; bottom:7px; }.shop-card-open .icon { width:15px; height:15px; }
 .shop-card-copy { padding-top:13px; }.shop-brand { font-size:11px; }.shop-card h3 { font-size:17px; min-height:44px; }.shop-card-spec { font-size:12px; min-height:39px; line-height:1.55; }.shop-card-bottom { flex-wrap:wrap; gap:7px; margin-top:12px; }.shop-card-price { font-size:17px; }.shop-card-colors { gap:4px; }.shop-card-colors i { width:10px; height:10px; }
 .shop-vat-note { font-size:12px; }.shop-help { display:block; margin:32px 0 0; padding:24px 0 32px; }.shop-help>.textlink { margin-top:16px; }.shop-help h2 { font-size:23px; }.shop-help p { font-size:15px; }
 .shop-product-layout { grid-template-columns:1fr; margin:24px 0 40px; gap:26px; }.shop-main-photo { height:auto; aspect-ratio:1.15; }.shop-main-photo>img { padding:24px; }.shop-thumbnails button { width:72px; height:58px; }.shop-zoom-label { right:12px; bottom:12px; padding:7px 10px; font-size:12px; }
 .shop-product-info h1 { font-size:34px; margin-top:12px; }.shop-product-info .shop-brand { font-size:12px; }.shop-product-lead { font-size:17px; }.shop-buy-controls { flex-wrap:nowrap; }.shop-buy-controls .button { flex-basis:auto; font-size:15px; }.shop-price-block p { font-size:30px; }
 .shop-quantity { width:112px; }.shop-quantity input { width:40px; }.shop-delivery-note { font-size:13px; }.shop-feature-tags { font-size:13px; }
 .shop-details { grid-template-columns:1fr; gap:16px; padding-top:32px; }.shop-details h2 { font-size:29px; }.shop-details p:not(.eyebrow) { font-size:16px; }.shop-details dl { font-size:14px; }
 .shop-information summary { font-size:16px; }.shop-information p { font-size:15px; }.shop-information .textlink { font-size:15px; }
}
@media(max-width:360px) {
 .shop-heading h1 { font-size:31px; }.shop-category-mark { display:none; }.shop-list-heading { flex-wrap:wrap; }.shop-card-price { font-size:16px; }
 .shop-product-grid { gap:24px 12px; }.shop-card h3 { font-size:16px; }.shop-card-spec { font-size:12px; }.shop-toolbar { grid-template-columns:1fr 1fr; }.shop-select:last-child { grid-column:1/-1; border-left:0; padding-left:0; }
 .shop-buy-controls { flex-wrap:wrap; }.shop-buy-controls .button { flex-basis:100%; }.shop-cart-row { grid-template-columns:72px 1fr; gap:12px; }.shop-cart-photo { height:80px; }.shop-cart-summary { padding:20px; }
}
@media(prefers-reduced-motion:reduce) { .shop-page *, .shop-page *:before, .shop-page *:after { transition:none!important; } }
/* Katalog z panelu: czytelna treść, warianty i wygodne strony listy. */
.shop-card-colors small{white-space:nowrap;color:var(--muted);font-size:12px}.shop-pagination{display:flex;align-items:center;justify-content:center;gap:28px;margin:44px 0 16px}.shop-pagination button{border:1px solid #bcc1c6;background:white;color:#263340;padding:13px 24px;border-radius:4px;cursor:pointer}.shop-pagination button:hover:not(:disabled){border-color:#ff7e18;background:#fff4e9}.shop-pagination button:disabled{opacity:.4;cursor:default}.shop-story{display:grid;grid-template-columns:1fr 1fr;gap:32px 64px;border-top:1px solid #dfdbd6;padding:64px 0 24px}.shop-story section{max-width:66ch}.shop-story h2{font-size:clamp(25px,2vw,34px);line-height:1.18;letter-spacing:-.03em;margin:0 0 22px}.shop-story p,.shop-story li{font-size:17px;line-height:1.7;color:#566771}.shop-story ul{padding-left:20px}.shop-story p+p{margin-top:16px}.shop-variant-options{gap:8px!important}.shop-variant-options .shop-swatch{max-width:100%;padding:10px 12px;border:1px solid #d3cec6;border-radius:4px;cursor:pointer}.shop-variant-options .shop-swatch:has(input:checked){border-color:#b95410;background:#fff4e8;box-shadow:0 0 0 1px #b95410}.shop-variant-options .shop-swatch>span:first-of-type{width:15px;height:15px;min-width:15px}.shop-variant-options .shop-swatch>span:last-child{font-size:14px;line-height:1.4}.shop-variant-options .shop-swatch:hover{border-color:#7d8f91}.shop-document-list{padding:0;list-style:none}.shop-document-list a{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:15px 0;border-bottom:1px solid #e3e0db;font-size:16px}.shop-heating-guide{padding:40px 0;border-top:1px solid #e0ddd8}.shop-heating-guide h2{font-size:30px}.shop-heating-guide>div{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}.shop-heating-guide p{font-size:16px;line-height:1.7;color:#566771}.shop-heating-guide strong{display:block;color:#263340;margin:12px 0}.shop-category-nav-full{display:flex!important;flex-wrap:wrap;gap:10px!important}.shop-category-nav-full>a{display:flex!important;align-items:center;padding:13px 18px!important;gap:12px!important;min-height:0!important;border:1px solid #dcd8d3;border-radius:4px}.shop-category-nav-full>a>svg{display:none}.shop-category-nav-full>a:hover{background:#fff2e5;border-color:#ce6c24}.shop-category-nav-full>a span{font-size:16px!important}.shop-product-lead{max-width:56ch}
@media(max-width:760px){.shop-story{grid-template-columns:1fr;gap:30px;padding-top:36px}.shop-story p,.shop-story li{font-size:16px}.shop-heating-guide>div{grid-template-columns:1fr;gap:0}.shop-pagination{gap:12px}.shop-pagination button{padding:11px 14px}.shop-variant-options{max-height:300px;overflow:auto}.shop-category-nav-full>a{padding:10px 12px!important}.shop-category-nav-full>a span{font-size:14px!important}}

.shop-photo-placeholder{display:flex;align-items:center;justify-content:center;text-align:center;width:100%;height:100%;min-height:180px;color:var(--muted);font-size:15px;line-height:1.6;background:#f3f0ec}.shop-main-photo:disabled{cursor:default}.shop-photo-caption [data-photo-note]:not(:empty){display:block;margin-top:8px;max-width:65ch;line-height:1.5}.shop-card-spec{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.shop-feature-tags li{overflow-wrap:anywhere}

.contact-product-no-photo{display:block;width:56px;height:56px;background:#efece6;border-radius:3px;flex-shrink:0}

/* Grupy prowadzą do pełnego katalogu bez kilkudziesięciu kafelków naraz. */
.shop-category-groups{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:24px 0 16px;align-items:start}
.shop-category-groups details{border:1px solid var(--line);border-radius:4px;background:#f8f6f3}
.shop-category-groups summary{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:86px;padding:18px 22px;cursor:pointer;list-style:none;font-weight:650}
.shop-category-groups summary::-webkit-details-marker{display:none}
.shop-category-groups summary:hover{background:#f1eee9}
.shop-category-groups summary small{display:block;margin-top:5px;color:var(--muted);font-weight:400;font-size:13px}
.shop-category-groups summary .icon{width:20px;height:20px;flex:none;transition:transform .18s}
.shop-category-groups details[open] summary .icon{transform:rotate(45deg)}
.shop-category-groups details>div{display:grid;padding:0 18px 14px;background:white;border-top:1px solid var(--line)}
.shop-category-groups a{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:12px 4px;min-height:44px;font-size:15px;border-bottom:1px solid var(--line)}
.shop-category-groups a:last-child{border:0}
.shop-category-groups a:hover,.shop-category-groups a[aria-current]{color:#b84d10;text-decoration:underline;text-underline-offset:4px}
.shop-category-groups a .icon{width:17px;height:17px;flex:none}
.shop-back-catalog{display:inline-flex;align-items:center;gap:10px;margin:8px 0 10px;font-size:15px;text-decoration:underline;text-underline-offset:4px}
.shop-main-photo:disabled .shop-zoom-label{display:none}
.shop-main-categories{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--line);border-left:1px solid var(--line);margin:8px 0 24px}
.shop-main-categories>a{display:grid;grid-template-columns:1fr 20px;align-items:center;gap:12px;padding:20px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);font-size:17px;line-height:1.35;transition:background .2s}
.shop-main-categories>a>.equipment-sketch{grid-column:1/-1;width:100px;height:86px;color:var(--ink)}
.shop-main-categories>a>.icon{width:20px;height:20px}
.shop-main-categories>a:hover,.shop-main-categories>a[aria-current]{background:#f3f0eb}
.shop-main-categories>a[aria-current]{box-shadow:inset 0 -2px var(--orange)}
.shop-main-categories-compact{display:flex;flex-wrap:wrap;border-left:0;gap:0 22px}
.shop-main-categories-compact>a{padding:15px 0;display:flex;border-right:0;border-bottom:0;font-size:14px;gap:8px}
.shop-main-categories-compact>a>.equipment-sketch,.shop-main-categories-compact>a>.icon{display:none}
.shop-subcategories{display:flex;flex-wrap:wrap;gap:8px;margin:24px 0 0}
.shop-subcategories>button{border:1px solid var(--line);background:white;border-radius:3px;padding:11px 15px;font:inherit;font-size:14px;cursor:pointer;color:var(--ink)}
.shop-subcategories>button:hover,.shop-subcategories>button[aria-pressed=true]{border-color:#a94b0a;background:#fcf3e9;color:#8c400a}
.shop-toolbar{display:flex;flex-wrap:wrap;gap:12px 0}
.shop-toolbar>.shop-search{flex:2 1 240px}
.shop-toolbar>.shop-select{flex:1 1 130px;min-width:0}
.shop-toolbar select{max-width:100%;text-overflow:ellipsis}
.shop-toolbar-review>.shop-search{flex-basis:100%;padding-bottom:8px;border-bottom:1px solid var(--line)}
.shop-toolbar-review>.shop-select:nth-child(2){margin-left:0;border-left:0;padding-left:0}
.shop-review-summary{display:flex;flex-wrap:wrap;gap:24px 40px;padding:24px 0;border-block:1px solid var(--line);font-size:15px;color:var(--muted)}
.shop-review-summary strong{display:block;font-size:28px;font-weight:600;color:var(--ink);margin-bottom:3px}
.shop-review-note,.shop-product-review-note{font-size:14px;line-height:1.6;color:var(--muted);margin:20px 0 0!important}
.shop-product-review-note a{text-decoration:underline;text-underline-offset:4px;margin-left:8px}
.shop-review-label{font-size:12px;color:#725332;margin:0 0 10px!important}
.shop-accessory-links{border-top:1px solid var(--line);padding:32px 0 0;margin-top:36px}
.shop-accessory-links h2{font-size:26px;margin:0 0 8px}
.shop-accessory-links p{font-size:15px;color:var(--muted)}
.shop-accessory-links>div{display:flex;flex-wrap:wrap;gap:10px 28px}
.shop-accessory-links .textlink{font-size:15px;min-height:44px;gap:12px}
#shop-list-title{scroll-margin-top:calc(var(--nav) + 70px)}
@media(max-width:1000px){.shop-main-categories{grid-template-columns:repeat(3,minmax(0,1fr))}.shop-main-categories-compact{display:flex}.shop-toolbar>.shop-search{flex-basis:100%;border-bottom:1px solid var(--line);padding-bottom:8px}.shop-toolbar>.shop-select:nth-child(2){margin-left:0;padding-left:0;border-left:0}}
@media(max-width:700px){.shop-main-categories{grid-template-columns:repeat(2,minmax(0,1fr))}.shop-main-categories>a{padding:14px;font-size:15px;gap:8px}.shop-main-categories>a>.equipment-sketch{width:80px;height:69px}.shop-main-categories-compact{display:flex;gap:0 16px}.shop-main-categories-compact>a{font-size:13px;padding:12px 0}.shop-toolbar>.shop-select{flex:1 1 40%;margin-left:0;padding:0 10px;border-left:0}.shop-subcategories>button{font-size:13px;padding:10px 12px}.shop-review-summary{gap:18px 24px}.shop-review-summary strong{font-size:24px}.shop-review-summary>span{font-size:13px}.shop-product-review-note a{display:block;margin:8px 0 0}}
.shop-technical ul{columns:2;column-gap:48px;padding-left:20px;max-width:1100px}
.shop-technical li{break-inside:avoid;margin:0 0 12px;line-height:1.6}
@media(max-width:760px){.shop-category-groups{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.shop-category-groups summary{padding:14px;font-size:15px}.shop-technical ul{columns:1}}
@media(max-width:430px){.shop-category-groups{grid-template-columns:1fr}.shop-category-groups summary{min-height:66px}.shop-category-groups summary span{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}.shop-category-groups summary small{margin-top:0}}

.shop-cart-error{padding:14px;background:#f7ede2;border:1px solid #d8b998;color:#73380f;font-size:14px;line-height:1.6}.shop-cart-error button{text-decoration:underline;min-height:36px}.shop-cart-summary .button{justify-content:space-between}.shop-cart-full{display:block;text-align:center;padding:10px;font-size:14px;text-decoration:underline}.shop-cart-summary [disabled]{opacity:.5;cursor:not-allowed}

/* The shop closes with one continuous contact/newsletter surface. */
.shop-page>.unified-contact{margin:64px 0 0;max-width:none;padding-inline:max(var(--gutter),calc((100% - 1584px)/2 + var(--gutter)));border-radius:0;background:#e7e4e0}
.shop-page>.unified-contact h2{max-width:16ch}
.shop-page+.newsletter{max-width:none;padding-inline:max(var(--gutter),calc((100% - 1584px)/2 + var(--gutter)));margin-top:0;background:var(--maka-newsletter-bg,#e2dfda);padding-top:42px;position:relative}
.shop-page+.newsletter:before{content:"";position:absolute;top:0;left:max(var(--gutter),calc((100% - 1584px)/2 + var(--gutter)));right:max(var(--gutter),calc((100% - 1584px)/2 + var(--gutter)));height:1px;background:#dfdbd6}
@media(max-width:700px){.shop-page>.unified-contact{margin-top:40px}.shop-page+.newsletter{padding-top:36px}}
