/* Blend image boundaries without resizing or retouching people or artwork. */
.hero{background:#251b18;color:var(--cream)}.hero .hero-grid{min-height:clamp(640px,82svh,820px)}.hero h1{font-size:clamp(68px,8.1vw,124px);letter-spacing:-.05em}.hero h1 em{color:#f04452}.hero .intro{font-size:clamp(17px,1.55vw,22px);line-height:1.65;max-width:470px}.hero .button.outline{color:var(--cream);border-color:#faf2e580}.hero .button.outline:hover{background:#faf2e512}.hero .eyebrow{color:var(--gold)}.hero-foot{color:#e0cbb1}
.hero-art img{-webkit-mask-image:linear-gradient(to right,transparent,#000 28%),linear-gradient(to bottom,transparent 0%,#000 5%,#000 90%,transparent 100%);-webkit-mask-composite:source-in;mask-image:linear-gradient(to right,transparent,#000 28%),linear-gradient(to bottom,transparent 0%,#000 5%,#000 90%,transparent 100%);mask-composite:intersect}
.merch{background:linear-gradient(var(--cream),#eadfcf 32%,#f0e3cf)}.merch-img{mix-blend-mode:multiply;border:0;border-radius:0;box-shadow:none;-webkit-mask-image:radial-gradient(ellipse 72% 72% at center,#000 62%,transparent 100%);mask-image:radial-gradient(ellipse 72% 72% at center,#000 62%,transparent 100%)}
.freedom-feature>img{-webkit-mask-image:linear-gradient(to right,#000 70%,transparent),linear-gradient(to bottom,transparent,#000 5%,#000 94%,transparent);-webkit-mask-composite:source-in;mask-image:linear-gradient(to right,#000 70%,transparent),linear-gradient(to bottom,transparent,#000 5%,#000 94%,transparent);mask-composite:intersect}
.story-portrait img{-webkit-mask-image:linear-gradient(to right,#000 68%,transparent),linear-gradient(to bottom,transparent,#000 7%,#000 85%,transparent);-webkit-mask-composite:source-in;mask-image:linear-gradient(to right,#000 68%,transparent),linear-gradient(to bottom,transparent,#000 7%,#000 85%,transparent);mask-composite:intersect}
.pinup-banner{background:var(--ink)}.pinup-banner .banner{-webkit-mask-image:linear-gradient(to right,transparent,#000 4%,#000 96%,transparent),linear-gradient(to bottom,transparent,#000 6%,#000 93%,transparent);-webkit-mask-composite:source-in;mask-image:linear-gradient(to right,transparent,#000 4%,#000 96%,transparent),linear-gradient(to bottom,transparent,#000 6%,#000 93%,transparent);mask-composite:intersect}.pinup-banner:after{height:22px;background:var(--ink)}
@media(min-width:641px) and (max-width:1000px){.hero .hero-grid{min-height:660px}.hero h1{font-size:clamp(60px,8.5vw,82px)}.hero .intro{font-size:16px;max-width:330px}}
@media(max-width:640px){.hero .hero-grid{display:block;min-height:0;padding-top:0}.hero-grid>div:first-child{width:100%;margin:0;min-height:0;padding:38px 7% 0;display:block}.hero h1{font-size:clamp(66px,18vw,94px);margin:22px 0}.hero .intro{font-size:17px;max-width:100%}.hero .actions{margin-top:24px}.hero-foot{margin-top:20px}.hero-art{position:relative;inset:auto;width:100%;height:auto;margin-top:-34px;z-index:0}.hero-art img{position:relative;width:100%;height:auto;max-width:none;max-height:none;-webkit-mask-image:linear-gradient(to bottom,transparent,#000 16%,#000 88%,transparent);mask-image:linear-gradient(to bottom,transparent,#000 16%,#000 88%,transparent);-webkit-mask-composite:source-over;mask-composite:add}.hero-grid>div:first-child{z-index:2}.freedom-feature>img{-webkit-mask-image:linear-gradient(to bottom,transparent,#000 4%,#000 78%,transparent);mask-image:linear-gradient(to bottom,transparent,#000 4%,#000 78%,transparent);-webkit-mask-composite:source-over;mask-composite:add}.story-portrait img{-webkit-mask-image:linear-gradient(to bottom,transparent,#000 6%,#000 74%,transparent);mask-image:linear-gradient(to bottom,transparent,#000 6%,#000 74%,transparent);-webkit-mask-composite:source-over;mask-composite:add}.merch-img{max-width:100%;height:auto}.pinup-banner .banner{width:100%;height:auto;object-fit:contain}}

/* Bring the harbor portrait closer to the shop. */
#merch{padding-top:48px;padding-bottom:0}#merch .split{gap:32px}#merch .merch-img{max-height:48vh}#merch .actions{margin-top:20px}#merch p:last-child{margin-bottom:16px}
.freedom-feature{min-height:clamp(620px,76svh,800px)}.freedom-feature figcaption{padding-top:30px;padding-bottom:30px}
.hero h1{font-weight:400;letter-spacing:-.035em}.hero h1 em{font-style:italic}.freedom-feature h2{letter-spacing:-.025em}
@media(max-width:640px){#merch{padding-top:34px;padding-bottom:0}#merch .split{gap:8px}#merch .merch-img{max-height:36vh}#merch p:last-child{margin-bottom:0}.freedom-feature{min-height:0}.freedom-feature figcaption{padding-top:0;padding-bottom:36px}.hero h1{letter-spacing:-.035em}}

/* Live typography and the original pin-up, composed to match the rest of the site. */
.pinup-banner.show-marquee{display:grid;grid-template-columns:minmax(0,34fr) minmax(0,66fr);align-items:center;gap:clamp(18px,3vw,48px);padding:30px 7% 88px;background:linear-gradient(#f0e3cf,var(--cream));color:var(--ink);line-height:1.3;isolation:isolate}.show-marquee .marquee-figure{min-width:0;display:flex;justify-content:center;align-items:center}.show-marquee img{display:block;width:auto;height:clamp(280px,32vw,440px);max-width:100%;object-fit:contain;mix-blend-mode:multiply;transform:none}.show-marquee .marquee-copy{min-width:0;position:relative;z-index:1}.show-marquee .eyebrow{font-size:10px;letter-spacing:2px;color:#7c4336}.show-marquee h2{font-family:var(--font-display);font-weight:400;font-size:clamp(44px,6.3vw,94px);line-height:1;letter-spacing:-.035em;margin:20px 0 12px}.show-marquee h2 em{color:var(--red);font-style:italic}.show-marquee p{font-family:var(--font-display);font-size:clamp(22px,2.6vw,36px);line-height:1.2;margin:0 0 20px}.show-marquee .marquee-line{display:block;font-family:var(--font-body);font-size:clamp(12px,1.2vw,16px);line-height:1.6}.show-marquee .marquee-link{display:inline-block;font-family:var(--font-body);font-size:12px;font-weight:700;margin-top:22px;padding-bottom:5px;border-bottom:1px solid var(--red);color:var(--red)}.pinup-banner.show-marquee:after{position:absolute;bottom:0;left:0;right:0;height:65px;background:linear-gradient(transparent,var(--ink));pointer-events:none}
@media(max-width:640px){.pinup-banner.show-marquee{grid-template-columns:minmax(0,35fr) minmax(0,65fr);gap:14px;padding:24px 5% 66px}.show-marquee img{height:clamp(230px,58vw,330px);width:auto;max-width:100%;object-fit:contain}.show-marquee .eyebrow{font-size:8px;letter-spacing:1px}.show-marquee h2{font-size:clamp(31px,8vw,48px);margin:12px 0}.show-marquee p{font-size:clamp(18px,4.3vw,25px);margin-bottom:14px}.show-marquee .marquee-line{font-size:11px}.show-marquee .marquee-link{font-size:10px;line-height:1.5;margin-top:16px}.pinup-banner.show-marquee:after{height:45px}}

/* Blend the suit portrait's pale backdrop into the cream biography section. */
#story{background:var(--cream)}.story-top{isolation:isolate}.story-portrait{background:transparent}.story-portrait img{mix-blend-mode:multiply;-webkit-mask-image:linear-gradient(to right,transparent 0%,#000 9%,#000 68%,transparent 100%),linear-gradient(to bottom,transparent 0%,#000 8%,#000 86%,transparent 100%);-webkit-mask-composite:source-in;mask-image:linear-gradient(to right,transparent 0%,#000 9%,#000 68%,transparent 100%),linear-gradient(to bottom,transparent 0%,#000 8%,#000 86%,transparent 100%);mask-composite:intersect}
@media(max-width:640px){.story-portrait img{-webkit-mask-image:linear-gradient(to right,transparent,#000 8%,#000 92%,transparent),linear-gradient(to bottom,transparent,#000 7%,#000 75%,transparent);-webkit-mask-composite:source-in;mask-image:linear-gradient(to right,transparent,#000 8%,#000 92%,transparent),linear-gradient(to bottom,transparent,#000 7%,#000 75%,transparent);mask-composite:intersect}}

/* One show section: the original pin-up and description share one backdrop. */
#show.show-combined{background:linear-gradient(#f0e3cf,var(--cream));color:var(--ink);padding:44px 0 60px}.show-composition{display:grid;grid-template-columns:minmax(0,42fr) minmax(0,58fr);gap:clamp(20px,3vw,48px);align-items:center}.show-pinup{min-width:0;display:flex;align-items:center;justify-content:center}.show-pinup img{display:block;width:100%;height:auto;max-width:430px;object-fit:contain;mix-blend-mode:multiply;-webkit-mask-image:linear-gradient(to bottom,transparent,#000 4%,#000 96%,transparent);mask-image:linear-gradient(to bottom,transparent,#000 4%,#000 96%,transparent)}.show-description{min-width:0}.show-combined .eyebrow{color:var(--red);letter-spacing:2px}.show-combined h2{font-family:var(--font-display);font-weight:400;font-size:clamp(40px,4.5vw,66px);line-height:1.03;margin:20px 0}.show-combined h2 em{color:var(--red)}.show-combined p{font-size:14px;line-height:1.75}.show-combined .tags{margin:20px 0}.show-combined .tags span{border-color:#231b1933}.show-combined .show-date{margin:20px 0}.show-combined .show-date span{color:#8c292d}.show-combined .button.light{background:var(--red);border-color:var(--red);color:var(--cream)}.show-combined .button.light:hover{background:#8f1020}.show-combined .note{color:#6b554c;font-size:12px}
@media(max-width:640px){#show.show-combined{padding:28px 0 42px}.show-composition{grid-template-columns:1fr;gap:0}.show-pinup img{max-width:250px;width:68%;height:auto;max-height:none}.show-description{margin-top:0}.show-combined h2{font-size:42px}.show-combined p{font-size:15px}.show-combined .eyebrow{font-size:10px;letter-spacing:1.4px}}

/* Bikini opens the site, live stand-up introduces the show, pin-up signs off the shop. */
.hero .hero-grid{min-height:clamp(740px,90svh,940px)}.hero h1{font-size:clamp(66px,7.3vw,108px);margin:22px 0}.hero .intro{font-size:clamp(16px,1.35vw,19px)}.hero-caption{max-width:460px;margin-top:12px}.hero-caption p{font-size:13px;line-height:1.6;margin:8px 0;color:#dfcbb9}.hero-caption .justice-line{font-family:var(--font-display);font-size:clamp(20px,1.9vw,27px);color:var(--cream);line-height:1.3}.hero .actions{margin-top:22px}.hero-foot{margin-top:24px}
#show.show-combined{background:var(--cream)}.show-stage-photo{min-width:0}.show-stage-photo img{display:block;width:100%;height:auto;object-fit:contain;-webkit-mask-image:linear-gradient(to right,transparent,#000 8%,#000 78%,transparent),linear-gradient(to bottom,transparent,#000 5%,#000 93%,transparent);-webkit-mask-composite:source-in;mask-image:linear-gradient(to right,transparent,#000 8%,#000 78%,transparent),linear-gradient(to bottom,transparent,#000 5%,#000 93%,transparent);mask-composite:intersect}
.shop-signoff{display:flex;align-items:center;gap:20px;margin-top:18px}.shop-signoff img{display:block;width:88px;height:auto;max-width:25%;object-fit:contain;mix-blend-mode:multiply}.shop-signoff p{font-size:13px;line-height:1.8;margin:0}
@media(max-width:640px){.hero .hero-grid{min-height:0}.hero h1{font-size:clamp(64px,17vw,90px)}.hero-caption p{font-size:12px}.hero-caption .justice-line{font-size:23px}.hero-art{margin-top:-14px}.show-stage-photo{width:100%;max-width:400px;margin:0 auto -20px}.show-stage-photo img{width:100%;height:auto;-webkit-mask-image:linear-gradient(to bottom,transparent,#000 5%,#000 80%,transparent);mask-image:linear-gradient(to bottom,transparent,#000 5%,#000 80%,transparent);-webkit-mask-composite:source-over;mask-composite:add}.show-description{position:relative;z-index:1}.shop-signoff img{width:72px}.shop-signoff{gap:16px;margin-top:14px}}

/* Consistent editorial type scale for text beside imagery. */
.hero h1{font-size:clamp(66px,7vw,104px);line-height:1;letter-spacing:-.035em}.hero h1 em{font-size:1em;line-height:inherit}
h2,#show h2,.show-combined h2,.story-copy h2,.merch h2{font-size:clamp(36px,3.8vw,54px);line-height:1.1;letter-spacing:-.025em}h2 em{font-size:1em;line-height:inherit}.show-description p,.story-copy p,.merch p{font-size:15px;line-height:1.8}.hero .intro{font-size:18px;line-height:1.7}.hero-caption .justice-line{font-size:25px;line-height:1.35}.show-combined .eyebrow,.story-copy .eyebrow,.merch .eyebrow{font-size:10px;letter-spacing:1.8px}.show-combined .note{font-size:12px}.story-copy .quote{font-size:22px;line-height:1.5}
.story-portrait img{mix-blend-mode:normal;-webkit-mask-image:linear-gradient(to bottom,#000 86%,transparent 100%);mask-image:linear-gradient(to bottom,#000 86%,transparent 100%);-webkit-mask-composite:source-over;mask-composite:add}
@media(max-width:640px){.hero h1{font-size:clamp(62px,16vw,84px)}h2,#show h2,.show-combined h2,.story-copy h2,.merch h2{font-size:clamp(34px,9vw,42px);line-height:1.12}.hero .intro{font-size:17px}.hero-caption .justice-line{font-size:23px}.show-description p,.story-copy p,.merch p{font-size:15px;line-height:1.75}.story-copy .quote{font-size:21px}.story-portrait img{mix-blend-mode:normal;-webkit-mask-image:linear-gradient(to bottom,#000 82%,transparent);mask-image:linear-gradient(to bottom,#000 82%,transparent);-webkit-mask-composite:source-over;mask-composite:add}}

/* A calmer, proportional opening and a playful closing signature. */
.hero .hero-grid{max-width:1320px;margin:0 auto;min-height:clamp(760px,86svh,860px)}.hero-grid>div:first-child{width:55%;padding:48px 24px 48px 5%}.hero h1{font-size:clamp(62px,6.5vw,92px);line-height:1.02;margin:20px 0}.hero .intro{font-size:17px;line-height:1.7;max-width:410px}.hero-caption{max-width:420px;margin-top:10px}.hero-caption .justice-line{font-size:23px}.hero-caption p{font-size:12px}.hero .actions{margin-top:20px}.hero-foot{margin-top:20px}.hero-art{width:57%;right:0}.hero-art img{height:100%;width:auto;max-width:100%;object-fit:contain}
.show-composition{grid-template-columns:minmax(0,43fr) minmax(0,57fr);gap:32px}.show-stage-photo img{width:auto;height:auto;max-width:100%;max-height:660px;margin:auto;object-fit:contain}.show-description h2{font-size:clamp(36px,3.6vw,52px)}.show-description p{font-size:15px}
.closing-storm{background:var(--cream);padding:12px 0 24px}.closing-storm .closing-pinup{display:flex;justify-content:center;align-items:center;gap:clamp(20px,4vw,56px);margin:0}.closing-pinup img{width:120px;height:auto;max-width:25%;object-fit:contain;mix-blend-mode:multiply}.closing-pinup p{font-family:var(--font-display);font-size:clamp(24px,3vw,38px);line-height:1.25;margin:0}.closing-pinup .textlink{color:var(--red);white-space:nowrap;font-size:13px}
@media(min-width:641px) and (max-width:1000px){.hero .hero-grid{min-height:720px}.hero-grid>div:first-child{width:57%;padding-left:5%;padding-right:0}.hero h1{font-size:clamp(58px,7.5vw,76px)}.hero .intro{font-size:15px;max-width:320px}.hero-caption{max-width:320px}.hero-caption .justice-line{font-size:21px}.hero-art{width:50%}}
@media(max-width:640px){.hero .hero-grid{min-height:0}.hero-grid>div:first-child{width:100%;padding:32px 7% 0}.hero h1{font-size:clamp(60px,16vw,80px)}.hero .intro{font-size:16px;max-width:none}.hero-caption{max-width:none}.hero-caption .justice-line{font-size:22px}.hero-art{width:100%;right:auto}.hero-art img{width:100%;height:auto;max-width:none;object-fit:contain}.show-composition{grid-template-columns:1fr;gap:0}.show-stage-photo img{width:100%;height:auto;max-height:none}.closing-storm{padding:12px 0 28px}.closing-storm .closing-pinup{display:grid;grid-template-columns:80px 1fr;gap:16px}.closing-pinup img{grid-row:span 2;width:80px;max-width:100%;height:auto}.closing-pinup p{font-size:27px}.closing-pinup .textlink{justify-self:start;font-size:12px}}

/* Final visual rhythm: warm ivory, red accents, restrained type and soft transitions. */
.hero{background:var(--cream);color:var(--ink)}.hero h1 em{color:var(--red)}.hero .eyebrow{color:var(--red)}.hero .intro{color:#463631}.hero-caption p{color:#70584c}.hero-caption .justice-line{color:var(--ink)}.hero .button.outline{color:var(--red);border-color:#b8182766}.hero .button.outline:hover{background:#b818270a}.hero-foot{color:#70584c}.hero-art{background:transparent}
.ticker{padding:16px 5%;font-size:10px;letter-spacing:2.2px}.ticker span{padding:0 24px}.button,.pill{border-radius:5px}.button{padding:15px 23px}.eyebrow{line-height:1.7}.wrap{max-width:1260px}.show-combined h2,.story-copy h2,.merch h2{margin-top:18px;margin-bottom:24px}.show-combined .tags{gap:7px}.show-combined .tags span{border-radius:30px;padding:8px 12px}
#show.show-combined{padding-top:54px;padding-bottom:54px}.merch{padding-top:52px;background:linear-gradient(var(--cream),#efe3d2 48%,var(--cream))}#story{padding-top:56px;padding-bottom:64px}.journey{gap:30px;padding-top:28px;margin-top:40px}.journey p{font-size:14px;line-height:1.8}.mission{padding-top:64px;padding-bottom:64px}.mission h2{font-size:clamp(38px,4.8vw,64px);line-height:1.1}.mission p{line-height:1.8}.message{background:#fffaf2;border-color:#ddcbb5;border-radius:10px;padding:28px}.message select,.message textarea{border-color:#d9c8b4;border-radius:5px;background:#faf2e5}.inquiries details{padding:20px 0}.inquiries summary{font-size:23px}.contact-grid{gap:64px}footer{padding-top:34px;padding-bottom:34px}
@media(max-width:640px){.ticker{font-size:9px;letter-spacing:1px;padding:14px 4%}.ticker span{padding:0 9px}.hero .hero-grid{padding-bottom:0}#show.show-combined{padding-top:34px;padding-bottom:38px}#merch{padding-top:34px}#story{padding-top:36px;padding-bottom:44px}.journey{gap:14px;margin-top:28px}.mission{padding:44px 0}.mission h2{font-size:42px}.contact-grid{gap:32px}.message{padding:22px}.closing-storm .wrap{padding-left:7%;padding-right:7%}}

/* Final edge treatment: photographs fade into the page, never into a card. */
.hero-art,.show-stage-photo,.story-portrait,.show-pinup,.marquee-figure{background:transparent;border:0;border-radius:0;box-shadow:none;outline:0}
.hero-art img,.show-stage-photo img,.story-portrait img,.merch-img,.closing-pinup img{border:0;border-radius:0;box-shadow:none;background:transparent;outline:0}
.hero-art img,.show-stage-photo img{-webkit-mask-image:linear-gradient(to right,transparent 0%,#000 15%,#000 84%,transparent 100%),linear-gradient(to bottom,transparent 0%,#000 11%,#000 87%,transparent 100%);-webkit-mask-composite:source-in;mask-image:linear-gradient(to right,transparent 0%,#000 15%,#000 84%,transparent 100%),linear-gradient(to bottom,transparent 0%,#000 11%,#000 87%,transparent 100%);mask-composite:intersect}
.merch-img{-webkit-mask-image:linear-gradient(to right,transparent,#000 10%,#000 90%,transparent),linear-gradient(to bottom,transparent,#000 10%,#000 90%,transparent);-webkit-mask-composite:source-in;mask-image:linear-gradient(to right,transparent,#000 10%,#000 90%,transparent),linear-gradient(to bottom,transparent,#000 10%,#000 90%,transparent);mask-composite:intersect;mix-blend-mode:multiply}
.story-portrait img{mix-blend-mode:normal;-webkit-mask-image:linear-gradient(to bottom,#000 87%,transparent 100%);mask-image:linear-gradient(to bottom,#000 87%,transparent 100%);-webkit-mask-composite:source-over;mask-composite:add}
.closing-pinup img{-webkit-mask-image:linear-gradient(to right,transparent,#000 5%,#000 95%,transparent),linear-gradient(to bottom,transparent,#000 4%,#000 96%,transparent);-webkit-mask-composite:source-in;mask-image:linear-gradient(to right,transparent,#000 5%,#000 95%,transparent),linear-gradient(to bottom,transparent,#000 4%,#000 96%,transparent);mask-composite:intersect;mix-blend-mode:multiply}
@media(max-width:640px){.hero-art img,.show-stage-photo img{-webkit-mask-image:linear-gradient(to right,transparent,#000 8%,#000 92%,transparent),linear-gradient(to bottom,transparent,#000 10%,#000 85%,transparent);-webkit-mask-composite:source-in;mask-image:linear-gradient(to right,transparent,#000 8%,#000 92%,transparent),linear-gradient(to bottom,transparent,#000 10%,#000 85%,transparent);mask-composite:intersect}}

/* Shop spotlight: product first, a clear boundary before the biography. */
#merch.merch{position:relative;isolation:isolate;overflow:hidden;padding:54px 0 72px;background:#efe0c6;border-top:1px solid #ddc7a5;border-bottom:2px solid #d7bd92;margin:0}.shop-feature{display:flex;flex-direction:column;align-items:center;gap:18px}.hat-spotlight{position:relative;display:flex;justify-content:center;align-items:center;width:min(100%,530px);padding:0 14px;isolation:isolate;line-height:0}.hat-spotlight:before{content:'';position:absolute;inset:10% -5% 0;border-radius:50%;background:radial-gradient(ellipse,#fff5d6 0%,#fff5d655 46%,transparent 72%);z-index:-1;pointer-events:none}.hat-spotlight .merch-img{display:block;width:100%;height:auto;max-width:500px;max-height:410px;object-fit:contain;margin:0;border:0;border-radius:0;box-shadow:none;mix-blend-mode:multiply;-webkit-mask-image:none;mask-image:none;filter:drop-shadow(0 18px 18px #48241626);transition:transform .2s ease}.hat-spotlight:hover .merch-img{transform:translateY(-5px)}.hat-spotlight:focus-visible{outline:3px solid var(--red);outline-offset:6px}.shop-copy{max-width:680px;text-align:center;position:relative;z-index:1}.shop-copy h2{font-size:clamp(38px,4.2vw,58px);margin:16px 0 22px}.shop-copy p{max-width:590px;margin:16px auto;font-size:15px;line-height:1.8}.shop-copy .eyebrow{font-size:10px}.shop-copy .actions{justify-content:center;margin-top:26px}.shop-copy .button{padding:17px 30px;font-size:13px;box-shadow:0 8px 20px #b8182720}.shop-copy .textlink{font-size:12px}#story{position:relative;margin:0;padding-top:76px;background:var(--cream)}
@media(max-width:640px){#merch.merch{padding:34px 0 46px}.shop-feature{gap:14px}.hat-spotlight{width:100%;max-width:390px;padding:0 8px}.hat-spotlight .merch-img{width:100%;height:auto;max-height:310px;max-width:100%;filter:drop-shadow(0 12px 14px #48241626)}.shop-copy h2{font-size:clamp(36px,9vw,44px)}.shop-copy p{font-size:15px;margin:14px auto}.shop-copy .actions{margin-top:22px}#story{padding-top:48px}}

/* Give the peace-and-laughter caption a stronger voice in the opening. */
.hero-caption p:not(.justice-line){font-family:var(--font-display);font-size:clamp(19px,1.8vw,25px);font-weight:400;line-height:1.4;color:#76503e;margin-top:14px;max-width:460px}
@media(max-width:640px){.hero-caption p:not(.justice-line){font-size:22px;line-height:1.4;margin-top:12px}}

/* One clear type hierarchy: title, section heading, lead, body and caption. */
.hero h1{font-size:clamp(64px,6.4vw,90px);line-height:1.02;margin:20px 0 24px}.hero .intro{font-size:20px;line-height:1.6;max-width:440px}.hero .intro strong{font-weight:700}.hero-caption{margin-top:16px;max-width:440px}.hero-caption .justice-line{font-size:23px;line-height:1.35;margin:0 0 12px}.hero-caption p:not(.justice-line){font-size:20px;line-height:1.45;margin-top:0}.hero-foot{font-size:11px;line-height:1.7;letter-spacing:1.3px}
h2,#show h2,.show-combined h2,.show-description h2,.story-copy h2,.merch h2,.shop-copy h2,.mission h2,#contact h2{font-size:clamp(36px,3.8vw,52px);font-weight:400;line-height:1.12;letter-spacing:-.025em}
.show-description p,.story-copy p,.shop-copy p,.mission p,#contact p,.journey p{font-size:15px;line-height:1.8}.journey h3{font-size:27px;line-height:1.15}.story-copy .quote,#contact .quote{font-size:23px;line-height:1.45}.mission p[style]{font-size:23px!important;line-height:1.45}.show-combined .note,#contact .status,#contact .inquiries p{font-size:12px;line-height:1.7}.show-date{font-size:14px}.show-date span{font-size:12px}.eyebrow,.show-combined .eyebrow,.story-copy .eyebrow,.shop-copy .eyebrow{font-size:10px;line-height:1.6;letter-spacing:1.8px}.button,.pill{font-size:12px}.shop-copy .button{font-size:12px}
@media(max-width:640px){.hero h1{font-size:clamp(60px,16vw,80px)}.hero .intro{font-size:18px;line-height:1.6}.hero-caption .justice-line{font-size:22px}.hero-caption p:not(.justice-line){font-size:20px}.hero-caption{margin-top:16px}h2,#show h2,.show-combined h2,.show-description h2,.story-copy h2,.merch h2,.shop-copy h2,.mission h2,#contact h2{font-size:clamp(34px,9vw,42px);line-height:1.12}.show-description p,.story-copy p,.shop-copy p,.mission p,#contact p,.journey p{font-size:15px;line-height:1.75}.story-copy .quote,#contact .quote,.mission p[style]{font-size:22px!important}.show-combined .note,#contact .status,#contact .inquiries p{font-size:12px}}

/* Blend the original product photo directly into its section, without a square shadow. */
.hat-spotlight{isolation:auto;width:min(100%,700px);padding:0;background:transparent}.hat-spotlight:before{display:none}.hat-spotlight .merch-img{width:100%;max-width:660px;height:auto;max-height:none;object-fit:contain;filter:none;mix-blend-mode:multiply;-webkit-mask-image:none;mask-image:none;box-shadow:none;border:0;background:transparent}.shop-feature{gap:24px}#merch.merch{padding-top:42px}
@media(max-width:640px){.hat-spotlight{width:100%;max-width:480px;padding:0}.hat-spotlight .merch-img{width:100%;height:auto;max-width:none;max-height:none;filter:none;mix-blend-mode:multiply}.shop-feature{gap:18px}#merch.merch{padding-top:28px}}

/* Final, restrained type scale. */
.hero h1{font-size:clamp(60px,6vw,84px);line-height:1.04}.hero .intro{font-size:18px;line-height:1.65}.hero-caption .justice-line,.hero-caption p:not(.justice-line){font-family:var(--font-display);font-size:22px;font-weight:400;line-height:1.4}
h2,#show h2,.show-combined h2,.show-description h2,.story-copy h2,.merch h2,.shop-copy h2,.mission h2,#contact h2{font-size:clamp(34px,3.6vw,48px);line-height:1.14}.show-description p,.story-copy p,.shop-copy p,.mission p,#contact p,.journey p{font-size:16px;line-height:1.75}.show-combined .note,#contact .status,#contact .inquiries p{font-size:13px;line-height:1.7}.story-copy .quote,#contact .quote,.mission p[style]{font-size:22px!important;line-height:1.45}.eyebrow{font-size:10px}.button,.pill,.shop-copy .button{font-size:12px}
@media(max-width:640px){.hero h1{font-size:clamp(58px,15vw,76px)}.hero .intro{font-size:17px}.hero-caption .justice-line,.hero-caption p:not(.justice-line){font-size:21px}h2,#show h2,.show-combined h2,.show-description h2,.story-copy h2,.merch h2,.shop-copy h2,.mission h2,#contact h2{font-size:clamp(33px,8.8vw,40px)}.show-description p,.story-copy p,.shop-copy p,.mission p,#contact p,.journey p{font-size:15px;line-height:1.75}.show-combined .note,#contact .status,#contact .inquiries p{font-size:12px}}

/* A small, playful pin-up perched on the contact form, with controls kept clear. */
.message{position:relative;margin-top:104px;padding-top:68px}.contact-pinup{position:absolute;top:-100px;right:20px;display:block;width:106px;height:auto;max-width:26%;object-fit:contain;mix-blend-mode:multiply;pointer-events:none;border:0;border-radius:0;box-shadow:none;-webkit-mask-image:linear-gradient(to bottom,transparent,#000 4%,#000 96%,transparent);mask-image:linear-gradient(to bottom,transparent,#000 4%,#000 96%,transparent)}
@media(max-width:640px){.message{margin-top:86px;padding-top:60px}.contact-pinup{width:92px;top:-86px;right:16px;max-width:28%}}

/* Oversized product, no panel, no rectangular shadow or glow. */
#merch .hat-spotlight{display:block;width:min(100%,850px);max-width:none;padding:0;margin:0 auto;background:transparent;border:0;border-radius:0;box-shadow:none;isolation:auto}#merch .hat-spotlight:before,#merch .hat-spotlight:after{display:none}#merch .hat-spotlight .merch-img{display:block;width:100%;max-width:800px;height:auto;max-height:none;margin:0 auto;border:0;border-radius:0;box-shadow:none;filter:contrast(1.035);mix-blend-mode:multiply;-webkit-mask-image:none;mask-image:none;object-fit:contain;background:transparent}#merch .shop-feature{gap:20px}#merch.merch{padding-top:24px}
@media(max-width:640px){#merch .hat-spotlight{width:calc(100% + 6vw);margin-left:-3vw;margin-right:-3vw}#merch .hat-spotlight .merch-img{width:100%;max-width:none;height:auto;max-height:none;filter:contrast(1.035);box-shadow:none;mix-blend-mode:multiply}#merch.merch{padding-top:20px}#merch .shop-feature{gap:14px}}

/* Stand-up photo fills the show section edge to edge without stretching. */
#show.show-combined{padding:0;overflow:hidden}.show-composition.wrap{max-width:none;width:100%;padding:0;display:grid;grid-template-columns:minmax(0,43fr) minmax(0,57fr);gap:0;align-items:stretch}.show-stage-photo{position:relative;display:block;width:100%;max-width:none;min-height:660px;margin:0;overflow:hidden}.show-stage-photo img{display:block;width:100%;height:100%;max-width:none;max-height:none;margin:0;object-fit:cover;object-position:50% 25%;border:0;border-radius:0;-webkit-mask-image:none;mask-image:none}.show-stage-photo:after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(to right,transparent 72%,var(--cream) 100%)}.show-description{padding:54px clamp(30px,6vw,100px) 54px clamp(24px,3vw,50px);align-self:center;margin:0}
@media(max-width:640px){.show-composition.wrap{grid-template-columns:1fr;gap:0}.show-stage-photo{width:100%;max-width:none;min-height:0;margin:0}.show-stage-photo img{width:100%;height:auto;max-width:none;max-height:none;object-fit:contain;-webkit-mask-image:none;mask-image:none}.show-stage-photo:after{background:linear-gradient(to bottom,transparent 76%,var(--cream) 100%)}.show-description{position:relative;z-index:1;padding:0 7% 40px;margin-top:-24px}}

/* Pin-up sits at the contact box's lower-right corner, clear of form controls. */
.message{margin-top:30px;padding-top:28px;padding-bottom:146px}.contact-pinup{top:auto;bottom:-14px;right:-26px;width:110px;height:auto;max-width:none}
@media(max-width:640px){.message{margin-top:22px;padding-top:22px;padding-bottom:122px}.contact-pinup{top:auto;bottom:-12px;right:0;width:94px;height:auto;max-width:none}}

/* The pin-up signs off beside the footer brand, away from the contact form. */
.message{margin-top:30px;padding:28px}footer{background:var(--cream);color:var(--ink);border-top:1px solid #ddc7a5;padding:24px 0}footer .wrap{position:relative;min-height:150px;padding-right:190px;gap:24px}footer p{color:#766355}.footer-pinup{position:absolute;right:6%;bottom:4px;display:block;width:90px;height:auto;object-fit:contain;mix-blend-mode:multiply;pointer-events:none;border:0;border-radius:0;box-shadow:none}
@media(max-width:640px){.message{margin-top:22px;padding:22px}footer .wrap{min-height:160px;padding-right:130px;gap:18px}.footer-pinup{right:7%;bottom:8px;width:76px;height:auto}.footerlinks{gap:14px;font-size:11px}}

/* Keep the brand title on one line at every viewport size. */
.hero h1{white-space:nowrap;font-size:clamp(35px,4.6vw,64px);letter-spacing:-.04em;line-height:1.1}.hero h1 em{font-size:1em}
@media(min-width:641px) and (max-width:1000px){.hero h1{font-size:clamp(34px,4.4vw,46px)}}
@media(max-width:640px){.hero h1{white-space:nowrap;font-size:clamp(27px,9.5vw,58px);letter-spacing:-.04em;line-height:1.1}}

/* Pin-up fully inside the contact box, with her own space below the controls. */
.message{position:relative;margin-top:30px;padding:28px 28px 176px;overflow:hidden}.message .contact-pinup{position:absolute;top:auto;bottom:14px;right:18px;display:block;width:100px;height:auto;max-width:none;object-fit:contain;mix-blend-mode:multiply;pointer-events:none;border:0;box-shadow:none}footer .wrap{padding-right:6%;min-height:100px}
@media(max-width:640px){.message{margin-top:22px;padding:22px 22px 154px}.message .contact-pinup{top:auto;bottom:12px;right:16px;width:88px;height:auto}footer .wrap{padding-right:7%;min-height:0}}

/* Text fits its column, with consistent spacing and balanced line breaks. */
.hero-grid>div,.show-composition>div,.story-top>div,.contact-grid>div,.shop-copy{min-width:0}.show-description,.story-copy,.shop-copy,.contact-grid>div{max-width:100%}
h2,h3,.hero-caption p{max-width:100%;text-wrap:balance;overflow-wrap:normal;word-break:normal}p,li,summary,label{overflow-wrap:break-word;word-break:normal}p{text-wrap:pretty}.hero h1{max-width:100%;white-space:nowrap;letter-spacing:-.035em}.show-description h2,.story-copy h2,.shop-copy h2,#contact h2{letter-spacing:-.02em}.eyebrow{letter-spacing:1.6px}.button,.pill{letter-spacing:.01em;line-height:1.4}.message label{font-size:10px;letter-spacing:1px;line-height:1.5}.message select,.message textarea{font-size:14px;line-height:1.5;max-width:100%}.footerlinks{line-height:1.6}
@media(max-width:640px){.eyebrow{letter-spacing:1.2px}.hero .eyebrow{font-size:10px;letter-spacing:1.2px}.show-description h2,.story-copy h2,.shop-copy h2,#contact h2{letter-spacing:-.02em}.message .actions{gap:10px}.message .button{font-size:11px;padding:13px 16px}}

/* Opening: one rich wine title and an even, warm-charcoal reading size. */
.hero{background:#faf2e5;color:#352b29}.hero h1,.hero h1 em{color:#92263b;font-family:var(--font-display);font-style:normal;font-weight:400;font-size:clamp(35px,4.6vw,64px);line-height:1.1;letter-spacing:-.035em}.hero h1{white-space:nowrap}.hero h1 em{font-size:1em}
.hero .intro,.hero-caption .justice-line,.hero-caption p:not(.justice-line){font-family:var(--font-body);font-size:19px;font-weight:400;line-height:1.65;color:#493c37;letter-spacing:0;max-width:450px}.hero .intro{margin:0 0 16px}.hero .intro strong{font-weight:700;color:#352b29}.hero-caption{margin-top:0}.hero-caption .justice-line{margin:0 0 12px}.hero-caption p:not(.justice-line){margin:0}.hero .eyebrow{color:#89613a;font-size:10px;letter-spacing:1.5px}.hero-foot{color:#75665e;font-size:11px}.hero .button{background:#92263b;border-color:#92263b;color:#fff8ed;font-size:12px}.hero .button:hover{background:#762035}.hero .button.outline{background:transparent;color:#92263b;border-color:#92263b88}.hero .button.outline:hover{background:#92263b0a}
@media(min-width:641px) and (max-width:1000px){.hero h1{font-size:clamp(34px,4.4vw,46px)}.hero .intro,.hero-caption .justice-line,.hero-caption p:not(.justice-line){font-size:17px;line-height:1.65}}
@media(max-width:640px){.hero h1{font-size:clamp(27px,9.5vw,58px);line-height:1.1}.hero .intro,.hero-caption .justice-line,.hero-caption p:not(.justice-line){font-size:17px;line-height:1.65}.hero .eyebrow{font-size:10px;letter-spacing:1.3px}}

/* Signature and pin-up share the reserved lower area of the contact box. */
#contact .message .contact-signature{position:absolute;left:28px;right:140px;bottom:54px;margin:0;font-family:var(--font-display);font-size:24px;font-weight:400;line-height:1.25;color:#92263b;letter-spacing:0;text-wrap:balance}.contact-signature em{font-style:italic}.message .contact-pinup{right:22px;bottom:16px;width:100px;height:auto}.message{padding-bottom:180px}
@media(max-width:640px){#contact .message .contact-signature{left:22px;right:118px;bottom:46px;font-size:21px;line-height:1.3}.message .contact-pinup{right:18px;bottom:14px;width:88px;height:auto}.message{padding-bottom:158px}}

/* Mission lives in the biography and sponsorship lives with contact details. */
#story .story-motto{font-family:var(--font-display);font-size:23px;line-height:1.35;color:#92263b;margin:24px 0 0}#story{padding-bottom:38px}#contact{padding-top:44px}
@media(max-width:640px){#story .story-motto{font-size:22px;margin-top:20px}#story{padding-bottom:24px}#contact{padding-top:28px}}

/* Keep the complete signature on one line beside the pin-up. */
#contact .message .contact-signature{white-space:nowrap;text-wrap:nowrap;font-size:clamp(18px,1.7vw,23px)}
@media(max-width:640px){#contact .message .contact-signature{font-size:clamp(12px,3.8vw,18px);right:108px;white-space:nowrap}.message .contact-pinup{width:80px;right:16px}}
