.lookbook-categories, .lookbook-sort { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin-bottom: 16px; }
.lookbook-gallery { margin: 0 0 24px; }
.lookbook-frame { position: relative; width: fit-content; max-width: 100%; margin: 0 auto 16px; }
.lookbook-frame > img { display: block; max-width: 100%; height: auto; }
.lookbook-point { position: absolute; }
.lookbook-point[open] { z-index: 6; }
.lookbook-marker { cursor: pointer; list-style: none; display: grid; place-items: center; width: 30px; height: 30px; transform: translate(-50%, -50%); border-radius: 50%; background: #fff; color: #111; box-shadow: 0 1px 6px #0006; font-size: 22px; }
.lookbook-marker::-webkit-details-marker { display: none; }
.lookbook-marker:hover, .lookbook-marker:focus { background: #111; color: #fff; text-decoration: none; }
.lookbook-popover { position: absolute; z-index: 5; top: 20px; left: 0; width: min(224px, 43vw); box-sizing: border-box; padding: 12px; border-radius: 4px; background: #fff; color: #111; box-shadow: 0 2px 12px #0004; overflow-wrap: anywhere; }
.lookbook-point-right .lookbook-popover { left: auto; right: 100%; }
.lookbook-popover .lookbook-product-image { display: block; float: none; width: 100%; max-width: 100%; height: auto; margin: 0 auto 6px; object-fit: contain; }
.lookbook-product-price { margin-top: 4px; }
.lookbook-popover-above { top: auto; bottom: 48px; }
.lookbook-product-actions { display: grid; gap: 5px; margin-top: 6px; }
.lookbook-product-actions .btn { white-space: normal; }

.lookbook-grid.row { display: flex; flex-wrap: wrap; }
.lookbook-grid.row:before, .lookbook-grid.row:after { display: none; }
