/* Shop presentation; purchases open directly on Zeffy. */
.shop-page .page-hero{padding:38px 0 34px}
.shop-page .page-hero h1{font-size:clamp(36px,4.5vw,58px);margin-bottom:10px}
.shop-hero-row{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);align-items:center;gap:48px}
.shop-hero-copy{min-width:0}
.shop-hero-row .action-row{margin:24px 0 0}
.shop-merch-visual{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:1fr 1fr;gap:12px;width:100%;max-width:560px;justify-self:end}
.shop-merch-visual img{width:100%;height:100%;min-height:0;aspect-ratio:1;object-fit:contain;border-radius:5px;background:var(--white)}
.shop-merch-shirt{grid-row:1 / 3;grid-column:1 / 3}
.shop-page .shop-collection{padding:44px 0;scroll-margin-top:130px}
.shop-intro-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:36px;align-items:start}
.shop-store-panel{grid-column:1;grid-row:1;min-width:0}
.shop-page .shop-store-panel h2{font-size:clamp(30px,3vw,40px);margin-bottom:14px}
.shop-store-panel>p{margin:0 0 22px;max-width:62ch}
.shop-store-actions{border-top:3px solid var(--red);padding-top:18px}
.shop-store-actions>p:first-child{margin-top:0}
.shop-store-actions .action-row{gap:12px;margin:20px 0 14px;align-items:start}
.shop-store-actions .btn{text-align:center}
.shop-store-actions>p{font-size:15px}
.shop-pickup{grid-column:2;grid-row:1;min-width:0;padding:24px;background:var(--gold);border-inline-start:5px solid var(--black);border-radius:4px;color:var(--black)}
.shop-page .shop-pickup h2{font-size:27px;line-height:1.15;margin-bottom:14px}
.shop-pickup p{margin:0 0 16px}
.shop-pickup p:last-child{margin-bottom:0;padding-top:14px;border-top:1px solid currentColor}
.shop-pickup .pickup-hours{list-style:none;padding:0;margin:18px 0}
.shop-pickup .pickup-hours li{line-height:1.5}
.shop-pickup .pickup-hours strong{display:block}
.shop-pickup .pickup-hours li+li{margin-top:12px}
.shop-page .provider-language{font-size:14px;margin:24px 0 0}
.shop-order-note{margin-top:24px;padding-top:18px;border-top:1px solid var(--line);font-size:15px}
.shop-order-note p{margin:0}
.shop-page .shop-event-sales{padding:48px 0}
.shop-page .shop-event-sales h2,.shop-page .shop-past-years h2{font-size:clamp(28px,3vw,38px)}
.shop-page .shop-event-sales .content-grid{margin-top:24px}
.shop-page .shop-past-years{padding:36px 0}
.shop-past-years .wrap{border-inline-start:5px solid var(--gold);padding-inline-start:24px}
.shop-past-years p{margin-bottom:0;max-width:72ch}
@media(max-width:900px){
 .shop-hero-row{gap:28px;grid-template-columns:1fr 1fr}
 .shop-merch-visual{gap:8px}
 .shop-intro-grid{grid-template-columns:minmax(0,1fr);gap:30px}
 .shop-pickup,.shop-store-panel{grid-column:auto;grid-row:auto}
 .shop-pickup .pickup-hours{display:grid;grid-template-columns:1fr 1fr;gap:16px}
 .shop-pickup .pickup-hours li+li{margin-top:0}
 .shop-order-note{grid-template-columns:1fr;gap:12px}
}
@media(max-width:600px){
 .shop-page .page-hero{padding:28px 0}
 .shop-hero-row{grid-template-columns:minmax(0,1fr);gap:24px}
 .shop-merch-visual{display:block;max-width:240px;justify-self:center}
 .shop-merch-visual img:not(.shop-merch-shirt){display:none}
 .shop-hero-row .action-row{margin-top:20px}
 .shop-page .shop-collection{padding:28px 0 32px}
 .shop-page .shop-collection{scroll-margin-top:145px}
 .shop-pickup{padding:20px}
 .shop-page .shop-pickup h2{font-size:25px}
 .shop-pickup .pickup-hours{grid-template-columns:1fr;gap:12px;margin:14px 0}
 .shop-store-actions .action-row{display:grid;grid-template-columns:minmax(0,1fr)}
 .shop-store-actions .btn{width:100%;min-height:48px}
 .shop-page .shop-event-sales{padding:36px 0}
 .shop-page .shop-past-years{padding:28px 0}
 .shop-past-years .wrap{padding-inline-start:16px}
}
