.product-page { background: #fff; color: #242430; }
.product-page img { animation: none; }
.product-breadcrumb { display: flex; flex-wrap: wrap; gap: .55rem; font-size: .85rem; padding: 24px 0; margin: 0; }
.product-breadcrumb a { color: #5c5862; }
.product-breadcrumb [aria-current] { color: #25212b; }
.product-hero { padding: 0 0 64px; }
.product-layout { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr); gap: clamp(24px, 4vw, 64px); align-items: start; }
.product-visual { min-width: 0; }
.product-photo-link { display: block; border-radius: 12px; background: #f4f2f3; overflow: hidden; }
.product-photo-link img { width: 100%; aspect-ratio: 4 / 3; height: auto; object-fit: contain; display: block; }
.product-photo-note { color: #68616b; font-size: .8rem; margin: 8px 0 12px; }
.product-thumbnails { display: flex; gap: 10px; overflow-x: auto; padding: 4px 2px 12px; }
.product-thumbnails button { flex: 0 0 82px; background: #fff; padding: 0; border: 2px solid transparent; border-radius: 7px; overflow: hidden; }
.product-thumbnails button[aria-pressed="true"] { border-color: var(--primary-color); }
.product-thumbnails img { width: 78px; height: 62px; object-fit: cover; display: block; }
.product-eyebrow { color: var(--primary-color); text-transform: uppercase; font-weight: 700; letter-spacing: .08em; font-size: .75rem; margin: 4px 0 12px; }
.product-summary h1 { color: #201b25; font-size: clamp(1.9rem, 3.1vw, 3rem); line-height: 1.12; font-weight: 750; letter-spacing: -.035em; margin: 0 0 20px; }
.product-intro { font-size: 1.05rem; line-height: 1.7; color: #58505d; }
.product-features { padding: 0; list-style: none; display: flex; flex-wrap: wrap; gap: 8px; margin: 22px 0; }
.product-features li { padding: 7px 12px; background: #f6f3f5; border-radius: 5px; font-size: .85rem; }
.product-price { font-size: 1.5rem; font-weight: 750; color: #25202b; border-top: 1px solid #e8e1e6; padding-top: 20px; margin-bottom: 6px; }
.product-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 22px; }
.product-actions .quote-call { color: #36303b; }
.product-body { background: #faf8f9; padding: 64px 0; }
.product-content-layout { display: grid; grid-template-columns: minmax(0, 1.5fr) minmax(0, 1fr); gap: 56px; }
.product-body h2, .product-related h2 { font-size: clamp(1.5rem, 2.5vw, 2rem); color: #25202b; font-weight: 700; margin-bottom: 20px; }
.product-body p, .product-body li { line-height: 1.8; color: #58505d; }
.product-body h3 { font-size: 1.1rem; margin-top: 26px; color: #25202b; }
.product-brief { border-left: 3px solid var(--primary-color); padding-left: 26px; }
.product-brief ol { padding-left: 20px; }
.product-brief li { margin: 8px 0; }
.product-questions { padding: 56px 0; }
.product-questions h2 { font-size: 1.65rem; margin-bottom: 20px; }
.product-questions details { border-bottom: 1px solid #e8e1e6; padding: 18px 0; }
.product-questions summary { font-weight: 650; cursor: pointer; color: #302834; line-height: 1.5; }
.product-questions details p { margin: 14px 0 0; max-width: 840px; line-height: 1.75; color: #58505d; }
.product-related { padding: 0 0 72px; }
.related-products { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
.related-product { display: block; color: #25202b; }
.related-product img { width: 100%; aspect-ratio: 16 / 10; object-fit: cover; border-radius: 8px; background: #f6f3f5; }
.related-product h3 { font-size: 1rem; margin: 14px 0 6px; line-height: 1.5; }
.related-product p { color: #68616b; font-size: .85rem; }
.product-bottom-cta { background: #25202b; color: #fff; padding: 40px 0; }
.product-bottom-cta .container { display: flex; justify-content: space-between; align-items: center; gap: 24px; flex-wrap: wrap; }
.product-bottom-cta h2 { color: #fff; font-size: 1.7rem; margin: 0 0 10px; }
.product-bottom-cta p { margin: 0; color: #e9e1e6; }
.product-dialog { padding: 48px 12px 12px; border: 0; border-radius: 10px; max-width: min(1100px, 95vw); max-height: 95vh; background: #fff; }
.product-dialog::backdrop { background: rgba(20, 15, 22, .85); }
.product-dialog img { display: block; max-width: 100%; max-height: 78vh; object-fit: contain; margin: auto; }
.product-dialog button { position: absolute; top: 8px; right: 8px; padding: 6px 14px; min-height: 36px; background: #25202b; color: #fff; border: 0; border-radius: 5px; }
.product-thumbnails button:focus-visible, .product-photo-link:focus-visible, .related-product:focus-visible { outline: 3px solid var(--primary-color); outline-offset: 3px; }
@media (max-width: 991px) {
  .product-layout { gap: 28px; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
  .product-content-layout { gap: 28px; }
}
@media (max-width: 767px) {
  .product-layout, .product-content-layout { grid-template-columns: minmax(0, 1fr); }
  .product-breadcrumb { padding: 18px 0; font-size: .78rem; }
  .product-summary h1 { font-size: 2rem; }
  .product-hero { padding-bottom: 40px; }
  .product-actions .quote-whatsapp { width: 100%; }
  .product-body { padding: 40px 0; }
  .product-brief { margin-top: 8px; }
  .related-products { grid-template-columns: minmax(0, 1fr); gap: 28px; }
  .product-bottom-cta .quote-whatsapp { width: 100%; }
}
