.product-main{overflow-x:clip}
.product-top{grid-template-columns:minmax(0,1fr) minmax(0,1fr);min-width:0}
.product-top>*{min-width:0}
.gallery{min-width:0;max-width:100%}
.gallery-main{min-width:0;max-width:100%}
.gallery-main img{max-width:100%;height:auto;object-fit:contain}
.gallery-thumbs{min-width:0;max-width:100%;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;flex-wrap:nowrap}
.gallery-thumbs button{flex:0 0 64px;min-width:64px;min-height:80px}
.buy-block{min-width:0;max-width:100%}
.buy-block h1{overflow-wrap:anywhere;word-break:break-word;hyphens:auto}
.short-desc,.ref-price,.attr-list,.help-lines,.paypal-line{overflow-wrap:anywhere}
.attr-list li{min-width:0}
.qty-row{flex-wrap:wrap}
.add-cart{max-width:100%}
.product-section{min-width:0}
.product-section p{max-width:100%}
.pair-grid,.related-grid,.product-grid{min-width:0}
.pair-grid>*,.related-grid>*,.product-grid>*{min-width:0}
.product-card{min-width:0}
.product-card .card-frame{display:block;aspect-ratio:4/5;background:var(--paper);padding:10px;overflow:hidden}
.product-card .card-frame img{width:100%;height:100%;object-fit:contain;display:block}
.product-card .card-name{overflow-wrap:anywhere;word-break:break-word}
.product-card .card-price{overflow-wrap:anywhere}
.pair-card{min-width:0;display:flex;flex-direction:column;gap:8px;background:#fff;border:1px solid var(--rule);border-radius:var(--radius);padding:12px}
.pair-card a{display:flex;flex-direction:column;gap:8px;min-width:0;color:inherit;text-decoration:none}
.pair-card img{width:100%;aspect-ratio:4/5;object-fit:contain;background:var(--paper);border-radius:6px;padding:6px;display:block}
.pair-card a span{font-size:.86rem;line-height:1.35;overflow-wrap:anywhere;word-break:break-word}
.pair-card .price{font:600 .88rem/1 Inter,sans-serif;color:var(--ink);font-variant-numeric:tabular-nums}
.pair-card .btn{width:100%;padding:9px 12px;font-size:.82rem}
.faq-q{min-width:0}
.faq-a{overflow-wrap:anywhere}
.sticky-bar{min-width:0}
.sticky-bar span{min-width:0}

@media (max-width:860px){
  .product-top{grid-template-columns:minmax(0,1fr);gap:24px}
  .gallery-main{max-width:100%;width:100%}
  .gallery-thumbs button{flex:0 0 56px;min-width:56px;min-height:70px;height:70px}
  .pair-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .related-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media (max-width:720px){
  .product-main{padding-left:16px;padding-right:16px;max-width:100%}
  .product-top{gap:20px}
  .gallery-main{padding:10px}
  .gallery-thumbs{gap:6px;padding-bottom:6px}
  .gallery-thumbs button{flex:0 0 52px;min-width:52px;min-height:66px;height:66px;padding:3px}
  .buy-block h1{font-size:clamp(1.35rem,5.4vw,1.8rem);line-height:1.2}
  .ref-price{font-size:1.15rem}
  .add-cart{width:100%}
  .pair-grid{grid-template-columns:1fr;gap:14px}
  .related-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
  .product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
  .product-card{flex-direction:column}
  .product-card .card-frame{width:100%;aspect-ratio:4/5;padding:8px}
  .product-card .card-name{font-size:.82rem;line-height:1.35;-webkit-line-clamp:3}
  .product-card .card-price{font-size:.85rem}
  .pair-card{flex-direction:row;flex-wrap:wrap;align-items:center;gap:10px;padding:10px}
  .pair-card a{flex-direction:row;align-items:center;gap:10px;flex:1 1 100%;min-width:0}
  .pair-card img{width:64px;height:80px;flex:0 0 64px;aspect-ratio:auto;padding:4px}
  .pair-card a span{flex:1 1 auto;min-width:0;font-size:.84rem}
  .pair-card .price{flex:0 0 auto;margin-left:74px}
  .pair-card .btn{flex:1 1 100%;width:100%}
  .sticky-bar span{max-width:45%}
}

@media (max-width:420px){
  .product-grid{grid-template-columns:1fr}
  .product-card{flex-direction:row;align-items:stretch}
  .product-card .card-frame{width:110px;flex:0 0 110px;aspect-ratio:auto;min-height:120px}
  .product-card .card-body{flex:1 1 auto;min-width:0;padding:10px 11px 12px}
  .product-card .card-name{-webkit-line-clamp:4}
  .related-grid{grid-template-columns:1fr}
  .related-grid .product-card{flex-direction:row;align-items:stretch}
  .related-grid .product-card .card-frame{width:100px;flex:0 0 100px;aspect-ratio:auto;min-height:110px}
  .related-grid .product-card .card-body{flex:1 1 auto;min-width:0}
  .pair-card .price{margin-left:0}
  .gallery-thumbs button{flex:0 0 48px;min-width:48px;min-height:60px;height:60px}
}

@media (prefers-reduced-motion:reduce){
  .gallery-thumbs{scroll-behavior:auto}
}

@media (max-width:420px){
  .related-grid{grid-template-columns:1fr}
  .related-grid .product-card{display:grid;grid-template-columns:96px minmax(0,1fr);grid-template-rows:auto auto;column-gap:12px;row-gap:4px;align-items:start;padding:10px}
  .related-grid .product-card .card-frame{grid-column:1;grid-row:1 / span 2;width:96px;min-width:0;aspect-ratio:4/5;min-height:0;padding:6px;align-self:start}
  .related-grid .product-card .card-frame img{width:100%;height:100%;object-fit:contain}
  .related-grid .product-card .card-name{grid-column:2;grid-row:1;min-width:0;font-size:.86rem;line-height:1.35;overflow-wrap:anywhere;word-break:break-word;-webkit-line-clamp:4;display:-webkit-box;-webkit-box-orient:vertical;overflow:hidden}
  .related-grid .product-card .card-price{grid-column:2;grid-row:2;min-width:0;font-size:.88rem;white-space:nowrap;overflow-wrap:normal;word-break:normal}
  .related-grid .product-card .card-price small{white-space:nowrap}
}
@media (max-width:360px){
  .related-grid .product-card{grid-template-columns:84px minmax(0,1fr);column-gap:10px}
  .related-grid .product-card .card-frame{width:84px}
  .related-grid .product-card .card-name{font-size:.82rem;-webkit-line-clamp:5}
  .related-grid .product-card .card-price{font-size:.84rem}
}