.tshirt-page { background: #fffdfa; }
.tshirt-breadcrumb { display: flex; flex-wrap: wrap; gap: 12px; padding: 24px 5%; font-size: 12px; color: #63706a; }
.tshirt-product { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, .9fr); gap: 64px; max-width: 1480px; margin: auto; padding: 8px 5% 72px; }
.tshirt-gallery figure { margin: 0; }
.tshirt-gallery figure img { aspect-ratio: 1; object-fit: contain; }
.tshirt-gallery figcaption { font-size: 12px; color: #63706a; padding-top: 10px; }
.tshirt-examples { max-width: 1480px; margin: auto; padding: 0 5% 64px; }
.tshirt-examples h2 { font-size: 28px; line-height: 1.5; margin-bottom: 24px; letter-spacing: 0; }
.tshirt-example-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
.tshirt-example-grid figure { min-width: 0; margin: 0; }
.tshirt-example-grid img { width: 100%; height: auto; aspect-ratio: 1; object-fit: contain; }
.tshirt-example-grid figcaption { padding-top: 16px; }
.tshirt-example-grid h3 { font-size: 20px; line-height: 1.5; letter-spacing: 0; }
.tshirt-example-grid p { font-size: 14px; color: #63706a; margin: 6px 0 0; overflow-wrap: anywhere; }
.tshirt-product-copy h1 { font-size: 32px; line-height: 1.4; margin: 6px 0 18px; letter-spacing: 0; }
.tshirt-product-copy .eyebrow { margin-top: 0; }
.tshirt-product-copy p { font-size: 14px; }
.tshirt-product-copy .tshirt-price { font-size: 36px; font-weight: 700; color: #24483a; margin: 20px 0 0; line-height: 1.4; }
.tshirt-price span { font-size: 15px; margin-left: 5px; }
.tshirt-product-copy .tshirt-price-note { margin-top: 4px; color: #24483a; }
.tshirt-quick-spec { padding: 16px 0; border-top: 1px solid #d8ddd9; border-bottom: 1px solid #d8ddd9; margin: 20px 0; font-size: 13px; }
.tshirt-quick-spec div { display: flex; gap: 20px; }
.tshirt-quick-spec dt { flex: 0 0 84px; color: #63706a; }
.tshirt-quick-spec dd { margin: 0; }
.tshirt-size-link { color: #24483a; font-size: 14px; text-decoration: underline; width: fit-content; }
.tshirt-shop-actions { margin-top: 24px; }
.tshirt-story { padding: 0 0 64px; }
.tshirt-story > img { width: 100%; aspect-ratio: 16 / 9; object-fit: contain; }
.tshirt-story > div { max-width: 840px; padding: 36px 5% 0; margin: auto; }
.tshirt-story h2, .tshirt-details h2, .tshirt-size-guide h2 { font-size: 28px; line-height: 1.5; letter-spacing: 0; }
.tshirt-details { display: grid; grid-template-columns: 1fr 1fr; gap: 64px; padding: 56px 7%; background: #f2f5f3; }
.tshirt-details dl { margin: 0; font-size: 14px; }
.tshirt-details dl > div { display: grid; grid-template-columns: 110px 1fr; gap: 16px; padding: 14px 0; border-bottom: 1px solid #d3ddd6; }
.tshirt-details dd { margin: 0; }
.tshirt-size-guide { max-width: 1100px; margin: auto; padding: 64px 5%; scroll-margin-top: 100px; }
.tshirt-table-wrap { overflow-x: auto; }
.tshirt-size-guide table { width: 100%; border-collapse: collapse; font-size: 14px; }
.tshirt-size-guide th, .tshirt-size-guide td { padding: 16px 10px; text-align: center; border-bottom: 1px solid #d8ddd9; }
.tshirt-size-guide thead { background: #24483a; color: #fff; }
.tshirt-size-note { font-size: 12px; color: #63706a; }
.tshirt-page a:focus-visible { outline: 3px solid #b88945; outline-offset: 3px; }
@media (max-width: 900px) { .tshirt-product { gap: 30px; } .tshirt-product-copy h1 { font-size: 27px; } }
@media (max-width: 720px) {
  .tshirt-product { grid-template-columns: 1fr; gap: 32px; padding: 0 5% 48px; }
  .tshirt-example-grid { grid-template-columns: 1fr; gap: 32px; }
  .tshirt-examples { padding-bottom: 48px; }
  .tshirt-examples h2 { font-size: 24px; }
  .tshirt-product-copy h1 { font-size: 28px; }
  .tshirt-details { grid-template-columns: 1fr; gap: 24px; padding: 40px 5%; }
  .tshirt-story h2, .tshirt-details h2, .tshirt-size-guide h2 { font-size: 24px; }
  .tshirt-details dl > div { grid-template-columns: 95px 1fr; }
  .tshirt-size-guide th, .tshirt-size-guide td { padding: 12px 8px; }
}
