/* Inner pages share WRL's visual language, not its homepage compositions. */
.subpage h1, .subpage h2, .subpage h3, .subpage h4 {
  font-family: var(--heading-font);
  font-weight: 400;
  font-synthesis: none;
  letter-spacing: -0.02em;
}
.desktop-nav { gap: 24px; }
.desktop-nav [aria-current="page"], .nav-offer.current-section > summary {
  text-decoration: underline;
  text-underline-offset: 8px;
  text-decoration-color: var(--primary);
}
.nav-drop [aria-current="page"] { background: var(--surface); }
.mobile-menu nav > a { font-size: 30px; line-height: 36px; }
.full-gallery-link { margin-top: 24px; }
/* Wayfinding and the inner-page title system. */
.breadcrumbs { padding-block: 16px; }
.breadcrumbs ol {
  display: flex; flex-wrap: wrap; gap: 8px 12px;
  margin: 0; padding: 0; list-style: none;
  color: var(--muted); font-size: 12px; line-height: 20px;
}
.breadcrumbs li + li::before { content: "/"; margin-inline-end: 12px; }
.breadcrumbs a { text-decoration: underline; text-underline-offset: 4px; }
.inner-hero { padding-block: 32px 48px; }
.inner-title-row {
  display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr);
  gap: 64px; align-items: center;
}
.subpage h1 { font-size: 72px; line-height: 1; max-width: 800px; }
.inner-introduction { max-width: 60ch; }
.subpage .hero-lede { color: var(--muted); font-size: 18px; line-height: 28px; }
.inner-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 16px 24px; margin-top: 24px; }
.subpage h2 { font-size: 36px; line-height: 40px; }
.subpage h3 { font-size: 24px; line-height: 32px; }
.subpage .footer-column h3 { font-size: 16px; line-height: 24px; }
.subpage .project-meta { flex-direction: column; gap: 4px; }
.subpage .project-meta h3 { font-size: 20px; line-height: 28px; }
.subpage .photo-button { height: 100%; }
.subpage .photo-zoom { background: rgb(255 251 242 / 0.85); color: var(--ink); border: 0; width: 40px; height: 40px; }
.subpage .photo-zoom .icon { width: 18px; height: 18px; stroke-width: 1.5; }
/* Service opening: name and practical introduction above a photographic spread. */
.service-hero .inner-title-row { align-items: start; }
.service-visual { display: grid; gap: 16px; margin-top: 40px; }
.paired-visual { grid-template-columns: minmax(0, 2.2fr) minmax(0, 1fr); }
.szafy-visual { grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr); }
.service-visual figure { min-width: 0; overflow: hidden; }
.service-visual img { width: 100%; height: 360px; object-fit: cover; }
.kuchnie-visual figure:first-child img { object-position: center 65%; }
.szafy-visual img { object-position: center 45%; }
.salon-visual img { object-position: center 50%; }
.akcesoria-visual { width: 75%; }
.akcesoria-visual img { height: 320px; object-position: center 55%; }
.visual-caption { display: flex; gap: 8px; align-items: center; margin-top: 12px; color: var(--muted); font-size: 12px; line-height: 16px; }
.visual-caption .icon { width: 16px; height: 16px; }
.service-jumps { display: flex; flex-wrap: wrap; gap: 24px 48px; padding-block: 0 32px; }
.service-jumps .text-link { font-size: 14px; }
.service-editorial { padding-block: 80px; background: var(--surface); }
.service-editorial-grid { display: grid; grid-template-columns: minmax(0, 1.35fr) minmax(0, 1fr); gap: 96px; }
.service-narrative h2 { max-width: 520px; margin-bottom: 24px; }
.service-narrative p { color: var(--muted); max-width: 65ch; font-size: 18px; line-height: 28px; }
.service-narrative .text-link { margin-top: 24px; }
.service-specification { padding-top: 4px; }
.service-specification > div + div { margin-top: 24px; padding-top: 24px; border-top: 1px solid var(--line); }
.service-specification h3 { font-size: 20px; line-height: 28px; }
.service-specification p { color: var(--muted); font-size: 14px; line-height: 20px; margin-top: 8px; }
.service-portfolio { padding-block: 80px; }
.portfolio-heading { display: flex; justify-content: space-between; align-items: end; gap: 32px; margin-bottom: 40px; }
.portfolio-heading h2 { max-width: 580px; }
.portfolio-heading p { max-width: 34ch; color: var(--muted); font-size: 14px; line-height: 20px; }
.service-portfolio-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 40px 24px; }
.service-portfolio-grid[data-photo-count="1"] { grid-template-columns: minmax(0, 1fr); max-width: 1000px; }
.service-portfolio-grid[data-photo-count="1"] .project-card figure { aspect-ratio: 16 / 9; }
.service-portfolio-grid[data-photo-count="4"] > .project-card:first-child { grid-column: 1 / -1; }
.service-portfolio-grid[data-photo-count="4"] > .project-card:first-child figure { aspect-ratio: 21 / 9; }
.portfolio-links { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 16px 32px; margin-top: 32px; }
.page-questions { padding-block: 64px 80px; background: var(--surface); }
.page-questions h2 { margin-bottom: 32px; }
.page-questions .faq-list { max-width: 1000px; margin-inline-start: auto; }
.page-questions .faq-list details > p { max-width: 75ch; padding-bottom: 24px; }
/* Catalogue: two larger entries followed by three smaller ones. */
.catalogue-hero .inner-title-row { grid-template-columns: minmax(0, 1.4fr) minmax(0, 0.9fr); }
.catalogue-hero h1 { font-size: 60px; line-height: 1; }
.offer-catalogue { padding-block: 0 80px; }
.catalogue-grid { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 48px 24px; }
.catalogue-item { grid-column: span 2; min-width: 0; }
.catalogue-kuchnie, .catalogue-szafy { grid-column: span 3; }
.catalogue-link { display: block; }
.catalogue-link figure { aspect-ratio: 4 / 3; overflow: hidden; }
.catalogue-kuchnie figure, .catalogue-szafy figure { aspect-ratio: 16 / 9; }
.catalogue-link img { width: 100%; height: 100%; object-fit: cover; transition: transform 240ms var(--ease-out); }
.catalogue-caption { display: flex; justify-content: space-between; align-items: start; gap: 16px; margin-top: 16px; }
.subpage .catalogue-caption h2 { font-size: 30px; line-height: 36px; }
.catalogue-item:nth-child(n+3) .catalogue-caption h2 { font-size: 24px; line-height: 32px; }
.catalogue-caption p { color: var(--muted); font-size: 14px; line-height: 20px; margin-top: 8px; max-width: 45ch; }
.catalogue-arrow { display: grid; place-items: center; width: 40px; height: 40px; flex: 0 0 40px; border: 1px solid var(--primary); color: var(--primary); }
.offer-help { background: var(--section-tint); padding-block: 64px; }
.offer-help .container { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 0.8fr); gap: 96px; align-items: center; }
.offer-help h2 { font-size: 48px; line-height: 1; }
.offer-help p { margin-top: 24px; color: var(--muted); max-width: 55ch; }
.offer-help-action { max-width: 440px; }
.offer-help-action p { margin-top: 0; margin-bottom: 24px; }
/* Gallery: photographs lead; no duplicate heading or homepage album. */
.portfolio-hero { padding-bottom: 32px; }
.portfolio-collection { padding-block: 16px 80px; }
.portfolio-toolbar { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 16px; margin-bottom: 32px; }
.portfolio-toolbar .filters { margin: 0; }
.portfolio-toolbar .filter { border-color: var(--muted); }
.portfolio-grid { grid-template-columns: repeat(12, minmax(0, 1fr)); gap: 40px 24px; }
.portfolio-grid > .project-card { grid-column: span 4; min-width: 0; }
.portfolio-grid > .project-card:first-child { grid-column: span 8; }
.portfolio-grid > .project-card:first-child figure { aspect-ratio: 16 / 9; }
.portfolio-grid > .project-card:nth-child(2) figure { aspect-ratio: 3 / 4; }
.portfolio-grid:has(.project-card[hidden]) > .project-card { grid-column: span 6; }
.portfolio-grid:has(.project-card[hidden]) > .project-card figure { aspect-ratio: 4 / 3; }
.portfolio-grid[data-photo-count="1"] > .project-card { grid-column: 1 / -1; }
.portfolio-grid[data-photo-count="1"] > .project-card figure { aspect-ratio: 21 / 9; }
.portfolio-grid[data-photo-count="2"] > .project-card { grid-column: span 6; }
.portfolio-grid[data-photo-count="2"] > .project-card figure { aspect-ratio: 4 / 3; }
/* Company: an opening date and a story with its own editorial rhythm. */
.company-title { display: grid; grid-template-columns: minmax(0, 1.6fr) minmax(0, 0.8fr); gap: 64px; align-items: center; }
.company-title h1 { font-size: 60px; line-height: 1; }
.company-since { justify-self: end; padding-inline-start: 32px; border-inline-start: 1px solid var(--primary); }
.company-since p { font: 400 96px / 1 var(--heading-font); color: var(--primary); }
.company-since span { display: block; color: var(--muted); font-size: 14px; line-height: 20px; margin-top: 16px; }
.company-story { padding-block: 24px 80px; }
.company-story-grid { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr); gap: 64px; align-items: center; }
.company-pictures { display: grid; grid-template-columns: minmax(0, 1.7fr) minmax(0, 1fr); gap: 16px; align-items: end; }
.company-pictures figure:first-child img { height: 440px; object-fit: cover; }
.company-pictures figure:nth-child(2) img { height: 280px; object-fit: cover; }
.company-pictures > p { grid-column: 1 / -1; font-size: 12px; line-height: 16px; color: var(--muted); }
.company-story article h2 { margin-bottom: 24px; }
.company-story article p { color: var(--muted); max-width: 65ch; }
.company-story article .company-lead { color: var(--ink); font-size: 18px; line-height: 28px; }
.company-story .text-link { margin-top: 24px; }
.company-preparation { background: var(--surface); padding-block: 80px; }
.company-preparation .container { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 96px; }
.preparation-intro h2 { font-size: 48px; line-height: 1; }
.preparation-intro p { color: var(--muted); margin-top: 24px; max-width: 48ch; }
.preparation-intro .text-link { margin-top: 24px; }
.preparation-list { margin: 0; }
.preparation-list > div { padding-block: 16px; }
.preparation-list > div:first-child { padding-top: 0; }
.preparation-list > div + div { border-top: 1px solid var(--line); }
.preparation-list dt { font-weight: 600; font-size: 18px; line-height: 28px; }
.preparation-list dd { margin: 8px 0 0; color: var(--muted); font-size: 14px; line-height: 20px; }
.company-visit { padding-block: 64px; }
.company-visit .container { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr); gap: 64px; }
.company-visit p { color: var(--muted); margin-bottom: 24px; }
/* Contact: direct channels above a form and a compact location directory. */
.contact-hero { padding-block: 32px 48px; }
.contact-hero .hero-lede { margin-top: 24px; }
.contact-direct { display: flex; flex-direction: column; align-items: start; gap: 8px; }
.contact-direct > a:not(.contact-number) { min-height: 32px; text-decoration: underline; text-underline-offset: 4px; }
.contact-number { display: flex; align-items: center; gap: 16px; font: 400 48px / 1 var(--heading-font); margin-bottom: 16px; white-space: nowrap; }
.contact-number .icon { width: 32px; height: 32px; }
.contact-sheet { padding-block: 0 80px; }
.contact-sheet-grid { display: grid; grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr); gap: 64px; align-items: start; }
.contact-form-column { background: var(--surface); padding: 40px; }
.contact-form-column h2 { font-size: 30px; line-height: 36px; margin-bottom: 16px; }
.contact-form-column .form-result h3 { font-size: 18px; line-height: 28px; margin-bottom: 8px; }
.contact-form-intro { color: var(--muted); font-size: 14px; line-height: 20px; margin-bottom: 32px; }
.contact-form-column .field input, .contact-form-column .field select, .contact-form-column .field textarea { background: var(--paper); }
.contact-addresses { padding-block: 16px; }
.contact-addresses > h2 { font-size: 30px; line-height: 36px; margin-bottom: 32px; }
.contact-location { padding-block: 24px; display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 8px 16px; }
.contact-location + .contact-location { border-top: 1px solid var(--line); }
.contact-location h3 { font-size: 18px; line-height: 28px; grid-column: 1 / -1; }
.contact-location address { font-style: normal; color: var(--muted); font-size: 14px; line-height: 20px; }
.contact-location .text-link { align-self: end; font-size: 12px; gap: 8px; }
.contact-opening { border-top: 1px solid var(--line); padding-top: 24px; margin-top: 16px; }
.contact-opening h3 { font-size: 18px; line-height: 28px; margin-bottom: 16px; }
.contact-opening p { color: var(--muted); font-size: 14px; line-height: 20px; }
.contact-opening .text-link { margin-top: 16px; }
/* Stores: each address has a rail beside its own gallery, not another homepage band. */
.stores-hero .inner-title-row { grid-template-columns: minmax(0, 1.35fr) minmax(0, 0.9fr); }
.stores-hero h1 { font-size: 60px; line-height: 1; }
.stores-hero .hero-lede { margin-top: 24px; max-width: 55ch; }
.store-index { display: grid; }
.store-index > a { display: flex; align-items: center; justify-content: space-between; gap: 24px; padding-block: 16px; }
.store-index > a + a { border-top: 1px solid var(--line); }
.store-index > a > span { display: grid; gap: 4px; }
.store-index strong { font-size: 18px; line-height: 28px; font-weight: 600; }
.store-index span span { color: var(--muted); font-size: 14px; line-height: 20px; }
.store-index .icon { color: var(--primary); }
.store-location-section { padding-block: 64px; }
.store-location-section:nth-of-type(even) { background: var(--surface); }
.store-location-grid { display: grid; grid-template-columns: minmax(0, 0.75fr) minmax(0, 2fr); gap: 48px; align-items: start; }
.store-address-rail { position: sticky; top: 32px; padding-block: 8px; }
.store-address-rail h2 { font-size: 36px; line-height: 40px; }
.store-label { color: var(--muted); font-size: 14px; line-height: 20px; margin-top: 12px; }
.store-address-rail address { font-style: normal; margin-top: 24px; font-size: 18px; line-height: 28px; }
.store-rail-actions { display: flex; flex-direction: column; align-items: start; gap: 16px; margin-top: 32px; }
.store-rail-actions .button { font-size: 14px; gap: 8px; }
.store-rail-actions .button-label { padding-inline: 8px; }
.store-rail-actions .text-link { white-space: normal; gap: 12px; }
.store-gallery { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; }
.store-gallery .project-meta h3 { font-size: 18px; line-height: 28px; }
.store-gallery-note { max-width: 75ch; margin-bottom: 24px; color: var(--muted); font-size: 14px; line-height: 20px; }
.store-demo-badge { position: absolute; top: 16px; left: 16px; padding: 8px 12px; background: var(--paper); color: var(--ink); font-size: 12px; line-height: 16px; font-weight: 600; }
.store-gallery-empty { display: flex; gap: 24px; padding: 32px; border: 1px solid var(--muted); }
.empty-gallery-symbol { color: var(--primary); }
.store-gallery-empty h3 { font-size: 24px; line-height: 32px; }
.store-gallery-empty p { color: var(--muted); max-width: 65ch; margin-top: 16px; }
.store-gallery-empty .text-link { margin-top: 16px; }
.store-visit-note { padding-block: 64px; background: var(--section-tint); }
.store-visit-note .container { display: grid; grid-template-columns: minmax(0, 0.8fr) minmax(0, 1fr) auto; gap: 48px; align-items: start; }
.store-visit-note p { color: var(--muted); }
/* A focused accessories page and prose pages. */
.accessory-selection { padding-block: 16px 80px; }
.accessory-selection .container { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr); gap: 64px; align-items: start; }
.accessory-selection img { height: 560px; object-fit: cover; }
.accessory-selection figcaption { margin-top: 12px; color: var(--muted); font-size: 12px; line-height: 16px; }
.accessory-list > div { padding-block: 24px; }
.accessory-list > div:first-child { padding-top: 0; }
.accessory-list > div + div { border-top: 1px solid var(--line); }
.accessory-list h2 { font-size: 30px; line-height: 36px; }
.accessory-list p { color: var(--muted); max-width: 55ch; margin-top: 12px; }
.accessory-note { padding-block: 64px; background: var(--section-tint); }
.accessory-note .container { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 64px; }
.accessory-note p { color: var(--muted); max-width: 65ch; }
.accessory-note .text-link { margin-top: 24px; }
.privacy-section { padding-block: 24px 80px; }
.privacy-copy { max-width: 800px; }
.privacy-copy h2 { font-size: 30px; line-height: 36px; margin-bottom: 24px; }
.privacy-copy h2:not(:first-child) { margin-top: 48px; }
.privacy-copy p { color: var(--muted); }
.privacy-copy a { text-decoration: underline; text-underline-offset: 4px; }
.error-hero { padding-block: 80px 96px; }
@media (hover: hover) and (pointer: fine) {
  .breadcrumbs a:hover { color: var(--ink); }
  .catalogue-link:hover img { transform: scale(1.025); }
  .catalogue-link:hover h2, .store-index > a:hover strong { text-decoration: underline; text-underline-offset: 5px; }
  .contact-direct > a:hover { color: var(--primary); }
}
@media (max-width: 1200px) and (min-width: 801px) {
  .desktop-nav { gap: 16px; }
  .header-inner { gap: 24px; }
  .desktop-nav > a, .nav-offer summary { font-size: 12px; }
  .header-contact { display: none; }
}
@media (max-width: 1100px) {
  .inner-title-row, .company-title { gap: 40px; }
  .subpage h1 { font-size: 60px; }
  .catalogue-hero h1, .company-title h1, .stores-hero h1 { font-size: 48px; }
  .service-editorial-grid, .offer-help .container, .company-preparation .container { gap: 48px; }
  .company-story-grid, .company-visit .container, .contact-sheet-grid, .accessory-selection .container { gap: 40px; }
  .contact-number { font-size: 36px; line-height: 40px; }
  .store-location-grid { grid-template-columns: minmax(0, 0.8fr) minmax(0, 1.7fr); gap: 32px; }
  .store-gallery { grid-template-columns: minmax(0, 1fr); }
  .store-visit-note .container { grid-template-columns: minmax(0, 1fr) minmax(0, 1.2fr); gap: 32px; }
  .store-visit-note .text-link { grid-column: 2; }
  .contact-location { grid-template-columns: minmax(0, 1fr); }
  .contact-location .text-link { justify-self: start; }
}
@media (max-width: 800px) {
  .inner-title-row, .catalogue-hero .inner-title-row, .stores-hero .inner-title-row { grid-template-columns: minmax(0, 1fr); gap: 24px; }
  .subpage h1, .catalogue-hero h1, .company-title h1, .stores-hero h1 { font-size: 48px; line-height: 1; }
  .inner-hero { padding-block: 24px 40px; }
  .service-visual { margin-top: 32px; }
  .service-visual img { height: 280px; }
  .service-jumps { gap: 16px 32px; }
  .service-editorial, .service-portfolio, .company-preparation { padding-block: 64px; }
  .service-editorial-grid { grid-template-columns: minmax(0, 1fr); gap: 40px; }
  .service-specification { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
  .service-specification > div + div { margin-top: 0; padding-top: 0; border-top: 0; }
  .portfolio-heading { flex-direction: column; align-items: start; gap: 16px; }
  .portfolio-heading p { max-width: 55ch; }
  .portfolio-grid > .project-card { grid-column: span 6; }
  .portfolio-grid > .project-card:first-child { grid-column: 1 / -1; }
  .portfolio-grid > .project-card:nth-child(2) figure { aspect-ratio: 4 / 3; }
  .catalogue-item { grid-column: span 3; }
  .catalogue-kuchnie { grid-column: 1 / -1; }
  .catalogue-szafy figure { aspect-ratio: 4 / 3; }
  .catalogue-grid { gap: 32px 24px; }
  .offer-help .container { gap: 40px; }
  .offer-help h2, .preparation-intro h2 { font-size: 36px; line-height: 40px; }
  .company-title { grid-template-columns: minmax(0, 1fr) auto; gap: 24px; }
  .company-since { padding-inline-start: 16px; }
  .company-since p { font-size: 60px; }
  .company-since span { font-size: 12px; line-height: 16px; }
  .company-story-grid { grid-template-columns: minmax(0, 1fr); gap: 40px; }
  .company-pictures figure:first-child img { height: 360px; }
  .company-pictures figure:nth-child(2) img { height: 240px; }
  .company-story article { max-width: 65ch; }
  .company-preparation .container { grid-template-columns: minmax(0, 1fr); gap: 40px; }
  .company-visit .container { grid-template-columns: minmax(0, 1fr); gap: 24px; }
  .contact-sheet-grid { grid-template-columns: minmax(0, 1fr); gap: 40px; }
  .contact-form-column { padding: 32px; }
  .contact-location { grid-template-columns: minmax(0, 1fr) auto; }
  .contact-addresses { max-width: 600px; }
  .store-location-grid { grid-template-columns: minmax(0, 1fr); gap: 32px; }
  .store-address-rail { position: static; }
  .store-address-rail address { margin-top: 16px; }
  .store-rail-actions { flex-direction: row; flex-wrap: wrap; align-items: center; margin-top: 24px; gap: 16px 24px; }
  .store-gallery { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .store-index { max-width: 600px; }
  .accessory-selection .container { gap: 32px; }
  .accessory-selection img { height: 480px; }
}
@media (max-width: 600px) {
  .subpage h1, .catalogue-hero h1, .company-title h1, .stores-hero h1 { font-size: 36px; line-height: 40px; }
  .subpage .hero-lede { font-size: 16px; line-height: 24px; }
  .subpage h2 { font-size: 30px; line-height: 36px; }
  .inner-actions .button { width: 100%; justify-content: space-between; }
  .service-visual { gap: 8px; }
  .service-visual img { height: 240px; }
  .paired-visual { grid-template-columns: minmax(0, 1.5fr) minmax(0, 1fr); }
  .szafy-visual { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .single-visual img { height: auto; aspect-ratio: 4 / 3; }
  .akcesoria-visual { width: 100%; }
  .service-jumps { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px 24px; padding-bottom: 24px; }
  .service-jumps .text-link { justify-content: space-between; }
  .service-specification { grid-template-columns: minmax(0, 1fr); gap: 24px; }
  .service-narrative p { font-size: 16px; line-height: 24px; }
  .service-portfolio-grid { grid-template-columns: minmax(0, 1fr); gap: 32px; }
  .service-portfolio-grid[data-photo-count="4"] > .project-card:first-child figure,
  .service-portfolio-grid[data-photo-count="1"] .project-card figure { aspect-ratio: 4 / 3; }
  .portfolio-links { flex-direction: column; gap: 8px; }
  .portfolio-grid { grid-template-columns: minmax(0, 1fr); gap: 32px; }
  .portfolio-grid > .project-card, .portfolio-grid:has(.project-card[hidden]) > .project-card,
  .portfolio-grid[data-photo-count="2"] > .project-card { grid-column: 1 / -1; }
  .portfolio-grid > .project-card:first-child figure, .portfolio-grid[data-photo-count="1"] > .project-card figure { aspect-ratio: 4 / 3; }
  .portfolio-toolbar { gap: 16px; }
  .page-questions { padding-block: 48px 64px; }
  .page-questions .faq-list { margin-inline-start: 0; }
  .catalogue-grid { grid-template-columns: minmax(0, 1fr); gap: 32px; }
  .catalogue-item, .catalogue-kuchnie, .catalogue-szafy { grid-column: 1 / -1; }
  .catalogue-item figure { aspect-ratio: 4 / 3; }
  .subpage .catalogue-caption h2 { font-size: 24px; line-height: 32px; }
  .offer-help .container { grid-template-columns: minmax(0, 1fr); gap: 32px; }
  .offer-help h2 { font-size: 36px; line-height: 40px; }
  .offer-help-action .button { width: 100%; justify-content: space-between; }
  .company-title { grid-template-columns: minmax(0, 1fr); gap: 32px; }
  .company-since { justify-self: start; display: flex; align-items: center; gap: 24px; border-inline-start: 0; padding-inline-start: 0; }
  .company-since p { font-size: 48px; }
  .company-since span { margin-top: 0; font-size: 14px; line-height: 20px; }
  .company-pictures { grid-template-columns: minmax(0, 1.6fr) minmax(0, 1fr); gap: 12px; }
  .company-pictures figure:first-child img { height: 320px; }
  .company-pictures figure:nth-child(2) img { height: 200px; }
  .company-visit .button { width: 100%; justify-content: space-between; font-size: 14px; }
  .company-visit .button-label { padding-inline: 8px; white-space: normal; }
  .contact-number { font-size: 30px; line-height: 36px; gap: 12px; }
  .contact-number .icon { width: 24px; height: 24px; }
  .contact-form-column { padding: 24px; }
  .contact-form-column h2, .contact-addresses > h2 { font-size: 24px; line-height: 32px; }
  .contact-location { grid-template-columns: minmax(0, 1fr); }
  .store-location-section { padding-block: 48px; }
  .store-gallery { grid-template-columns: minmax(0, 1fr); }
  .store-rail-actions { flex-direction: column; align-items: start; }
  .store-gallery-empty { flex-direction: column; padding: 24px; }
  .store-visit-note .container { grid-template-columns: minmax(0, 1fr); gap: 24px; }
  .store-visit-note .text-link { grid-column: auto; }
  .accessory-selection .container, .accessory-note .container { grid-template-columns: minmax(0, 1fr); gap: 32px; }
  .accessory-selection img { height: auto; aspect-ratio: 4 / 3; }
  .accessory-list h2 { font-size: 24px; line-height: 32px; }
  .mobile-menu nav { margin-top: 24px; gap: 4px; }
  .mobile-menu nav > a { font-size: 24px; line-height: 32px; padding-block: 8px; }
  .mobile-menu .menu-footer { margin-top: 24px; }
  .error-hero { padding-block: 64px 80px; }
}
@media (prefers-reduced-motion: reduce) {
  .catalogue-link:hover img { transform: none; }
}

/* Approved shared PAGE HERO: the light panel, a left-aligned title and its description. */
.inner-hero.page-hero { padding-block: 16px 32px; }
.page-hero-panel { padding: 64px 40px; background: var(--surface); }
.subpage .page-hero h1 { font-size: 48px; line-height: 1; max-width: 1000px; }
.page-hero .hero-lede { max-width: 75ch; margin-top: 24px; font-size: 18px; line-height: 28px; }
.contact-addresses > .contact-direct { margin-bottom: 40px; }
.store-navigation { padding-bottom: 24px; }
.store-navigation .store-index { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 32px; max-width: none; }
.store-navigation .store-index > a + a { border-top: 0; }
.error-recovery { display: flex; flex-wrap: wrap; align-items: center; gap: 24px; padding-block: 0 64px; }
@media (max-width: 800px) {
  .page-hero-panel { padding: 48px 32px; }
  .store-navigation .store-index { grid-template-columns: minmax(0, 1fr); gap: 0; }
}
@media (max-width: 600px) {
  .inner-hero.page-hero { padding-block: 8px 24px; }
  .page-hero-panel { padding: 32px 24px; }
  .subpage .page-hero h1 { font-size: 36px; line-height: 40px; }
  .page-hero .hero-lede { margin-top: 16px; font-size: 16px; line-height: 24px; }
}
