/* P02 / korekta głównej 10.09.2026. Wspólny nagłówek i stopka tylko w podglądzie. */
:root { --nav: 132px; --menu-height: 98px; }
.site-header { position: sticky; }
.nav-inner { gap: 20px; padding-inline: 32px; height: var(--menu-height); }
.site-header .brand { justify-content: center; min-width: 76px; }
.site-header .brand-symbol { width: 70px; height: 78px; }
.nav-left { gap: 24px; }
.nav-right { gap: 12px; }
.nav-phone { display: flex; font-size: 15px; gap: 9px; }
.nav-phone span { border-bottom: 1px solid #b8bfc5; line-height: 1.8; }
.nav-right>.button { padding-inline: 16px; }

.menu-panel { left: 0; right: 0; padding: 30px var(--gutter) 22px; display: block; max-height: calc(100dvh - var(--nav) - 36px); overflow-y: auto; background: #f2efeb; border: 0; border-bottom: 1px solid #cbd2d5; }
.menu-heading, .menu-bottom { display: flex; justify-content: space-between; align-items: center; gap: 20px; }
.menu-heading h2 { font-size: 28px; letter-spacing: -.02em; }
.menu-heading { margin-bottom: 24px; }
.menu-columns { display: grid; grid-template-columns: 1.2fr .95fr .95fr; gap: clamp(28px,4vw,72px); }
.menu-panel .menu-column-title { display: flex; align-items: center; justify-content: space-between; font-size: 20px; font-weight: 650; color: var(--ink); letter-spacing: -.025em; padding: 8px 0 17px; margin: 0; border-bottom: 1px solid #c4cdd1; min-height: 53px; }
.menu-panel .menu-model { display: grid; grid-template-columns: 76px 1fr 20px; gap: 20px; align-items: center; border-bottom: 1px solid #d6dddf; padding: 12px 0; }
.menu-model>svg:first-child { width: 76px; height: 72px; }
.menu-model strong { display: block; font-size: 21px; font-weight: 550; }
.menu-model small { display: block; font-size: 15px; color: #596671; margin-top: 4px; }
.menu-panel .menu-item { display: flex; justify-content: space-between; align-items: center; gap: 18px; padding: 21px 0; border-bottom: 1px solid #d6dddf; font-size: 18px; }
.menu-panel .menu-more { display: inline-flex; align-items: center; gap: 22px; padding: 13px 0 0; font-size: 14px; font-weight: 600; color: #52616b; }
.menu-bottom { border-top: 1px solid #cbd2d5; margin-top: 28px; padding-top: 12px; }
.menu-panel .menu-bottom a { font-size: 15px; display: inline-flex; align-items: center; gap: 16px; }
.menu-bottom-links { display: flex; gap: 30px; align-items: center; }

.search-panel { padding: 28px var(--gutter) 26px; background: #f8f6f3; max-height: calc(100dvh - var(--nav) - 36px); overflow-y: auto; }
.search-field { gap: 20px; border-bottom: 2px solid #bcc5c9; transition: border-color .15s; }
.search-field:focus-within { border-color: #a94b0a; }
.search-field #site-search { border: 0; outline: none; padding: 16px 0; font-size: 26px; line-height: 1.5; letter-spacing: -.025em; font-weight: 400; }
.search-field #site-search::placeholder { color: #65717a; opacity: 1; }
.search-field>.icon { color: #65717a; }
.search-field .iconbutton { margin-left: 6px; }
.search-suggestions { display: flex; gap: 28px; align-items: baseline; padding-top: 14px; }
.search-suggestions>p { color: #65717a; font-size: 14px; flex: none; }
.search-suggestions .search-links { display: flex; gap: 8px 26px; padding: 0; flex-wrap: wrap; }
.search-links .search-suggestion { display: inline-flex; align-items: center; gap: 16px; min-height: 44px; font-size: 16px; font-weight: 550; padding: 9px 0; }
.search-suggestion:hover { text-decoration: underline; text-underline-offset: 6px; }
.search-links[data-mode=results] { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); width: min(650px,100%); gap: 0 40px; }
.search-links[data-mode=results] .search-suggestion { justify-content: space-between; border-bottom: 1px solid #e5e2dd; }
.search-links>p { font-size: 16px; padding-block: 10px; grid-column: 1/-1; }
.search-links>p a { text-decoration: underline; text-underline-offset: 4px; }

.home-refined .hero { height: calc(var(--maka-page-height,100svh) - var(--nav) - 24px); max-height: none; }
.home-refined .hero h1 { font-size: clamp(48px,5.1vw,72px); line-height: 1.12; letter-spacing: -.015em; font-weight: 500; }
.home-refined .hero-copy { max-width: 840px; padding-bottom: 116px; }
.home-refined .hero-copy { min-height: 0; }
.home-refined .hero-lead { max-width: 460px; }
.home-refined .hero-tag { background: rgba(24,38,49,.8); }
.home-refined .hero-bottom>p { font-size: 14px; }
.home-refined .wayfinding { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 0 28px; padding-block: 26px 22px; }
.home-refined .wayfinding>span { grid-column: 1/-1; margin-bottom: 12px; }
.home-refined .wayfinding>span { display: block; }
.home-refined .wayfinding a { white-space: normal; justify-content: space-between; font-size: 15px; line-height: 1.45; min-height: 52px; gap: 10px; }
.home-refined .wayfinding a { width: 100%; }
.home-refined .wayfinding a:first-of-type { color: var(--ink); font-weight: 750; }
.home-refined .wayfinding a:first-of-type .icon { color: #a64b0d; }

/* Trzy równorzędne produkty. Ruch przesuwa karty, nie całą sekcję. */
.home-refined .prices { background: #f3f0eb; border: 0; }
.home-refined .price-note p { font-size: 15px; }
.home-refined .price-note { display: grid; grid-template-columns: minmax(0,1fr) minmax(260px,320px); gap: 32px; }
.home-refined .price-note .price-support { color: var(--ink); font-weight: 550; }
.home-refined .price-note .price-disclaimer { margin-top: 4px; font-size: 14px; line-height: 1.6; }
.price-details { margin-top: 4px; }
.price-details summary { display: flex; align-items: center; gap: 10px; width: fit-content; min-height: 44px; padding-block: 10px; cursor: pointer; list-style: none; font-size: 14px; color: #52616b; }
.price-details summary::-webkit-details-marker { display: none; }
.price-details summary .icon { width: 15px; height: 15px; transition: transform .15s; }
.price-details[open] summary .icon { transform: rotate(180deg); }
.price-details summary:hover { color: var(--ink); text-decoration: underline; text-underline-offset: 4px; }
.price-details>div { max-width: 560px; padding: 4px 0 10px; }
.home-refined .price-details>div p { font-size: 14px; line-height: 1.6; }
.price-details>div p+p { margin-top: 8px; }
.price-help { display: grid; align-content: start; }
.home-refined .price-help .textlink { justify-content: space-between; font-size: 15px; line-height: 1.5; margin: 0; }
.price-help .textlink+ .textlink { font-weight: 500; }
.home-refined .stage-note strong { display: block; font-weight: 600; }
.home-refined .stage-note>span { color: var(--muted); }
@media(min-width:701px) {
 .home-refined .accessory-line>div { display: flex; flex-wrap: wrap; gap: 8px 24px; }
}
@media(max-width:700px) {
 .home-refined .price-note { grid-template-columns: 1fr; gap: 12px; }
}
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
.catalog-carousel { --cards-visible: 3; --card-gap: 22px; }
.catalog-window { overflow: hidden; border-radius: 4px; }
.catalog-track { display: flex; gap: var(--card-gap); position: relative; align-items: stretch; }
.catalog-card { flex: 0 0 calc((100% - (var(--cards-visible) - 1)*var(--card-gap))/var(--cards-visible)); min-width: 0; background: #fff; color: var(--ink); border: 1px solid #d0d6d7; border-radius: 4px; overflow: hidden; }
.catalog-link { display: flex; flex-direction: column; height: 100%; }
.catalog-link:focus-visible { outline-color: #ffab70; outline-offset: -5px; }
.catalog-photo { aspect-ratio: 1.6; position: relative; background: var(--ink); overflow: hidden; }
.catalog-photo img { width: 100%; height: 100%; object-fit: cover; }
.catalog-badge { position: absolute; top: 16px; left: 16px; padding: 7px 11px; font-size: 13px; line-height: 1.5; border-radius: 2px; }
.catalog-info { display: flex; flex-direction: column; flex: 1; padding: 18px 20px; }
.catalog-overline { font-size: 14px; color: #5d6972; line-height: 1.5; margin-bottom: 6px; }
.catalog-info h3 { font-size: clamp(24px,2vw,29px); line-height: 1.25; letter-spacing: -.02em; font-weight: 550; white-space: nowrap; }
.catalog-facts { list-style: none; padding: 0; margin: 12px 0 16px; display: flex; flex-wrap: wrap; gap: 7px; }
.catalog-facts li { font-size: 14px; line-height: 1.5; padding: 4px 7px; border: 1px solid #ddd9d3; border-radius: 2px; color: #475760; background: #f6f5f2; }
.catalog-price { display: flex; align-items: center; justify-content: space-between; gap: 15px; margin-top: auto; padding-top: 14px; border-top: 1px solid #e3e0dc; }
.catalog-price strong { font-size: clamp(26px,2.1vw,30px); font-weight: 550; letter-spacing: -.035em; line-height: 1.2; }
.catalog-price small { display: inline; font-size: 13px; color: #5d6972; margin-left: 6px; }
.catalog-arrow { width: 46px; height: 46px; display: grid; place-items: center; border: 1px solid #bac5ca; border-radius: 2px; background: #f8f7f4; flex: none; }
.catalog-arrow:after { width: 13px; height: 13px; border-width: 2px; }
.catalog-link:hover .catalog-arrow { background: var(--orange); color: var(--ink); border-color: var(--orange); }
.catalog-controls { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding-block: 18px 4px; }
.catalog-controls>p { font-size: 14px; color: var(--muted); }
.catalog-controls>div { display: flex; align-items: center; gap: 10px; }
.catalog-controls .iconbutton { border: 1px solid #a7b0b6; border-radius: 50%; }
.catalog-toggle { display: inline-flex; align-items: center; gap: 10px; min-height: 44px; font-size: 14px; padding: 6px 14px; }
.catalog-toggle .icon { width: 16px; height: 16px; }

/* Sześć przyszłych filmów: ciągła powierzchnia, trzy kadry w rzędzie. */
.home-refined .living { padding-bottom: 0; background: #e7e4e0; }
.home-refined .living .section-head { margin-bottom: 42px; }
.home-refined .living-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 0; }
.home-refined .living-tile { position: relative; min-height: 0; aspect-ratio: 1.05; border-radius: 0; overflow: hidden; }
.home-refined .living-tile>img { width: 100%; height: 100%; object-fit: cover; position: absolute; transition: transform .7s ease; }
.home-refined .living-tile>a { position: absolute; inset: 0; display: flex; align-items: end; justify-content: space-between; gap: 15px; padding: clamp(24px,3vw,48px); background: linear-gradient(0deg,rgba(13,24,32,.85),rgba(13,24,32,.08) 70%); color: #fff; border: 0; border-radius: 0; }
.home-refined .living-tile>a:after { top: auto; right: 26px; bottom: 28px; width: 52px; height: 52px; border: 1px solid #ffffff50; background: #263b4875; backdrop-filter: blur(14px); -webkit-backdrop-filter: blur(14px); border-radius: 2px; }
.home-refined .living-tile>a>.icon { position: absolute; right: 42px; bottom: 44px; z-index: 1; }
.home-refined .living-tile>a:focus-visible { outline: 3px solid #ffbc87; outline-offset: -6px; }
.home-refined .living-tile h3 { font-size: clamp(23px,2.4vw,34px); font-weight: 550; max-width: 9.5em; padding-right: 38px; margin: 0; line-height: 1.2; }
.home-refined .living-tile small { display: block; font-size: 14px; margin-top: 14px; color: #fff; padding-right: 46px; }
.category-number { position: absolute; top: 28px; left: clamp(24px,3vw,48px); font-size: 14px; letter-spacing: .08em; padding-left: 18px; text-shadow: 0 1px 5px #172632; }
.category-number:before { content: ''; width: 9px; height: 9px; position: absolute; top: 6px; left: 0; border-top: 2px solid var(--orange); border-left: 2px solid var(--orange); }
.home-refined .living-tile:hover>img { transform: scale(1.025); }

.footer .brand-symbol { width: 76px; height: 86px; }
.company-strip { display: grid; grid-template-columns: 1.2fr 1fr; gap: 30px; border-top: 1px solid #ffffff25; padding-block: 30px; margin-top: 40px; }
.company-strip address { font-size: 15px; font-style: normal; line-height: 1.7; }
.company-strip address strong { display: block; font-weight: 600; margin-bottom: 5px; }
.company-ids { display: block; color: #c2cbd2; margin-top: 5px; }
.company-contact { justify-self: end; }
.company-contact>a { display: block; font-size: clamp(24px,2.5vw,34px); font-weight: 500; letter-spacing: -.025em; line-height: 1.3; margin-block: 4px; }
.company-contact .small { color: #c2cbd2; }
.footer .footer-bottom { margin-top: 0; }

@media (max-width:1250px) {
 .nav-inner { padding-inline: 24px; gap: 16px; }
 .nav-left { gap: 18px; }
 .nav-left>a,.nav-left>button { font-size: 14px; }
 .nav-phone { display: flex; font-size: 14px; }
 .nav-right { gap: 8px; }
 .nav-right>.button { padding-inline: 12px; gap: 8px; }
 .desktop-config .icon { display: none; }
 .home-refined .wayfinding { gap: 0 20px; }
}
@media (max-width:1050px) {
 :root { --nav: 124px; --menu-height: 90px; }
 .site-header .brand-symbol { width: 66px; height: 74px; }
 .site-header .brand { min-width: 70px; }
 .home-refined .wayfinding { grid-template-columns: repeat(2,minmax(0,1fr)); }
 .menu-columns { gap: 24px; grid-template-columns: 1.2fr 1fr 1fr; }
 .menu-panel .menu-model { grid-template-columns: 52px 1fr 16px; gap: 10px; }
 .menu-model>svg:first-child { width: 52px; }
 .menu-model small { font-size: 14px; }
 .menu-panel .menu-column-title { font-size: 18px; }
 .menu-panel .menu-item { font-size: 16px; }
 .home-refined .living-tile { aspect-ratio: .82; }
 .home-refined .living-tile>a { padding: 24px; }
 .home-refined .living-tile h3 { font-size: 24px; padding-right: 20px; }
 .home-refined .living-tile small { font-size: 14px; padding-right: 0; }
 .home-refined .living-tile>a:after { width: 40px; height: 40px; right: 16px; bottom: 24px; }
 .home-refined .living-tile>a>.icon { right: 26px; bottom: 34px; }
}
@media (max-width:700px) {
 :root { --nav: 112px; --menu-height: 78px; }
 .nav-inner { height: 78px; padding-inline: 16px; gap: 8px; }
 .site-header .brand-symbol { width: 62px; height: 70px; }
 .site-header .brand { min-width: 64px; }
 .nav-phone { display: flex; font-size: 14px; top: auto; bottom: 0; height: 30px; background: #eeebe5; }
 .nav-phone span { border: 0; }
 .nav-phone:before { content: 'Porozmawiajmy'; font-weight: 400; margin-right: 4px; }
 /* --nav to cała wysokość nagłówka z paskiem showroomu; panel sięga do dołu ekranu, bez prześwitu tła. */
 .menu-panel { padding: 20px; padding-bottom: calc(20px + env(safe-area-inset-bottom)); max-height: calc(100dvh - var(--nav)); min-height: calc(100dvh - var(--nav)); }
 .menu-heading { margin-bottom: 12px; gap: 8px; }
 .menu-heading h2 { font-size: 23px; }
 .menu-columns { grid-template-columns: 1fr; gap: 25px; }
 .menu-panel .menu-column-title { font-size: 20px; padding-bottom: 14px; }
 .menu-panel .menu-model { grid-template-columns: 64px 1fr 20px; gap: 14px; padding: 12px 0; }
 .menu-model>svg:first-child { width: 64px; height: 62px; }
 .menu-panel .menu-item { padding: 14px 0; font-size: 17px; }
 .menu-bottom { align-items: start; }
 .menu-bottom-links { display: grid; gap: 0; }
 .menu-panel .menu-bottom a { font-size: 14px; min-height: 44px; }
 .search-panel { padding: 16px 22px 20px; }
 .search-field { gap: 12px; }
 .search-field #site-search { font-size: 21px; padding-block: 12px; }
 .search-suggestions { display: block; padding-top: 14px; }
 .search-suggestions>p { margin-bottom: 5px; }
 .search-suggestions .search-links { gap: 0 22px; }
 .search-links .search-suggestion { font-size: 15px; }
 .search-links[data-mode=results] { grid-template-columns: 1fr; }
 .home-refined .hero { min-height: 0; height: calc(var(--maka-page-height,100svh) - var(--nav) - 16px); }
 .home-refined .hero-copy { padding: 28px 24px 92px; justify-content: center; }
 .home-refined .hero h1 { font-size: clamp(36px,8.8vw,44px); margin-bottom: 18px; line-height: 1.12; }
 .home-refined .hero-tag { font-size: 13px; padding: 8px 12px; margin-bottom: 20px; }
 .home-refined .hero-lead { font-size: 16px; line-height: 1.55; margin-bottom: 20px; max-width: 350px; }
 .home-refined .hero .actions { gap: 8px; }
 .home-refined .hero .actions>.button { padding-inline: 16px; min-height: 50px; }
 .home-refined .hero-bottom { left: 24px; right: 24px; bottom: 20px; }
 .home-refined .hero-bottom>p { display: none; }
 .home-refined .hero-proof { display: flex; width: 100%; padding: 12px 14px; min-height: 56px; }
 .home-refined .wayfinding { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 0 22px; padding-block: 22px 18px; }
 .home-refined .wayfinding a { font-size: 14px; }
 .home-refined .wayfinding a:last-of-type { max-width: none; }
 .dimension-label { margin: 7px 0 15px; }
 .home-refined .living .section-head { margin-bottom: 28px; }
 .home-refined .living-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
 .home-refined .living-tile { aspect-ratio: .68; }
 .home-refined .living-tile>a { padding: 20px 16px; }
 .home-refined .living-tile h3 { font-size: clamp(20px,4.6vw,26px); padding: 0; }
 .home-refined .living-tile small { font-size: 13px; margin-top: 10px; }
 .home-refined .living-tile>a:after, .home-refined .living-tile>a>.icon { display: none; }
 .category-number { top: 20px; left: 16px; }
 .company-strip { grid-template-columns: 1fr; gap: 24px; margin-top: 28px; }
 .company-contact { justify-self: start; }
}
@media (max-width:380px) {
 .home-refined .hero-copy { padding: 20px 18px 74px; }
 .home-refined .hero-tag { font-size: 12px; margin-bottom: 14px; padding-inline: 9px; }
 .home-refined .hero h1 { font-size: 34px; margin-bottom: 12px; }
 .home-refined .hero-lead { margin-bottom: 12px; }
 .home-refined .hero-proof { padding: 10px 12px; min-height: 46px; font-size: 14px; }
 .home-refined .hero-bottom { bottom: 15px; left: 18px; right: 18px; }
 .home-refined .hero-proof small { display: none; }
 .home-refined .wayfinding a { font-size: 14px; }
}
@media (max-width:700px) and (max-height:700px) and (hover:hover) and (pointer:fine) {
 .home-refined .hero-copy { justify-content: center; padding-bottom: 18px; }
 .home-refined .hero-bottom { display: none; }
 .home-refined .hero-tag { margin-bottom: 14px; }
 .home-refined .hero-lead { font-size: 16px; margin-bottom: 12px; }
}
@media (min-width:701px) and (max-height:760px) and (hover:hover) and (pointer:fine) {
 .home-refined .hero { min-height: 0; }
 .home-refined .hero-copy { padding-top: 25px; padding-bottom: 32px; }
 .home-refined .hero h1 { font-size: 52px; margin-bottom: 18px; }
 .home-refined .hero-tag { margin-bottom: 18px; }
 .home-refined .hero-bottom { display: none; }
}
@media (max-height:520px) and (hover:hover) and (pointer:fine) {
 .home-refined .hero { height: auto; min-height: 420px; }
 .home-refined .hero-copy { padding-block: 30px; }
}
@media (prefers-reduced-motion:reduce) {
 .catalog-track { transition: none!important; }
 .home-refined .living-tile>img { transition: none; }
}

/* Druga korekta: nawigacja wyposażenia, skróty i telefon. */
.home-refined .wayfinding a { justify-content: flex-start; gap: 12px; width: fit-content; max-width: 100%; }
.menu-switcher { display: none; }
.nav-left>.desktop-menu[aria-expanded=true] { color: #a94b0a; }
.nav-left>.desktop-menu[aria-expanded=true]>.icon { transform: rotate(180deg); }
.equipment-panel .menu-columns { grid-template-columns: repeat(3,minmax(0,1fr)); }
.equipment-panel .menu-bottom .menu-more { padding: 8px 0; }
.company-contact { padding: 26px 28px; width: min(100%,480px); border: 1px solid #ffffff36; background: #ffffff06; border-radius: 3px; }
.company-contact:after { width: 22px; height: 22px; border-width: 2px; }
.company-contact>a { display: flex; align-items: center; gap: 18px; font-size: clamp(30px,3.5vw,52px); letter-spacing: -.045em; white-space: nowrap; margin-block: 12px 8px; }
.footer-phone-icon { display: grid; place-items: center; width: 48px; height: 48px; flex: none; background: var(--orange); border-radius: 3px; color: var(--ink); }
.footer-phone-icon>.icon { width: 23px; height: 23px; }
.company-contact p.small { max-width: none; }
@media (max-width:1250px) {
 .catalog-carousel { --card-gap: 18px; }
 .catalog-info { padding: 20px; }
 .catalog-info h3 { font-size: 25px; }
 .catalog-facts { gap: 6px; }
 .catalog-facts li { font-size: 13px; }
}
@media (max-width:1050px) {
 .menu-switcher { display: flex; gap: 24px; margin: 0 0 20px; border-bottom: 1px solid #cbd2d5; }
 .menu-switcher button { min-height: 44px; padding: 10px 0; font-size: 15px; border-bottom: 2px solid transparent; }
 .menu-switcher button[aria-pressed=true] { border-color: var(--orange); font-weight: 700; }
}
@media (max-width:1000px) {
 .catalog-carousel { --cards-visible: 2; }
 .catalog-info h3 { font-size: 28px; }
 .catalog-facts li { font-size: 14px; }
 .company-contact { padding: 22px; }
 .company-contact>a { gap: 12px; font-size: 32px; }
 .footer-phone-icon { width: 42px; height: 42px; }
}
@media (max-width:700px) {
 .catalog-carousel { --cards-visible: 1; }
 .catalog-photo { aspect-ratio: 1.55; }
 .catalog-info { padding: 18px; }
 .catalog-info h3 { font-size: 29px; }
 .catalog-price strong { font-size: 29px; }
 .catalog-facts { margin-block: 12px 16px; }
 .catalog-controls { padding-top: 14px; gap: 8px; }
 .catalog-controls>div { gap: 6px; }
 .catalog-controls>p>span { display: none; }
 .catalog-toggle { width: 44px; padding: 0; justify-content: center; }
 .catalog-toggle .toggle-label { display: none; }
 .equipment-panel .menu-columns { grid-template-columns: 1fr; }
 .equipment-panel .menu-bottom { flex-direction: column; gap: 3px; }
 .company-contact { justify-self: stretch; width: 100%; }
 .company-contact>a { font-size: clamp(28px,8vw,40px); gap: 14px; }
}
@media (max-width:380px) {
 .company-contact { padding: 20px 16px; }
 .company-contact>a { font-size: 28px; gap: 10px; }
 .footer-phone-icon { width: 38px; height: 40px; }
 .catalog-info h3 { font-size: 27px; }
}

/* Trzecia korekta: krótsze karty, prawdziwe kadry i zmiana rytmu na końcu. */
.home-refined .process-story { background: #252c32; color: white; padding-block: 64px; }
.process-heading { display: flex; justify-content: space-between; align-items: center; gap: 48px; }
.process-story h2 { font-size: clamp(32px,3vw,44px); letter-spacing: -.025em; }
.process-story .eyebrow { color: #d1dbe2; }
.process-links { display: flex; flex-direction: column; align-items: flex-start; gap: 10px; }
.process-links>.textlink { color: #e0e7ec; font-size: 15px; min-height: 44px; }
.process-story .steps { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 40px; margin-top: 42px; }
.process-story .step { grid-template-columns: 30px 1fr; padding: 20px 0 0; gap: 12px; border-top: 1px solid #ffffff40; border-bottom: 0; }
.process-story .step>span { color: #ffa260; font-size: 14px; }
.process-story .step h3 { font-size: 23px; font-weight: 550; }
.process-story .step p { font-size: 16px; line-height: 1.6; color: #ced7df; }
.home-refined .guide-section { background: #fff; padding-block: 72px 56px; }
.guide-section h2 { font-size: clamp(30px,3vw,44px); letter-spacing: -.025em; }
.guide-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 28px; }
.guide-card>a { display: block; height: 100%; }
.guide-photo { aspect-ratio: 1.7; overflow: hidden; }
.guide-photo>img { width: 100%; height: 100%; object-fit: cover; object-position: center 45%; }
.guide-photo>span { position: absolute; bottom: 12px; right: 12px; display: grid; place-items: center; width: 38px; height: 38px; border-radius: 2px; }
.guide-card .guide-topic { font-size: 14px; color: #5b6a73; margin: 18px 0 7px; }
.guide-card h3 { font-size: clamp(22px,1.85vw,26px); line-height: 1.3; letter-spacing: -.015em; font-weight: 550; max-width: 18em; }
.guide-card a:hover h3 { text-decoration: underline; text-underline-offset: 5px; }
.guide-more { display: flex; gap: 36px; margin-top: 36px; padding-top: 20px; border-top: 1px solid #dfdbd6; }
.guide-more>p { font-size: 14px; color: #5b6a73; flex: none; padding-top: 12px; }
.guide-more>div { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 28px; width: 100%; }
.guide-more .textlink { font-size: 15px; font-weight: 500; line-height: 1.5; gap: 16px; align-items: center; }

/* Kontakt w stopce ma wagę, ale nie zajmuje osobnego dużego kafla. */
.footer { padding-block: 58px 20px; }
.footer-grid { gap: 32px; }
.footer .brand { margin-bottom: 14px; }
.footer .brand-symbol { width: 60px; height: 68px; }
.footer h3 { margin-bottom: 12px; }
.footer li a { padding-block: 3px; min-height: 30px; }
.company-strip { align-items: center; margin-top: 26px; padding-block: 22px; gap: 24px; }
.company-strip address { font-size: 14px; line-height: 1.65; }
.company-strip address strong { margin-bottom: 3px; }
.company-strip .company-contact { padding: 10px 0 10px 24px; width: auto; border: 0; border-left: 1px solid #ffffff30; background: transparent; justify-self: end; }
.company-contact.corner:after { display: none; }
.company-strip .company-contact>a { font-size: 32px; letter-spacing: -.02em; gap: 12px; margin-block: 6px 0; min-height: 44px; }
.company-contact .footer-phone-icon { width: 36px; height: 36px; }
.company-contact .footer-phone-icon>.icon { width: 19px; height: 19px; }
.footer .company-contact p { font-size: 14px; }
.footer .footer-bottom { padding-top: 16px; margin-top: 0; }
@media (max-width:1050px) {
 .process-story .steps { gap: 22px; }
 .process-story .step { grid-template-columns: 1fr; gap: 8px; }
 .guide-grid, .guide-more>div { gap: 20px; }
}
@media (max-width:700px) {
 .home-refined .process-story { padding-block: 44px; }
 .process-heading { flex-direction: column; align-items: flex-start; gap: 24px; }
 .process-story .steps { grid-template-columns: 1fr; margin-top: 22px; gap: 20px; }
 .process-story .step { grid-template-columns: 28px 1fr; gap: 12px; }
 .process-story .step h3 { font-size: 22px; }
 .home-refined .guide-section { padding-block: 44px 36px; }
 .guide-section .section-head { gap: 18px; margin-bottom: 28px; }
 .guide-grid { grid-template-columns: 1fr; gap: 24px; }
 .guide-card>a { display: grid; grid-template-columns: 116px 1fr; grid-template-rows: auto 1fr; gap: 0 18px; }
 .guide-photo { grid-row: 1/3; width: 116px; height: 130px; aspect-ratio: auto; }
 .guide-photo>span { width: 26px; height: 26px; bottom: 6px; right: 6px; }
 .guide-photo>span>.icon { width: 16px; height: 16px; }
 .guide-card .guide-topic { font-size: 13px; margin: 2px 0 7px; }
 .guide-card h3 { font-size: 21px; line-height: 1.3; }
 .guide-more { display: block; margin-top: 26px; padding-top: 12px; }
 .guide-more>div { grid-template-columns: 1fr; gap: 0; }
 .guide-more>p { padding-block: 0 8px; }
 .guide-more .textlink { min-height: 48px; border-bottom: 1px solid #e6e3df; justify-content: space-between; }
 .footer-grid { gap: 26px 20px; }
 .footer-grid>div:first-child { display: grid; grid-template-columns: 56px 1fr; gap: 0 20px; }
 .footer-grid>div:first-child>.brand { grid-row: 1/3; margin: 0; align-self: start; }
 .footer-grid>div:first-child>.textlink { min-height: 44px; font-size: 15px; }
 .footer-grid>div:last-child { grid-column: 1/-1; }
 .footer-grid>div:last-child ul { display: grid; grid-template-columns: 1fr 1fr; gap: 0 20px; }
 .footer .brand-symbol { width: 54px; height: 64px; }
 .footer li a { min-height: 44px; display: inline-flex; align-items: center; padding-block: 5px; line-height: 1.4; }
 .company-strip { gap: 18px; }
 .company-strip .company-contact { border: 0; padding: 0; justify-self: start; }
 .company-strip .company-contact>a { font-size: 29px; }
 .footer .footer-bottom { font-size: 13px; }
 .footer-bottom div { margin-top: 8px; gap: 0 18px; }
 .footer-bottom div>a { display: inline-flex; align-items: center; min-height: 44px; }
 .footer-bottom .top-link { margin-top: 0; }
}
@media (max-width:380px) {
 .guide-card>a { grid-template-columns: 92px 1fr; gap: 0 14px; }
 .guide-photo { width: 92px; height: 126px; }
 .guide-card h3 { font-size: 20px; }
 .catalog-price small { display: block; margin-left: 0; margin-top: 2px; }
}

/* Oddzielny newsletter i pełna nazwa firmy bez ręcznego łamania. */
.home-refined h2,
.home-refined + .newsletter h2 { letter-spacing: -.02em; }
.newsletter-form .small { font-size: 15px; line-height: 1.6; }
/* Pulapka na boty: niewidoczna dla czlowieka i dla czytnika ekranu, wypelniana tylko przez automat. */
.visually-hidden-trap { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; }
.home-refined + .newsletter { margin-top: 0; padding-top: 98px; background: var(--maka-newsletter-bg,#e2dfda); border-top: 0; }
@media (min-width:701px) {
 .company-strip { grid-template-columns: minmax(max-content,1fr) auto; }
 .company-strip address strong { white-space: nowrap; }
}
@media (max-width:700px) {
 .home-refined + .newsletter { padding-block: 68px 40px; }
}

/* Wyposażenie: rysunki kategorii w rodzinie ikon konstrukcji MK. */
.equipment-panel .equipment-item { display: grid; grid-template-columns: 68px minmax(0,1fr) 20px; gap: 18px; padding-block: 12px; min-height: 90px; line-height: 1.4; }
.equipment-sketch { display: block; width: 68px; height: 64px; color: var(--ink); flex: none; }
.equipment-item>span { min-width: 0; }
.equipment-item:hover { color: #9a4811; }
.equipment-item:hover .equipment-sketch { color: var(--ink); }
@media (min-width:701px) and (max-width:1050px) {
 .equipment-panel .equipment-item { grid-template-columns: 48px minmax(0,1fr) 16px; gap: 10px; }
 .equipment-sketch { width: 48px; height: 52px; }
}
@media (max-width:700px) {
 .equipment-panel .equipment-item { grid-template-columns: 56px minmax(0,1fr) 20px; gap: 16px; min-height: 76px; padding-block: 10px; }
 .equipment-sketch { width: 56px; height: 54px; }
}

/* Piąta korekta: czytelne wejścia do kontaktu, lżejszy proces i detal stopki. */
.process-links .process-button { background: #ffffff05; color: #f6f8fa; border: 1px solid #8a98a3; min-height: 52px; padding: 12px 22px; font-weight: 550; }
.process-links .process-button:hover { background: #ffffff10; border-color: #c7d0d7; }
.process-links .process-button:focus-visible { outline-color: #ffac72; }
.process-links .process-button>.icon { color: #ffad72; }
.home-contact { display: grid; grid-template-columns: 1.1fr 1fr; gap: clamp(48px,7vw,104px); align-items: center; padding-block: 56px; background: #f2efeb; }
.home-contact h2 { font-size: clamp(32px,3vw,44px); line-height: 1.15; letter-spacing: -.02em; }
.home-contact-description { color: #52616b; font-size: 17px; line-height: 1.6; max-width: 410px; margin-top: 22px; }
.contact-options { background: #ffffffbf; border: 1px solid #d7d2cb; padding: 6px 26px; border-radius: 3px; }
.contact-options:after { width: 22px; height: 22px; border-width: 2px; }
.contact-option { display: grid; grid-template-columns: 42px minmax(0,1fr) 20px; align-items: center; gap: 18px; padding: 24px 0; }
.contact-option+ .contact-option { border-top: 1px solid #e1ddd8; }
.contact-option-icon { width: 42px; height: 42px; display: grid; place-items: center; background: #f1eee9; border: 1px solid #e0ddd8; border-radius: 3px; }
.contact-option-icon>.icon { width: 21px; height: 21px; }
.contact-option strong { display: block; font-size: 23px; line-height: 1.3; letter-spacing: -.015em; font-weight: 600; }
.contact-option small { display: block; font-size: 14px; line-height: 1.5; color: #53636c; margin-top: 5px; }
.contact-option>.icon { color: #9d4a13; }
.contact-option:hover strong { text-decoration: underline; text-underline-offset: 5px; }
.contact-option:hover .contact-option-icon { background: #e8e5e1; }
.footer-grid { position: relative; }
.footer-grid:before { content: ''; position: absolute; right: 0; top: -26px; width: 23px; height: 23px; border-top: 2px solid #f58c40; border-right: 2px solid #f58c40; opacity: .85; pointer-events: none; }
.footer h3 { color: #becad2; letter-spacing: .015em; }
.footer li a { text-decoration-color: #fa994e; }
.footer li a:focus-visible { outline-color: #ffad72; }
@media (max-width:1050px) {
 .home-contact { gap: 36px; }
 .contact-options { padding-inline: 20px; }
 .contact-option { grid-template-columns: 36px minmax(0,1fr) 18px; gap: 12px; }
 .contact-option-icon { width: 36px; height: 38px; }
 .contact-option strong { font-size: 21px; }
}
@media (max-width:700px) {
 .nav-inner { grid-template-columns: minmax(0,1fr) auto minmax(0,1fr); }
 .home-contact { grid-template-columns: 1fr; gap: 26px; padding-block: 40px; }
 .home-contact h2 { font-size: 32px; }
 .home-contact-description { font-size: 16px; margin-top: 18px; }
 .contact-options { padding-inline: 18px; }
 .contact-option { padding-block: 20px; gap: 12px; }
 .contact-option strong { font-size: 21px; }
 .contact-option small { font-size: 14px; }
 .footer { padding-top: 50px; }
 .footer-grid:before { top: -24px; width: 20px; height: 20px; }
}
@media (max-width:380px) {
 .nav-inner { padding-inline: 12px; }
 .nav-right { gap: 0; }
 .nav-right>.iconbutton { width: 36px; height: 44px; }
 .contact-options { padding-inline: 14px; }
 .contact-option { grid-template-columns: 30px minmax(0,1fr) 16px; gap: 10px; }
 .contact-option-icon { width: 30px; height: 34px; }
 .contact-option strong { font-size: 20px; }
}

/* Showroom: jedno stałe wejście u góry, bez dodatkowego bloku na głównej. */
.showroom-strip { height: 34px; display: flex; align-items: center; justify-content: center; gap: 16px; padding-inline: 24px; background: #f0ede7; border-bottom: 1px solid #e1ddd8; }
.showroom-strip-link { display: inline-flex; align-items: center; gap: 12px; min-height: 34px; font-size: 13px; font-weight: 550; line-height: 1.4; }
.showroom-mark { width: 8px; height: 8px; border-top: 2px solid #b9510b; border-right: 2px solid #b9510b; }
.showroom-strip-link>.icon { width: 14px; height: 14px; }
.showroom-strip-link:hover { text-decoration: underline; text-underline-offset: 4px; }
.showroom-strip-phone,.showroom-strip-mobile { display: none; }
.footer .footer-showroom { display: flex; align-items: center; justify-content: space-between; gap: 18px; margin-top: 22px; padding: 12px 14px; width: min(100%,280px); border: 1px solid #ffffff25; border-left: 2px solid #df9a64; border-radius: 2px; background: #ffffff04; }
.footer-showroom strong { display: block; font-size: 15px; font-weight: 550; line-height: 1.5; }
.footer-showroom small { display: block; color: #becad2; font-size: 13px; margin-top: 3px; line-height: 1.5; }
.footer-showroom>.icon { width: 18px; height: 18px; color: #ecb181; }
.footer .footer-showroom:hover { background: #ffffff09; }
.footer-social { display: flex; align-items: center; flex-wrap: wrap; gap: 0 16px; margin-top: 14px; }
.footer-social a { display: inline-flex; align-items: center; gap: 7px; min-height: 44px; font-size: 14px; line-height: 1.4; color: #c2cbd2; white-space: nowrap; }
.footer-social .social-icon { width: 16px; height: 16px; flex: none; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.footer-social a:hover { color: #fff; text-decoration-color: #fa994e; }
.footer-social a:focus-visible { outline-color: #ffad72; }
@media(max-width:700px) {
 .site-header .nav-phone { display: none; }
 .showroom-strip { justify-content: space-between; padding-inline: 16px; gap: 10px; }
 .showroom-strip-link { gap: 6px; font-size: 12px; }
 .showroom-strip-mobile { display: inline; }
 .showroom-strip-mobile>span { color: #53616b; font-weight: 400; }
 .showroom-strip-desktop,.showroom-mark { display: none; }
 .showroom-strip-phone { display: inline-flex; align-items: center; gap: 6px; min-height: 34px; font-size: 12px; line-height: 1.4; font-weight: 650; white-space: nowrap; }
 .showroom-strip-phone>.icon { width: 13px; height: 13px; }
 .footer-grid>div:first-child>.footer-showroom { grid-column: 2; margin-top: 14px; }
 .footer-grid>div:first-child>.footer-social { grid-column: 1/-1; gap: 0 14px; margin-top: 12px; }
}
@media(max-width:380px) {
 .showroom-strip { padding-inline: 12px; }
 .footer-grid>div:first-child>.footer-showroom { grid-column: 1/-1; margin-top: 12px; width: 100%; }
}

/* Koszyk jest osobnym panelem; okno porównania MK CUBE zachowuje swój układ. */
/* Preserve viewport width and the header's sticky scroll container when a drawer opens. */
html { scrollbar-gutter: stable; }
html.cart-open { overflow: hidden; overscroll-behavior: none; }
.cart-drawer { inset: 0 0 0 auto; margin: 0; width: min(100%,480px); max-width: 100%; height: 100dvh; max-height: 100dvh; padding: 0; border: 0; border-left: 1px solid #d8e0e2; border-radius: 0; background: #fff; color: #252c32; box-shadow: -16px 0 60px #13243126; overflow: hidden; }
.cart-drawer[open] { display: flex; flex-direction: column; animation: cart-slide-in 360ms cubic-bezier(.22,.61,.36,1) both; }
.cart-drawer::backdrop { --drawer-backdrop-tint: #14253566; background: var(--drawer-backdrop-tint); backdrop-filter: blur(2px); -webkit-backdrop-filter: blur(2px); animation: drawer-backdrop-in 360ms cubic-bezier(.22,.61,.36,1) both; }
.cart-drawer.is-closing { animation: cart-slide-out 260ms ease-in both; }
.cart-drawer.is-closing::backdrop { animation: drawer-backdrop-out 260ms ease-in-out both; }
.cart-drawer-head { flex: none; display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 22px 28px; border-bottom: 1px solid #e1ddd8; background: #f9f7f5; }
.cart-drawer-head p { font-size: 13px; line-height: 1.4; color: #5b6a73; margin: 0 0 5px; }
.cart-drawer-head h2 { display: flex; align-items: center; gap: 12px; font-size: 26px; letter-spacing: -.025em; line-height: 1.25; font-weight: 550; outline: none; }
.cart-drawer-head h2 span { display: grid; place-items: center; min-width: 25px; height: 25px; border-radius: 50%; background: #ede9e2; font-size: 13px; font-weight: 500; letter-spacing: 0; }
.cart-drawer .cart-close { width: 44px; height: 44px; flex: none; border: 1px solid #d7d3cd; border-radius: 3px; background: transparent; }
.cart-close>.icon { width: 20px; height: 20px; }
.cart-drawer .cart-close:hover { background: #edeae4; }
.cart-drawer :is(a,button):focus-visible { outline: 2px solid #a94b0a; outline-offset: 3px; }
.cart-drawer-body { flex: 1; min-height: 0; overflow-y: auto; overscroll-behavior: contain; padding: 24px 28px; }
.cart-visual { height: 170px; margin-bottom: 28px; border-radius: 3px; overflow: hidden; background: #f2efeb; }
.cart-visual>img { width: 100%; height: 100%; object-fit: cover; object-position: 50% 53%; }
.cart-visual:after { width: 24px; height: 24px; border-width: 2px; }
.cart-empty-copy h3 { font-size: 25px; font-weight: 550; letter-spacing: -.025em; line-height: 1.25; margin: 0 0 14px; }
.cart-empty-copy>p { font-size: 16px; line-height: 1.6; color: #566670; margin: 0; max-width: 360px; }
.cart-empty-actions { margin-top: 26px; display: grid; gap: 6px; }
.cart-empty-actions>.button { min-height: 52px; justify-content: center; gap: 12px; padding: 12px 18px; font-size: 16px; }
.cart-empty-actions .icon { width: 18px; height: 18px; }
.cart-secondary { min-height: 44px; display: flex; align-items: center; justify-content: center; gap: 12px; font-size: 15px; }
.cart-secondary:hover { text-decoration: underline; text-underline-offset: 4px; }
.cart-drawer-foot { flex: none; display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 18px 28px max(18px,env(safe-area-inset-bottom)); border-top: 1px solid #e1ddd8; background: #f9f7f5; }
.cart-drawer-foot>span { color: #566670; font-size: 14px; }
.cart-drawer-foot a { display: inline-flex; align-items: center; gap: 9px; min-height: 44px; white-space: nowrap; font-size: 18px; font-weight: 600; }
.cart-drawer-foot .icon { width: 17px; height: 17px; }
@keyframes cart-slide-in { from { transform: translateX(100%); } to { transform: translateX(0); } }
@keyframes cart-slide-out { from { transform: translateX(0); } to { transform: translateX(100%); } }
/* Animate the blur itself: opacity alone can make a backdrop filter appear instantly. */
@keyframes drawer-backdrop-in {
 from { background: transparent; backdrop-filter: blur(0px); -webkit-backdrop-filter: blur(0px); }
 to { background: var(--drawer-backdrop-tint); backdrop-filter: blur(2px); -webkit-backdrop-filter: blur(2px); }
}
@keyframes drawer-backdrop-out {
 from { background: var(--drawer-backdrop-tint); backdrop-filter: blur(2px); -webkit-backdrop-filter: blur(2px); }
 to { background: transparent; backdrop-filter: blur(0px); -webkit-backdrop-filter: blur(0px); }
}
@media(max-width:500px) {
 .cart-drawer-head { padding: 18px 22px; }
 .cart-drawer-body { padding: 22px; }
 .cart-visual { height: 154px; margin-bottom: 24px; }
 .cart-empty-copy h3 { font-size: 24px; }
 .cart-drawer-foot { padding-inline: 22px; }
}
@media(max-width:380px) {
 .cart-drawer-head,.cart-drawer-body { padding: 18px; }
 .cart-drawer-head h2 { font-size: 24px; gap: 8px; }
 .cart-drawer-foot { padding: 14px 18px max(14px,env(safe-area-inset-bottom)); flex-wrap: wrap; gap: 0 12px; }
 .cart-drawer-foot>span { font-size: 13px; }
 .cart-drawer-foot a { font-size: 16px; }
}
@media(max-height:640px) and (hover:hover) and (pointer:fine) {
 .cart-visual { display: none; }
 .cart-drawer-head { padding-block: 14px; }
 .cart-drawer-foot { padding-block: 8px; }
}
@media(prefers-reduced-motion:reduce) {
 .cart-drawer[open],.cart-drawer::backdrop { animation: none!important; }
}

/* Dwa profile marki: pochyły SOLID przy etykietach sekcji,
   prostokątny CUBE pozostaje przy zdjęciach i szklanych panelach. */
.eyebrow:before {
  width: 17px;
  height: 11px;
  transform: skewY(-14deg);
}

/* Czytelna reakcja na wskazanie, bez zmiany wielkości i położenia tekstu. */
@media(min-width:701px) {
 .home-contact-description .contact-next-sentence { display: block; }
}
.site-header :is(a,button), .textlink, .button, .iconbutton,
.contact-option, .contact-option-icon, .hero-proof, .rating,
.footer a, .cart-drawer-foot a, .newsletter-form button, .catalog-toggle {
 transition: color .16s ease, background-color .16s ease, border-color .16s ease, box-shadow .16s ease, transform .16s ease;
}
.nav-phone span { transition: border-color .16s ease, box-shadow .16s ease; }
.home-refined .model-row { transition: color .16s ease; }
.home-refined .model-row:is(:hover,:focus-visible) { color: #a54804; }
.home-refined .hero a:focus-visible, .footer a:focus-visible { outline-color: #ffad72; }
@media(hover:hover) and (pointer:fine) {
 .nav-phone:hover, .showroom-strip-phone:hover { color: #9b470c; }
 .nav-phone:hover span { border-color: currentColor; box-shadow: 0 1px 0 currentColor; }
 .showroom-strip-phone:hover { text-decoration: underline; text-underline-offset: 4px; }
 .nav-left>:is(a,.desktop-menu):hover { color: #9b470c; text-decoration: underline; text-underline-offset: 6px; text-decoration-thickness: 1px; }
 .site-header .iconbutton:hover { color: #9b470c; background: #ece8e1; box-shadow: inset 0 0 0 1px #d3cec6; }
 .menu-panel :is(.menu-model,.menu-item,.equipment-item):hover { background: #ebe7e0; }
 .textlink:hover { text-decoration: underline; text-underline-offset: 5px; text-decoration-thickness: 1px; }
 .hero-proof:hover { background-color: #243744e6; border-color: #ffad72; }
 .button.light:hover { background: #ece8e1; border-color: #c2c8ce; }
 .contact-option:hover { color: #9b470c; }
 .contact-option:hover .contact-option-icon { background: #f8ede3; border-color: #dcb99c; }
 .rating:hover { color: #9b470c; }
 .catalog-toggle:hover { background: #e7e5e1; border-radius: 3px; }
 .newsletter-form button:hover { background: #9b470c; }
 .footer a:hover { color: #ffad72; text-decoration-color: currentColor; }
 .cart-drawer-foot a:hover { color: #9b470c; text-decoration: underline; text-underline-offset: 4px; }
}
@media(prefers-reduced-motion:reduce) {
 .home-refined .model-row { transition: none; }
 .site-header :is(a,button), .nav-phone span, .textlink, .button, .iconbutton,
 .contact-option, .contact-option-icon, .hero-proof, .rating,
 .footer a, .cart-drawer-foot a, .newsletter-form button, .catalog-toggle { transition: none; }
}

/* Shared compact mobile header: centred logo and a cube/3D action. */
.desktop-config .config-label-mobile { display: none; }
@media(max-width:1050px) {
 .nav-right .desktop-config { display: inline-flex; white-space: nowrap; }
 .site-header .nav-phone { display: none; }
}
@media(max-width:700px) {
 .site-header .nav-inner { position:relative; grid-template-columns:minmax(0,1fr) auto minmax(0,1fr); gap:12px; padding-inline:14px; }
 .site-header .brand { min-width:44px; }
 .site-header .brand-symbol { width:44px; height:58px; }
 .site-header .mobile-menu { width:36px; justify-content:center; }
 .site-header .nav-right { gap:0; }
 .site-header .nav-right>.iconbutton { width:38px; height:44px; }
 .site-header .nav-right>[data-search] { position:absolute; left:54px; top:17px; }
 .site-header .nav-right>.desktop-config { width:44px; min-width:44px; min-height:46px; height:46px; padding:0; margin-inline:3px; font-size:10px; gap:0; }
 .desktop-config .config-label-desktop,.desktop-config>.icon { display:none; }
 .desktop-config .config-label-mobile { display:flex; flex-direction:column; align-items:center; gap:3px; font-size:10px; font-weight:700; line-height:1; }
 .desktop-config .config-label-mobile .icon { display:block; width:18px; height:18px; }
}
@media(max-width:380px) {
 .site-header .nav-inner { padding-inline:12px; }
 .site-header .nav-right>.iconbutton { width:36px; }
}
@media(max-width:359px) {
 .site-header .nav-inner { padding-inline:8px; gap:6px; }
 .site-header .brand { min-width:36px; }
 .site-header .brand-symbol { width:36px; height:50px; }
 .site-header .nav-right>[data-search] { left:44px; }
 .site-header .nav-right>.iconbutton { width:32px; }
 .site-header .nav-right>.desktop-config { width:40px; min-width:40px; margin-inline:2px; }
}

/* An orange surface with true transparent lettering over the existing film. */
.home-refined .hero .actions>.button.hero-cutout{--cutout-padding:22px;position:relative;background:transparent;border:0;color:var(--ink);padding-inline:var(--cutout-padding);font-size:16px;gap:24px;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none;text-shadow:none}
.hero-cutout-label{visibility:hidden;white-space:nowrap}
.hero-cutout>.icon{position:relative;z-index:1}
.hero-cutout-fill{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none;font:inherit}
.hero-cutout-fill text{font:inherit;letter-spacing:inherit;transform:translateX(var(--cutout-padding))}
.hero-cutout-surface{fill:var(--orange);transition:fill .2s}
.hero-cutout:hover .hero-cutout-surface{fill:#ff934d}
.home-refined .hero .actions>.button.hero-cutout:focus-visible{outline-color:#fff;outline-offset:5px}
@media(max-width:700px){.home-refined .hero .actions>.button.hero-cutout{--cutout-padding:16px;font-size:15px;gap:20px}}
@media(max-width:359px){.home-refined .hero .actions>.button.hero-cutout{--cutout-padding:12px;font-size:13px;gap:14px}}
@media(prefers-reduced-motion:reduce){.hero-cutout-surface{transition:none}}

/* Stronger display hierarchy, retaining the approved "Plus Jakarta Sans" family. */
.home-refined h1,.home-refined h2{font-weight:600;letter-spacing:-.03em}
.home-refined .hero h1{font-weight:600;letter-spacing:-.025em}

.newsletter-input{border-bottom-color:#889598;transition:border-color .2s,box-shadow .2s}
.newsletter-input:focus-within{border-bottom-color:#252c32;box-shadow:0 1px 0 #252c32}
.newsletter-input input:focus,.newsletter-input input:focus-visible{outline:none;box-shadow:none}

@media(min-width:701px){.desktop-config .config-label-desktop{display:inline-flex;align-items:center;gap:10px}.desktop-config .config-label-desktop>.icon{display:block;width:20px;height:20px;flex:none}}

/* Sklep: szkielet kart w docelowym układzie, zanim dotrze katalog. */
.shop-card-skeleton .shop-card-photo { background: #f3f0ec; border-color: #ece8e1; }
.shop-card-skeleton .shop-brand, .shop-card-skeleton h3, .shop-card-skeleton .shop-card-spec { height: 12px; margin: 10px 0; border-radius: 3px; background: #ede9e3; }
.shop-card-skeleton .shop-brand { width: 40%; }
.shop-card-skeleton h3 { height: 18px; width: 72%; }
.shop-card-skeleton .shop-card-spec { width: 90%; }
.shop-sidebar-skeleton { min-height: 320px; }
@media (max-width: 700px) { .shop-sidebar-skeleton { display: none; } }

.cart-back { display: none; min-height: 44px; padding: 0 8px; border: 0; background: none; color: #354551; font: inherit; font-size: 14px; text-decoration: underline; text-underline-offset: 4px; cursor: pointer; }
.shop-cart-collapse { display: flex; width: 100%; justify-content: center; min-height: 44px; margin-top: 4px; background: none; border: 0; color: #354551; font: inherit; font-size: 14px; text-decoration: underline; text-underline-offset: 4px; cursor: pointer; }
.cart-drawer.is-checkout { width: min(1120px, calc(100vw - 40px)); }
.cart-checkout-layout { flex: 1; min-height: 0; display: flex; }
.cart-checkout-main { flex: 1; min-width: 0; min-height: 0; display: flex; flex-direction: column; }
.cart-checkout-main .cart-drawer-body { flex: 1; }
.cart-checkout-frame { width: min(680px, 58%); height: 100%; border: 0; border-left: 1px solid #d8e0e2; background: #fff; }
@media (max-width: 959px) {
  .cart-drawer.is-checkout { width: 100%; }
  .cart-drawer.is-checkout .cart-back { display: inline-flex; align-items: center; }
  .cart-drawer.is-checkout .shop-cart-collapse { display: none; }
  .cart-checkout-main { display: none; }
  .cart-checkout-frame { width: 100%; border-left: 0; }
}
