.product-page { padding-bottom: 75px; }
.product-breadcrumb { display: flex; flex-wrap: wrap; gap: 12px; padding: 25px 0; color: #73818b; font-size: 13px; }
.product-breadcrumb a:hover { color: #009fd4; }
.product-overview { display: grid; grid-template-columns: 1fr 1fr; gap: 48px; align-items: start; padding: 25px 0 65px; }
.product-photo img { width: 100%; height: 410px; object-fit: contain; display: block; }
.category-link { display: inline-block; color: #009fd4; text-decoration: underline; text-underline-offset: 4px; margin-bottom: 12px; font-size: 16px; }
.product-description h1 { margin: 0 0 12px; font-size: 25px; line-height: 32px; font-weight: 700; letter-spacing: 0; color: #414141; }
.product-description p { font-size: 16px; line-height: 25px; color: #505050; margin-bottom: 13px; }
.product-read-more { margin-top: 22px; }
.product-read-more summary { width: fit-content; cursor: pointer; font-size: 14px; font-weight: 600; text-decoration: underline; text-underline-offset: 3px; }
.product-read-more > div { padding-top: 18px; }
.read-less-label, .product-read-more[open] .read-more-label { display: none; }
.product-read-more[open] .read-less-label { display: inline; }
.related-heading { display: flex; flex-wrap: wrap; align-items: center; gap: 15px; margin-bottom: 22px; }
.related-heading h2 { font-size: 24px; line-height: 32px; letter-spacing: 0; font-weight: 700; color: #414141; }
.related-heading .button { padding: 10px 14px; gap: 10px; font-size: 14px; }
.related-grid { display: grid; grid-template-columns: repeat(3, 200px); gap: 25px; }
.related-card > div { border: 1px solid #ddd; border-radius: 4px; padding: 10px; transition: border-color .2s; }
.related-card:hover > div { border-color: var(--blue); }
.related-card img { width: 100%; height: 165px; object-fit: contain; display: block; }
.related-card h3 { font-size: 16px; line-height: 25px; text-align: center; margin-top: 7px; color: #414141; }
#extra-products { margin-top: 24px; }
#extra-products p { color: var(--muted); font-size: 14px; margin-bottom: 14px; }
.extra-product { display: inline-flex; width: 200px; justify-content: space-between; padding: 20px; border: 1px solid var(--line); }
@media (max-width: 900px) { .product-overview { gap: 25px; } .product-photo img { height: 340px; } }
@media (max-width: 767px) {
 .product-overview { grid-template-columns: 1fr; padding-top: 0; padding-bottom: 40px; }
 .product-photo img { height: 280px; }
 .product-description h1 { font-size: 24px; }
 .related-heading h2 { font-size: 20px; }
 .related-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
 .related-card img { height: 120px; }
}
@media (max-width: 480px) { .related-grid { grid-template-columns: 1fr; } .related-card img { height: 190px; } }

.product-description .product-pdf { margin: 12px 0 0 12px; background: #102b40; color: #fff; }
@media(max-width:760px) { .product-description .product-pdf { margin-left:0; } }
