@keyframes pd-hotspot-pulse{0%{transform:scale(.7);opacity:.6}70%{transform:scale(1.4);opacity:0}to{opacity:0}}.pd-wrap{max-width:var(--wrap);margin:0 auto;padding:clamp(1.2rem,3vw,2.2rem) var(--gutter)0}.pd-layout{display:flex;flex-wrap:wrap;gap:clamp(1.5rem,4vw,4rem);align-items:flex-start;margin-top:1rem}.pd-layout>.pd-gallery{flex:1.15 1 360px;min-width:0}.pd-layout>.pd-buy{flex:1 1 320px;min-width:300px}.pd-gallery{display:flex;flex-direction:column;gap:.7rem}.pd-buy{position:sticky;top:90px}.pd-main-img{position:relative;height:min(520px,133.33vw);width:min(390px,100%);aspect-ratio:3/4;margin-inline:auto;border-radius:var(--radius-lg);background:var(--sand);overflow:hidden}.pd-main-img img,.pd-thumb img{width:100%;height:100%;object-fit:cover;display:block}.pd-thumbs{display:flex;gap:.6rem}.pd-thumb{width:74px;aspect-ratio:3/4;border:2px solid transparent;border-radius:8px;background:var(--sand);cursor:pointer;padding:0;overflow:hidden;transition:border-color .15s var(--ease)}.pd-thumb.is-on,.pd-thumb.is-on:hover{border-color:var(--brand-deep)}.pd-thumb:hover{border-color:var(--muted-2)}.pd-thumb img{border-radius:6px;transition:transform .25s var(--ease)}.pd-thumb:hover img{transform:scale(1.06)}.pd-brand{font-size:.78rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.pd-buy h1{font-family:var(--display);font-size:clamp(1.4rem,2.8vw,2.1rem);line-height:1.2;margin:.4rem 0 1rem}.pd-price{display:flex;align-items:baseline;gap:.7rem;margin-bottom:.9rem}.pd-price b{font-size:clamp(1.4rem,2.6vw,1.9rem);font-weight:700}.pd-old{color:var(--muted);font-size:1rem}.pd-save{padding:.2rem .5rem;border-radius:6px;background:var(--sale-soft);color:var(--sale);font-size:.8rem;font-weight:700}.pd-stock{display:flex;align-items:center;gap:.4rem;font-size:.87rem;font-weight:600;margin-bottom:1.6rem}.pd-stock svg{width:1rem;height:1rem}.pd-stock.is-in{color:var(--in-stock)}.pd-opt legend,.pd-stock.is-out{color:var(--muted)}.pd-stock.is-low{color:#c2760a}.pd-stock.is-low .pd-stock-ico,.pd-stock.is-out .pd-stock-ico{display:none}.pd-opt{border:0;padding:0;margin:0 0 1.4rem}.pd-opt legend{padding:0;font-size:.85rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;margin-bottom:.7rem}.pd-swatches{display:flex;gap:.55rem}.pd-swatch{position:relative;cursor:pointer}.pd-size input,.pd-swatch input{position:absolute;opacity:0;width:0;height:0}.pd-swatch .swatch{display:block;width:34px;height:34px;border-radius:50%;border:1px solid var(--line);box-shadow:0 0 0 2px transparent;transition:box-shadow .15s var(--ease)}.pd-swatch:hover .swatch{box-shadow:0 0 0 2px var(--brand)}.pd-swatch input:checked+.swatch,.pd-swatch.is-on .swatch{box-shadow:0 0 0 2px var(--brand-deep)}.pd-swatch input:focus-visible+.swatch{outline:2px solid var(--brand-deep);outline-offset:3px}.pd-sizes{display:flex;flex-wrap:wrap;gap:.5rem}.pd-size{position:relative;cursor:pointer}.pd-size span{display:block;min-width:68px;padding:.6rem .8rem;border:1px solid var(--line);border-radius:8px;text-align:center;font-size:.86rem;font-weight:600;transition:border-color .15s var(--ease),background .15s var(--ease)}.pd-size:hover span{border-color:var(--brand)}.pd-size input:checked+span,.pd-size.is-on span{border-color:var(--brand-deep);background:var(--brand-soft);color:var(--brand-ink)}.pd-size.is-oos{cursor:not-allowed}.pd-size.is-oos span{color:var(--muted-2);background:var(--sand);text-decoration:line-through}.pd-size input:focus-visible+span{outline:2px solid var(--brand-deep);outline-offset:2px}.pd-actions{display:flex;gap:.6rem;margin:1.8rem 0 1.2rem}.pd-qty{display:flex;align-items:center;border:1px solid var(--line);border-radius:999px;overflow:hidden;flex-shrink:0}.pd-qty button,.pd-qty input{width:40px;height:48px;border:0;background:0 0}.pd-qty button{font-size:1.1rem;color:var(--ink);cursor:pointer}.pd-qty button:hover{background:var(--sand)}.pd-qty input{outline:0;text-align:center;font:inherit;font-weight:600;-moz-appearance:textfield}.pd-qty input::-webkit-inner-spin-button,.pd-qty input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.pd-add{flex:1;min-height:48px;padding-top:0;padding-bottom:0;border:0;border-radius:999px;font:inherit;font-weight:700;font-size:.95rem;cursor:pointer}.pd-fav{width:48px;height:48px;display:flex;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:50%;background:0 0;color:var(--ink);cursor:pointer;flex-shrink:0}.pd-fav.is-on,.pd-fav:hover{border-color:var(--brand);color:var(--brand-deep)}.pd-fav svg{width:1.3rem;height:1.3rem}.pd-fav.is-on{border-color:var(--brand-deep)}.pd-fav.is-on svg{fill:var(--brand-deep)}.pd-highlights span,.pd-ship{background:var(--paper);border:1px solid var(--line);color:var(--ink-2)}.pd-ship{display:flex;align-items:center;gap:.5rem;padding:.8rem 1rem;border-radius:var(--radius);font-size:.85rem}.pd-ship svg{width:1.15rem;height:1.15rem;flex-shrink:0}.pd-desc{margin-top:2rem;padding-top:1.6rem;border-top:1px solid var(--line)}.pd-desc h2{font-size:1rem;font-weight:700;margin-bottom:.8rem}.pd-desc p{line-height:1.7;color:var(--ink-2);font-size:.92rem}.pd-desc ul{margin:.9rem 0 0;padding-left:1.1rem;display:flex;flex-direction:column;gap:.35rem}.pd-desc li,.pd-specs li{font-size:.9rem;color:var(--ink-2)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media (max-width:900px){.pd-layout>.pd-buy,.pd-layout>.pd-gallery{flex:1 1 100%;min-width:0}.pd-gallery{position:static}}.pd-highlights,.pd-info{border-top:1px solid var(--line)}.pd-highlights{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1.5rem;padding-top:1.5rem}.pd-highlights span{padding:.4rem .8rem;border-radius:999px;font-size:.82rem;font-weight:600}.pd-info{margin-top:clamp(2.5rem,5vw,4rem);padding-top:clamp(1.5rem,3vw,2.2rem)}.pd-info h2{font-family:var(--display);font-size:clamp(1.3rem,2.4vw,1.7rem);margin-bottom:1rem}.pd-info p{line-height:1.8;color:var(--ink-2);margin-bottom:1rem}.pd-info-body{columns:2;column-gap:clamp(2rem,5vw,4rem)}.pd-info-body p{break-inside:avoid;margin-top:0}@media (max-width:860px){.pd-info-body{columns:1}}.pd-specs{list-style:none;margin:1.4rem 0 0;padding:0;display:flex;flex-direction:column;gap:.6rem}.pd-specs li{display:flex;gap:.5rem;padding:.7rem 0;border-bottom:1px solid var(--line-soft);font-size:.92rem}.pd-specs strong{color:var(--ink);min-width:90px}.pd-related,.pd-similar{margin-top:clamp(2.5rem,5vw,4rem);padding-top:clamp(1.5rem,3vw,2.2rem);border-top:1px solid var(--line)}.pd-combine-lead{margin:-.4rem 0 1.2rem;color:var(--muted);font-size:.92rem}.pd-related>h2,.pd-similar>h2{font-family:var(--display);font-size:clamp(1.3rem,2.6vw,1.9rem);margin-bottom:clamp(1.2rem,2.5vw,1.8rem)}.pd-hotspots{position:absolute;inset:0;pointer-events:none;z-index:3}.pd-hotspot{position:absolute;transform:translate(-50%,-50%);pointer-events:auto;text-decoration:none;color:inherit}.pd-hotspot-dot{display:block;width:22px;height:22px;background:rgba(255,255,255,.92);box-shadow:0 2px 8px rgba(0,0,0,.25);position:relative;transition:transform .15s ease}.pd-hotspot-dot::before{content:"";position:absolute;inset:4px;border-radius:50%;background:var(--brand)}.pd-hotspot-dot,.pd-hotspot-dot::after{border-radius:50%;border:2px solid var(--brand)}.pd-hotspot-dot::after{content:"";position:absolute;inset:-6px;opacity:.5;animation:pd-hotspot-pulse 2s ease-out infinite}.pd-hotspot:focus-visible .pd-hotspot-dot,.pd-hotspot:hover .pd-hotspot-dot{transform:scale(1.15)}.pd-hotspot-card{position:absolute;left:50%;bottom:calc(100% + 10px);transform:translateX(-50%) translateY(6px);display:flex;align-items:center;gap:.6rem;min-width:190px;max-width:240px;padding:.5rem .65rem;background:#fff;border-radius:10px;box-shadow:0 8px 26px rgba(0,0,0,.22);opacity:0;visibility:hidden;transition:opacity .16s ease,transform .16s ease;pointer-events:none}.pd-hotspot:focus-visible .pd-hotspot-card,.pd-hotspot:hover .pd-hotspot-card{opacity:1;visibility:visible;transform:translateX(-50%) translateY(0)}.pd-hotspot-card::after{content:"";position:absolute;top:100%;left:50%;transform:translateX(-50%);border:6px solid transparent;border-top-color:#fff}.pd-hotspot-thumb{flex:0 0 auto;width:42px;height:54px;border-radius:6px;background:var(--sand) center/cover no-repeat}.pd-hotspot-info{display:flex;flex-direction:column;min-width:0}.pd-hotspot-info b{font-size:.82rem;font-weight:600;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pd-hotspot-info em{font-style:normal;font-size:.82rem;font-weight:700;color:var(--brand-deep)}@media (hover:none){.pd-hotspot-dot::after{animation:none}}