.product-cycle,#detail-image{opacity:1;transition:opacity .62s ease,transform .62s ease}.product-cycle.changing{opacity:.08;transform:scale(.985)}.photo-fallback{display:grid;place-items:center;width:100%;height:100%}#detail:not(.product-experience){min-height:calc(100vh - 76px);display:grid;place-items:center}.product-experience{width:min(1860px,calc(100% - 32px));min-height:calc(100vh - 76px);margin:0 auto;padding:28px 0 54px;display:grid;grid-template-columns:minmax(210px,270px) minmax(0,820px) minmax(210px,270px);justify-content:center;gap:clamp(18px,2.4vw,42px);align-items:start}.detail-center{min-width:0;display:grid;gap:20px}.detail-intro{max-width:760px;margin:0 auto;text-align:center}.detail-intro h1{margin:10px 0 0;font-family:Georgia,serif;font-size:clamp(40px,4vw,58px);line-height:1.04;letter-spacing:-.045em;font-weight:500}.detail-center .detail{display:block;max-width:720px;margin:0 auto;padding:0;width:100%}.detail-main{position:relative;overflow:hidden;aspect-ratio:1/1;border-radius:28px;background:linear-gradient(145deg,var(--blush),var(--cream))}.detail-main>img{width:100%;height:100%;object-fit:contain}.detail-main>img.focus-crop{object-fit:cover;object-position:center 66%}.detail-info{max-width:720px;margin:0 auto;padding:0 4px 8px;text-align:center}.detail-info .price{font-size:clamp(29px,3vw,38px)}.detail-info .description{text-align:left}.gallery-arrow{position:absolute;top:50%;width:44px;height:44px;padding:0;transform:translateY(-50%);background:rgba(255,255,255,.94);color:var(--ink);box-shadow:0 8px 22px rgba(20,39,58,.15);font-size:28px}.gallery-arrow:hover{transform:translateY(-50%) scale(1.04)}.gallery-arrow.previous{left:14px}.gallery-arrow.next{right:14px}.gallery-thumbs{margin-top:12px;display:grid;grid-auto-flow:column;grid-auto-columns:minmax(64px,88px);gap:9px;overflow-x:auto;scrollbar-width:thin}.gallery-thumb{padding:2px;aspect-ratio:1;overflow:hidden;border:2px solid transparent;border-radius:12px;background:#fff;box-shadow:none}.gallery-thumb:hover{transform:none;box-shadow:none}.gallery-thumb.active{border-color:var(--rose)}.gallery-thumb img{width:100%;height:100%;object-fit:cover;border-radius:9px}.price-note{margin:10px 0 24px;color:var(--muted);font-size:13px;line-height:1.55}.product-rail{height:min(830px,calc(100vh - 108px));overflow:hidden;position:sticky;top:92px;border-radius:24px;mask-image:linear-gradient(to bottom,transparent,#000 5%,#000 95%,transparent)}.rail-track{display:flex;flex-direction:column;gap:14px;padding:18px 0;will-change:transform}.rail-item{flex:none;min-height:196px;padding:11px;display:grid;grid-template-rows:126px auto auto;gap:8px;overflow:hidden;border:1px solid var(--line);border-radius:18px;background:#fff;color:var(--ink);text-decoration:none;box-shadow:0 7px 22px rgba(20,39,58,.06)}.rail-item:hover{border-color:var(--rose);box-shadow:0 11px 30px rgba(20,39,58,.12)}.rail-item>img,.rail-item>.photo-fallback{width:100%;height:126px;object-fit:contain;border-radius:12px;background:var(--cream)}.rail-item span{display:-webkit-box;overflow:hidden;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-family:Georgia,serif;font-size:14px;line-height:1.25}.rail-item strong{color:var(--rose-dark);font-size:13px}.rail-item.selected{outline:2px solid var(--rose)}.mobile-product-strip{display:none}@media(max-width:1120px){.product-experience{grid-template-columns:minmax(165px,210px) minmax(0,680px) minmax(165px,210px);gap:16px}.rail-item{min-height:178px;grid-template-rows:108px auto auto}.rail-item>img,.rail-item>.photo-fallback{height:108px}}@media(max-width:780px){.product-experience{width:100%;min-height:auto;padding:16px 0 44px;display:block}.product-rail{display:none}.mobile-product-strip{height:166px;padding:4px 18px 16px;display:flex;gap:10px;overflow-x:auto;overflow-y:hidden;scroll-behavior:smooth;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:thin}.mobile-product-strip .rail-item{width:132px;height:146px;min-height:146px;padding:8px;grid-template-rows:88px minmax(0,1fr);gap:6px;scroll-snap-align:start}.mobile-product-strip .rail-item>img,.mobile-product-strip .rail-item>.photo-fallback{height:88px}.mobile-product-strip .rail-item span{-webkit-line-clamp:2;font-size:13px}.mobile-product-strip .rail-item strong{display:none}.detail-center{gap:16px;padding:0 20px}.detail-intro{margin-top:2px}.detail-intro h1{font-size:clamp(34px,10vw,46px)}.detail-center .detail{padding:0}.detail-info{padding:0 2px 8px}.gallery-thumbs{grid-auto-columns:64px}.detail-main{border-radius:22px}}@media(prefers-reduced-motion:reduce){.product-cycle,#detail-image{transition:none}}
