.product-page-body{background:#f3f3f3}.product-top{padding-top:1.25rem}.product-breadcrumbs{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;color:#9a9a9a;font-size:.9rem;margin:0 0 1rem}.product-breadcrumbs a{transition:color .2s}.product-breadcrumbs a:hover{color:#111}
.product-main{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:2.1rem;background:#fff;border-radius:1rem;padding:2.2rem 2.4rem 1.9rem;align-items:start}.product-gallery{min-width:0}.product-main-image{aspect-ratio:1/1;width:100%;border:1px solid #e8e8e8;border-radius:.55rem;overflow:hidden;background:#fff;display:grid;place-items:center}.product-main-image img{width:100%;height:100%;object-fit:contain;object-position:50% 50%;transition:opacity .18s ease}.product-thumbs{display:grid;grid-template-columns:repeat(4,1fr);gap:.75rem;margin-top:.75rem}.product-thumbs button{height:6.8rem;background:#fff;border:1px solid #e4e4e4;border-radius:.45rem;overflow:hidden;transition:border-color .18s,transform .18s}.product-thumbs button:hover{transform:translateY(-2px)}.product-thumbs button.active{border-color:var(--orange);box-shadow:inset 0 0 0 1px var(--orange)}.product-thumbs img{width:100%;height:100%;object-fit:contain;object-position:50% 50%}
.product-info h1{font-size:2.65rem;line-height:.98;letter-spacing:-.055rem;margin:.15rem 0 .35rem}.product-sku-top{color:var(--orange);font-size:1.35rem;font-weight:600;margin-bottom:1.1rem}.product-cta-row{display:grid;grid-template-columns:auto 1fr 3rem;gap:.7rem;align-items:center}.product-order-main,.product-cart-main{height:3.15rem;border-radius:.42rem;display:flex;align-items:center;justify-content:center;gap:.55rem;font-weight:600}.product-order-main{background:var(--orange);padding:0 1.5rem}.product-order-main span{display:grid;place-items:center;width:1.25rem;height:1.25rem;border-radius:.2rem;background:#111;color:#fff;font-size:.75rem}.product-cart-main{border:1px solid #222;background:#fff;padding:0 1rem}.product-cart-main.added{background:#111;color:#fff}.product-cart-main .icon-cart{width:1.05rem;height:1.05rem}.product-fav-main{height:3.15rem;width:3.15rem;border-radius:.42rem;border:1px solid #e0e0e0;background:#fff;color:#111;display:grid;place-items:center}.product-fav-main .icon-heart{width:1.15rem;height:1rem}.product-fav-main.active{color:var(--orange);border-color:var(--orange);background:#fff8ee}.product-fav-main.active .icon-heart path{fill:var(--orange);stroke:var(--orange)}
.product-meta-files{display:grid;grid-template-columns:1fr 1.05fr;gap:1.25rem;padding:1.2rem 0;border-bottom:1px solid #e8e8e8}.product-specs{display:grid;gap:.65rem;font-size:1rem;line-height:1.48;color:#333}.product-specs>div{display:grid;grid-template-columns:6.5rem 1fr;gap:.6rem}.product-specs dt{font-weight:700}.product-specs dd{margin:0}.product-files{display:grid;gap:.45rem}.product-files a{height:2.15rem;border:1px solid #d9d9d9;border-radius:.35rem;background:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 .75rem;font-size:.78rem;transition:border-color .18s,background .18s}.product-files a:hover{border-color:var(--orange);background:#fff8ee}.product-files a span{font-size:1rem}.product-files-empty{font-size:.82rem;color:#888;margin:.2rem 0}.product-views360{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap;margin-top:.8rem}.product-views360 a{padding:.55rem .75rem;border:1px solid #ddd;border-radius:.4rem;background:#fff;font-size:.8rem}.product-not-found{grid-column:1/-1;padding:4rem 1rem;text-align:center}.product-not-found a{display:inline-block;margin-top:1rem;padding:.8rem 1.2rem;background:var(--orange);border-radius:.45rem}
.product-description{padding-top:1.1rem;font-size:1rem;line-height:1.48;color:#333}.product-description h2{font-size:1.12rem;margin-bottom:.55rem}.product-description p{margin:.5rem 0}.product-description ol{margin:.45rem 0 .85rem;padding-left:1.3rem}.product-description li{margin:.28rem 0}.product-request{margin-top:2rem}
@media(max-width:1000px){.product-top{padding-top:18px}.product-breadcrumbs{font-size:11px;gap:6px;margin-bottom:10px}.product-main{grid-template-columns:1fr;gap:18px;padding:14px;border-radius:14px}.product-main-image{aspect-ratio:1/1;width:100%;border-radius:10px}.product-thumbs{grid-template-columns:repeat(4,1fr);gap:7px;margin-top:7px}.product-thumbs button{height:72px;border-radius:8px}.product-info h1{font-size:27px;line-height:.98;letter-spacing:-1px;margin:0 0 4px}.product-sku-top{font-size:15px;margin-bottom:12px}.product-cta-row{grid-template-columns:1fr 1fr 42px;gap:7px}.product-order-main,.product-cart-main{height:42px;font-size:12px;padding:0 8px}.product-cart-main span{white-space:nowrap}.product-fav-main{width:42px;height:42px}.product-meta-files{grid-template-columns:1fr;gap:12px;padding:14px 0}.product-specs{font-size:14px;line-height:1.45}.product-specs>div{grid-template-columns:88px 1fr}.product-files{grid-template-columns:1fr 1fr 1fr;gap:6px}.product-files button{height:36px;font-size:9px;padding:0 7px}.product-description{font-size:14px;line-height:1.45}.product-description h2{font-size:16px}.product-request{margin-top:18px}}
@media(max-width:520px){.product-main-image{aspect-ratio:1/1;width:100%}.product-thumbs{grid-template-columns:repeat(3,1fr)}.product-thumbs button{height:68px}.product-cta-row{grid-template-columns:1fr 44px}.product-order-main{grid-column:1}.product-cart-main{grid-column:1}.product-fav-main{grid-column:2;grid-row:1/3;height:100%;min-height:90px}.product-files{grid-template-columns:1fr}.product-files button{height:38px;font-size:11px}}
.product-views360 button{padding:.55rem .75rem;border:1px solid #ddd;border-radius:.4rem;background:#fff;font-size:.8rem;transition:border-color .18s,background .18s}.product-views360 button:hover{border-color:var(--orange);background:#fff8ee}.viewer360{max-width:min(760px,85vw)}.viewer360 h2{font-size:1.45rem;margin:0 0 .85rem}.viewer360-stage{aspect-ratio:1/1;background:#f5f5f5;border-radius:.6rem;display:grid;place-items:center;overflow:hidden}.viewer360-stage img{width:100%;height:100%;object-fit:contain}.viewer360-controls{display:grid;grid-template-columns:1fr auto;gap:.8rem;align-items:center;margin-top:.9rem}.viewer360-controls input{accent-color:var(--orange);width:100%}.viewer360 p{font-size:.82rem;color:#777;margin:.6rem 0 0}

.viewer360-stage{cursor:grab;touch-action:none;user-select:none}.viewer360-stage:active{cursor:grabbing}.viewer360-stage img{pointer-events:none}.viewer360-controls{grid-template-columns:auto minmax(0,1fr) auto auto}.viewer360-controls button{width:2.2rem;height:2.2rem;border-radius:.35rem;background:#ff9500;font-size:1.6rem;line-height:1}.viewer360-controls span{white-space:nowrap}

.product-main-image{position:relative}.product-thumb-360{position:relative}.product-thumb-360 span{position:absolute;left:.35rem;top:.35rem;padding:.22rem .45rem;border:1px solid #32bff4;border-radius:.32rem;background:#fff;color:#0b3155;font-size:.75rem;font-weight:800;line-height:1}.product-main-image.is-inline-360{cursor:grab;touch-action:none;user-select:none}.product-main-image.is-inline-360:active{cursor:grabbing}.product-main-image.is-inline-360 img{pointer-events:none}.inline360-badge{position:absolute;left:1rem;top:1rem;padding:.45rem .85rem;border:2px solid #ff6c5b;border-radius:.35rem;background:#fff;color:#0c3158;font-weight:800;font-size:1rem}.inline360-hint{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);padding:.55rem .85rem;border-radius:.45rem;background:#ffffffd9;color:#0c3158;font-weight:800;font-size:1.15rem;pointer-events:none;transition:opacity .2s}.product-main-image.is-inline-360:hover .inline360-hint{opacity:.3}@media(max-width:1000px){.inline360-badge{left:10px;top:10px;font-size:12px}.inline360-hint{font-size:13px;white-space:nowrap}.product-thumb-360 span{font-size:10px}}


/* v49 — product page keeps full frame; box follows photo aspect ratio. */
.product-main-image:not(.is-inline-360){
  aspect-ratio:auto;
  height:auto;
  max-height:min(72vh,720px);
  background:#f7f7f7;
}
.product-main-image:not(.is-inline-360) img{
  width:100%!important;
  height:auto!important;
  max-height:min(72vh,720px)!important;
  object-fit:contain!important;
  object-position:50% 50%!important;
}
.product-thumbs button:not(.product-thumb-360) img{
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  object-position:50% 50%!important;
}
.product-main-image.is-inline-360 img,
.product-thumbs .product-thumb-360 img{
  object-fit:contain!important;
  object-position:center center!important;
}
