body.collection-home.shirt-page{position:relative;background-color:#f2eee4;background-image:radial-gradient(ellipse at 50% 0%,#fff9ee96,transparent 55%),repeating-linear-gradient(0deg,transparent 0 23px,#354c3916 23px 24px,transparent 24px 47px,#7d3e3210 47px 48px),repeating-linear-gradient(90deg,transparent 0 23px,#354c3916 23px 24px,transparent 24px 47px,#7d3e3210 47px 48px);background-attachment:fixed;color:#2f352f}
.shirt-page:before{position:absolute;top:0;left:0;right:0;height:7px;content:"";background:repeating-linear-gradient(90deg,#405640 0 31px,#e9dfcd 31px 35px,#8b4939 35px 39px,#e9dfcd 39px 43px,#405640 43px 74px)}
.shirt-page main,.shirt-page .site-nav,.shirt-page .shirt-footer{position:relative}
.shirts-hero{display:grid;grid-template-columns:.78fr 1.22fr;gap:clamp(2rem,6vw,6rem);align-items:center;max-width:1500px;margin:auto;padding:clamp(2.5rem,6vw,6rem) clamp(1.25rem,5vw,5rem) 4.5rem}
.shirts-hero-copy{max-width:520px}
.shirt-eyebrow{margin:0;color:#8b7448;font:700 .72rem/1.4 "Courier New",monospace;letter-spacing:.16em;text-transform:uppercase}
.shirts-hero h1{margin:.8rem 0 1.1rem;color:#29372f;font:400 clamp(2.9rem,5.2vw,5.4rem)/.98 Georgia,"Times New Roman",serif;letter-spacing:-.025em}
.shirts-hero-copy>p:not(.shirt-eyebrow){max-width:33rem;color:#5d6058;font:1.12rem/1.65 Georgia,serif}
.shirts-hero-copy .shirt-season-note{margin:.8rem 0 .25rem;color:#687360;font:italic .93rem/1.45 Georgia,serif}
.shirt-cta{display:inline-flex;align-items:center;gap:.9rem;min-height:48px;margin-top:1rem;padding:.25rem 0;border-bottom:1px solid #8b7448;color:#655334;font:700 .78rem "Courier New",monospace;letter-spacing:.12em;text-transform:uppercase;text-decoration:none}
.shirt-cta span{font-size:1rem}
.shirts-hero-image{margin:0}
.shirts-hero-image img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;object-position:center 52%;box-shadow:0 20px 56px #28352f20}
.shirts-hero-image figcaption{margin:.65rem .1rem 0;color:#858174;text-align:right;font: .72rem/1.4 Georgia,serif}
.shirt-options{max-width:1320px;margin:0 auto;padding:4rem clamp(1.2rem,4vw,3.5rem) 5rem;border-top:1px solid #d7d0c2;background:linear-gradient(180deg,#f2eee4c7,#f2eee4a6)}
.shirt-options-intro{max-width:680px;margin:0 auto 2.6rem;text-align:center}
.shirt-options h2{margin:.55rem 0;font:400 clamp(2.2rem,4vw,3.6rem)/1.05 Georgia,serif;color:#303b33}
.shirt-options-intro>p:last-child{margin:.8rem 0 0;color:#6b6a60;font:1.03rem/1.5 Georgia,serif}
.shirt-group{min-width:0;margin:0 0 2.5rem;padding:0;border:0}
.shirt-group legend{width:100%;margin:0 0 1rem;padding:0 0 .65rem;border-bottom:1px solid #d7d0c2;color:#5b523d;font:700 .76rem/1.4 "Courier New",monospace;letter-spacing:.13em;text-transform:uppercase}
.shirt-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}
.shirt-card{position:relative;display:flex;flex-direction:column;min-width:0;overflow:hidden;border:1px solid #d9cfbd;background:#f7f2e8e8;color:inherit;cursor:pointer;transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease}
.shirt-card:hover{transform:translateY(-2px);box-shadow:0 12px 28px #27342b12}
.shirt-card:has(input:checked){border-color:#9a8150;box-shadow:0 0 0 2px #9a815033}
.shirt-card:focus-within{outline:2px solid #8b7448;outline-offset:3px}
.shirt-card input{position:absolute;width:1px;height:1px;opacity:0}
.tee-art{display:block;width:100%;aspect-ratio:2/3;background-image:url("/assets/nine-shirt-trio-clean-v2.png");background-repeat:no-repeat;background-size:300% auto;background-color:#f6f2e9}
.tee-love{background-position:0 center}.tee-joy{background-position:50% center}.tee-peace{background-position:100% center}
.sleeve-art{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;background:#f7f4ed}
.shirt-card-copy{display:grid;gap:.28rem;padding:1rem 1rem 1.1rem;border-top:1px solid #e5dccd}
.shirt-card-copy strong{color:#433d31;font:700 1.1rem/1.1 "Courier New",monospace;letter-spacing:.12em}
.shirt-card-copy small{color:#777367;font: .85rem/1.4 Georgia,serif}
.shirt-card-hint{display:flex;align-items:center;gap:.35rem;margin-top:.4rem;color:#6b705f;font:700 .63rem/1.3 "Courier New",monospace;letter-spacing:.08em;text-transform:uppercase}
.shirt-card-hint span{color:#8a6545;font-size:.8rem}
.shirt-request{display:flex;align-items:end;justify-content:center;gap:1rem;flex-wrap:wrap;margin:2rem auto 0}
.shirt-request label{display:grid;gap:.35rem;color:#6f6a5c;font:700 .66rem "Courier New",monospace;letter-spacing:.12em;text-transform:uppercase}
.shirt-request label span{font-weight:400;letter-spacing:0;text-transform:none}
.shirt-request select{min-width:180px;min-height:48px;padding:.6rem .75rem;border:1px solid #d3cbbb;background:#fbf8f1;color:#383d36;font:1rem Georgia,serif}
.shirt-request button{min-height:48px;padding:.75rem 1.15rem;border:1px solid #83704c;background:#f1e8d4;color:#4e442f;font:700 .72rem "Courier New",monospace;letter-spacing:.1em;text-transform:uppercase;cursor:pointer}
.shirt-request button span{padding-left:.35rem}
.shirt-note{max-width:650px;margin:1rem auto 0;color:#817d72;text-align:center;font:.79rem/1.55 Georgia,serif}
#shirt-interest-status{min-height:1.2em;margin:.4rem 0 0;color:#5b634f;text-align:center;font:.8rem Georgia,serif}
.shirt-footer{display:flex;justify-content:center;gap:2rem;flex-wrap:wrap;padding:1.2rem;background:#e8e2d4e8;color:#636154;font-size:.78rem;letter-spacing:.04em}
.shirt-footer a{color:#5e5034;text-decoration:none;border-bottom:1px solid #b9ac8b}
.shirt-detail{width:min(1000px,calc(100% - 2rem));max-width:none;max-height:min(88vh,900px);padding:0;border:1px solid #b9a88d;background:#f4efe4;color:#34382f;box-shadow:0 24px 80px #18251cb0}
.shirt-detail::backdrop{background:#1d281fb3;backdrop-filter:blur(3px)}
.shirt-detail-frame{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.95fr);min-height:560px;background-color:#f3eee3;background-image:repeating-linear-gradient(0deg,transparent 0 23px,#354c3908 23px 24px,transparent 24px 47px,#7d3e3207 47px 48px),repeating-linear-gradient(90deg,transparent 0 23px,#354c3908 23px 24px,transparent 24px 47px,#7d3e3207 47px 48px)}
.shirt-detail-close{position:absolute;z-index:2;top:1rem;right:1rem;border:0;background:#f4efe4e8;color:#574f40;padding:.45rem .65rem;font:700 .65rem "Courier New",monospace;letter-spacing:.08em;text-transform:uppercase;cursor:pointer}
.shirt-detail-close span{padding-left:.25rem;font-size:1rem}
.shirt-detail-product{display:flex;flex-direction:column;justify-content:center;min-width:0;padding:clamp(2rem,5vw,4.5rem);border-right:1px solid #d9cfbd}
#shirt-detail-image{display:grid;place-items:center;min-height:300px;overflow:hidden;background:#eae3d5;border:1px solid #d5c9b5;box-shadow:0 12px 28px #293a3017}
#shirt-detail-image .tee-art{width:min(100%,245px);aspect-ratio:2/3;background-color:#eae3d5}
#shirt-detail-image .sleeve-art{width:100%;max-height:430px;object-fit:contain;aspect-ratio:auto;background:#eae3d5}
.shirt-detail-product>p{margin:.8rem 0 0;color:#575d52;font:1rem/1.4 Georgia,serif}
.shirt-detail-product .shirt-detail-concept{color:#817969;font:italic .77rem/1.5 Georgia,serif}
.shirt-detail-story{position:relative;padding:clamp(3.6rem,6vw,5rem) clamp(1.6rem,4vw,3.4rem) 2rem}
.shirt-detail-medallion{position:relative;width:88px;height:88px;overflow:hidden;margin:0 0 1.25rem;border:1px solid var(--detail-color,#a77c5d);border-radius:50%;background:#eee5d2;box-shadow:0 4px 10px #3327191a}
.shirt-detail-medallion img{position:absolute;top:-60px;width:367px;max-width:none;height:auto;left:var(--medallion-left,-23px)}
.shirt-detail-story .shirt-eyebrow{color:#7b725f}
.shirt-detail-story h2{margin:.55rem 0 .8rem;color:#544333;font:400 clamp(2.5rem,5vw,4rem)/.95 Georgia,serif;letter-spacing:.04em}
.shirt-detail-meaning{margin:0;color:#42493e;font:1.25rem/1.45 Georgia,serif}
.shirt-detail-kicker{margin:1.25rem 0 .5rem;color:#75674c;font:700 .64rem "Courier New",monospace;letter-spacing:.13em;text-transform:uppercase}
#shirt-detail-acts{margin:.2rem 0 1.3rem;padding-left:1.15rem;color:#55584f;font: .93rem/1.5 Georgia,serif}
#shirt-detail-acts li{padding:.16rem 0 .16rem .2rem}
.shirt-pass-card{position:relative;margin:1.3rem 0 1rem;padding:1.1rem 1.2rem;border:1px solid #cfc1aa;background:#ece5d7e8;box-shadow:0 5px 15px #4a3b2810}
.shirt-pass-card:before{position:absolute;inset:6px;border:1px solid #a88b6540;content:"";pointer-events:none}
.shirt-pass-card>p:last-child{position:relative;margin:.4rem 0 0;color:#565349;font: .93rem/1.55 Georgia,serif}
.shirt-detail-done{min-height:44px;padding:.25rem 0;border:0;border-bottom:1px solid #86734f;background:none;color:#5d4e31;font:700 .68rem "Courier New",monospace;letter-spacing:.1em;text-transform:uppercase;cursor:pointer}
.shirt-detail-done span{padding-left:.4rem}
.shirt-detail :is(button):focus-visible{outline:2px solid #9b8256;outline-offset:4px}
@media(max-width:760px){.shirts-hero{grid-template-columns:1fr;gap:1.4rem;padding-top:2.4rem}.shirts-hero-copy{max-width:42rem}.shirts-hero-image img{aspect-ratio:4/3}.shirt-grid{gap:.65rem}.shirt-card-copy{padding:.7rem}.shirt-card-copy strong{font-size:.95rem}.shirt-card-copy small{font-size:.78rem}.shirt-detail-frame{grid-template-columns:1fr}.shirt-detail-product{padding:3.5rem 1.5rem 1.3rem;border-right:0;border-bottom:1px solid #d9cfbd}.shirt-detail-story{padding:1.6rem 1.5rem 2rem}}
@media(max-width:520px){.shirts-hero{padding-inline:1rem}.shirts-hero h1{font-size:clamp(2.7rem,13vw,4rem)}.shirt-options{padding:3.2rem 1rem 4rem}.shirt-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem}.tee-art{aspect-ratio:2/3;background-size:300% auto}.shirt-card-copy{padding:.7rem}.shirt-card-copy strong{font-size:.88rem}.shirt-card-copy small{font-size:.73rem}.sleeve-art{aspect-ratio:4/3}.shirt-request{display:grid;grid-template-columns:1fr;width:100%}.shirt-request select,.shirt-request button{width:100%}.shirt-footer{gap:.8rem;flex-direction:column;align-items:center}}
@media(prefers-reduced-motion:reduce){.shirt-card{transition:none}}
@media(prefers-reduced-motion:reduce){.shirt-card:hover{transform:none}}
