/* Rozbudowa istniejącej identyfikacji V3; wspólne tokeny w css/style.css. */
.product-site .header { background: var(--color-bg); }
.product-main { padding-top: 6.5rem; }
.breadcrumbs { display: flex; flex-wrap: wrap; gap: .5rem; padding: 1.5rem var(--gutter); font-size: .8rem; }
.breadcrumbs a { text-decoration: underline; text-underline-offset: .2em; }
.product-hero { display: grid; grid-template-columns: 1fr 1.15fr; gap: clamp(2rem, 5vw, 5rem); align-items: center; padding: 2rem var(--gutter) 4rem; }
.product-hero > *, .product-columns > * { min-width: 0; }
.product-title { font-size: clamp(2.6rem, 5.4vw, 5.5rem); line-height: 1.04; text-wrap: balance; overflow-wrap: break-word; }
.product-intro { max-width: 60ch; margin: 1.5rem 0 2rem; font-size: clamp(1rem, 1.3vw, 1.25rem); }
.product-photo { aspect-ratio: 4/3; background: var(--color-secondary); }
.product-photo img { object-fit: contain; }
.product-section { padding: clamp(3rem, 6vw, 6rem) var(--gutter); scroll-margin-top: 6rem; }
.product-section > h2 { margin-bottom: 1.5rem; }
.product-section p { max-width: 72ch; }
.product-table { width: 100%; border-collapse: collapse; font-variant-numeric: tabular-nums; }
.product-table caption { text-align: left; padding-bottom: 1rem; }
.product-table th, .product-table td { padding: 1rem .75rem; border-bottom: 1px solid var(--line); text-align: left; vertical-align: top; overflow-wrap: anywhere; }
.product-table th { width: 42%; font-weight: 600; }
.table-scroll { max-width: 100%; overflow-x: auto; margin-bottom: 2rem; }
.dimensions-table { min-width: 760px; table-layout: fixed; }
.product-table.dimensions-table th { width: 20%; }
.dimensions-table thead th { white-space: nowrap; overflow-wrap: normal; }
.parameter-note { margin-top: 1.5rem; }
.product-columns { display: grid; grid-template-columns: 1fr 1fr; gap: 3rem; margin-top: 3rem; }
.product-columns h3 { margin-bottom: 1rem; }
.product-gallery { display: grid; grid-template-columns: 1fr 1fr; gap: 2rem; }
.product-gallery figure { min-width: 0; margin: 0; }
.product-gallery .media { display: block; aspect-ratio: 4/3; background: var(--color-secondary); }
.product-gallery .media img { object-fit: cover; object-position: center; }
.product-gallery .product-detail img { object-fit: cover; transform: scale(1.35); }
.product-gallery figcaption { padding-top: .75rem; font-size: .85rem; }
.product-faq details { border-bottom: 1px solid var(--line); padding: 1.25rem 0; }
.product-faq summary { cursor: pointer; font-weight: 600; }
.product-faq details p { margin-top: 1rem; }
.product-quote p { margin-bottom: 1.5rem; }
.product-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 2rem; margin-top: 2rem; }
.catalog-intro .product-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); margin-top: 3rem; }
.product-site .footer__marquee { display: none; }
.product-site .footer { padding-top: 4rem; }
.product-site .footer__col .label { opacity: .8; }
.product-site .drawer__panel { padding-top: 4.5rem; }
.product-site #drawerTitle > span { display: block; margin-top: .5rem; white-space: normal !important; }
@media (max-width: 991px) { .product-hero { grid-template-columns: 1fr 1fr; } .product-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 767px) { .product-main { padding-top: 5rem; } .product-hero, .product-columns, .product-gallery, .product-grid, .catalog-intro .product-grid { grid-template-columns: 1fr; } .product-hero { padding-top: 1rem; padding-bottom: 2rem; } .product-title { font-size: clamp(2.5rem, 9vw, 4rem); } .product-table th, .product-table td { padding: .85rem .35rem; font-size: .85rem; } }
