.gallery-desktop{--gallery-max-width: 900px;--thumb-size: 58px;--gap: 16px;--main-ratio: 1.85 / 1;--radius: 14px;--border: #07151c;width:100%;max-width:var(--gallery-max-width);container-type:inline-size;display:grid;grid-template-columns:var(--thumb-size) minmax(0,1fr);gap:var(--gap);align-items:start}.gallery-desktop__thumbs{height:calc((100cqw - var(--thumb-size) - var(--gap)) / 1.85);overflow-y:auto;overflow-x:hidden;scrollbar-width:none}.gallery-desktop__thumbs::-webkit-scrollbar{display:none}.gallery-desktop__thumbs-container{display:flex;flex-direction:column;gap:14px}.gallery-desktop__thumb{width:var(--thumb-size);height:var(--thumb-size);flex:0 0 var(--thumb-size);padding:0;border:1.5px solid transparent;border-radius:4px;overflow:hidden;background:#f5f5f5;cursor:pointer;opacity:.65;transition:opacity .18s ease,border-color .18s ease,transform .18s ease}.gallery-desktop__thumb img{width:100%;height:100%;display:block;-o-object-fit:cover;object-fit:cover}.gallery-desktop__thumb.is-selected{opacity:1;border-color:var(--border)}.gallery-desktop__thumb:active{transform:scale(.96)}.gallery-desktop__main{min-width:0;position:relative}.gallery-desktop__viewport{width:100%;overflow:hidden}.gallery-desktop__container{display:flex;touch-action:pan-y pinch-zoom}.gallery-desktop__slide{flex:0 0 100%;min-width:0}.gallery-desktop__image-card{position:relative;width:100%;aspect-ratio:var(--main-ratio);border-radius:var(--radius);overflow:hidden;background:#f7f7f7}.gallery-desktop__image-card img{width:100%;height:100%;display:block;-o-object-fit:cover;object-fit:cover}.gallery-desktop__zoom{position:absolute;top:14px;right:14px;width:28px;height:28px;border:0;border-radius:999px;background:#fff;color:#07151c;font-size:22px;font-weight:700;line-height:1;display:grid;place-items:center;cursor:pointer}.product-carousel{--thumb-size: 76px;--gap: 14px;--radius: 18px;--ink: #07151c;--muted: #27343a;--border: #07151c;--soft-bg: #f7f7f7;container-type:inline-size;width:100%;display:grid;grid-template-columns:var(--thumb-size) minmax(0,1fr);gap:var(--gap);align-items:stretch}.product-carousel__thumbs{overflow:hidden;min-height:0;height:calc(100cqw - var(--thumb-size) - var(--gap))}.product-carousel__thumbs-container{height:100%;display:flex;flex-direction:column;gap:14px}.product-carousel__thumb{width:var(--thumb-size);height:var(--thumb-size);flex:0 0 var(--thumb-size);padding:0;border:2px solid transparent;border-radius:14px;background:#fff;overflow:hidden;cursor:pointer;opacity:.55;transition:opacity .18s ease,border-color .18s ease,transform .18s ease}.product-carousel__thumb img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block}.product-carousel__thumb.is-selected{opacity:1;border-color:var(--border)}.product-carousel__thumb:active{transform:scale(.96)}.product-carousel__main{position:relative;min-width:0}.product-carousel__viewport{overflow:hidden;width:100%}.product-carousel__container{display:flex;touch-action:pan-y pinch-zoom}.product-carousel__slide{flex:0 0 100%;min-width:0}.product-carousel__card{width:100%;aspect-ratio:1 / 1;overflow:hidden;display:flex;flex-direction:column;justify-content:center}.product-carousel__content{margin-bottom:14px}.product-carousel__content h2{margin:0 0 8px;font-size:clamp(1.25rem,6vw,2rem);line-height:.95;font-weight:900;letter-spacing:-.04em;color:var(--ink)}.product-carousel__content p{margin:0;font-size:clamp(.78rem,3.1vw,1rem);line-height:1.25;color:var(--muted)}.product-carousel__image-wrap{width:100%;min-height:0;flex:1;display:flex;align-items:center;justify-content:center;border-radius:var(--radius);overflow:hidden}.product-carousel__image-wrap img{width:100%;height:100%;max-height:100%;-o-object-fit:contain;object-fit:contain;display:block}.product-carousel__arrow{position:absolute;top:50%;z-index:2;width:34px;height:54px;transform:translateY(-50%);border:0;background:#fff;color:#000;font-size:52px;line-height:1;font-weight:600;display:grid;place-items:center;cursor:pointer}@media (max-width: 360px){.product-carousel{--thumb-size: 64px;--gap: 10px}.product-carousel__card{padding:14px}.product-carousel__arrow{width:28px;height:46px;font-size:44px}}@media (max-width: 320px){.product-carousel{grid-template-columns:1fr}.product-carousel__thumbs{order:2}.product-carousel__thumbs-container{flex-direction:row}.product-carousel__thumb{flex:0 0 var(--thumb-size)}}
