.comedy-home,.comedy-hero{background:radial-gradient(ellipse at 80% 30%,#6c281d 0,transparent 60%),#28120f;color:#fff3d5;display:grid;grid-template-columns:1.1fr 1fr;gap:6vw;align-items:center;padding:72px 7vw;position:relative}
.comedy-home{border-top:7px solid #d0a354;border-bottom:7px solid #d0a354}
.comedy-home h2,.comedy-hero h1{font-family:Georgia,"Times New Roman",serif;line-height:1.04;letter-spacing:-.035em;font-size:clamp(2.7rem,4.6vw,5.2rem);margin:12px 0 24px;color:#ffe4a5}
.comedy-home p,.comedy-hero p{max-width:55ch}
.comedy-home .eyebrow,.comedy-hero .eyebrow{color:#f4c875}
.comedy-home-art{display:block;max-width:520px;width:100%;margin:auto;transform:rotate(2deg);box-shadow:0 18px 55px #0006;border:1px solid #bd955e}
.comedy-home-art img{width:100%}
.comedy-actions{display:flex;flex-wrap:wrap;gap:18px;align-items:center;margin:26px 0}
.comedy-button{display:inline-block;background:#f3c970;color:#301712;text-decoration:none;padding:14px 22px;border-radius:6px;border:2px solid #f3c970;font-weight:900;font-size:.94rem;line-height:1.45;box-shadow:4px 5px 0 #0003}
.comedy-button:hover{background:#ffe1a1;border-color:#ffe1a1;transform:translateY(-2px)}
.comedy-link{font-weight:900;text-underline-offset:5px}
.comedy-home-links{display:flex;flex-wrap:wrap;gap:10px 20px;font-size:.93rem;margin-top:25px}
.comedy-small{font-size:.87rem;line-height:1.6;opacity:.85}
.comedy-page{background:#fff8e9;color:#37231b}
.comedy-page .site-nav{color:#123d64}
.comedy-page .brand{flex-shrink:0}
.comedy-page :focus-visible,.comedy-home :focus-visible{outline:3px solid #dc813a;outline-offset:5px}
.comedy-skip{position:fixed;top:-100px;left:20px;z-index:110;background:#fff3d5;color:#28120f;padding:12px 20px}
.comedy-skip:focus{top:12px}
.comedy-hero{padding:65px 7vw;min-height:650px}
.comedy-hero-art{margin:0;max-width:570px;justify-self:end;border:1px solid #bd955e;box-shadow:0 18px 55px #0006}
.comedy-hero-art img{width:100%}
.comedy-lead{font-size:1.3rem;line-height:1.55}
.comedy-marquee{padding:20px 24px;text-align:center;background:#edd9aa;color:#553a22;letter-spacing:.08em;font-size:.82rem;font-weight:900;border-bottom:1px solid #cfb881}
.comedy-program{padding:65px 7vw 80px;max-width:1600px;margin:auto}
.comedy-program .eyebrow,.comedy-about .eyebrow{color:#8d3b2a}
.comedy-program>h2,.comedy-about h2{font:700 clamp(2.3rem,4vw,3.6rem)/1.1 Georgia,serif;margin:10px 0 20px;letter-spacing:-.025em}
.comedy-program-nav{display:flex;flex-wrap:wrap;gap:10px;margin:24px 0 40px}
.comedy-program-nav a{padding:9px 15px;border:1px solid #cba86b;text-decoration:none;font-size:.9rem;font-weight:900;border-radius:4px;background:#fffdf7}
.comedy-show{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.25fr);align-items:center;gap:5vw;padding:50px 0;border-top:1px solid #dbc9a4;scroll-margin-top:115px}
.comedy-show figure{margin:0;max-width:470px;width:100%}
.comedy-show figure img{width:100%;border:1px solid #c9a575;box-shadow:8px 10px 0 #ead8b3}
.comedy-show figcaption{font-size:.76rem;color:#705a46;margin-top:18px;letter-spacing:.03em}
.comedy-show h3{font-family:Georgia,serif;font-size:clamp(2rem,3.2vw,3.2rem);line-height:1.12;margin:8px 0 18px;letter-spacing:-.025em}
.comedy-show h3 span{display:block;font-size:.63em;line-height:1.3;margin-top:8px;font-style:italic;font-weight:400}
.comedy-show .comedy-hook{font-size:1.25rem;font-weight:900;line-height:1.4}
.comedy-show .comedy-number{font-size:.78rem;color:#8d3b2a;font-weight:900;letter-spacing:.12em}
.comedy-show p{max-width:64ch}
.comedy-player{width:100%;height:166px;border:0;display:block;background:#f0e7d5;margin:25px 0 12px;border-radius:6px}
.comedy-show .comedy-button{background:#803b2c;border-color:#803b2c;color:#fff6e1;font-size:.85rem;padding:11px 18px;box-shadow:3px 4px 0 #e5d0a7}
.comedy-show .comedy-button:hover{background:#622a20}
.comedy-show .comedy-actions{margin:18px 0 0;font-size:.92rem}
.comedy-about{padding:65px 7vw;background:#f0e3c7;border-top:1px solid #dbc9a4;display:grid;grid-template-columns:1fr 1fr;gap:6vw}
.comedy-about p{max-width:65ch}.comedy-about .comedy-credit{font-weight:900}
.comedy-curtain{background:#28120f;color:#fff0d0;text-align:center;padding:60px 24px}
.comedy-curtain h2{font:700 clamp(2rem,3.5vw,3.2rem)/1.15 Georgia,serif;margin:0 0 18px;color:#f3c970}
.comedy-page footer{background:#1e100d;color:#f9e8ca;font-size:.9rem}
@media(min-width:1101px){body:not(.comedy-page):not(.music-page)>.site-nav{gap:20px}body:not(.comedy-page):not(.music-page)>.site-nav .brand{flex:0 0 165px}body:not(.comedy-page):not(.music-page)>.site-nav nav{gap:16px}body:not(.comedy-page):not(.music-page)>.site-nav nav a{font-size:.87rem}body:not(.comedy-page):not(.music-page)>.site-nav .guides-button{flex-shrink:0;font-size:.9rem;padding:12px 16px}}
@media(max-width:1100px){body>.site-nav nav{gap:14px}body>.site-nav nav a{font-size:.88rem}.comedy-home,.comedy-hero{gap:35px}.comedy-home h2,.comedy-hero h1{font-size:3.5rem}}
@media(max-width:800px){.comedy-home,.comedy-hero{grid-template-columns:1fr;padding:50px 24px;gap:35px}.comedy-home-art,.comedy-hero-art{max-width:470px;justify-self:center}.comedy-home-art{transform:none}.comedy-hero{min-height:0}.comedy-hero h1,.comedy-home h2{font-size:clamp(2.7rem,8.8vw,4rem)}.comedy-program{padding:48px 24px}.comedy-show{grid-template-columns:1fr;gap:30px;padding:38px 0}.comedy-show figure{max-width:420px;margin:auto}.comedy-about{grid-template-columns:1fr;gap:20px;padding:48px 24px}.comedy-lead{font-size:1.17rem}.comedy-marquee{font-size:.73rem;letter-spacing:.04em}.comedy-program-nav{gap:8px}.comedy-program-nav a{font-size:.83rem}.comedy-show h3{font-size:2.5rem}}
@media(prefers-reduced-motion:reduce){.comedy-button:hover{transform:none}}
