.shop-inline{position:relative;border-top:1px solid var(--line);scroll-margin-top:90px}
.shop-inline [hidden]{display:none!important}
.shop-inline .shop-scroll{overflow:visible}
.shop-inline .product-layout{display:grid;grid-template-columns:1.1fr 1fr;gap:7%;max-width:1360px;margin:auto;padding:65px 6% 85px;align-items:start}
.shop-inline .shop-visual{position:sticky;top:115px;height:calc(100svh - 200px);min-height:380px;max-height:760px;display:flex;flex-direction:column;justify-content:center;align-self:start}
.shop-inline #detail-image{width:100%;min-height:0;max-height:calc(100% - 90px);aspect-ratio:1/1;object-fit:contain;background:#eee9df}
.shop-visual .view-buttons{flex-shrink:0}.shop-visual .caption{flex-shrink:0;text-align:center;margin:10px 0}
.shop-inline .product-options{min-width:0;overflow:visible}
.shop-inline .product-options>h2{font-size:clamp(42px,4.5vw,65px);margin:18px 0 26px}
#shop-progress{position:sticky;top:88px;z-index:10;background:var(--cream);display:flex;gap:0;border-bottom:1px solid var(--line);padding:18px 0;margin-bottom:20px;box-shadow:0 -3px 0 var(--cream)}
#shop-progress button{display:flex;align-items:center;gap:7px;font-size:11px;flex:1;opacity:.65;text-align:left;padding:0}
#shop-progress button span{border:1px solid var(--line);height:24px;width:24px;border-radius:50%;display:grid;place-items:center;font-size:10px}
#shop-progress button[aria-current]{opacity:1;font-weight:600}#shop-progress button[aria-current] span{background:var(--green);color:var(--cream);border-color:var(--green)}
.shop-stage{border-bottom:1px solid var(--line);padding:30px 0 50px;min-height:clamp(450px,calc(100svh - 280px),740px);scroll-margin-top:175px}
.shop-stage h3{font:400 25px/1.3 Georgia,'Songti SC',serif;letter-spacing:-.02em;margin:10px 0!important;outline:none}
.shop-stage>p{font-size:12px;color:#647468;margin-bottom:20px;line-height:1.8}
.shop-inline .options{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.shop-inline .options button,.shop-inline .sizes button{display:block;text-align:left;padding:16px;border:1px solid var(--line);background:transparent;transition:border-color .15s,box-shadow .15s;color:var(--green)}
.shop-inline .options button:hover,.shop-inline .sizes button:hover{border-color:var(--green)}
.shop-inline .options button.selected,.shop-inline .sizes button.selected{border-color:var(--green);box-shadow:inset 0 0 0 1px var(--green);background:#e8ece3;color:var(--green)}
.choice-name{font:400 23px/1.2 Georgia,'Songti SC',serif;display:flex;justify-content:space-between;align-items:center}.choice-name i{width:7px;height:7px;border-radius:50%;flex-shrink:0;margin-left:8px}
.choice-desc{display:block;font-size:10px;line-height:1.7;color:#607064;margin-top:8px}.choice-price{display:block;font-size:10px;margin-top:12px;font-weight:500}
.shop-inline .sizes{display:grid;grid-template-columns:1fr 1fr;gap:12px}.size-card-top{display:flex;justify-content:space-between;align-items:center;gap:15px;font-size:13px}.size-card-top strong{font-size:23px;font-weight:400}.size-pack{display:block;font-size:11px;margin-top:8px}
.recap-row{display:flex;width:100%;justify-content:space-between;align-items:center;padding:13px 0;border-bottom:1px solid var(--line);text-align:left;font-size:10px;gap:15px}.recap-row strong{display:block;font-weight:400;font-size:13px;margin-top:3px}.recap-row>span:last-child{font-size:10px;text-decoration:underline;white-space:nowrap}
.shop-details{margin-top:25px}.shop-details summary{font-size:11px;padding:17px 0}.shop-details p{font-size:11px}.review-description{font-size:13px;color:#52675a;margin:20px 0}.shop-stage .total-row:last-of-type{font-size:20px;border-top:1px solid var(--line);margin-top:10px;padding-top:16px}
#selection-recap{margin-bottom:22px}.shop-stage .caption{margin-top:22px}
.shop-purchase{position:fixed;left:0;right:0;bottom:0;z-index:25;display:flex;justify-content:space-between;align-items:center;gap:25px;padding:19px max(6%,calc((100vw - 1196px)/2));border-top:1px solid var(--line);background:#faf8f1;box-shadow:0 -8px 26px #173f3507;visibility:hidden;transform:translateY(110%);transition:transform .2s,visibility .2s}
body.shop-in-view .shop-purchase{visibility:visible;transform:translateY(0)}
.shop-summary{display:flex;align-items:baseline;gap:8px 25px;flex-wrap:wrap}.shop-summary strong{font-weight:400;font-size:15px}.shop-summary #detail-price{font-size:17px;white-space:nowrap}.shop-summary small{display:block;width:100%;color:#657365;font-size:10px;line-height:1.5}
.shop-purchase>.button{width:auto;min-width:225px;flex-shrink:0;white-space:nowrap}.shop-purchase>.button:disabled{opacity:.4;cursor:default}.shop-purchase>.button:hover:not(:disabled){background:#245347}
body.shop-in-view #font-preview{bottom:115px}
@media(max-width:750px){
 .shop-inline .product-layout{grid-template-columns:1fr;padding:28px 6% 65px;gap:28px}
 .shop-inline .shop-visual{position:static;top:auto;height:auto;min-height:0;max-height:none}
 .shop-inline #detail-image{max-height:300px;aspect-ratio:3/2;object-fit:contain}
 .shop-inline .product-options>h2{font-size:42px;margin:12px 0 20px}
 #shop-progress{top:88px;padding:15px 0}
 .shop-stage{min-height:0;padding:28px 0 50px}
 .shop-stage h3{font-size:23px}
 .shop-stage>p{font-size:11px}
 #review-stage{min-height:420px}
 .shop-purchase{padding:13px 5% max(13px,env(safe-area-inset-bottom));gap:12px}
 .shop-summary{display:block;min-width:0}.shop-summary strong{display:block;font-size:11px}.shop-summary #detail-price{font-size:15px}.shop-summary small{font-size:8px;max-width:185px;margin-top:3px}
 .shop-purchase>.button{min-width:0;font-size:10px;padding:13px 14px;gap:12px}
 .choice-name{font-size:21px}.shop-inline .options button,.shop-inline .sizes button{padding:13px}
 body.shop-in-view #font-preview{bottom:112px}
}
@media(prefers-reduced-motion:reduce){.shop-purchase{transition:none}}
