
/* Soccer Season: individual full-resolution photographs, no sprite or base64 thumbnails */
.soccer-gallery{background:#121512;padding-bottom:92px}.soccer-gallery-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.soccer-shot{border:1px solid #c6aa7b55;background:#0c0f0d;text-align:left;color:var(--cream);padding:0;overflow:hidden;transition:border-color .23s,transform .23s}
.soccer-shot:hover{border-color:var(--gold);transform:translateY(-3px)}
.soccer-image{width:100%;height:auto;aspect-ratio:16/9;max-height:390px;display:block;object-fit:cover;object-position:center;background:#111;transition:transform .42s ease}
.soccer-shot:hover .soccer-image{transform:scale(1.026)}
.soccer-caption{display:flex;flex-direction:column;align-items:flex-start;padding:25px 27px;gap:11px;min-height:145px}
.soccer-caption small{color:var(--gold);font-size:10px;letter-spacing:.15em}
.soccer-caption strong{font:clamp(26px,3vw,41px)/1.08 var(--serif);font-weight:400}
.soccer-caption>span{color:var(--gold);font-size:10px;letter-spacing:.14em;margin-top:auto}
.soccer-lightbox[hidden]{display:none!important}.soccer-lightbox{position:fixed;z-index:100;inset:0;background:rgba(0,0,0,.94);backdrop-filter:blur(15px);padding:20px;display:grid;place-items:center}
.soccer-lightbox-panel{width:min(94vw,1220px);background:#0e110e;border:1px solid var(--gold);box-shadow:0 30px 120px #000c;display:flex;flex-direction:column;max-height:96vh}
.soccer-lightbox-header,.soccer-lightbox-footer{display:flex;align-items:center;justify-content:space-between;gap:13px;color:var(--gold);padding:14px 21px;min-height:56px;font-size:10px;letter-spacing:.13em}
.soccer-lightbox-header button,.soccer-lightbox-footer button{background:transparent;border:1px solid #c6aa7b66;color:var(--gold);padding:9px 12px;font-size:10px;letter-spacing:.12em}
.soccer-lightbox-viewer{display:grid;place-items:center;flex:1;min-height:100px;background:#070907;overflow:hidden}
.soccer-large-image{display:block;max-width:100%;max-height:calc(96vh - 132px);object-fit:contain;width:auto;height:auto}
.soccer-lightbox-footer span{text-align:center;color:var(--paper,#e8e5dc)}
.social-link{border:1px solid var(--gold);display:flex;flex-direction:column;gap:12px;padding:24px;max-width:480px;background:linear-gradient(120deg,#343326,#131714)}
.social-link span,.social-link small{font-size:10px;letter-spacing:.12em;color:var(--gold)}.social-link strong{font:30px var(--serif);font-weight:400}
/* Compact monologue: one production title + original linked performance, nothing theatrical and oversized */
.monologue-compact{display:flex;justify-content:space-between;align-items:center;gap:42px;border-block:1px solid var(--border);padding:34px 0}
.monologue-compact h2{font:clamp(45px,6vw,76px)/1.03 var(--serif);font-weight:400;margin:12px 0 14px}
.monologue-compact .bodycopy{max-width:590px;margin-bottom:0}
.monologue-compact .button{white-space:nowrap;flex:none}
@media(max-width:800px){.monologue-compact{flex-direction:column;align-items:flex-start}.soccer-gallery-grid{gap:12px}.soccer-caption{padding:20px;min-height:126px}}
@media(max-width:650px){.soccer-gallery-grid{grid-template-columns:1fr}.soccer-lightbox{padding:5px}.soccer-lightbox-panel{width:99vw}.soccer-lightbox-header,.soccer-lightbox-footer{font-size:9px;padding:9px}.soccer-lightbox-footer span{font-size:9px}.soccer-large-image{max-height:calc(96vh - 110px)}}
@media(prefers-reduced-motion:reduce){.soccer-shot,.soccer-image{transition:none!important}}
