.shop-page main{padding-top:clamp(4rem,8vw,7rem)}
.shop-page .hero{max-width:900px}
.shop-page .hero h1{letter-spacing:-.04em}
.shop-status{display:inline-flex;margin-top:1rem!important;padding:.55rem .9rem;border:1px solid rgba(190,160,255,.35);background:rgba(91,62,130,.15);color:#ddd0f5!important;font:600 .78rem/1.5 Arial,sans-serif!important;letter-spacing:.05em}
.shop-page .card{transition:transform .25s,border-color .25s}
.shop-page .card:after{display:none}
.shop-page .card-link{margin-top:auto;padding-top:2rem;color:#c9a6ff;font:600 .78rem Arial,sans-serif;letter-spacing:.06em}
.shop-archive-note{margin-top:3rem}
.shop-page .back{margin-bottom:2rem}
.shop-page .button{margin-top:1.5rem;transition:background .2s,transform .2s}
.shop-page .button:hover{background:#bd96ff;color:#111;transform:translateY(-2px)}
.shop-page .button:focus-visible,.shop-page .card:focus-visible,.shop-page .back:focus-visible{outline:2px solid #d7b9ff;outline-offset:4px}
.shop-availability{max-width:760px}
.shop-availability h2{margin:.2rem 0 1rem;font-size:clamp(2rem,4vw,3.2rem);font-weight:500}
.shop-availability p:not(.eyebrow){color:var(--muted)}
@media(max-width:600px){.shop-page main{padding:4rem 20px 6rem}.shop-page .hero h1{font-size:clamp(2.7rem,12vw,4rem)}.shop-page .card{min-height:240px}.shop-page .product-copy,.shop-availability{padding:24px}.shop-page .product-media img{min-height:0;aspect-ratio:4/5}}
