/* Isolated editorial photos: no product, checkout or shared-site selectors. */
.shop-worn{background:#f0eee8;border-bottom:1px solid var(--line);scroll-margin-top:14px}
.shop-worn-grid{max-width:1280px;margin:auto}
.shop-worn-card{margin:0;min-width:0;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:clamp(28px,5vw,72px);align-items:center}
.shop-real-photo{display:block;min-width:0;background:var(--paper);color:var(--ink);text-decoration:none}
.shop-real-photo img{display:block;width:100%;height:auto;max-width:100%;object-fit:contain;transform:none}
.shop-real-expand{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:44px;padding:12px 16px;font-size:12px;font-weight:700;border:1px solid var(--line);border-top:0;background:var(--paper);color:var(--ink)}
.shop-real-photo:hover .shop-real-expand{background:var(--yellow)}
.shop-real-photo:focus-visible{outline:3px solid var(--red);outline-offset:4px}
.shop-worn-caption{display:grid;gap:16px;min-width:0}
.shop-worn-caption>.eyebrow{color:var(--red)}
.shop-worn-caption h2{font-size:clamp(40px,4.4vw,64px)}
.shop-worn-description{max-width:450px;font-size:15px;line-height:1.7;color:var(--muted)}
.shop-worn-credit{font-size:12px;color:var(--muted)}
.shop-worn-source{display:inline-flex;align-items:center;gap:16px;justify-self:start;min-height:44px;font-size:12px;text-decoration:underline;text-underline-offset:4px}
.shop-worn-source:hover{color:var(--red)}
.shop-worn-bottom{display:grid;justify-items:start;gap:20px;border-top:1px solid #c9c4b9;padding-top:20px}
.shop-worn-bottom p{max-width:610px;font-size:12px;line-height:1.7;color:var(--muted)}
.shop-worn-cta{display:inline-flex;align-items:center;justify-content:space-between;gap:20px;min-height:48px;padding:14px 20px;background:var(--ink);color:var(--paper);font-size:12px;font-weight:700;flex-shrink:0}
.shop-worn-cta:hover{background:var(--red)}
.shop-community{align-items:center;gap:0}
.shop-community .shop-community-photo{margin:0;min-width:0;max-height:none;height:auto;overflow:visible;background:transparent;align-self:center}
.shop-community .shop-community-photo img{width:100%;height:auto;object-fit:contain;object-position:center;transform:none}
.shop-community-photo figcaption{font-size:11px;line-height:1.7;padding:14px 6vw 0;color:var(--paper)}
.shop-community .editorial-copy{padding-top:44px;padding-bottom:44px;overflow:visible}
.shop-community .editorial-copy h2{margin:22px 0}
.shop-community .editorial-copy>p{max-width:440px}
.shop-community .editorial-copy>.shop-community-note{font-size:11px;line-height:1.7;border-top:1px solid #ffffff55;margin-top:24px;padding-top:18px}
.shop-matchday{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);align-items:center;gap:clamp(28px,5vw,72px);padding-top:56px;padding-bottom:56px}
.shop-matchday-photo{min-width:0;margin:0}
.shop-matchday-photo figcaption{font-size:11px;line-height:1.7;margin-top:12px}
.shop-matchday-copy{display:grid;justify-items:start;gap:14px;min-width:0}
.shop-matchday .shop-matchday-copy h2{font-size:clamp(32px,3.2vw,46px);margin:0;line-height:1.04}
.shop-matchday .shop-matchday-copy p:not(.eyebrow){font-size:13px;line-height:1.8;margin:0;max-width:520px}
.shop-matchday-copy .shop-worn-source{color:var(--ink)}
.shop-matchday-copy .text-link{font-size:12px}
.shirt-details-single .shirt-detail-grid{display:block;max-width:1120px}
.shirt-details-single .shirt-detail-grid figure{display:grid;grid-template-columns:minmax(0,480px) minmax(0,1fr);align-items:center;gap:clamp(28px,5vw,72px)}
.shirt-details-single .shirt-detail-photo{aspect-ratio:auto;overflow:visible;border:0}
.shirt-details-single .shirt-detail-photo img{display:block;width:100%;height:auto;object-fit:contain}
.shirt-details-single .detail-photo-hint{position:static;display:flex;align-items:center;justify-content:flex-end;min-height:44px;padding:12px 16px;border:1px solid var(--line);border-top:0;font-size:12px;background:var(--paper);color:var(--ink)}
.shirt-details-single .shirt-detail-grid figcaption{padding-top:0}
.shirt-details-single .shirt-detail-grid figcaption h3{font-size:clamp(28px,3.2vw,42px);margin:16px 0}
.shirt-details-single .shirt-detail-grid figcaption p{font-size:14px;max-width:420px}
.shirt-details-single .shirt-detail-grid .shop-worn-source{margin-top:14px}
.shop-worn-dialog{width:min(1440px,94vw);max-width:94vw;max-height:94vh;max-height:94dvh;padding:12px;background:var(--paper)}
.shop-worn-dialog>button{display:block;min-height:44px;margin:0 0 10px auto;padding:8px 16px;border:1px solid var(--ink);background:var(--paper);font-size:14px}
.shop-worn-dialog>img{display:block;width:100%;height:auto;max-height:calc(94vh - 90px);max-height:calc(94dvh - 90px);object-fit:contain}
@media(max-width:1000px){.shop-worn-card,.shop-matchday{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:28px}.shop-worn-caption{gap:12px}.shop-community .editorial-copy{padding:32px 5vw}.shop-community .editorial-copy h2{font-size:44px}.shop-matchday .shop-matchday-copy h2{font-size:34px}}
@media(max-width:700px){.shop-worn-card,.shop-matchday{grid-template-columns:minmax(0,1fr);gap:24px}.shop-worn-caption h2{font-size:38px}.shop-worn-cta{width:100%}.shop-community .shop-community-photo{height:auto;max-height:none}.shop-community .editorial-copy{padding:28px 6vw 34px}.shop-community .editorial-copy h2{font-size:44px}.shop-community-photo figcaption{padding-top:12px}.shop-matchday{padding-top:32px;padding-bottom:36px}.shop-matchday .shop-matchday-copy h2{font-size:34px}.shirt-details-single .shirt-detail-grid figure{grid-template-columns:minmax(0,1fr);gap:24px}.shirt-details-single .shirt-detail-grid figcaption p{font-size:13px}}
