.storefront { background-image:none; }
.storefront .topbar { min-height:88px; }
.storefront .topbar .brand svg { width:140px; height:77px; }
.storefront .wrap { max-width:1480px; }
.shop { padding-top:38px; }
.shop-heading { display:flex; align-items:baseline; justify-content:space-between; gap:24px; margin-bottom:34px; }
.shop-heading h1 { font:800 clamp(42px,4.8vw,70px)/1 var(--font-display); text-transform:uppercase; margin:0; letter-spacing:-.025em; }
.shop-heading p { color:var(--mut); margin:0; font-size:19px; }
.shop-products { display:grid; grid-template-columns:minmax(0,1fr) 310px; gap:36px; }
.print-shop { min-width:0; }
.print-shop-heading { display:flex; justify-content:space-between; align-items:center; gap:16px; }
.print-shop-heading h2,.digital-shop h2 { font:700 30px/1.1 var(--font-label); margin:0; }
.finish-switch { display:flex; border:1px solid var(--line); border-radius:5px; padding:4px; }
.finish-switch button { background:transparent; border:0; border-radius:2px; min-height:40px; padding:6px 18px; cursor:pointer; font-weight:600; }
.finish-switch button[aria-pressed=true] { background:var(--white); color:var(--deep); }
.poster-shelf { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:26px; }
.size-product { min-width:0; }
.size-art-stage { display:flex; align-items:flex-end; justify-content:center; height:358px; padding:30px 9px 26px; border-bottom:1px solid var(--line); }
.size-art { display:block; width:calc(min(100%, 218px) * var(--relative-size)); max-width:100%; aspect-ratio:3/4; box-shadow:5px 9px 12px #0007; transition:transform .18s; }
.size-art-stage:hover .size-art { transform:translateY(-5px); }
.size-art img { width:100%; height:100%; object-fit:contain; }
.size-art.is-framed { outline:7px solid #111; box-shadow:inset 0 0 0 1px #666,8px 12px 16px #0008; }
.size-details { display:flex; gap:8px; align-items:flex-start; justify-content:space-between; padding:23px 0; }
.size-details h3 { margin:0; font:700 28px/1 var(--font-label); }
.size-details h3 small { display:block; margin-top:8px; font:400 14px/1 var(--font-body); color:var(--mut); }
.size-details strong { font:700 34px/1 var(--font-label); }
.size-product .button { width:100%; padding:14px 12px; min-height:50px; display:flex; justify-content:space-between; font-size:18px; }
.purchase-note { display:flex; flex-wrap:wrap; gap:8px 20px; justify-content:space-between; font-size:15px; color:var(--mut); margin-top:20px; }
.digital-shop { background:var(--deep); padding:26px; display:flex; flex-direction:column; }
.digital-art { height:216px; display:flex; align-items:center; justify-content:center; margin-bottom:24px; }
.digital-art img { width:153px; height:205px; object-fit:contain; box-shadow:7px 12px 20px #0006; }
.digital-shop p { font-size:17px; color:var(--mut); margin:10px 0 18px; }
.digital-packs { margin-bottom:22px; font-size:17px; }
.digital-packs>div { display:flex; justify-content:space-between; padding:9px 0; border-top:1px solid var(--line); }
.digital-packs strong { font-weight:600; }
.digital-shop .button { display:flex; justify-content:space-between; width:100%; margin-top:auto; padding:14px 12px; min-height:50px; font-size:17px; }
.digital-shop small { text-align:center; color:var(--mut); font-size:13px; margin-top:12px; }
.shop-section-heading { display:flex; align-items:center; justify-content:space-between; gap:20px; margin-bottom:26px; }
.shop-section-heading h2 { font:700 44px/1 var(--font-display); margin:0; }
.shop-section-heading>a { font-size:17px; color:var(--mut); }
.shop-styles { border-top:1px solid var(--line); margin-top:50px; padding-top:36px; }
.shop-slideshow { min-width:0; }
.look-showcase { position:relative; width:100%; max-width:440px; margin:0 auto; padding:0; border:0; background:transparent; box-shadow:none; }
.look-stage { position:relative; display:block; }
.look-stage .showcase-link { width:100%; }
.look-stage .showcase-stack { background:transparent; }
.look-stage .showcase-stack img { object-fit:contain; }
.look-arrow { position:absolute; z-index:2; top:50%; left:8px; transform:translateY(-50%); width:44px; height:50px; background:#111a; border:0; color:#fff; font:500 36px/1 var(--font-body); cursor:pointer; opacity:0; transition:opacity .15s; }
.look-arrow[data-look-next] { left:auto; right:8px; }
.look-stage:hover .look-arrow,.look-stage:focus-within .look-arrow { opacity:1; }
.look-arrow:disabled { visibility:hidden; }
.look-caption { display:grid; grid-template-columns:minmax(0,1fr); justify-items:center; gap:14px; margin-top:20px; text-align:center; }
.look-caption-copy { display:grid; min-width:0; }
.look-caption-copy>div { grid-area:1 / 1; min-width:0; align-self:start; }
.look-caption-size { visibility:hidden; pointer-events:none; }
.look-caption h3 { font:800 36px/1.1 var(--font-display); margin:0; text-transform:uppercase; overflow-wrap:anywhere; }
.look-caption p { margin:7px 0 0; font-size:16px; color:var(--mut); overflow-wrap:anywhere; }
.look-caption .button { min-height:48px; font-size:17px; white-space:nowrap; }
.look-toolbar { position:absolute; top:8px; right:8px; font-size:13px; color:#fff; }
.look-pause { display:inline-flex; align-items:center; gap:9px; min-height:44px; padding:0 10px; background:#111d; cursor:pointer; opacity:0; transition:opacity .15s; }
.look-showcase:hover .look-pause,.look-pause:focus-within { opacity:1; }
.look-pause input { width:18px; height:18px; margin:0; accent-color:var(--red); }
.look-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; }
.look-status { color:var(--mut); margin:12px 0 0; font-size:15px; }
.example-row { position:relative; min-width:0; margin-top:38px; }
.example-row-track { position:relative; display:flex; gap:18px; overflow-x:auto; padding:4px 3px 12px; scrollbar-width:thin; scrollbar-color:var(--mut-dim) transparent; overscroll-behavior-x:contain; }
.example-row-card { flex:0 0 138px; min-width:0; color:var(--white); text-decoration:none; }
.example-row-card[hidden] { display:none; }
.example-row-card img { display:block; width:100%; height:auto; aspect-ratio:3/4; object-fit:contain; background:transparent; }
.example-row-card span { display:block; margin-top:9px; font:600 17px/1.15 var(--font-label); }
.example-row-card:focus-visible { outline:2px solid var(--white); outline-offset:2px; }
.example-row-pause { position:absolute; bottom:100%; right:0; display:inline-flex; gap:7px; align-items:center; min-height:36px; padding:0 8px; font-size:13px; background:var(--deep); color:var(--white); opacity:0; }
.example-row:hover .example-row-pause,.example-row-pause:focus-within { opacity:1; }
.example-row-pause input { accent-color:var(--red); }
.shop-how { display:flex; justify-content:space-between; gap:20px; margin:50px 0; padding:30px 0; border-top:1px solid var(--line); border-bottom:1px solid var(--line); font-size:18px; }
.shop-how b { display:inline-flex; width:30px; height:30px; justify-content:center; align-items:center; border:1px solid var(--mut-dim); border-radius:50%; margin-right:12px; }
footer.shop-footer { display:block; padding:0; width:100%; }
.shop-footer-inner { display:flex; align-items:center; justify-content:space-between; gap:24px; padding-top:28px; padding-bottom:30px; }
.shop-footer nav { display:flex; flex-wrap:wrap; gap:10px 24px; }
.shop-footer span,.shop-footer a { font-size:14px; line-height:1.4; }
.shop-footer a { display:inline-flex; align-items:center; min-height:44px; }
.shop-error { border:1px solid var(--red); padding:16px; }
@media(min-width:1400px) {
  .size-art-stage { height:394px; }
  .size-art { width:calc(min(100%, 242px) * var(--relative-size)); }
}
@media(max-width:1150px) {
  .shop-products { grid-template-columns:minmax(0,1fr) 265px; gap:26px; }
  .poster-shelf { gap:18px; }
  .size-art-stage { height:300px; }
  .size-art { width:calc(min(100%, 180px) * var(--relative-size)); }
  .size-details h3 { font-size:24px; }
  .size-details strong { font-size:30px; }
  .digital-shop { padding:22px; }
  .digital-art { height:172px; }
  .digital-art img { width:121px; height:162px; }
  .purchase-note { flex-direction:column; gap:5px; }
}
@media(max-width:900px) and (min-width:761px) {
  .shop-products { grid-template-columns:minmax(0,1fr) 225px; gap:22px; }
  .size-art-stage { height:250px; }
  .size-art { width:calc(min(100%, 145px) * var(--relative-size)); }
  .size-details { flex-direction:column; gap:10px; }
  .digital-shop { padding:18px; }
  .digital-shop h2 { font-size:27px; }
  .digital-shop .button { font-size:15px; }
}
@media(max-width:760px) {
  .shop { padding-top:24px; }
  .shop-heading { align-items:flex-start; flex-direction:column; gap:8px; margin-bottom:26px; }
  .shop-heading p { font-size:16px; }
  .shop-products { grid-template-columns:1fr; gap:28px; }
  .print-shop-heading h2 { font-size:26px; }
  .poster-shelf { gap:16px; }
  .size-art-stage { height:248px; padding-top:26px; }
  .size-art { width:calc(min(100%, 152px) * var(--relative-size)); }
  .size-details { padding:19px 0; }
  .size-details h3 { font-size:24px; }
  .size-details strong { font-size:28px; }
  .size-product .button { font-size:16px; padding:12px 10px; }
  .purchase-note { font-size:14px; }
  .digital-shop { display:grid; grid-template-columns:120px minmax(0,1fr); column-gap:24px; padding:22px; }
  .digital-art { grid-row:1/6; height:165px; align-self:center; margin:0; }
  .digital-art img { width:110px; height:147px; }
  .digital-shop h2 { font-size:26px; }
  .digital-shop p { font-size:15px; margin:8px 0 13px; }
  .digital-packs { display:flex; gap:18px; margin-bottom:18px; }
  .digital-packs>div { flex-direction:column; gap:3px; border:0; padding:0; font-size:15px; }
  .digital-shop .button { padding:12px 10px; font-size:16px; }
  .digital-shop small { grid-column:2; font-size:12px; }
  .shop-section-heading h2 { font-size:35px; }
  .shop-section-heading>a { font-size:15px; }
  .look-showcase { max-width:390px; padding:0; }
  .look-caption { grid-template-columns:minmax(0,1fr); }
  .look-caption h3 { font-size:30px; }
  .look-caption p { font-size:14px; }
  .look-caption .button { justify-content:space-between; display:flex; font-size:16px; gap:24px; }
  .example-row-card { flex-basis:112px; }
  .example-row-track { gap:14px; }
  .shop-how { flex-wrap:wrap; font-size:16px; gap:16px; margin:30px 0; }
  .shop-footer-inner { align-items:flex-start; flex-direction:column; gap:12px; }
}
@media(max-width:420px) {
  .poster-shelf { gap:10px; }
  .size-art-stage { height:207px; padding-left:8px; padding-right:8px; }
  .size-art { width:calc(min(100%, 118px) * var(--relative-size)); }
  .size-details { flex-direction:column; gap:12px; }
  .size-details h3 { font-size:22px; }
  .size-details h3 small { display:inline; margin-left:5px; font-size:11px; }
  .size-product .button { font-size:14px; justify-content:center; }
  .size-product .button span { display:none; }
  .finish-switch button { padding:5px 11px; }
  .digital-shop { grid-template-columns:86px minmax(0,1fr); padding:18px; column-gap:16px; }
  .digital-art img { width:80px; height:107px; }
  .digital-packs { gap:12px; }
  .digital-packs>div { font-size:14px; }
  .digital-shop h2 { font-size:24px; }
  .digital-shop .button { font-size:14px; }
  .shop-section-heading { align-items:flex-start; flex-direction:column; gap:10px; }
  .look-showcase { padding:0; }
}
@media(prefers-reduced-motion:reduce) {
  .size-art,.look-stage .showcase-stack img { transition:none; }
}
