.product-page{max-width:1600px;margin-inline:auto}
.product-breadcrumb{padding:28px 7% 0;flex-wrap:wrap}
.product-detail{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);align-items:start;gap:60px;padding:35px 7% 80px}
.product-detail-photo{position:relative;display:flex;align-items:center;justify-content:center;width:100%;min-width:0;aspect-ratio:1;border:1px solid var(--border-detail);background:var(--background-detail);padding:20px;cursor:zoom-in}
.product-detail-photo>img{display:block;width:100%;height:100%;min-height:0;object-fit:contain}
.product-photo-label{position:absolute;inset-inline-end:26px;bottom:26px;background:var(--background-photo-label);color:var(--text-detail-green);padding:9px 13px;font-size:13px}
.product-detail-photo:focus-visible,.product-photo-close:focus-visible,.product-return:focus-visible,.product-related-item:focus-visible{outline:2px solid var(--border-focus-detail);outline-offset:5px}
.product-detail-copy.gallery-copy{padding:18px 0 0;min-width:0}
.product-reference{font-size:13px;letter-spacing:.14em;color:var(--text-reference);margin:0 0 18px;direction:ltr;text-align:start}
.product-view{font-size:15px;line-height:1.5;color:var(--text-reference);margin:-8px 0 20px}
.product-detail-copy h1{font-family:var(--font-display);font-size:46px;font-weight:400;line-height:1.08;margin:0 0 24px;overflow-wrap:anywhere}
.product-description{font-size:18px;line-height:1.7;color:var(--text-description);margin:0 0 28px}
.product-detail-copy .product-facts{margin-block:28px}
.product-detail-copy .product-facts>div{gap:24px}
.product-detail-copy .product-facts dd{overflow-wrap:anywhere}
.product-detail-copy .cta{font-size:15px;min-height:52px;max-width:100%}
.product-availability{font-size:16px;line-height:1.65;color:var(--text-description);margin:22px 0}
.product-return{display:block;width:fit-content;margin-top:22px;color:var(--text-detail-green);border-bottom:1px solid var(--border-link);padding-block:6px;text-decoration:none;font-size:16px}
.product-related{padding-top:0}
.product-related-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px}
.product-related-item{text-decoration:none;color:inherit;min-width:0}
.product-related-photo{background:var(--background-detail);border:1px solid var(--border-detail);padding:16px;aspect-ratio:1;display:flex;align-items:center;justify-content:center}
.product-related-photo img{display:block;width:100%;height:100%;object-fit:contain}
.product-related-item h3{font-family:var(--font-display);font-size:28px;font-weight:400;line-height:1.18;margin:18px 0 8px}
.product-related-item>span{font-size:13px;color:var(--text-description)}
.product-photo-dialog{border:1px solid var(--border-detail);background:var(--background-detail);width:min(1000px,94vw);max-width:94vw;height:min(900px,94dvh);max-height:94dvh;padding:54px 20px 20px;overflow:hidden}
.product-photo-dialog::backdrop{background:var(--backdrop-photo)}
.product-photo-close{position:absolute;inset-inline-end:12px;top:9px;border-radius:50%;background:var(--paper)}
.product-photo-stage{height:100%;display:flex;align-items:center;justify-content:center}
.product-photo-stage>img{display:block;width:100%;height:100%;object-fit:contain}
body:has(#product-photo-dialog[open]){overflow:hidden}
@media(max-width:1100px){.product-detail{gap:35px}.product-detail-copy h1{font-size:38px}}
@media(max-width:800px){.product-breadcrumb{padding-top:22px}.product-detail{grid-template-columns:minmax(0,1fr);gap:24px;padding-top:24px;padding-bottom:60px}.product-detail-copy.gallery-copy{padding:0}.product-detail-copy h1{font-size:38px}.product-detail-photo{padding:16px}.product-related-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.product-related-item h3{font-size:23px}}
@media(max-width:600px){.product-breadcrumb{font-size:13px}.product-detail-copy h1{font-size:36px}.product-description{font-size:18px}.product-detail-copy .cta{width:100%}.product-related-grid{grid-template-columns:minmax(0,1fr);gap:32px}.product-related-photo{max-height:460px}.product-related-item h3{font-size:28px}.product-photo-label{font-size:12px;inset-inline-end:21px;bottom:21px}.product-photo-dialog{padding-inline:12px}}
