/* SPOT quick shop — rounded gallery and dark size selector. */
.product-dialog{width:920px;border-radius:28px;background:#18191c;box-shadow:0 32px 100px #09090d55;overflow:hidden;max-height:calc(100dvh - 40px)}
.product-dialog::backdrop{background:#0c0d145c;backdrop-filter:blur(10px)}
.product-dialog[open]{animation:spotDialogIn .48s cubic-bezier(.16,1,.3,1)}
.product-dialog>.close{top:18px;right:18px;width:38px;height:38px;border:1px solid #ffffff24;background:#ffffff0c;color:#fff;border-radius:50%;font-size:26px;display:grid;place-items:center;padding:0;transition:background .2s,transform .25s}
.product-dialog>.close:hover{background:#ffffff20;transform:rotate(90deg)}
.product-dialog .detail-grid{grid-template-columns:1fr 1fr;min-height:510px}
.product-dialog .detail-image{position:relative;min-width:0;background:#f7f7f8;display:flex;align-items:center;justify-content:center;overflow:hidden;padding:54px 18px 52px}
.detail-image-top{position:absolute;inset:23px 24px auto;display:flex;align-items:center;justify-content:space-between;z-index:1}
.detail-spot{font-size:24px;font-weight:900;letter-spacing:-1px;line-height:1;color:#18191c}.detail-spot>span{color:var(--blue);font-size:10px;margin-left:4px}.detail-index{font-size:10px;letter-spacing:.08em;color:#73747e}
.product-dialog .detail-image img{padding:0;width:100%;height:360px;max-height:100%;object-fit:contain;mix-blend-mode:multiply}
.product-dialog[open] .detail-image img{animation:spotGarmentIn .7s cubic-bezier(.16,1,.3,1)}
.detail-category{position:absolute;bottom:22px;left:24px;right:24px;padding-top:14px;border-top:1px solid #dbdce0;display:flex;align-items:center;justify-content:space-between;font-size:10px;letter-spacing:.08em;color:#565761}.detail-category>span{font-size:20px;color:#18191c}
.product-dialog .detail-copy{padding:58px 32px 25px;color:#f7f7fa;align-items:stretch;min-width:0}
.product-dialog .detail-copy .eyebrow{font-size:10px;letter-spacing:.13em;color:#9d9ea8;margin-bottom:20px}
.product-dialog .detail-copy h2{font-size:clamp(28px,3.2vw,42px);line-height:1.08;letter-spacing:-1.3px;font-weight:800;margin:0 0 8px}
.product-dialog .detail-name{font-size:15px;line-height:1.5;color:#afb0bb;margin:0 0 22px}
.detail-meta{display:flex;justify-content:space-between;align-items:center;gap:12px;padding-bottom:23px;border-bottom:1px solid #ffffff1c;flex-wrap:wrap}
.detail-color{font-size:12px;color:#c0c1c9;display:flex;align-items:center;gap:8px}.color-swatch{width:13px;height:13px;border-radius:50%;border:1px solid #ffffff50;flex-shrink:0}.color-swatch.is-white{background:#f7f7f8}.color-swatch.is-black{background:#222327}
.product-dialog .detail-price{font-size:21px;font-weight:600;white-space:nowrap;letter-spacing:-.5px}
.size-heading{display:flex;align-items:center;justify-content:space-between;margin:24px 0 13px;gap:12px}
.product-dialog .size-label{font-size:14px;font-weight:500;margin:0;color:#eeeef1}.selected-size{font-size:12px;color:#a5a7b2;font-variant-numeric:tabular-nums}
.size-measurements{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin:0 0 13px}
.size-measurements span{display:flex;align-items:baseline;gap:6px;min-height:43px;padding:11px 13px;border:1px solid #363740;border-radius:12px;background:#202126;color:#858792;font-size:9px;letter-spacing:.08em}
.size-measurements strong{margin-left:auto;color:#f0f0f4;font-size:15px;line-height:1;font-weight:600;letter-spacing:0;font-variant-numeric:tabular-nums}
.size-measurements i{color:#858792;font-size:9px;font-style:normal;letter-spacing:0;text-transform:lowercase}
.product-dialog .sizes{display:grid;grid-template-columns:repeat(4,1fr);gap:9px}
.product-dialog .size{border:1px solid #42434e;background:#232429;border-radius:13px;width:100%;height:53px;color:#ececf3;font-size:15px;font-weight:500;transition:background .2s,border-color .2s,transform .25s,color .2s,box-shadow .2s}
.product-dialog .size:hover{background:#30313a;border-color:#8b8d9b;transform:translateY(-2px)}
.product-dialog .size[aria-pressed=true]{background:#f4f4f8;color:#18191c;border-color:#f4f4f8;box-shadow:0 4px 18px #0002;transform:translateY(-2px)}
.product-dialog .size:focus-visible,.product-dialog .close:focus-visible{outline-color:#9aa7ff;outline-offset:3px}
.product-dialog .add-to-cart{margin-top:24px;border-radius:14px;min-height:55px;align-items:center;padding:16px 19px;font-size:14px;font-weight:600;background:var(--blue);color:#fff;transition:background .2s,transform .2s,box-shadow .2s}
.product-dialog .add-to-cart>span{font-size:22px;font-weight:400;line-height:1;transition:transform .2s}
.product-dialog .add-to-cart:hover:not(:disabled){background:#3d57ff;box-shadow:0 5px 24px #2b46ff35;transform:translateY(-1px)}
.product-dialog .add-to-cart:hover:not(:disabled)>span{transform:translate(2px,-2px)}
.product-dialog .add-to-cart:disabled{background:#2c2d35;color:#9698a5}
.product-dialog .detail-disclaimer{font-size:10px;line-height:1.55;color:#9596a3;margin:14px 0 0}
@keyframes spotDialogIn{from{opacity:0;transform:translateY(24px) scale(.95) rotate(-.6deg)}to{opacity:1;transform:none}}
@keyframes spotGarmentIn{from{opacity:0;transform:translateY(16px) scale(.95) rotate(-3deg)}to{opacity:1;transform:none}}
@media(max-width:680px){.product-dialog{width:440px;max-width:calc(100% - 24px);max-height:calc(100dvh - 24px);overflow:auto;border-radius:24px;scrollbar-width:thin}.product-dialog .detail-grid{grid-template-columns:1fr;min-height:0}.product-dialog>.close{position:absolute;top:14px;right:14px;background:#e6e6ec;color:#18191c;border-color:transparent;width:34px;height:34px}.product-dialog>.close:hover{background:#d5d6de}.product-dialog .detail-image{height:230px;padding:36px 32px 20px}.detail-image-top{inset:18px 20px auto}.detail-index{display:none}.detail-spot{font-size:22px}.product-dialog .detail-image img{height:184px;width:100%;max-height:none}.detail-category{left:20px;right:20px;bottom:12px;border:0;padding:0;font-size:8px}.detail-category>span{font-size:17px}.product-dialog .detail-copy{padding:23px 23px 20px}.product-dialog .detail-copy .eyebrow{font-size:9px;margin-bottom:13px}.product-dialog .detail-copy h2{font-size:30px;letter-spacing:-.9px}.product-dialog .detail-name{font-size:14px;margin-bottom:15px}.detail-meta{padding-bottom:16px}.product-dialog .detail-price{font-size:20px}.size-heading{margin:18px 0 12px}.size-measurements span{min-height:40px;padding:10px 11px}.size-measurements strong{font-size:14px}.product-dialog .size{height:48px;border-radius:12px}.product-dialog .add-to-cart{margin-top:18px;min-height:52px}.product-dialog .detail-disclaimer{margin-top:12px;font-size:9px}}
@media(prefers-reduced-motion:reduce){.product-dialog[open],.product-dialog[open] .detail-image img{animation:none}.product-dialog .size,.product-dialog .add-to-cart,.product-dialog .add-to-cart>span,.product-dialog>.close{transition:none;transform:none}}

/* Front/back photo deck. The outgoing photo uses the top layer to fall beyond the dialog. */
.product-dialog .detail-image{padding-bottom:76px}
.product-dialog .gallery-photo{touch-action:pan-y;user-select:none;-webkit-user-drag:none;cursor:grab}
.product-dialog .gallery-photo:active{cursor:grabbing}
.gallery-controls{position:absolute;bottom:20px;left:22px;right:22px;display:flex;align-items:center;gap:12px;z-index:2}
.gallery-views{display:flex;background:#e7e7ed;border-radius:30px;padding:4px;gap:2px}
.gallery-views button{background:transparent;border-radius:24px;padding:9px 13px;font-size:12px;color:#696a75;transition:color .2s,background .2s,box-shadow .2s}
.gallery-views button[aria-pressed=true]{background:#fff;color:#18191c;box-shadow:0 2px 7px #1718240b}
.gallery-views button:hover:not(:disabled){color:var(--blue)}
.gallery-count{font-size:10px;letter-spacing:.06em;color:#747580;margin-left:auto;white-space:nowrap;font-variant-numeric:tabular-nums}
.gallery-next{width:36px;height:36px;flex-shrink:0;border-radius:50%;border:1px solid #c9cad3;background:transparent;font-size:24px;display:grid;place-items:center;line-height:1;transition:background .2s,transform .3s,color .2s}
.gallery-next:hover:not(:disabled){background:var(--blue);border-color:var(--blue);color:white;transform:rotate(25deg)}
.gallery-controls button:disabled{cursor:wait}
.photo-fall-layer[popover]{position:fixed;inset:0;width:100vw;height:100dvh;max-width:none;max-height:none;margin:0;padding:0;border:0;background:transparent;overflow:hidden;pointer-events:none;}
.photo-fall-layer::backdrop{background:transparent;pointer-events:none}
.falling-photo{position:absolute;object-fit:contain;background:#f7f7f8;border-radius:18px;box-shadow:0 18px 38px #08091626;transform-origin:50% 22%;will-change:transform;pointer-events:none}
@media(max-width:680px){.product-dialog .detail-image{height:266px;padding:38px 24px 58px}.product-dialog .detail-image img{height:170px}.gallery-controls{bottom:13px;left:18px;right:18px;gap:10px}.gallery-views button{padding:8px 12px;font-size:11px}.gallery-count{font-size:9px}.gallery-next{width:33px;height:33px;font-size:22px}}
@media(prefers-reduced-motion:reduce){.gallery-controls button{transition:none}.gallery-next:hover:not(:disabled){transform:none}}
