.breadcrumb-bar{padding:28px var(--gut);display:flex;align-items:center;gap:8px;font:400 .72rem/1 var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--mute)}
.breadcrumb-bar a:hover{color:var(--ink)}
.product-detail{display:grid;grid-template-columns:minmax(0,1fr) 460px;gap:56px;padding-bottom:96px;align-items:start}
.product-gallery{display:grid;grid-template-columns:64px minmax(0,1fr);gap:14px;position:sticky;top:calc(var(--nav-h) + 16px)}
.gallery-thumbs{display:flex;flex-direction:column;gap:10px}
.thumb{width:64px;aspect-ratio:1;border:1px solid var(--hair);background:var(--paper-3);overflow:hidden}
.thumb.active,.thumb:hover{border-color:var(--ink)}
.gallery-main{position:relative}
.gallery-main-img{aspect-ratio:4/5;height:auto;min-height:520px;border:1px solid var(--hair);background:var(--paper-3);box-shadow:none;border-radius:0;overflow:hidden}
.gallery-main-img img{width:100%;height:100%;object-fit:cover;transition:transform .18s var(--ease);will-change:transform}
.gallery-main-img.is-zooming{cursor:zoom-in}
.gallery-main-img.is-zooming img{transform:scale(2.15)}
.gallery-badge{position:absolute;top:12px;left:12px;background:var(--ink);color:var(--paper);font:500 .62rem/1 var(--mono);letter-spacing:.08em;text-transform:uppercase;padding:6px 8px;border-radius:0}
.product-detail-info{display:flex;flex-direction:column;gap:20px;padding-top:8px}
.pd-category{font:500 .74rem/1 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--amber)}
.pd-title{font:800 clamp(1.8rem,3.4vw,2.8rem)/1.05 var(--display);letter-spacing:-.03em;color:var(--ink)}
.pd-stock{position:relative;padding-left:16px;font:500 .72rem/1 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--good)}
.pd-stock::before{content:'';position:absolute;left:0;top:50%;width:8px;height:8px;border-radius:999px;background:var(--good);transform:translateY(-50%)}
.pd-stock::after{content:'';position:absolute;left:-4px;top:50%;width:16px;height:16px;border-radius:999px;border:1px solid var(--good);transform:translateY(-50%);animation:pulse 2s ease infinite}
@keyframes pulse{0%,100%{opacity:.2;transform:translateY(-50%) scale(.8)}50%{opacity:.7;transform:translateY(-50%) scale(1.2)}}
.pd-price{font:700 1.8rem/1 var(--display);letter-spacing:-.02em;color:var(--ink)}
.pd-price-sub{font:400 .72rem/1.4 var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--mute);margin-top:-10px}
.pd-desc{font:400 .96rem/1.75 var(--body);color:var(--ink-2);text-wrap:pretty;border-top:1px solid var(--hair);padding-top:18px}
.pd-option-group{display:flex;flex-direction:column;gap:12px}
.pd-option-label,.pd-option-label-row{font:500 .72rem/1 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink)}
.pd-option-label strong{font-weight:400;color:var(--mute)}
.pd-option-label-row{display:flex;align-items:center;justify-content:space-between;gap:16px}
.pd-size-guide-link{color:var(--ink);border-bottom:1px solid var(--ink);font:500 .7rem/1 var(--mono);letter-spacing:.08em;text-transform:uppercase}
.color-swatches,.pd-size-pills{display:flex;gap:8px;flex-wrap:wrap}
.swatch,.color-chip{width:34px;height:34px;border-radius:999px;border:1px solid var(--hair)!important;transition:transform .15s var(--ease),box-shadow .15s var(--ease)}
.swatch.active,.swatch:hover{box-shadow:0 0 0 2px var(--paper),0 0 0 3px var(--ink);transform:scale(1.03)}
.pd-size-btn{min-width:48px;height:44px;padding:0 14px;border:1px solid var(--hair);border-radius:2px;background:transparent;color:var(--ink-2);font:500 .78rem/1 var(--mono);letter-spacing:.04em;box-shadow:none}
.pd-size-btn:hover{border-color:var(--ink);color:var(--ink)}
.pd-size-btn.active{background:var(--ink);border-color:var(--ink);color:var(--paper)}
.pd-cart-row{display:grid;grid-template-columns:auto 1fr;gap:12px;align-items:center}
.qty-control{height:48px;display:flex;align-items:center;border:1px solid var(--ink);border-radius:2px;background:transparent;box-shadow:none;overflow:hidden}
.qty-control button{width:38px;height:48px;font-size:1.1rem;color:var(--ink);background:transparent}
.qty-control button:hover{background:var(--paper-2);color:var(--ink)}
.qty-control span{width:42px;height:48px;display:flex;align-items:center;justify-content:center;border-left:1px solid var(--ink);border-right:1px solid var(--ink);font:500 .82rem/1 var(--mono)}
.pd-atc{width:100%}
.pd-trust{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding:0;background:transparent;border:0;border-radius:0}
.trust-item{min-height:70px;border:1px solid var(--hair);padding:12px;display:flex;align-items:center;gap:8px;font:500 .68rem/1.35 var(--mono);letter-spacing:.05em;text-transform:uppercase;color:var(--ink-2)}
.trust-item svg{color:var(--ink);width:16px;height:16px;stroke-width:1.6;flex:0 0 auto}
.pd-accordion{border-top:1px solid var(--hair)}
.accordion-item{border-bottom:1px solid var(--hair)}
.accordion-trigger{width:100%;display:flex;align-items:center;justify-content:space-between;padding:18px 0;font:600 1rem/1.2 var(--display);letter-spacing:-.01em;color:var(--ink);text-align:left}
.accordion-trigger svg{transition:transform .25s var(--ease)}
.accordion-trigger.open svg{transform:rotate(180deg)}
.accordion-body{max-height:0;overflow:hidden;transition:max-height .25s var(--ease),padding .25s var(--ease);font:400 .9rem/1.7 var(--body);color:var(--ink-2)}
.accordion-body.open{max-height:520px;padding-bottom:18px}
.accordion-body li{padding-left:14px;position:relative}.accordion-body li::before{content:'-';position:absolute;left:0;color:var(--amber)}
.mobile-dock{position:fixed;left:0;right:0;bottom:0;z-index:40;display:none;grid-template-columns:1fr 1.4fr;gap:12px;align-items:center;padding:12px 16px calc(12px + env(safe-area-inset-bottom));background:var(--paper);border-top:1px solid var(--hair)}
.mobile-dock span{display:block;font:400 .64rem/1 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--mute);margin-bottom:4px}
.mobile-dock strong{font:600 .86rem/1 var(--display);color:var(--ink)}
#relatedProductsGrid{margin-top:34px}
.product-reviews-section{padding:0 0 86px;overflow:hidden}
.reviews-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.reviews-marquee{overflow:hidden}
.reviews-track{display:flex;gap:14px;width:max-content;animation:reviewsLoop 34s linear infinite}
.reviews-marquee:hover .reviews-track{animation-play-state:paused}
.review-card{width:min(320px,78vw);min-height:210px;border:1px solid var(--hair);background:var(--paper);padding:20px;display:flex;flex-direction:column;gap:14px}
.reviews-grid .review-card{width:auto}
.review-card__image{height:150px;background:var(--paper-3);overflow:hidden;margin:-20px -20px 0}
.review-card__image img{width:100%;height:100%;object-fit:cover;display:block}
.review-card__rating{font:500 .76rem/1 var(--mono);letter-spacing:.1em;color:var(--amber)}
.review-card__text{font:400 .92rem/1.65 var(--body);color:var(--ink-2)}
.review-card__name{margin-top:auto;font:600 .72rem/1 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink)}
@keyframes reviewsLoop{to{transform:translateX(calc(-50% - 7px))}}
@media (max-width:1100px){.product-detail{grid-template-columns:1fr}.product-gallery{position:static}.gallery-main-img{min-height:0}.product-detail-info{max-width:680px}}
@media (max-width:860px){.product-detail{padding-bottom:120px}.product-gallery{grid-template-columns:1fr}.gallery-thumbs{order:2;flex-direction:row;overflow:auto}.gallery-main{order:1}.pd-trust{grid-template-columns:1fr}.mobile-dock{display:grid}.reviews-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:520px){.pd-cart-row{grid-template-columns:1fr}.qty-control{width:max-content}.gallery-main-img{aspect-ratio:4/5}.product-detail{gap:32px}.mobile-dock{grid-template-columns:1fr}.mobile-dock .btn{min-height:44px}.reviews-grid{grid-template-columns:1fr}}
@media (prefers-reduced-motion:reduce){.pd-stock::after{animation:none}}
