:root{--black:#171313;--ivory:#eee4cb;--muted:#c0b59f;--red:#78272f;--line:#504039}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--black);color:var(--ivory);font:16px/1.65 Arial,Helvetica,sans-serif}a{color:inherit;text-underline-offset:5px;font-size:12px}a:hover{opacity:.75}a:focus-visible{outline:3px solid #edbd82;outline-offset:6px}header{display:flex;align-items:center;justify-content:space-between;padding:24px 5%;border-bottom:1px solid var(--line);gap:30px}.brand{text-decoration:none;letter-spacing:2px;font-size:14px;font-weight:bold}.brand small{display:block;font:italic 13px Georgia,serif;letter-spacing:1px}nav{display:flex;gap:30px;align-items:center}nav a{text-decoration:none}.outline{border:1px solid #8e7666;padding:9px 17px}.hero{display:grid;grid-template-columns:1.05fr 1fr;min-height:730px;overflow:hidden}.hero-copy{position:relative;z-index:2;padding:70px 0 32px 10%;align-self:center}.eyebrow{font-size:10px;font-weight:bold;letter-spacing:3px;line-height:1.8}.hero h1{font:normal clamp(76px,8.5vw,145px)/.95 Georgia,serif;letter-spacing:-7px;margin:25px 0}.hero h1 span{display:block;font-size:.38em;letter-spacing:13px;margin-bottom:12px}.tagline{font:italic 28px Georgia,serif;margin:30px 0 8px}.byline{font-size:13px;letter-spacing:2px;color:var(--muted);margin-top:4px}.actions{display:flex;gap:25px;align-items:center;margin-top:40px}.button{display:inline-block;background:var(--red);padding:15px 23px;text-decoration:none;font-size:12px;letter-spacing:.8px;border:1px solid #a05254}.whisper{font:italic 19px Georgia,serif;color:var(--muted);margin-top:40px}.genre{margin-top:55px;font-size:9px}figure{margin:0;position:relative;min-width:0;background:#5b171b}figure img{width:100%;height:100%;position:absolute;object-fit:cover;object-position:50% 43%;filter:saturate(.65)}figure:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,var(--black),transparent 30%),linear-gradient(0deg,#17131399,transparent 30%)}figcaption{position:absolute;bottom:23px;right:25px;font-size:9px;z-index:1;color:#f4e9d4;letter-spacing:1px}.ribbon{display:flex;justify-content:space-around;background:var(--ivory);color:#302222;padding:22px;font:italic 20px Georgia,serif;gap:15px}.ribbon span+span:before{content:'✦';margin-right:50px;color:var(--red);font-size:13px}.section{padding:90px 8%}h2,h3{font-family:Georgia,serif;font-weight:normal;line-height:1.1}h2{font-size:clamp(38px,4.2vw,64px);letter-spacing:-1.8px;margin:14px 0 30px}h3{font-size:42px;margin:12px 0 18px}.heading{display:flex;justify-content:space-between;align-items:center;gap:30px}.heading>p{color:var(--muted);font-size:14px}.show{border-top:1px solid var(--line);padding:36px 0;display:grid;grid-template-columns:70px 1fr 170px;gap:25px}.show p:not(.eyebrow){max-width:650px;color:var(--muted);font-size:15px}.number{font:italic 26px Georgia,serif;color:#b68b72;padding-top:7px}.seal{align-self:center;justify-self:end;border:1px solid #98705c;border-radius:50%;width:140px;height:140px;text-align:center;padding-top:30px;font:24px Georgia,serif;transform:rotate(12deg)}.seal small{font:9px Arial,sans-serif;letter-spacing:2px}.note{font-size:12px;color:var(--muted);border-top:1px solid var(--line);padding-top:20px}.press{background:var(--ivory);color:#302421}.press .eyebrow{color:var(--red)}.quotes{display:grid;grid-template-columns:1.25fr 1.25fr 1fr;gap:40px;margin:50px 0 35px}blockquote{margin:0;border-left:1px solid #b6a890;padding-left:23px}blockquote p{font:26px/1.35 Georgia,serif;margin-top:0}cite{font:10px Arial,sans-serif;text-transform:uppercase;letter-spacing:1.3px}.split{display:grid;grid-template-columns:1fr 1fr;gap:70px}.split p{color:var(--muted);max-width:530px}.split .lead{font:25px/1.5 Georgia,serif;color:var(--ivory)}.watch{border-top:1px solid var(--line)}.socials{align-self:center}.socials a{display:flex;justify-content:space-between;gap:15px;border-bottom:1px solid var(--line);padding:24px 0;text-decoration:none;font:24px Georgia,serif}.socials span{font:12px Arial,sans-serif;align-self:center}.booking{text-align:center;background:#64232b;border-top:1px solid #9e5a5e}.booking h2{font-size:clamp(60px,7vw,100px)}.booking p{color:#e2c5bb}.ivory{background:var(--ivory);color:#42242a;border-color:var(--ivory);margin:20px auto}.email{display:block;overflow-wrap:anywhere}footer{display:flex;justify-content:space-between;align-items:center;gap:30px;padding:40px 5%}footer p,footer>a:last-child{font-size:10px;color:var(--muted)}.skip{position:absolute;left:20px;top:-100px;z-index:9;background:var(--ivory);color:var(--black);padding:10px}.skip:focus{top:15px}@media(min-width:1600px){body{max-width:1800px;margin:auto}}@media(max-width:900px){header{flex-direction:column;align-items:flex-start;gap:18px}nav{width:100%;justify-content:space-between;gap:12px}.hero{min-height:650px;grid-template-columns:1fr 1fr}.hero-copy{padding-top:55px}.hero h1{font-size:80px;letter-spacing:-4px}.tagline{font-size:23px}.actions{align-items:flex-start;flex-direction:column;gap:17px}.ribbon{font-size:17px}.ribbon span+span:before{margin-right:15px}.section{padding:65px 6%}.show{grid-template-columns:40px 1fr}.seal{display:none}.quotes{gap:25px}.quotes p{font-size:23px}.split{gap:35px}}@media(max-width:600px){header{padding:20px 6%}nav{flex-wrap:wrap}nav a{font-size:11px}.outline{padding:6px 10px}.hero{display:flex;flex-direction:column;min-height:0}.hero-copy{padding:52px 6% 28px}.hero h1{font-size:clamp(65px,17vw,105px);letter-spacing:-4px;margin:20px 0}.hero h1 span{font-size:.32em}figure{height:390px}figure img{object-position:50% 40%}figure:after{background:linear-gradient(0deg,#17131366,transparent 40%)}.genre{margin-top:30px}.tagline{font-size:24px}.actions{flex-direction:row;align-items:center;gap:20px;flex-wrap:wrap;margin-top:25px}.whisper{margin-top:25px}.ribbon{flex-direction:column;align-items:center;gap:3px;font-size:17px;padding:18px}.ribbon span+span:before{content:none}.heading{display:block}.heading>p{margin-bottom:30px}.show{gap:12px;grid-template-columns:28px 1fr;padding:28px 0}h3{font-size:34px}.eyebrow{font-size:9px;letter-spacing:2px}.quotes,.split{grid-template-columns:1fr;gap:30px}.quotes{margin:35px 0}.quotes p{font-size:26px}.socials a{font-size:25px}footer{flex-wrap:wrap;padding:30px 6%}.section{padding:55px 6%}h2{letter-spacing:-1px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* The Master's haunted homepage — 1990s edition */
:root{--black:#070507;--ivory:#eee0b7;--muted:#c4b399;--red:#740d19;--line:#7a2531}
html{background:#050305;background-image:repeating-linear-gradient(45deg,transparent 0 7px,#190d1644 7px 8px),repeating-linear-gradient(-45deg,transparent 0 7px,#250d1644 7px 8px)}
body{max-width:1120px!important;margin:28px auto!important;border:5px ridge #71313a;box-shadow:0 0 0 3px #090608,0 0 0 5px #4d262f,0 0 55px #74091766;background:#0a070a;font-family:Georgia,'Times New Roman',serif}
header{display:block;text-align:center;background:linear-gradient(#310d18,#0a0609);padding:22px 24px 16px;border-bottom:5px ridge #75303d}.brand{font: bold 18px Georgia,serif;color:#dfc994;text-shadow:2px 2px #620b18;letter-spacing:3px}.brand small{margin-top:4px;color:#c1a1a2}nav{justify-content:center;flex-wrap:wrap;gap:10px;margin-top:22px}nav a,.outline{font: bold 13px 'Courier New',monospace;border:3px outset #7d3845;background:linear-gradient(#4d1926,#1c0812);padding:7px 18px;color:#f5d9bd;text-decoration:underline}nav a:hover{background:#65182b;opacity:1}nav a:active{border-style:inset}
.hero{min-height:610px;grid-template-columns:1.1fr 1fr;background:radial-gradient(ellipse at center,#320c1744,transparent 70%)}.hero-copy{text-align:center;padding:42px 20px 25px}.eyebrow{font-family:'Courier New',monospace;letter-spacing:2px;color:#c5a4a4}.hero-copy:before{content:'✦  WELCOME TO THE LAIR  ✦';display:block;border:1px dotted #93434e;color:#e1c58b;padding:5px;font:11px 'Courier New',monospace;margin:0 auto 30px;max-width:310px}.hero h1{font-family:'Luminari','Trattatello','Palatino Linotype',Georgia,serif;font-weight:bold;font-size:clamp(64px,7.2vw,108px);letter-spacing:-4px;color:#b92738;text-shadow:1px 1px #f6ba91,3px 3px #470510,5px 5px #000;margin:22px 0 28px}.hero h1 span{font-family:Georgia,serif;font-size:.27em;letter-spacing:12px;color:#e6cf9e;text-shadow:2px 2px #6c0b1c}.tagline{font-size:24px;color:#e3cfad}.byline{font-family:'Courier New',monospace;letter-spacing:0}.actions{justify-content:center;gap:20px;flex-wrap:wrap;margin-top:26px}.button{font:bold 13px/1.5 'Courier New',monospace;border:4px outset #a44d59;background:linear-gradient(#811c2d,#390713);color:#ffe6bd;padding:12px 20px;box-shadow:3px 3px #000;text-decoration:underline}.button:hover{opacity:1;background:#9b2639}.button:active{border-style:inset}.actions>a:not(.button){font:12px 'Courier New',monospace;color:#c9a1e5}.whisper{color:#bca0ba}.genre{margin-top:30px;font-size:10px}figure{margin:28px 28px 28px 5px;border:7px ridge #8d5661;box-shadow:0 0 0 3px #1a0710,0 0 0 4px #7b4550}figure img{object-position:50% 42%;filter:saturate(.65) contrast(1.08)}figure:after{background:linear-gradient(0deg,#10040bbb,transparent 30%)}figcaption{font:10px 'Courier New',monospace;bottom:12px;right:12px}.ribbon{background:#240911;color:#dec799;border-top:4px ridge #7e3441;border-bottom:4px ridge #7e3441;font:italic 17px Georgia,serif;padding:14px}.ribbon span+span:before{color:#c74250;margin-right:22px}.section{padding:58px 6%}h2{font-size:43px;color:#d5ba83;text-shadow:2px 2px #5f1526;letter-spacing:0}h2:after{content:' ◆ ━━━━━ ◆ ';display:block;font:14px Georgia,serif;color:#87303e;margin-top:22px}h3{color:#c94755;font-size:34px;text-shadow:1px 1px #38000a}.show{border-top:2px groove #7c3543;grid-template-columns:45px 1fr 140px;padding:28px 0}.number{color:#ba8fbb}.show a,.press>a{color:#c3a1e6;font:13px 'Courier New',monospace}.seal{border:4px double #a96973;border-radius:0;width:125px;height:133px;color:#d1ad7c;font-size:23px;transform:rotate(-7deg);background:#270b17}.note{border-top:2px groove #7c3543;font-family:'Courier New',monospace}.press{margin:0 22px;border:5px ridge #743b48;background:repeating-linear-gradient(0deg,#160b16 0 2px,#1c0d1b 2px 4px);color:#ead9ba}.press .eyebrow{color:#b99ac7}.quotes{gap:24px;grid-template-columns:1fr 1fr 1fr}.quotes blockquote{border:2px groove #955564;background:#080508;padding:20px 16px;box-shadow:4px 4px #000}.quotes p{font-size:22px}cite{font:11px/1.7 'Courier New',monospace;color:#c694aa}.split{gap:40px}.split .lead{font-size:24px}.watch{border-top:3px double #7a3546}.socials a{font:22px Georgia,serif;color:#c1a0e3;border-bottom:2px groove #74313e}.socials span{font-family:'Courier New',monospace;font-size:11px}.booking{margin:0 22px 25px;border:5px ridge #93414e;background:radial-gradient(ellipse,#5d1425,#1d0710)}.booking h2{font-size:70px;color:#ead3a4}.booking h2:after{content:'✦  ✦  ✦';color:#bd7480}.booking .eyebrow{color:#d3a8bd}.ivory{background:linear-gradient(#e5cf9c,#9b7847);border-color:#e4cb9a;color:#270913}.email{font:13px 'Courier New',monospace;color:#d6b2ea}footer{border-top:4px ridge #743b48;flex-wrap:wrap;justify-content:center;text-align:center;gap:20px;background:#100710}footer:after{content:'BEST VIEWED AFTER DARK  •  NO BLOOD OATH REQUIRED';display:block;width:100%;font:10px/1.8 'Courier New',monospace;color:#c39b76;border:2px inset #6c3b46;padding:6px;max-width:450px}footer p,footer>a:last-child{font-family:'Courier New',monospace}
@media(max-width:900px){body{margin:16px!important;width:calc(100% - 32px)}header{align-items:center}.hero{min-height:590px}.hero h1{font-size:72px}.tagline{font-size:20px}.actions{align-items:center;flex-direction:column}.show{grid-template-columns:35px 1fr}.quotes{grid-template-columns:1fr}.quotes p{font-size:25px}}
@media(max-width:600px){body{margin:8px!important;width:calc(100% - 16px);border-width:3px}.brand{font-size:16px}header{padding:22px 10px 16px}nav{gap:7px}nav a,.outline{padding:7px 10px;font-size:11px}.hero-copy{padding:30px 14px 15px}.hero-copy:before{font-size:10px;margin-bottom:24px}.hero h1{font-size:clamp(55px,17vw,88px);letter-spacing:-3px}.tagline{font-size:21px}.hero .eyebrow{font-size:9px}.hero figure{height:420px;margin:12px 20px 26px;border-width:5px}.actions{gap:18px}.ribbon{gap:6px}.section{padding:40px 7%}h2{font-size:35px}.press,.booking{margin-left:10px;margin-right:10px}.show{grid-template-columns:22px 1fr;gap:10px}h3{font-size:30px}.split{gap:15px}.socials a{flex-wrap:wrap;gap:10px}.booking h2{font-size:56px}.email{font-size:11px}footer .brand{width:100%}}

/* Gothic theatre: antique gold, oxblood and quiet ornament. */
:root{--ivory:#e9dfc6;--muted:#b7aa94;--line:#5b4932;--red:#501722}
html{background:#080709;background-image:radial-gradient(ellipse at 50% 0,#37232977,transparent 65%),repeating-linear-gradient(90deg,transparent 0 3px,#b7975810 3px 4px)}
body{max-width:1280px!important;margin:32px auto!important;border:1px solid #756044;box-shadow:0 0 0 7px #0b090b,0 0 0 8px #3d3025,0 20px 90px #000;background:#100d10;font-family:Georgia,'Times New Roman',serif}
header{display:flex;justify-content:space-between;align-items:center;text-align:left;padding:30px 5%;border-bottom:1px solid #51402d;background:linear-gradient(#1e151b,#100d10)}
.brand{font:normal 13px/1.5 Georgia,serif;letter-spacing:3px;color:#d1b478;text-shadow:none}.brand small{font:italic 13px Georgia,serif;letter-spacing:1px;color:#a99a84;margin-top:5px}
nav{margin:0;gap:27px;width:auto}nav a,.outline{font:11px/1.4 Georgia,serif;letter-spacing:1px;border:0;background:none;padding:8px 0;color:#cfc1a7;text-decoration:none}.outline{border:1px solid #8b7047;padding:11px 17px}nav a:hover{background:none;color:#f6e5ba}.outline:hover{background:#39202a}
.hero{min-height:730px;grid-template-columns:1.1fr 1fr;background:radial-gradient(ellipse at 0 30%,#39202c55,transparent 70%)}.hero-copy{padding:60px 25px 45px;text-align:center}.hero-copy:before{content:'✧';font:35px Georgia,serif;color:#ac8c52;border:0;padding:0;margin:0 auto 28px;background:none}.eyebrow{font:10px/1.9 Georgia,serif;letter-spacing:3px;color:#c0a679}.hero h1{font-family:'Baskerville','Palatino Linotype',Georgia,serif;font-weight:normal;font-size:clamp(70px,7.8vw,114px);letter-spacing:-3px;color:#e6d0a1;text-shadow:0 2px 12px #000;margin:25px 0 30px}.hero h1 span{font:normal .25em Georgia,serif;letter-spacing:12px;color:#bc9d66;text-shadow:none;margin-bottom:20px}.tagline{font:italic 26px/1.4 Georgia,serif;color:#d5c4a7}.byline{font:11px/1.7 Georgia,serif;letter-spacing:2px;color:#a69883}.actions{gap:25px;margin-top:35px}.button{font:11px/1.5 Georgia,serif;letter-spacing:1.4px;border:1px solid #a28550;background:linear-gradient(#5b2531,#36131e);padding:15px 23px;box-shadow:inset 0 0 0 4px #391720;text-decoration:none;color:#e5cf9d}.button:hover{background:#6a2c3b}.button:active{border-style:solid}.actions>a:not(.button){font:11px Georgia,serif;color:#c1ae8f}.whisper{font:italic 19px Georgia,serif;color:#a59482;margin-top:36px}.genre{font:9px Georgia,serif;letter-spacing:2px;margin-top:40px;color:#9c8764}
figure{margin:35px 35px 35px 8px;border:1px solid #9b7b4d;box-shadow:0 0 0 5px #171016,0 0 0 6px #57402e;overflow:hidden}figure img{filter:saturate(.48) contrast(1.04);object-position:50% 42%}figure:after{background:linear-gradient(0deg,#130b12bb,transparent 35%),linear-gradient(90deg,#120c1233,transparent 25%)}figcaption{font:italic 10px Georgia,serif;letter-spacing:.5px;color:#cfbfa5;bottom:16px;right:18px}
.ribbon{padding:21px;border-top:1px solid #665034;border-bottom:1px solid #665034;background:#1b131a;color:#c6af86;font:italic 17px Georgia,serif}.ribbon span+span:before{content:'✧';font-size:13px;color:#a68a55;margin-right:35px}.section{padding:80px 8%}h2{font:normal 46px/1.15 Georgia,serif;color:#dfcba4;text-shadow:none;letter-spacing:-1px}h2:after{content:'✧';font:23px Georgia,serif;color:#a78a53;margin-top:25px}h3{font:normal 36px Georgia,serif;color:#dbc29a;text-shadow:none}.heading>p{font:italic 15px/1.7 Georgia,serif;color:#b2a38b}.show{border-top:1px solid #54412e;padding:37px 0;grid-template-columns:45px 1fr 140px}.number{color:#aa8e5c;font-size:25px}.show p:not(.eyebrow){font:16px/1.85 Georgia,serif;color:#b8aa93;max-width:650px}.show a,.press>a{font:11px Georgia,serif;letter-spacing:.8px;color:#c4aa79}.seal{border:1px solid #8c7047;outline:1px solid #51402e;outline-offset:5px;border-radius:50%;transform:none;background:none;color:#bba06c;font:20px/1.2 Georgia,serif;width:123px;height:123px;padding-top:28px}.seal small{font:8px Georgia,serif;letter-spacing:2px}.note{border-top:1px solid #54412e;font:italic 12px Georgia,serif;padding-top:24px}
.press{margin:0 30px;border:1px solid #6f5637;box-shadow:inset 0 0 0 6px #1b1219,inset 0 0 0 7px #382a26;background:radial-gradient(ellipse at 50% 100%,#42202b88,transparent 80%),#1b1219;color:#e9d8b8;text-align:center}.press .eyebrow{color:#b69a68}.quotes{gap:35px;margin:45px 0;grid-template-columns:1fr 1fr 1fr}.quotes blockquote{border:0;border-left:1px solid #675033;background:none;padding:8px 20px;box-shadow:none}.quotes blockquote:first-child{border-left:0}.quotes p{font:italic 24px/1.5 Georgia,serif}cite{font:9px/1.9 Georgia,serif;letter-spacing:1.5px;color:#b69b71}.split{gap:65px}.split p{font:16px/1.85 Georgia,serif}.split .lead{font:24px/1.6 Georgia,serif}.watch{border-top:1px solid #51402d}.socials a{font:23px Georgia,serif;color:#d1b98e;border-bottom:1px solid #51402d;padding:25px 0}.socials span{font:10px Georgia,serif;letter-spacing:.7px}.booking{margin:0 30px 35px;border:1px solid #81623e;background:radial-gradient(ellipse at 50% 40%,#5b2736,#25121d 80%);box-shadow:inset 0 0 0 6px #25121d,inset 0 0 0 7px #58412f}.booking h2{font:normal 78px/1.1 Georgia,serif;color:#e9d4ac}.booking h2:after{content:'✧';font-size:25px;color:#c0a06b}.booking .eyebrow{color:#c0a06b}.booking p{color:#c7b49d}.ivory{background:linear-gradient(#d8bf8c,#b49966);color:#29141d;border-color:#d8bf8c;box-shadow:inset 0 0 0 4px #b39a6c}.ivory:hover{background:#e3cfa3}.email{font:12px Georgia,serif;color:#c6b192;letter-spacing:.5px}footer{background:#0f0b0f;border-top:1px solid #51402d;padding:35px 5%;justify-content:space-between}footer:after{content:'✧  AFTER DARK, ALWAYS  ✧';font:9px Georgia,serif;letter-spacing:3px;color:#8e7853;border:0;padding:15px 0 0;max-width:none}footer p,footer>a:last-child{font:10px Georgia,serif;color:#a4957f}
@media(max-width:900px){body{width:calc(100% - 36px);margin:18px!important}header{flex-direction:column;text-align:center;gap:20px}nav{justify-content:center;width:100%;gap:24px}.hero{min-height:640px}.hero h1{font-size:76px}.hero-copy{padding:40px 18px}.hero figure{margin:25px 25px 25px 5px}.actions{flex-direction:column}.quotes{grid-template-columns:1fr}.quotes blockquote{border-left:0;border-top:1px solid #5b4733;padding:25px 10px}.quotes blockquote:first-child{border-top:0}.section{padding:60px 7%}.show{grid-template-columns:35px 1fr}}
@media(max-width:600px){body{width:calc(100% - 24px);margin:12px!important}header{padding:25px 16px;gap:22px}nav{gap:17px}nav a,.outline{font-size:10px}.outline{padding:9px 12px}.hero-copy{padding:32px 20px 30px}.hero-copy:before{font-size:30px;margin-bottom:24px}.hero h1{font-size:clamp(50px,15vw,82px);letter-spacing:-2px}.hero h1 span{letter-spacing:9px}.tagline{font-size:22px}.hero .eyebrow{font-size:8px;letter-spacing:2px}.hero figure{margin:10px 25px 30px;height:410px}.ribbon{padding:20px;gap:8px}.section{padding:48px 7%}h2{font-size:35px}.press,.booking{margin-left:12px;margin-right:12px}.show{grid-template-columns:20px 1fr;gap:10px}h3{font-size:29px}.split{gap:25px}.quotes p{font-size:23px}.booking h2{font-size:57px}.split .lead{font-size:22px}.socials a{font-size:21px}.socials span{font-size:9px}.seal{display:none}footer{justify-content:center;gap:18px}}
/* Curated WEB PHOTOS collection */
.hero>figure img{object-position:50% 38%;filter:saturate(.82)}.photo-gallery{border-top:1px solid #51402d}.gallery-grid{display:grid;grid-template-columns:1fr 1.25fr;gap:35px}.gallery-grid figure{margin:0;border:1px solid #967846;box-shadow:0 0 0 5px #171016,0 0 0 6px #483527;overflow:hidden}.gallery-grid a{display:block;height:100%}.gallery-grid img{display:block;position:static;width:100%;height:100%;object-fit:cover;filter:saturate(.8)}.gallery-grid a:hover{opacity:1}.gallery-grid figure:after{pointer-events:none;background:linear-gradient(0deg,#0e070cdd,transparent 24%)}.gallery-grid figcaption{left:20px;bottom:18px;font-size:12px;pointer-events:none}.gallery-grid .master-castle{grid-row:span 2;height:710px}.gallery-grid .master-shadow{height:330px}.gallery-grid .master-on-the-steps{height:345px}.gallery-grid .master-on-the-steps img{object-position:50% 63%}.gallery-grid .soho-capes{grid-column:span 2;height:420px}.gallery-grid .soho-capes img{object-position:50% 35%}.photo-source{font:italic 11px/1.8 Georgia,serif;color:#b5a080;margin-top:30px}@media(max-width:600px){.gallery-grid{grid-template-columns:1fr;gap:25px}.gallery-grid .master-castle{grid-row:auto;height:520px}.gallery-grid .master-shadow{height:230px}.gallery-grid .master-on-the-steps{height:430px}.gallery-grid .soho-capes{grid-column:auto;height:400px}.hero>figure img{object-position:50% 30%}}
.gallery-grid .master-on-the-steps img{object-position:50% 46%}

.hero>figure img{object-position:50% 50%;filter:saturate(.85)}
@media(max-width:600px){.hero>figure{height:auto;aspect-ratio:2/3}.hero>figure img{object-position:50% 50%}}

.upcoming{background:radial-gradient(ellipse at 50% 0,#42232c66,transparent 80%),#120d12;padding:45px 6% 30px;border-bottom:1px solid #80613c}.upcoming-heading{display:flex;align-items:center;justify-content:space-between;gap:20px}.upcoming h2{font-size:40px;margin:8px 0 25px}.upcoming h2:after{display:none}.upcoming-heading>p{font:italic 17px Georgia,serif;color:#c5af88}.event-list{display:grid;grid-template-columns:1fr 1fr;gap:30px}.event{display:grid;grid-template-columns:74px 1fr auto;gap:20px;align-items:center;border-top:1px solid #6a5035;border-bottom:1px solid #6a5035;padding:23px 0}.event time{font:9px Georgia,serif;letter-spacing:1px;color:#c6aa76;text-align:center;border-right:1px solid #54412e;padding-right:17px}.event time span{display:block;font:43px/1.1 Georgia,serif;letter-spacing:0;margin-bottom:7px}.event h3{font-size:27px;margin:0 0 7px}.event p{font:12px/1.7 Georgia,serif;color:#bbaa90;margin:0}.event small{font-size:10px}.event .button{padding:11px 15px;white-space:nowrap}.all-dates{display:block;text-align:right;font:10px Georgia,serif;color:#bda474;margin-top:18px}@media(max-width:1050px){.event-list{grid-template-columns:1fr}.event{grid-template-columns:75px 1fr auto}.upcoming{padding:32px 6%}}@media(max-width:600px){.upcoming-heading{display:block}.upcoming h2{font-size:32px;margin-bottom:10px}.upcoming-heading>p{font-size:15px;margin-bottom:22px}.event-list{gap:17px}.event{grid-template-columns:55px 1fr;gap:14px;padding:19px 0}.event h3{font-size:25px}.event time{padding-right:10px}.event .button{grid-column:2;justify-self:start;font-size:10px;padding:10px 19px}.all-dates{text-align:left}}

.socials a{font-size:21px}.upcoming{scroll-margin-top:15px}@media(max-width:600px){.socials a{font-size:19px}.socials span{display:block;width:100%}}

.featured-videos{display:block}.video-grid{display:grid;grid-template-columns:1fr 1fr;gap:35px;max-width:950px;margin:40px auto 0}.video-card{min-width:0;border:1px solid #715736;background:#161016;padding:18px;box-shadow:inset 0 0 0 5px #21161e}.video-label{font:10px Georgia,serif;letter-spacing:3px;color:#b79a65;margin:5px 0 18px}.video-card iframe{display:block;width:100%;height:600px;border:0;background:#0a080a;color-scheme:normal}.video-card>a{display:block;padding:19px 0 5px;font:12px Georgia,serif;color:#d5bd8e}.video-note,.video-profiles{font:12px/1.8 Georgia,serif;color:#b9a68a;margin:25px 0 0}.video-profiles{margin-top:10px}.video-profiles a{color:#d5bd8e}@media(max-width:600px){.video-grid{grid-template-columns:1fr;gap:25px;margin-top:25px}.video-card{padding:12px}.video-card iframe{height:550px}}

/* Simplified, photo-led edition */
html{background:#111113;background-image:none}
body{max-width:none!important;width:100%!important;margin:0!important;border:0;box-shadow:none;background:#111113;color:#f1eee7;font-family:Arial,Helvetica,sans-serif}
header{background:#111113;border-bottom:1px solid #ffffff20;padding:23px 6%;gap:25px}
.brand{font:600 12px Arial,sans-serif;letter-spacing:2px;color:#eee}.brand small{font:11px Arial,sans-serif;letter-spacing:.5px;color:#aaa}
nav{gap:26px}nav a,.outline{font:12px Arial,sans-serif;color:#ccc;letter-spacing:0;border:0;padding:6px 0}.outline{color:#fff}nav a:hover{color:#fff;background:none}
h2,h3{font-family:Arial,Helvetica,sans-serif;color:#eee;letter-spacing:-1px;text-shadow:none}h2:after{display:none}.eyebrow{font:10px/1.7 Arial,sans-serif;letter-spacing:2px;color:#aaa}
.upcoming{background:#151517;border-bottom:0;padding:34px 6%}.upcoming-heading{max-width:1200px;margin:auto}.upcoming h2{font:500 29px/1.2 Arial,sans-serif;letter-spacing:-1px;margin:8px 0 24px}.upcoming-heading>p{font:13px Arial,sans-serif;color:#aaa}.upcoming-heading em{font-style:normal;color:#ddd}
.event-list{max-width:1200px;margin:auto;gap:38px}.event{border-color:#ffffff24;grid-template-columns:64px 1fr auto;padding:22px 0;gap:18px}.event time{font:9px Arial,sans-serif;border-color:#ffffff25;color:#aaa;letter-spacing:.5px}.event time span{font:400 37px Arial,sans-serif;color:#eee}.event h3{font:400 24px Arial,sans-serif;margin:0 0 8px;letter-spacing:-.5px}.event p{font:12px/1.65 Arial,sans-serif;color:#aaa}.all-dates{max-width:1200px;margin:17px auto 0;font:11px Arial,sans-serif;color:#aaa}
.button,.event .button{background:#f0ece4;border:0;box-shadow:none;border-radius:2px;padding:12px 20px;color:#171719;font:500 12px Arial,sans-serif;letter-spacing:0;text-decoration:none}.button:hover{background:#fff;color:#111}
.hero{position:relative;isolation:isolate;min-height:690px;display:flex;align-items:center;background:#151318;overflow:hidden}
.hero>figure{position:absolute;z-index:-2;inset:0;margin:0;border:0;box-shadow:none;height:100%;width:100%;overflow:hidden}
.hero>figure img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 66%;filter:saturate(.55) brightness(.68)}
.hero>figure:after{background:linear-gradient(90deg,#0a090ee8 0%,#0a090e66 45%,#0a090e10 80%),linear-gradient(0deg,#111113aa,transparent 35%);pointer-events:none}
.hero figcaption{font:9px Arial,sans-serif;right:6%;bottom:18px;left:auto;color:#ccc}
.hero-copy{padding:90px 8%;text-align:left;width:100%;max-width:1400px;margin:auto}
.hero-copy:before{display:none}.hero .eyebrow{color:#c7b7b5;font-size:10px;letter-spacing:3px}
.hero h1{font:400 clamp(72px,9vw,138px)/.95 Georgia,serif;letter-spacing:-5px;color:#f1ece1;text-shadow:none;margin:20px 0 26px}.hero h1 span{font:12px Arial,sans-serif;letter-spacing:7px;margin-bottom:16px;color:#ddd}
.tagline{font:18px/1.5 Arial,sans-serif;color:#ded8d1}.byline{font:12px Arial,sans-serif;letter-spacing:0;color:#bbb}.actions{justify-content:flex-start;flex-direction:row;gap:25px;margin-top:28px}.actions>a:not(.button){font:12px Arial,sans-serif;color:#ddd}.whisper,.genre{display:none}
.section:not(.upcoming){padding:80px 8%}.split{max-width:1400px;margin:auto;gap:80px}.split h2{font:400 42px/1.15 Arial,sans-serif;letter-spacing:-1.5px}.split p{font:15px/1.8 Arial,sans-serif;color:#aaa}.split .lead{font:22px/1.5 Arial,sans-serif;color:#e7e2da}
.watch{border-top:1px solid #ffffff1c}.featured-videos{max-width:1400px;margin:auto}.featured-videos h2{font:400 42px Arial,sans-serif;letter-spacing:-1px}
.video-grid{max-width:840px;gap:30px;margin:35px 0 0}.video-card{border:0;padding:0;box-shadow:none;background:none}.video-label{font:10px Arial,sans-serif;letter-spacing:2px;color:#aaa;margin:0 0 15px}.video-card iframe{border-radius:3px}.video-card>a{font:12px Arial,sans-serif;color:#ddd}.video-note,.video-profiles{font:11px/1.8 Arial,sans-serif;color:#999}.video-profiles a{color:#ccc}
.booking{margin:0!important;border:0;border-top:1px solid #ffffff1c;box-shadow:none;background:#191719;text-align:left}.booking h2{font:400 55px Arial,sans-serif;letter-spacing:-2px;color:#eee}.booking h2:after{display:none}.booking .eyebrow{color:#aaa}.booking p{font:14px Arial,sans-serif;color:#aaa}.booking .button{margin:15px 0}.email{font:13px Arial,sans-serif;letter-spacing:0;color:#ccc}
footer{border:0;background:#111113;padding:28px 6%;justify-content:space-between}footer:after{display:none}footer p,footer>a:last-child{font:10px Arial,sans-serif;color:#888}
@media(max-width:900px){header{flex-direction:row;text-align:left}nav{width:auto;gap:18px}.event-list{grid-template-columns:1fr}.hero{min-height:640px}.hero>figure img{object-position:55% 60%}.hero-copy{padding:80px 7%}.actions{flex-direction:row}.split{gap:40px}.section:not(.upcoming){padding:60px 7%}}
@media(max-width:600px){header{display:block;padding:22px 6%}nav{justify-content:flex-start;margin-top:20px;gap:23px;flex-wrap:wrap}nav a,.outline{font-size:11px}.upcoming{padding:26px 6%}.upcoming h2{font-size:26px;margin-bottom:13px}.upcoming-heading>p{margin:0 0 20px;font-size:12px}.event-list{gap:13px}.event{grid-template-columns:48px 1fr auto;gap:12px;padding:19px 0}.event time{padding-right:9px;font-size:8px}.event time span{font-size:31px}.event h3{font-size:21px}.event p{font-size:10px}.event .button{grid-column:auto;font-size:10px;padding:11px 13px}.all-dates{text-align:left}.hero{min-height:610px}.hero>figure{height:100%;aspect-ratio:auto;margin:0}.hero>figure img{object-position:52% 70%}.hero>figure:after{background:linear-gradient(90deg,#0a090ec9,#0a090e44),linear-gradient(0deg,#11111388,transparent)}.hero-copy{padding:75px 7%}.hero h1{font-size:69px;letter-spacing:-3px}.tagline{font-size:16px}.hero .eyebrow{font-size:9px}.actions{gap:20px;flex-wrap:wrap}.section:not(.upcoming){padding:50px 7%}.split{gap:20px}.split h2,.featured-videos h2{font-size:33px}.split .lead{font-size:20px}.video-grid{gap:30px;margin-top:25px}.video-card{padding:0}.booking h2{font-size:42px}footer{gap:18px;justify-content:flex-start}footer .brand{width:100%}}

/* Smoke & blood: a centred, cinematic performer page. */
html{background:#09090b}body{background:#09090b;color:#ede9de;position:relative}
header{position:relative;z-index:5;display:block;border:0;background:transparent;text-align:center;padding:26px 20px 10px}.brand{display:block;font-size:10px;letter-spacing:3px;color:#bcb6ae}.brand small{display:none}
nav{display:flex;width:fit-content;margin:18px auto 0;padding:7px 10px;gap:0;border:1px solid #ffffff20;border-radius:40px;background:linear-gradient(130deg,#ffffff15,#54192133,#ffffff0c);box-shadow:inset 0 1px 0 #ffffff18,0 12px 40px #0008;backdrop-filter:blur(18px);justify-content:center}
nav a,.outline{padding:12px 23px!important;border:0;border-radius:30px;font:12px Arial,sans-serif;color:#d2ccc3}nav a:hover{background:#ffffff0c;color:#fff}.outline{background:#ffffff0a}
.upcoming{position:relative;z-index:1;background:transparent;border:0;padding:28px 8% 25px}.upcoming-heading{max-width:1030px}.upcoming .eyebrow{font-size:8px;letter-spacing:2px;color:#ad7b7a}.upcoming h2{font:400 24px Arial,sans-serif;margin-bottom:18px}.upcoming-heading>p{font-size:11px}.event-list{max-width:1030px;gap:38px}.event{border-top:1px solid #ffffff14;border-bottom:1px solid #ffffff14;padding:17px 0;grid-template-columns:55px 1fr auto}.event time{border-color:#ffffff16;font-size:8px;color:#aaa}.event time span{font-size:30px;color:#eee}.event h3{font-size:21px}.event p{font-size:11px}.event .button{padding:10px 17px;border-radius:30px;background:#e7e1d4;color:#191315;font-size:10px}.all-dates{max-width:1030px;font-size:9px;color:#93847d;margin-top:12px}
.hero{min-height:820px;display:flex;align-items:flex-start;overflow:hidden;background:radial-gradient(ellipse at 50% 25%,#46172244,transparent 65%);isolation:isolate}
.hero>figure{position:absolute;top:0;left:50%;right:auto;bottom:auto;transform:translateX(-50%);width:800px;max-width:100%;height:660px;z-index:-1;overflow:hidden;mask-image:radial-gradient(ellipse 51% 57% at 50% 43%,#000 30%,transparent 87%);-webkit-mask-image:radial-gradient(ellipse 51% 57% at 50% 43%,#000 30%,transparent 87%)}
.hero>figure img{object-position:50% 60%;filter:saturate(.55) brightness(.72);height:100%;width:100%}.hero>figure:after{background:linear-gradient(0deg,#09090b 0%,transparent 55%),linear-gradient(90deg,#24070b55,transparent 60%)}.hero figcaption{position:fixed;display:none}
.hero-copy{padding:270px 20px 65px;text-align:center;max-width:1200px;position:relative}.blood-mark{display:none}
.hero .eyebrow{color:#c2b5ad;letter-spacing:4px;font-size:9px;text-shadow:0 2px 5px #000}
.hero h1{font-family:Impact,'Arial Narrow','Helvetica Neue',Arial,sans-serif;font-stretch:condensed;font-weight:900;font-size:clamp(90px,12vw,170px);line-height:.86;letter-spacing:-5px;color:#e8e3d8;text-shadow:0 4px 30px #0008;margin:18px 0 26px;display:inline-block;position:relative}
.hero h1 span{font:700 .29em/.9 Impact,'Arial Narrow',Arial,sans-serif;letter-spacing:5px;color:#d5d0c8;margin-bottom:12px}
.hero h1:after{content:'';position:absolute;right:11%;top:88%;width:5px;height:49px;border-radius:0 0 70% 70%;background:linear-gradient(#8e1225,#510916);box-shadow:22px -5px 0 -1px #791023,31px -20px 0 -1px #6a1020;transform:rotate(-2deg);opacity:.9}
.tagline{font:14px Arial,sans-serif;color:#d3cbc0;letter-spacing:1px;margin-top:25px}.byline{font-size:10px;color:#9b948d;margin-top:12px}.actions{justify-content:center;gap:25px;margin-top:29px}.actions .button{border-radius:30px;background:#6f1828;color:#f4e9dc;padding:13px 24px;font-size:11px}.actions .button:hover{background:#8b2034}.actions>a:not(.button){font-size:11px;color:#c0b3a8}
.hero:after{content:'Photograph: Em Goodman';position:absolute;bottom:22px;right:6%;font:8px Arial,sans-serif;letter-spacing:1px;color:#77716c}
.section:not(.upcoming){position:relative;z-index:1}.split{border:0;max-width:1120px;padding-top:70px!important;padding-bottom:70px!important}.split .eyebrow,.featured-videos>.eyebrow,.booking .eyebrow{color:#a76a6d;font-size:9px}.split h2{font-size:44px;font-weight:500}.split .lead{font-size:23px}.split p{color:#aaa29a}.watch{border-top:1px solid #ffffff12;max-width:1120px}.featured-videos h2{font-size:44px;font-weight:500}.video-grid{max-width:none;gap:35px}.video-card{background:#ffffff04;border:1px solid #ffffff12;border-radius:14px;padding:18px}.video-card iframe{border-radius:5px}.video-label{font-size:8px;color:#b5a197}.video-card>a{font-size:11px}.video-note,.video-profiles{color:#857d76}
.booking{border-top:1px solid #ffffff12;background:radial-gradient(ellipse at 50% 100%,#5c142744,transparent 75%);text-align:center}.booking h2{font-size:60px;letter-spacing:-2px}.booking .button{border-radius:30px;background:#e7e1d4;color:#21181b}.email{font-size:12px;color:#b2a498}
footer{background:transparent;border-top:1px solid #ffffff0d}footer .brand{font-size:9px;text-align:left}footer p,footer>a:last-child{font-size:9px}
.atmosphere{pointer-events:none;position:absolute;inset:0;overflow:hidden;z-index:0}.atmosphere span{position:absolute;top:480px;left:-20%;width:130%;height:500px;opacity:.45;filter:blur(45px);background:radial-gradient(ellipse at 25% 50%,#c4b8c316,transparent 40%),radial-gradient(ellipse at 65% 50%,#c2b8c122,transparent 45%);animation:mist 25s ease-in-out infinite alternate}.atmosphere span+span{top:750px;left:-10%;opacity:.25;animation-delay:-12s;animation-duration:33s;transform:rotate(-10deg)}
@keyframes mist{from{transform:translateX(-7%) scale(1)}to{transform:translateX(9%) scale(1.15)}}
@media(max-width:900px){header{padding-top:25px}.event-list{grid-template-columns:1fr 1fr;gap:24px}.event{grid-template-columns:40px 1fr;gap:12px}.event .button{grid-column:2;justify-self:start}.hero{min-height:730px}.hero-copy{padding-top:250px}.hero h1{font-size:125px}.hero>figure{height:600px}.split{gap:35px}}
@media(max-width:600px){header{padding:24px 10px 5px}.brand{font-size:9px}nav{margin-top:17px;padding:5px;width:fit-content;gap:0;flex-wrap:nowrap}nav a,.outline{font-size:10px;padding:10px 13px!important;white-space:nowrap}.upcoming{padding:25px 7% 18px}.upcoming h2{font-size:22px;margin:5px 0 10px}.upcoming-heading>p{font-size:10px;margin-bottom:15px}.event-list{grid-template-columns:1fr;gap:10px}.event{grid-template-columns:43px 1fr auto;gap:13px;padding:16px 0}.event .button{grid-column:auto;padding:9px 13px;font-size:9px}.event h3{font-size:19px}.event p{font-size:10px}.event time span{font-size:27px}.event time{font-size:7px}.hero{min-height:650px}.hero>figure{width:100%;height:470px;aspect-ratio:auto;inset:auto;top:0;left:50%;margin:0}.hero>figure img{object-position:50% 58%}.hero-copy{padding:220px 12px 65px}.hero .eyebrow{font-size:7px;letter-spacing:2px}.hero h1{font-size:clamp(76px,22vw,110px);letter-spacing:-3px;margin-top:17px}.hero h1 span{letter-spacing:4px}.hero h1:after{height:36px;width:4px;box-shadow:16px -6px 0 -1px #791023}.tagline{font-size:12px;letter-spacing:.2px}.byline{font-size:9px}.actions{gap:18px}.actions .button{font-size:10px;padding:12px 20px}.actions>a:not(.button){font-size:10px}.hero:after{font-size:7px}.split h2,.featured-videos h2{font-size:34px}.split .lead{font-size:21px}.video-card{padding:12px}.booking h2{font-size:43px}.atmosphere span{top:600px;height:400px}footer .brand{text-align:left;width:auto}}
@media(prefers-reduced-motion:reduce){.atmosphere span{animation:none}}

.hero>figure img{object-position:50% 35%;object-fit:cover}.hero>figure{width:1000px;height:620px}.hero:after{content:"Photograph: Van Corona"}@media(max-width:600px){.hero>figure{width:100%;height:410px}.hero>figure img{object-fit:contain;object-position:50% 35%}.hero-copy{padding-top:210px}}

/* Scattered theatrical blood and low-lying haze. */
.upcoming:after,.watch:after,.booking:after{content:'';position:absolute;pointer-events:none;z-index:-1;width:220px;height:240px;opacity:.7;background:radial-gradient(ellipse at 50% 45%,#671325 0 11%,transparent 12%),radial-gradient(ellipse at 37% 38%,#671325 0 5%,transparent 6%),radial-gradient(ellipse at 65% 48%,#78172b 0 5%,transparent 6%),radial-gradient(circle at 20% 27%,#7a1b2c 0 2%,transparent 2.8%),radial-gradient(circle at 77% 20%,#7a1b2c 0 1.4%,transparent 2%),radial-gradient(circle at 31% 67%,#7a1b2c 0 2%,transparent 2.8%),radial-gradient(circle at 83% 65%,#7a1b2c 0 2%,transparent 2.6%),radial-gradient(ellipse at 56% 65%,#611022 0 2%,transparent 2.8%),radial-gradient(circle at 12% 52%,#7a1b2c 0 1%,transparent 1.8%);filter:blur(.35px);transform:rotate(-23deg)}
.upcoming:after{right:-80px;top:5px}.watch:after{left:-100px;top:40%;transform:rotate(44deg);opacity:.45}.booking:after{right:2%;bottom:0;transform:rotate(-50deg);opacity:.35}
body{overflow-x:clip}.watch,.booking,.upcoming{isolation:isolate}.watch:before,.booking:before{content:'';pointer-events:none;position:absolute;z-index:-1;left:-10%;top:10%;width:110%;height:220px;background:radial-gradient(ellipse at 30% 60%,#d7c6d318,transparent 60%),radial-gradient(ellipse at 70% 30%,#b1a9ba13,transparent 50%);filter:blur(35px);animation:mist 29s ease-in-out infinite alternate}.booking:before{top:50%;opacity:.7}.hero:before{content:'';position:absolute;pointer-events:none;z-index:0;bottom:110px;left:0;width:100%;height:180px;background:radial-gradient(ellipse at 30% 60%,#c1b8c51c,transparent 60%),radial-gradient(ellipse at 80% 50%,#c3b1b51a,transparent 45%);filter:blur(28px);animation:mist 22s ease-in-out infinite alternate}
@media(max-width:600px){.upcoming:after{width:130px;right:-65px;opacity:.45}.watch:after{left:-85px;opacity:.35}.booking:after{right:-80px}.watch:before,.booking:before{width:100%;left:0}}
@media(prefers-reduced-motion:reduce){.watch:before,.booking:before,.hero:before{animation:none}}

.hero-slideshow .slide{opacity:0;transition:opacity 1.8s ease;pointer-events:none}.hero-slideshow .slide.active{opacity:1}
.hero>.hero-slideshow{mask-image:radial-gradient(ellipse 58% 65% at 50% 40%,#000 25%,transparent 88%);-webkit-mask-image:radial-gradient(ellipse 58% 65% at 50% 40%,#000 25%,transparent 88%)}
.hero-slideshow .slide:not(:first-child){object-fit:contain;object-position:50% 15%}
.hero:after{display:none}.hero .slideshow-controls{position:absolute;bottom:26px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:15px;z-index:4;color:#bfb0a7}
.slideshow-controls button{background:#ffffff09;border:1px solid #ffffff20;border-radius:25px;color:#dfd5ca;padding:9px 15px;font:10px Arial,sans-serif;cursor:pointer}.slideshow-controls button:hover{background:#ffffff18}.slideshow-controls button:focus-visible{outline:2px solid #d4ad96;outline-offset:4px}.slideshow-controls span{font:9px Arial,sans-serif;white-space:nowrap}
.hero .hero-slideshow figcaption{display:block;position:absolute;bottom:8px;left:0;right:0;text-align:center;font-size:8px}
@media(max-width:600px){.hero .slideshow-controls{bottom:20px;gap:9px}.slideshow-controls button{padding:8px 11px}.hero-slideshow .slide:not(:first-child){object-position:50% 0%}}
@media(prefers-reduced-motion:reduce){.hero-slideshow .slide{transition:none}}

.atmosphere{width:100%;max-width:100vw;contain:paint;overflow:hidden}.hero-slideshow .slide{max-width:100%}

main{overflow:clip}.upcoming,.watch,.booking{overflow:clip}html{overflow-x:hidden}
.all-dates[hidden]{display:none}

.social-section{max-width:1120px;margin:auto;border-top:1px solid #ffffff15;text-align:center}.social-section h2{font:500 42px Arial,sans-serif;letter-spacing:-1px;color:#e7e1d7}.social-icons{display:flex;justify-content:center;gap:100px;margin:55px 0 15px}.social-icons a{display:flex;align-items:center;flex-direction:column;text-decoration:none;color:#e7e1d7;transition:color .2s,transform .2s}.social-icons svg{width:120px;height:120px;filter:drop-shadow(0 0 24px #9b173e33)}.social-icons span{font:14px Arial,sans-serif;margin-top:22px}.social-icons small{font:11px Arial,sans-serif;color:#a99891;margin-top:9px}.social-icons a:hover{opacity:1;color:#ca6d80;transform:translateY(-5px)}@media(max-width:600px){.social-section h2{font-size:32px}.social-icons{gap:55px;margin-top:40px}.social-icons svg{width:90px;height:90px}.social-icons span{font-size:12px}.social-icons small{font-size:10px}}@media(prefers-reduced-motion:reduce){.social-icons a{transition:none}}

/* Compact single-page layout. */
header{padding:20px 15px 5px}nav{margin-top:12px}nav a,.outline{padding:9px 20px!important}
.upcoming{padding:20px 8%}.upcoming h2{font-size:22px;margin:4px 0 15px}.upcoming .eyebrow{display:none}.event{padding:13px 0}.all-dates{margin-top:10px}
.hero{min-height:510px}.hero>.hero-slideshow{height:430px;width:820px}.hero-copy{padding:150px 20px 70px}.hero h1{font-size:115px;margin:14px 0 17px}.hero h1 span{font-size:.25em;margin-bottom:8px}.hero .eyebrow{font-size:8px;letter-spacing:2px}.tagline{font-size:13px;margin:14px 0 8px}.byline{display:none}.actions{margin-top:20px}.hero .slideshow-controls{bottom:15px}.hero h1:after{height:30px}
.section.compact-about{max-width:850px;margin:auto;padding:24px 25px 30px;text-align:center}.compact-about h2{font:500 22px Arial,sans-serif;letter-spacing:-.5px;margin:0 0 10px}.compact-about p{font:14px/1.7 Arial,sans-serif;color:#b7aaa2;margin:0}
.section.social-section{padding:23px 20px;border:0}.social-icons{gap:65px;margin:0}.social-icons svg{width:52px;height:52px}.social-icons span{font-size:11px;margin-top:12px}.social-icons small{display:none}
.section.booking{padding:25px 20px 32px;text-align:center;background:none;border:0}.booking h2{font-size:25px;letter-spacing:-.5px;margin:0 0 8px}.booking p{font-size:11px;margin:0 0 12px}.email{font-size:14px}footer{padding:18px 6%}footer .brand{display:none}
@media(max-width:600px){header{padding:18px 10px 2px}nav a,.outline{padding:9px 12px!important}.upcoming{padding:20px 7%}.upcoming h2{font-size:21px;margin-bottom:8px}.upcoming-heading>p{margin-bottom:12px}.event{padding:12px 0}.event-list{gap:5px}.event h3{font-size:18px}.event time span{font-size:25px}.all-dates{font-size:8px}.hero{min-height:430px}.hero>.hero-slideshow{height:330px;width:100%}.hero-copy{padding:120px 15px 65px}.hero h1{font-size:82px;letter-spacing:-3px}.hero .eyebrow{font-size:6px;letter-spacing:1.5px}.tagline{font-size:11px}.actions{gap:18px;margin-top:18px}.actions .button{padding:10px 16px;font-size:9px}.actions>a:not(.button){font-size:9px}.hero .slideshow-controls{bottom:12px}.section.compact-about{padding:22px 8%}.compact-about p{font-size:12px}.compact-about h2{font-size:21px}.section.social-section{padding:18px}.social-icons{gap:60px}.social-icons svg{width:48px;height:48px}.section.booking{padding:22px 15px 28px}.booking h2{font-size:24px}.email{font-size:13px}footer{padding:14px 6%}}

nav a[aria-current="page"]{background:#ffffff12;color:#fff}
.about-content{max-width:1150px;margin:65px auto 80px;padding:0 35px;display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center}.about-content h1{font:500 55px/1.1 Arial,sans-serif;letter-spacing:-2px;margin:20px 0 25px}.about-content p{font:15px/1.8 Arial,sans-serif;color:#b9ada5}.about-content .about-lead{font-size:22px;color:#e8e1d7;line-height:1.5}.about-content .button{margin-top:18px;border-radius:30px;background:#6f1828;color:#eee}.about-content figure{position:static;margin:0;border:0;box-shadow:none;background:none;overflow:visible}.about-content figure:after{display:none}.about-content img{position:static;display:block;width:100%;height:auto;filter:saturate(.65);border-radius:5px}.about-content figcaption{position:static;font:9px Arial,sans-serif;color:#8f8076;text-align:right;margin-top:13px}.about-page footer{max-width:1150px;margin:auto;padding:25px 35px}.about-page footer a{font:11px Arial,sans-serif;color:#b9ada5}@media(max-width:600px){.about-content{grid-template-columns:1fr;margin:38px auto 45px;padding:0 25px;gap:35px}.about-content h1{font-size:40px}.about-content .about-lead{font-size:20px}.about-page footer{padding:22px 25px;gap:20px}}
@media(min-width:601px) and (max-width:900px){.about-content{grid-template-columns:1fr;gap:30px;margin-top:40px}.about-content h1{font-size:44px}.about-content figure{max-width:600px}}

/* Final restraint: quiet effects and consistent portrait framing. */
.upcoming:after,.watch:after,.booking:after{display:none}
.atmosphere span{opacity:.18}.atmosphere span+span{opacity:.1}.hero:before{opacity:.3}.booking:before{opacity:.2}
.hero>.hero-slideshow{height:400px;width:800px;max-width:100%;mask-image:radial-gradient(ellipse 58% 65% at 50% 40%,#000 25%,transparent 88%);-webkit-mask-image:radial-gradient(ellipse 58% 65% at 50% 40%,#000 25%,transparent 88%)}
.hero>.hero-slideshow .slide{object-fit:contain;object-position:50% 0%;filter:saturate(.65) brightness(.82)}
.hero>.hero-slideshow .slide:first-child{object-fit:cover;object-position:50% 30%;filter:saturate(.65) brightness(.7)}
.hero>.hero-slideshow .slide:nth-child(3){filter:saturate(.5) brightness(.65)}
.hero>.hero-slideshow .slide:nth-child(4){filter:saturate(.55) brightness(.85)}
.hero{min-height:460px}.hero-copy{padding-bottom:75px}.slideshow-controls span{color:#b9aaa1}
.event[hidden],.all-dates[hidden]{display:none}
@media(max-width:600px){.hero{min-height:400px}.hero>.hero-slideshow{height:310px;width:100%}.hero>.hero-slideshow .slide:first-child{object-fit:contain;object-position:50% 0%}.hero-copy{padding-top:120px;padding-bottom:65px}}
.hero h1.performer-title{font-size:95px;line-height:.9;letter-spacing:-3px;margin:12px 0 10px}.character-title{font:italic 22px Georgia,serif;color:#d0b7b2;margin:12px 0 15px}.hero h1.performer-title:after{height:26px}.hero-copy{padding-top:115px}@media(max-width:600px){.hero h1.performer-title{font-size:68px;letter-spacing:-2px}.character-title{font-size:19px;margin:10px 0}.hero-copy{padding-top:95px}}
.social-section{position:relative}.social-nudge{position:absolute;left:calc(50% - 210px);top:-3px;display:flex;align-items:center;transform:rotate(-12deg);color:#bc6976;pointer-events:none}.social-nudge span{font:italic 24px 'Bradley Hand','Comic Sans MS',cursive;white-space:nowrap}.social-nudge svg{width:75px;height:55px;transform:rotate(-12deg)}@media(max-width:600px){.social-nudge{left:calc(50% - 160px);top:-6px}.social-nudge span{font-size:21px}.social-nudge svg{width:52px;height:45px}}
.review-strip{max-width:760px;margin:0 auto;padding:8px 25px 22px;text-align:center;min-height:150px}.review-strip blockquote{border:0;padding:0;margin:8px 0;font:italic 19px/1.5 Georgia,serif;color:#e0d7cb}.review-stars{color:#c5a174;letter-spacing:4px;font-size:12px;margin:0}.review-source{font:9px Arial,sans-serif;letter-spacing:1px;color:#a39489;margin:10px 0}.review-strip button{background:none;border:0;color:#aa8f87;font:9px Arial,sans-serif;padding:8px;cursor:pointer}.review-strip button:focus-visible{outline:2px solid #bc6976;outline-offset:3px}.review-strip #review-quote{animation:review-in .6s ease}.review-strip+.social-section{margin-top:15px}.booking h2{font-size:26px}@keyframes review-in{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@media(max-width:600px){.review-strip{padding:8px 25px 18px;min-height:165px}.review-strip blockquote{font-size:17px}.booking h2{font-size:24px}}@media(prefers-reduced-motion:reduce){.review-strip #review-quote{animation:none}}
/* Give the photographs their own space above the title. */
.hero{min-height:590px}.hero>.hero-slideshow{height:350px}.hero-copy{padding-top:335px;padding-bottom:65px}.hero h1.performer-title{font-size:54px;line-height:1;letter-spacing:-1.5px;margin:0 0 8px}.hero h1.performer-title br{display:none}.hero h1.performer-title br:after{content:' '}.hero h1.performer-title{word-spacing:10px}.character-title{font-size:19px;margin:8px 0 10px}.hero h1.performer-title:after{height:18px;width:3px;right:6%}.tagline{font-size:11px;margin-top:10px}.review-buttons{display:flex;justify-content:center;gap:14px}.review-strip #review-quote{min-height:105px}.review-strip{overflow:hidden}@media(max-width:600px){.hero{min-height:465px}.hero>.hero-slideshow{height:270px}.hero-copy{padding-top:265px;padding-bottom:65px}.hero h1.performer-title{font-size:36px;letter-spacing:-1px;word-spacing:5px}.character-title{font-size:17px}.tagline{font-size:10px}.review-strip #review-quote{min-height:125px}}
/* Let the name overlap the fading lower edge of the photographs. */
.hero{min-height:525px}.hero-copy{padding-top:275px}.hero h1.performer-title{font-size:62px;text-shadow:0 3px 22px #0009}@media(max-width:600px){.hero{min-height:425px}.hero-copy{padding-top:225px}.hero h1.performer-title{font-size:39px}}

.review-source a{font:inherit;letter-spacing:inherit;color:inherit;text-decoration:underline;text-underline-offset:3px}.review-stars[hidden]{display:none}.review-strip #review-quote{min-height:120px}@media(max-width:600px){.review-strip #review-quote{min-height:145px}}

/* A quieter landing page; dates have their own page. */
.hero{min-height:550px}.hero-copy{padding-top:275px;padding-bottom:95px}.live-link{display:inline-block;margin-top:15px;border-radius:25px;background:#ede6da;color:#1b1518;font-size:11px;padding:12px 23px}.hero .slideshow-controls{bottom:12px}.review-strip{padding-top:15px;min-height:165px}.review-buttons{opacity:.65}.social-section{padding-top:10px!important;padding-bottom:10px!important}.shows-intro{max-width:1030px;margin:65px auto 30px;padding:0 25px}.shows-intro h1{font:500 46px Arial,sans-serif;letter-spacing:-1.5px;margin:12px 0}.shows-page main{min-height:60vh}.shows-page footer{max-width:1080px;margin:60px auto 0}.shows-page footer a{font-size:11px;color:#aaa}
@media(max-width:600px){.hero{min-height:485px}.hero-copy{padding-top:225px;padding-bottom:100px}.live-link{font-size:10px;margin-top:14px;padding:12px 22px}.shows-intro{margin:38px auto 15px}.shows-intro h1{font-size:34px}}
.award-credit{display:block;text-decoration:none;margin:0 auto 26px;color:#bda076;line-height:1.7}.award-credit strong{display:block;font:500 12px Arial,sans-serif;letter-spacing:1px}.award-credit span{display:block;font:10px/1.8 Arial,sans-serif;color:#b9a99a;margin-top:5px}.award-credit small{display:block;font:9px/1.7 Arial,sans-serif;color:#8f8278}.social-section+.review-strip{margin-top:20px}
/* Gothic display lettering with readable supporting text. */
:root{--gothic:'Luminari','Trattatello','Palatino Linotype','Book Antiqua',Georgia,serif}
.hero h1.performer-title{font-family:var(--gothic);font-size:65px;font-weight:normal;letter-spacing:-1px;word-spacing:5px;line-height:1.15;text-shadow:0 3px 25px #000a}.character-title{font-family:Georgia,serif;font-size:20px;letter-spacing:1px}.brand{font-family:var(--gothic);font-weight:normal;font-size:13px;letter-spacing:2px}nav a,.outline{font-family:Georgia,serif;font-size:13px;letter-spacing:.3px}.booking h2,.shows-intro h1,.about-content h1{font-family:var(--gothic);font-weight:normal;letter-spacing:0}.booking h2{font-size:31px}.event h3{font-family:Georgia,serif;font-size:24px}.review-strip blockquote{font-family:Georgia,serif}.hero{min-height:490px}.hero-copy{padding-bottom:80px}.social-icons span{font-family:Georgia,serif;font-size:12px}.about-content .about-lead{font-family:Georgia,serif}.shows-intro h1{font-size:48px}@media(max-width:600px){.hero h1.performer-title{font-size:39px;word-spacing:3px;letter-spacing:-.5px}.brand{font-size:11px}nav a,.outline{font-size:11px}.booking h2{font-size:27px}.hero{min-height:395px}.hero-copy{padding-bottom:70px}.character-title{font-size:18px}.event h3{font-size:21px}.shows-intro h1{font-size:36px}.about-content h1{font-size:40px}}
@font-face{font-family:'Pirata One';src:url('assets/PirataOne-Regular.ttf') format('truetype');font-style:normal;font-weight:400;font-display:swap}
:root{--gothic:'Pirata One',Georgia,serif}.hero h1.performer-title{font-family:var(--gothic);font-size:70px;letter-spacing:1px;word-spacing:7px}.brand{font-family:var(--gothic);font-size:15px;letter-spacing:2px}.booking h2{font-family:var(--gothic);font-size:34px}.character-title{font-family:var(--gothic);font-style:normal;font-size:24px;letter-spacing:1px}@media(max-width:600px){.hero h1.performer-title{font-size:43px;letter-spacing:.5px;word-spacing:4px}.brand{font-size:13px}.booking h2{font-size:30px}.character-title{font-size:22px}}

.about-content{align-items:start}.about-content>figure{position:sticky;top:35px;margin-top:65px}.about-content a{color:inherit}.about-awards{list-style:none;padding:22px 0;margin:24px 0;border-top:1px solid #ffffff20;border-bottom:1px solid #ffffff20;display:grid;grid-template-columns:1fr 1fr;gap:25px;font:12px/1.8 Arial,sans-serif;color:#baa68c}.about-awards a{text-decoration:none}.about-awards strong{font-weight:500;color:#e0d3bf}.about-reviews blockquote{border:0;border-left:1px solid #65463f;margin:25px 0;padding-left:18px}.about-reviews blockquote>p:not(.review-stars){font:italic 18px/1.5 Georgia,serif;color:#d4c6b9}.about-reviews .review-stars{font-size:11px;color:#c5a174}.about-reviews cite{font:10px Arial,sans-serif;color:#ab9786}@media(max-width:900px){.about-content>figure{position:static;margin-top:0}}@media(max-width:600px){.about-awards{grid-template-columns:1fr;gap:17px}}
/* Keep the About portrait visible before the biography on narrow screens. */
@media(max-width:900px){.about-content>figure{grid-row:1;justify-self:center;width:min(100%,360px);margin:0}.about-content>figure img{max-height:440px;object-fit:cover;object-position:50% 35%}.about-content{gap:30px;margin-top:30px}}
/* Gothic navigation, kept compact and readable. */
nav{border-color:#78545b66;background:linear-gradient(130deg,#21171bde,#130e13ed);box-shadow:inset 0 1px 0 #c39b7a19,0 8px 28px #0006}nav a,.outline{font-family:'Pirata One',Georgia,serif;font-weight:400;font-size:18px;letter-spacing:.6px;color:#ded2c1}nav a:hover,nav a[aria-current="page"]{color:#f3dfbf;background:#6a243333;text-shadow:0 0 15px #bd647955}.outline{background:#70233722}nav a:focus-visible{outline-color:#b77783}@media(max-width:600px){nav a,.outline{font-size:16px;padding:8px 14px!important}}

/* Selected photographs and films. */
.gallery-content{max-width:1080px;margin:55px auto;padding:0 25px}.gallery-content h1,.gallery-content h2{font-family:"Pirata One",Georgia,serif;font-weight:400}.gallery-content h1{font-size:52px}.gallery-content h2{font-size:30px;margin-top:45px}.gallery-video-links{display:flex;flex-wrap:wrap;gap:16px}.gallery-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}.gallery-grid figure{margin:0}.gallery-grid img{display:block;width:100%;height:480px;object-fit:cover;border:1px solid #78545b66}.gallery-grid figcaption{font:11px/1.6 Arial,sans-serif;color:#baa68c;margin-top:9px}@media(max-width:600px){.gallery-grid{grid-template-columns:1fr}.gallery-grid img{height:auto}.gallery-content{margin-top:30px}}

/* Full-screen responsive homepage photography. */
body.home-page{max-width:none}
.home-page>header{position:absolute;inset:0 0 auto;z-index:5;background:linear-gradient(#090609b3,transparent);border:0}
.home-page .hero{position:relative;display:flex;align-items:flex-end;justify-content:center;width:100%;min-height:100vh;min-height:100svh;isolation:isolate}
.home-page .hero>.hero-slideshow{position:absolute;inset:0;left:0;top:0;transform:none;margin:0;width:100%;max-width:none;height:100%;mask-image:none;-webkit-mask-image:none;z-index:-2;background:#171313}
.home-page .hero>.hero-slideshow .slide{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 35%;filter:saturate(.65) brightness(.8)}
.home-page .hero>.hero-slideshow:after{background:linear-gradient(180deg,#09060940 0%,transparent 35%,#100b10a6 75%,#171313 100%);z-index:1}
.home-page .hero-copy{align-self:auto;width:100%;padding:230px 24px 100px;text-align:center;z-index:2}
.home-page .hero>.hero-slideshow figcaption{bottom:18px;right:20px;z-index:2}
.home-page .hero:after{display:none}
.home-page .hero .slideshow-controls{bottom:38px;z-index:3}
@media(max-width:600px){.home-page .hero-copy{padding:210px 18px 115px}.home-page .hero>.hero-slideshow .slide{object-fit:cover;object-position:50% 30%}.home-page .hero>.hero-slideshow .slide:first-child{object-position:50% 40%}.home-page .hero>.hero-slideshow figcaption{font-size:8px;bottom:14px;right:14px}.home-page .hero h1.performer-title{font-size:clamp(32px,9vw,48px)}}

/* Gallery preserves full compositions and keeps credits beneath each image. */
.gallery-grid{align-items:start;gap:30px}
.gallery-grid figure{position:static;background:none;min-width:0}
.gallery-grid figure:after{display:none}
.gallery-grid figure>a{display:block}
.gallery-grid figure img{position:static;display:block;width:100%;height:auto;max-height:none;object-fit:contain;filter:none;border:1px solid #78545b44}
.gallery-grid figcaption{position:static;font:11px/1.6 Arial,sans-serif;color:#baa68c;letter-spacing:.3px;margin-top:9px}
.gallery-videos{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px;max-width:840px}
.gallery-videos article{min-width:0}
.gallery-videos iframe{display:block;width:100%;height:590px;border:1px solid #78545b66;border-radius:8px;background:#21171b}
.gallery-videos article>a{display:inline-block;margin-top:12px;font-size:12px}
.gallery-content section{margin-bottom:55px}
@media(max-width:600px){.gallery-videos{grid-template-columns:1fr;gap:30px}.gallery-videos iframe{height:560px}.gallery-grid{gap:25px}.gallery-content h1{font-size:42px}}

/* Give the two selected films a clear featured position. */
.gallery-content section[aria-labelledby="video-heading"]{padding:26px clamp(16px,4vw,40px) 35px;border:1px solid #87505c66;border-radius:12px;background:radial-gradient(ellipse at top,#64232b44,transparent 80%);margin-top:25px}
.gallery-content #video-heading{margin-top:0;font-size:36px}
.gallery-videos{max-width:900px;margin:auto;gap:32px}
.video-feature-label{font:18px "Pirata One",Georgia,serif;color:#eee4cb;margin:0 0 14px;letter-spacing:.5px}
.gallery-videos iframe{height:620px;box-shadow:0 12px 35px #0005}
.gallery-videos article>a.button{display:block;text-align:center;padding:12px 18px;border-radius:4px;background:#6e2634;margin-top:16px}
@media(max-width:600px){.gallery-content #video-heading{font-size:30px}.gallery-videos iframe{height:520px}.gallery-videos{gap:32px}}

/* The homepage slideshow stays locked to the viewport while content scrolls. */
body.home-page{isolation:isolate;background:#100b10}
.home-page .hero{isolation:auto;overflow:visible;background:transparent}
.home-page .hero>.hero-slideshow{position:fixed;inset:0;transform:none;width:100%;height:100vh;height:100dvh;max-width:none;margin:0;z-index:-2;pointer-events:none;mask-image:none;-webkit-mask-image:none}
.home-page .hero>.hero-slideshow .slide{width:100%;height:100%;object-fit:cover;object-position:50% 35%}
.home-page .hero>.hero-slideshow:after{position:absolute;inset:0;background:linear-gradient(180deg,#0b070b45,#0b070b20 35%,#0b070b99);z-index:1}
.home-page .hero>.hero-slideshow figcaption{position:absolute;bottom:max(12px,env(safe-area-inset-bottom));right:16px;z-index:2}
.home-page .social-section,.home-page .review-strip,.home-page .booking,.home-page footer{position:relative;background:#100b10b8;backdrop-filter:blur(3px)}
.home-page .hero-copy{padding-bottom:115px}
.home-page footer{padding-bottom:42px}
@media(max-width:600px){.home-page .hero>.hero-slideshow{height:100vh;height:100dvh}.home-page .hero>.hero-slideshow .slide{object-fit:cover;object-position:50% 30%}.home-page .hero>.hero-slideshow .slide:first-child{object-position:50% 40%}.home-page .hero{min-height:100svh}.home-page .hero-copy{padding-bottom:125px}}

/* Let the locked photographs show through the homepage content. */
.home-page .social-section,.home-page .review-strip,.home-page .booking,.home-page footer{background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none;box-shadow:none;border-color:transparent}
.home-page .booking:before,.home-page .booking:after{display:none}
.home-page .review-strip,.home-page .booking,.home-page .social-section{text-shadow:0 2px 14px #000}

/* Compact content over the full-screen, locked background. */
.home-page .hero{min-height:0;height:auto;padding-top:155px}
.home-page .hero-copy{padding:40px 20px 24px}
.home-page .hero h1.performer-title{font-size:clamp(36px,5vw,60px);margin:0 0 4px}
.home-page .character-title{margin:4px 0 0}
.home-page .social-section{padding:8px 18px!important;margin:0 auto}
.home-page .review-strip{min-height:0;margin-top:8px;padding:8px 20px}
.home-page .review-strip #review-quote{min-height:92px}
.home-page .review-strip blockquote{margin:8px auto}
.home-page .booking{padding:16px 20px!important}
.home-page .booking h2{margin:4px 0 10px;font-size:29px}
.home-page .booking p{margin:5px 0}
.home-page footer{padding-top:15px;padding-bottom:35px}
@media(max-width:600px){.home-page .hero{min-height:0;padding-top:140px}.home-page .hero-copy{padding:25px 16px 18px}.home-page .hero h1.performer-title{font-size:36px}.home-page .social-icons svg{width:38px;height:38px}.home-page .social-icons{gap:45px}.home-page .review-strip #review-quote{min-height:105px}.home-page .booking{padding:12px 16px!important}.home-page .booking h2{font-size:26px}.home-page footer{padding-top:10px}}

/* A spacious first screen: portrait, identity, socials, then one review. */
.home-page .landing-screen{min-height:100svh;display:flex;flex-direction:column;justify-content:flex-end;padding:130px 20px 28px;gap:14px}
.home-page>header{justify-content:center;padding:25px 16px}
.home-page>header>.brand{display:none}
.home-page>header nav{margin:0;width:auto}
.home-page .hero{padding:0;min-height:0;flex:0 0 auto}
.home-page .hero-copy{padding:0 10px;text-align:center}
.home-page .hero h1.performer-title{font-size:clamp(36px,5vw,62px);line-height:1.1;margin:0 0 6px}
.home-page .character-title{font-size:19px;margin:0}
.home-page .social-section{padding:0!important;margin:0;width:100%;flex:0 0 auto}
.home-page .social-icons{display:flex;justify-content:center;gap:24px}
.home-page .social-icons a{display:flex;align-items:center;justify-content:center;width:44px;height:44px;padding:8px;border:0;background:none}
.home-page .social-icons svg{width:26px;height:26px;margin:0}
.home-page .social-icons span,.home-page .social-icons small{display:none}
.home-page .review-strip{width:100%;max-width:640px;margin:12px auto 0;padding:0;min-height:0;flex:0 0 auto}
.home-page .review-strip #review-quote{min-height:105px;display:flex;flex-direction:column;justify-content:center}
.home-page .review-strip blockquote{font-size:18px;line-height:1.4;margin:5px auto;padding:0;max-width:580px}
.home-page .review-stars{margin:0;font-size:12px}
.home-page .review-source{font-size:10px;margin:5px 0}
.home-page .review-buttons{margin-top:6px;gap:20px;opacity:.5}
.home-page .review-buttons button{font-size:9px}
.home-page .booking{padding:70px 20px 45px!important;scroll-margin-top:25px}
.home-page footer{padding-top:20px;padding-bottom:45px}
@media(max-width:600px){.home-page .landing-screen{padding:110px 18px 30px;gap:12px}.home-page>header{padding-top:20px;align-items:center}.home-page .hero{padding:0;min-height:0}.home-page .hero-copy{padding:0}.home-page .hero h1.performer-title{font-size:clamp(32px,9vw,44px)}.home-page .character-title{font-size:17px}.home-page .social-icons{gap:20px}.home-page .social-icons svg{width:25px;height:25px}.home-page .review-strip{margin-top:8px}.home-page .review-strip blockquote{font-size:16px}.home-page .review-strip #review-quote{min-height:120px}.home-page .booking{padding:65px 18px 40px!important}}
@media(max-height:600px) and (min-width:601px){.home-page .landing-screen{padding-top:100px;gap:6px}.home-page .review-strip{margin-top:0}}

/* Fusion preview: theatrical photography with calm, distinct sections. */
body.home-page{background:#120e11}
.home-page>header{position:absolute;padding:25px 5%;justify-content:space-between;align-items:center;background:linear-gradient(#100a10aa,transparent)}
.home-page>header>.brand{display:block;font-family:'Pirata One',Georgia,serif;font-size:18px;letter-spacing:.8px}
.home-page>header>.brand small{font:italic 11px Georgia,serif;margin-top:3px}
.home-page nav{background:#160f16b3;box-shadow:none;border-color:#ad7b6b55}
.home-page nav a,.home-page nav .outline{font:13px Georgia,serif;letter-spacing:.3px;padding:10px 18px!important}
.home-page .hero{position:relative;isolation:isolate;overflow:hidden;min-height:700px;min-height:88svh;display:flex;align-items:flex-end;justify-content:center;padding:0}
.home-page .hero>.hero-slideshow{position:absolute;inset:0;width:100%;height:100%;z-index:-2;mask-image:none;-webkit-mask-image:none}
.home-page .hero>.hero-slideshow .slide{object-fit:cover;object-position:50% 35%;filter:saturate(.72) brightness(.85)}
.home-page .hero>.hero-slideshow:after{background:linear-gradient(180deg,#120e1133,transparent 40%,#120e11c9 85%,#120e11)}
.home-page .hero>.hero-slideshow figcaption{bottom:16px;right:22px;font-size:8px;opacity:.65}
.home-page .hero-copy{padding:260px 20px 90px;width:100%}
.home-page .hero h1.performer-title{font-size:clamp(48px,7vw,90px);line-height:1.1;letter-spacing:0;text-shadow:0 4px 35px #000b}
.home-page .hero h1.performer-title:after{display:block;height:22px;opacity:.75}
.home-page .character-title{font:italic 22px Georgia,serif;color:#dbb8ae;margin-top:10px}
.home-page .social-section{background:#120e11;padding:40px 20px 22px!important;position:relative;isolation:isolate}
.home-page .social-icons{gap:44px}
.home-page .social-icons a{width:auto;height:auto;min-width:70px;display:flex;flex-direction:column;padding:8px}
.home-page .social-icons svg{width:31px;height:31px;margin:0 auto 10px}
.home-page .social-icons span{display:block;font:12px Georgia,serif}
.home-page .social-icons small{display:none}
.home-page .social-nudge{display:block;top:0;left:calc(50% - 150px);opacity:.65;transform:scale(.8)}
.home-page .review-strip{background:#120e11;width:100%;max-width:none;padding:35px max(22px,calc((100% - 680px)/2)) 45px;margin:0;border:0}
.home-page .review-strip #review-quote{min-height:125px}
.home-page .review-strip blockquote{font:italic 23px/1.45 Georgia,serif;max-width:640px}
.home-page .review-stars{color:#c6a87a;font-size:12px;letter-spacing:3px}
.home-page .review-source{margin-top:12px;color:#b6a89b;font-size:10px;letter-spacing:.6px}
.home-page .booking{background:radial-gradient(ellipse at 50% 110%,#511b2b77,transparent 80%),#120e11;padding:65px 20px 75px!important;border-top:1px solid #79534b44}
.home-page .booking h2{font:38px 'Pirata One',Georgia,serif;margin-bottom:18px}
.home-page .booking p{font:12px Georgia,serif;color:#b5a294;margin-bottom:15px}
.home-page .booking .email{font:17px Georgia,serif;color:#e8ddc7}
.home-page footer{background:#100d10;padding:28px 5%;border-top:1px solid #79534b33}
.home-page .atmosphere{height:1100px;opacity:.5}
@media(max-width:600px){.home-page>header{justify-content:center;padding:20px 10px}.home-page>header>.brand{display:none}.home-page nav a,.home-page nav .outline{padding:10px 14px!important;font-size:12px}.home-page .hero{min-height:82svh;padding:0}.home-page .hero-copy{padding:220px 18px 65px}.home-page .hero h1.performer-title{font-size:44px}.home-page .character-title{font-size:19px}.home-page .hero>.hero-slideshow .slide{object-position:50% 30%}.home-page .hero>.hero-slideshow .slide:first-child{object-position:50% 40%}.home-page .social-section{padding-top:40px!important}.home-page .review-strip{padding:28px 24px 35px}.home-page .review-strip blockquote{font-size:20px}.home-page .review-strip #review-quote{min-height:145px}.home-page .booking{padding:50px 20px 60px!important}.home-page .booking h2{font-size:32px}.home-page footer{flex-direction:column;gap:12px;text-align:center}}

/* A compact gothic menu and a portrait emerging from darkness. */
.home-page>header{justify-content:center;padding:24px 12px;background:transparent}
.home-page>header>.brand{display:none}
.home-page>header nav{display:flex;width:max-content;max-width:100%;justify-content:center;gap:5px;margin:0;padding:0;background:transparent;border:0;border-radius:0;box-shadow:none}
.home-page nav a,.home-page nav .outline{font:19px 'Pirata One',Georgia,serif;letter-spacing:.5px;padding:9px 13px!important;border:0;border-radius:0;background:transparent;color:#e0d1bc}
.home-page nav a:first-child{color:#c77884}
.home-page nav a:hover{color:#fff0db;background:transparent;text-shadow:0 0 16px #a62a48}
.home-page .hero>.hero-slideshow{background:#120e11}
.home-page .hero>.hero-slideshow .slide{object-fit:contain;object-position:50% 20%;filter:saturate(.7) brightness(.8)}
.home-page .hero>.hero-slideshow:after{background:radial-gradient(ellipse 65% 85% at 50% 35%,transparent 22%,#120e1170 65%,#120e11 100%),linear-gradient(180deg,#120e1140,transparent 25%,#120e11 98%)}
.home-page .hero h1.performer-title{font-size:clamp(43px,5.5vw,72px)}
@media(max-width:600px){.home-page>header{padding-top:20px}.home-page nav a,.home-page nav .outline{font-size:18px;padding:9px 12px!important}.home-page .hero>.hero-slideshow .slide:first-child{object-fit:cover;object-position:50% 35%}.home-page .hero>.hero-slideshow:after{background:radial-gradient(ellipse 90% 75% at 50% 33%,transparent 12%,#120e1166 65%,#120e11 100%),linear-gradient(180deg,#120e1144,transparent 25%,#120e11 98%)}.home-page .hero h1.performer-title{font-size:40px}}
.home-page>header{width:100%;left:0;right:0;align-items:center}.home-page>header nav{margin-inline:auto!important;align-self:center}

/* About shares the homepage's dark photographic treatment. */
.about-page{background:#120e11;max-width:none}
.about-page>header{position:relative;justify-content:center;align-items:center;gap:0;padding:24px 12px;border:0;background:transparent}
.about-page>header>.brand{display:none}
.about-page>header nav{display:flex;align-self:center;justify-content:center;width:max-content;max-width:100%;margin:0 auto;padding:0;gap:5px;background:transparent;border:0;border-radius:0;box-shadow:none}
.about-page nav a,.about-page nav .outline{font:19px 'Pirata One',Georgia,serif;letter-spacing:.5px;padding:9px 13px!important;border:0;background:transparent;color:#e0d1bc}
.about-page nav a[aria-current="page"]{color:#c77884;text-shadow:none}
.about-page .about-content{display:flex;flex-direction:column;gap:0;max-width:760px;margin:0 auto;padding:0 25px 45px}
.about-page .about-content>figure{order:-1;position:relative;top:auto;align-self:center;justify-self:auto;width:min(100vw,660px);height:520px;margin:-20px -25px 10px;background:#120e11;overflow:hidden}
.about-page .about-content>figure img{position:static;display:block;width:100%;height:100%;max-height:none;object-fit:cover;object-position:50% 32%;filter:saturate(.65) brightness(.8);border:0}
.about-page .about-content>figure:after{content:'';display:block;position:absolute;inset:0;background:radial-gradient(ellipse 70% 85% at 50% 36%,transparent 20%,#120e1166 65%,#120e11 100%),linear-gradient(0deg,#120e11,transparent 45%);pointer-events:none}
.about-page .about-content>figure figcaption{position:absolute;z-index:2;bottom:15px;left:0;right:0;text-align:center;font:9px Georgia,serif;color:#a89689;letter-spacing:.3px}
.about-page .about-content h1{font:36px 'Pirata One',Georgia,serif;letter-spacing:0;margin:15px 0 25px;color:#eee4cb}
.about-page .about-content>div{width:100%;max-width:620px;margin:0 auto}
.about-page .about-content p{font:16px/1.9 Georgia,serif;color:#c9bdad;margin:0 0 24px}
.about-page .about-content .about-lead{font:20px/1.65 Georgia,serif;color:#eee4cb}
.about-page .about-content p a{font:inherit;text-decoration-color:#86515c}
.about-page .about-awards{gap:28px;padding:24px 0;margin:32px 0;border-color:#79534b44;list-style:none}
.about-page .review-strip{background:#120e11;max-width:760px;margin:0 auto;padding:35px 25px 45px}
.about-page .review-strip blockquote{font:italic 22px/1.45 Georgia,serif}
.about-page .review-stars{color:#c6a87a}
.about-page footer{background:#100d10;border-top:1px solid #79534b33;padding:28px 5%}
@media(max-width:600px){.about-page>header{padding:20px 10px}.about-page nav a,.about-page nav .outline{font-size:18px;padding:9px 12px!important}.about-page .about-content{padding:0 24px 30px;margin:0 auto;gap:0}.about-page .about-content>figure{width:100vw;height:440px;margin:-10px -24px 5px}.about-page .about-content h1{font-size:32px;margin-top:10px}.about-page .about-content p{font-size:15px;line-height:1.85}.about-page .about-content .about-lead{font-size:19px}.about-page .review-strip blockquote{font-size:20px}.about-page footer{flex-direction:column;text-align:center;gap:14px}}

.about-page .selected-work{margin:38px 0;padding:30px 0;border-top:1px solid #79534b44;border-bottom:1px solid #79534b44}
.about-page .selected-work h2{font:27px 'Pirata One',Georgia,serif;letter-spacing:0;margin:0 0 25px;color:#eee4cb}
.about-page .selected-work dl{display:grid;grid-template-columns:1fr 1fr;gap:26px 24px;margin:0}
.about-page .selected-work dt{font:18px/1.5 Georgia,serif;color:#e0d1bc}
.about-page .selected-work dd{font:12px/1.6 Arial,sans-serif;color:#aa948a;margin:5px 0 0}
@media(max-width:600px){.about-page .selected-work dl{grid-template-columns:1fr;gap:22px}.about-page .selected-work h2{font-size:25px}}

.about-page .brand-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px;align-items:start;text-align:center}
.about-page .brand-strip img{position:static;display:block;width:100%;height:60px;object-fit:contain;filter:grayscale(1);opacity:.8}
.about-page .brand-strip .netflix-mark{height:55px;width:32px;margin:0 auto 5px}
.about-page .brand-strip p{font:10px/1.5 Arial,sans-serif;margin:14px 0 0;color:#aa948a}
.stamptown-mark{height:60px;display:flex;align-items:center;justify-content:center;font:bold 18px/1 Arial,sans-serif;letter-spacing:-.8px;color:#e0d1bc}
.about-page .selected-work .tour-credit{font:12px Georgia,serif;color:#aa948a;margin:28px 0 0;text-align:center}
.about-page .favourite-haunt{text-align:center;margin:40px 0;padding:10px 0 25px}
.about-page .favourite-haunt p{font:italic 18px Georgia,serif;color:#c8b09e;margin-bottom:20px}
.about-page .favourite-haunt img{position:static;display:block;width:240px;max-width:80%;height:auto;margin:auto;filter:grayscale(1);opacity:.85}
@media(max-width:600px){.about-page .brand-strip{grid-template-columns:1fr 1fr;gap:30px 25px}}

.about-page .favourite-haunt img{width:300px;max-width:85%;filter:none;opacity:.9}

.gallery-track{position:relative;display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:0;scrollbar-width:thin;scrollbar-color:#79534b #120e11}
.gallery-track figure{flex:0 0 100%;min-width:0;margin:0;position:relative;background:transparent;scroll-snap-align:start;scroll-snap-stop:always;padding:0 0 12px}
.gallery-track figure:after{display:none}
.gallery-track figure>a{display:block;background:#0c090c}
.gallery-track figure img{position:static;display:block;width:100%;height:min(70svh,680px);object-fit:contain;filter:none}
.gallery-track figcaption{position:static;text-align:center;padding:12px 10px 0;font:11px/1.6 Georgia,serif;color:#baa68c}
.gallery-controls{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-top:18px;color:#baa68c;font:12px Georgia,serif}
.gallery-controls button{border:1px solid #79534b77;background:#24151d;color:#eee4cb;padding:10px 16px;font:13px Georgia,serif;cursor:pointer}
.gallery-page{background:#120e11}.gallery-page>header{justify-content:center;align-items:center;border:0;padding:24px 12px}.gallery-page>header>.brand{display:none}.gallery-page>header nav{width:max-content;margin:auto;background:none;border:0;box-shadow:none;gap:5px;padding:0}.gallery-page nav a,.gallery-page nav .outline{font:19px 'Pirata One',Georgia,serif;background:none;border:0;padding:9px 13px!important}.gallery-page nav a[aria-current]{color:#c77884}
.about-page .selected-stages{margin:38px 0;padding:25px 0;border-bottom:1px solid #79534b44}
.about-page .selected-stages h2{font:27px 'Pirata One',Georgia,serif;margin:0 0 22px;letter-spacing:0}
.selected-stages ul{padding:0;list-style:none}.selected-stages li{padding:12px 0}.selected-stages li a{font:17px Georgia,serif;text-decoration:none}.selected-stages li span{display:block;font:11px/1.6 Arial,sans-serif;color:#aa948a;margin-top:5px}
@media(max-width:600px){.gallery-track figure img{height:62svh}.gallery-controls button{padding:10px 12px}.gallery-page nav a,.gallery-page nav .outline{font-size:18px;padding:9px 12px!important}}

/* Click-to-load social films, with a quiet matching card treatment. */
.film-cards{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.film-open{display:block;width:100%;border:0;padding:0;background:transparent;color:#eee4cb;text-align:left;cursor:pointer}
.film-art{position:relative;display:flex;align-items:center;justify-content:center;aspect-ratio:4/3;border:1px solid #79534b66;background:#21151d}
.film-art:before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse,#79534b22,transparent 70%)}
.film-art-tiktok:after{content:'UH OH';position:absolute;inset:auto 0 22px;text-align:center;font:28px 'Pirata One',Georgia,serif;color:#c8b09a;letter-spacing:3px}
.film-art-instagram:after{content:'THE MASTER';position:absolute;inset:auto 0 22px;text-align:center;font:28px 'Pirata One',Georgia,serif;color:#c8b09a;letter-spacing:2px}
.film-play{display:flex;align-items:center;justify-content:center;width:56px;height:56px;border:1px solid #c8b09a77;border-radius:50%;font-size:17px;padding-left:3px;background:#120e1177;transition:transform .2s,background .2s}
.film-open:hover .film-play{transform:scale(1.08);background:#74273d}
.film-title{display:block;font:18px Georgia,serif;padding:16px 0}.film-title small{display:block;font:11px Arial,sans-serif;color:#aa948a;margin-top:8px}
#film-dialog{width:min(450px,calc(100vw - 24px));max-height:calc(100dvh - 24px);padding:18px;background:#120e11;color:#eee4cb;border:1px solid #79534b88;border-radius:8px;overflow:auto}
#film-dialog::backdrop{background:#050307e8;backdrop-filter:blur(6px)}
.film-dialog-top{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:14px}.film-dialog-top h2{font:21px 'Pirata One',Georgia,serif;margin:0;letter-spacing:0}
#film-close{font:12px Arial,sans-serif;color:#eee4cb;background:transparent;border:1px solid #79534b77;padding:8px 10px;cursor:pointer}
#film-player iframe{display:block;width:100%;height:min(66dvh,640px);border:0;background:#0c090c}#film-external{display:inline-block;margin-top:15px;font:12px Georgia,serif}.film-modal-open{overflow:hidden}
@media(max-width:600px){.film-cards{gap:18px}.film-art{aspect-ratio:3/4}.film-title{font-size:15px}.film-art-tiktok:after,.film-art-instagram:after{font-size:20px}.film-play{width:46px;height:46px}}

/* Compact venue credits with a consistent rhythm. */
.about-page .selected-stages ul{display:grid;grid-template-columns:1fr 1fr;column-gap:28px;row-gap:0;margin:0}
.about-page .selected-stages li{padding:17px 0;border-top:1px solid #79534b2b;line-height:1.45}
.about-page .selected-stages li a{font:16px/1.5 Georgia,serif;color:#e0d1bc;text-decoration:none;display:inline-block}
.about-page .selected-stages li a:hover{color:#e7abb4;opacity:1}
.about-page .selected-stages li span{font:11px/1.6 Arial,sans-serif;color:#a89288;margin-top:6px}
@media(max-width:600px){.about-page .selected-stages ul{grid-template-columns:1fr}.about-page .selected-stages li{padding:14px 0}}

/* Haunted-house atmosphere: quiet wallpaper, warm light, generous space. */
:root{--black:#110e10;--ivory:#e9ddc5;--muted:#baa991;--red:#692837}
body:not(:has(#editor-form)){background-color:#110e10;background-image:radial-gradient(ellipse at 15% 15%,#76482512,transparent 55%),url('assets/haunted-wallpaper.svg');color:#e9ddc5}
.home-page,.about-page,.gallery-page,.shows-page{background-color:#110e10;background-image:radial-gradient(ellipse at 12% 12%,#76482514,transparent 55%),url('assets/haunted-wallpaper.svg')}
.home-page .hero>.hero-slideshow{background:#110e10}
.home-page .hero>.hero-slideshow:after{background:radial-gradient(ellipse 65% 85% at 50% 35%,transparent 22%,#110e1070 65%,#110e10 100%),linear-gradient(180deg,#110e1040,transparent 25%,#110e10 98%)}
.home-page .social-section,.home-page .review-strip,.home-page .booking,.home-page footer,.about-page footer,.gallery-page footer,.about-page .review-strip{background:transparent;border:0;backdrop-filter:none}
.home-page .social-section{padding-top:46px!important}.home-page .review-strip{padding-top:30px;padding-bottom:55px}
.home-page .booking{background:radial-gradient(ellipse at 50% 100%,#6d35231a,transparent 70%);border:0;padding-top:60px!important}
.home-page>header nav,.about-page>header nav,.gallery-page>header nav,.shows-page>header nav{background:transparent;box-shadow:none;border:0}
.home-page nav a,.home-page nav .outline,.about-page nav a,.about-page nav .outline,.gallery-page nav a,.gallery-page nav .outline,.shows-page nav a,.shows-page nav .outline{color:#dfcfae;transition:color .2s,text-shadow .2s}
nav a:hover,nav a[aria-current="page"]{color:#e9bb9a!important;background:transparent!important;text-shadow:0 0 16px #ca794b44!important}
.home-page .hero-copy,.about-page h1,.gallery-page h1{filter:drop-shadow(0 2px 15px #cb793317)}
.about-page .about-content{max-width:780px;padding-bottom:25px}
.about-page .about-content>div{max-width:620px}
.about-page .about-content>figure{background:#110e10}
.about-page .about-content>figure:after{background:radial-gradient(ellipse 70% 85% at 50% 36%,transparent 20%,#110e1066 65%,#110e10 100%),linear-gradient(0deg,#110e10,transparent 45%)}
.about-page .about-content p{color:#c6b8a0;line-height:1.9}
.about-page .selected-work,.about-page .selected-stages{border:0;margin:48px 0;padding:0}
.about-page .selected-work h2,.about-page .selected-stages h2{font-size:26px;margin-bottom:25px;color:#dcc8a6}
.about-page .selected-stages ul{grid-template-columns:1fr 1fr;column-gap:32px;row-gap:20px}
.about-page .selected-stages li{border:0;padding:0}
.about-page .selected-stages li a{font-size:15px}.about-page .selected-stages li span{font-size:10px;line-height:1.7;color:#a28d79}
.about-page .favourite-haunt{padding:25px 0 20px;margin:40px 0}
.about-page .favourite-haunt p{color:#c5a983}
.about-page .award-note{font:11px/1.9 Arial,sans-serif!important;text-align:center;color:#a48c73!important;margin:25px 0 40px!important}
.about-page .about-content>div>.button{display:block;width:max-content;max-width:100%;margin:0 auto 30px;border:1px solid #94635055;border-radius:2px;background:#52232d55;font:15px 'Pirata One',Georgia,serif;padding:14px 24px}
.gallery-content section[aria-labelledby="video-heading"]{border:0;background:transparent;padding:0;margin-top:35px}
.film-art{border-color:#8e65473d;background:radial-gradient(ellipse at 50% 0%,#794b2a18,transparent 80%),#171014}
.gallery-controls button{background:#54253233;border-color:#805c4144}
.gallery-page footer,.shows-page footer,.about-page footer{padding-top:35px;padding-bottom:40px}
.shows-page>header{justify-content:center;align-items:center;border:0;padding:24px 12px}.shows-page>header>.brand{display:none}.shows-page>header nav{width:max-content;margin:auto;gap:5px;padding:0}.shows-page nav a,.shows-page nav .outline{font:19px 'Pirata One',Georgia,serif;padding:9px 13px!important;border:0;background:none}
@keyframes haunted-reveal{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
.about-page .about-content>div,.gallery-content,.shows-intro{animation:haunted-reveal .7s ease both}
@media(max-width:600px){.about-page .selected-stages ul{grid-template-columns:1fr 1fr;gap:22px 20px}.about-page .selected-stages li a{font-size:14px}.about-page .selected-work,.about-page .selected-stages{margin:38px 0}.shows-page nav a,.shows-page nav .outline{font-size:18px;padding:9px 12px!important}.home-page .hero>.hero-slideshow:after{background:radial-gradient(ellipse 90% 75% at 50% 33%,transparent 12%,#110e1066 65%,#110e10 100%),linear-gradient(180deg,#110e1144,transparent 25%,#110e10 98%)}}
@media(max-width:360px){.about-page .selected-stages ul{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.about-page .about-content>div,.gallery-content,.shows-intro{animation:none}}

/* Optional theatrical atmosphere, always off until the visitor asks. */
.haunted-controls{position:relative;z-index:3;display:flex;justify-content:center;flex-wrap:wrap;gap:14px;padding:12px 20px 0}
.haunted-controls button{font:13px Georgia,serif;color:#c8b99c;border:1px solid #8b655044;background:#27151d66;border-radius:3px;padding:12px 16px;cursor:pointer;transition:background .2s,color .2s}
.haunted-controls button:hover,.haunted-controls button[aria-pressed="true"]{color:#f1e2c6;background:#65293c66;border-color:#a06c5866}
.stage-smoke{position:fixed;inset:0;z-index:2;pointer-events:none;overflow:hidden;opacity:0;transition:opacity 2s}
.smoke-on .stage-smoke{opacity:1}
.stage-smoke span{position:absolute;left:-35%;bottom:-20%;width:150%;height:70%;background:radial-gradient(ellipse at 25% 65%,#d1c3d35c,transparent 45%),radial-gradient(ellipse at 70% 60%,#b7a1bc40,transparent 48%);filter:blur(35px);animation:stage-fog 24s ease-in-out infinite alternate;animation-play-state:paused}
.stage-smoke span:nth-child(2){bottom:0;left:-15%;opacity:.6;animation-duration:31s;animation-delay:-12s}
.stage-smoke span:nth-child(3){bottom:25%;left:-30%;opacity:.3;animation-duration:37s;animation-delay:-20s}
.smoke-on .stage-smoke span{animation-play-state:running}
@keyframes stage-fog{from{transform:translate(-8%,10%) scale(1)}to{transform:translate(15%,-12%) scale(1.15)}}
@media(max-width:600px){.haunted-controls{gap:10px;padding:8px 14px 0}.haunted-controls button{font-size:12px;padding:11px 12px}.stage-smoke span{height:65%;filter:blur(24px)}}
@media(prefers-reduced-motion:reduce){.stage-smoke span{animation:none}.stage-smoke{transition:none}}

/* Gothic brass-and-burgundy switches, with a theatrical vape reveal. */
.haunted-controls{gap:18px;padding-top:18px}
.haunted-controls button{position:relative;display:flex;align-items:center;justify-content:center;gap:8px;min-height:52px;font:18px 'Pirata One',Georgia,serif;letter-spacing:.4px;padding:13px 23px;color:#ddc8a5;background:linear-gradient(135deg,#361923,#190f17 60%,#351922);border:1px solid #92604f88;border-radius:3px 14px 3px 14px;box-shadow:inset 0 0 0 3px #130c1288,inset 0 0 0 4px #966b3922,0 4px 18px #0006;text-shadow:0 2px 6px #000}
.haunted-controls button:before,.haunted-controls button:after{content:'✦';font:9px Georgia,serif;color:#a36b58;position:absolute;top:calc(50% - 6px)}
.haunted-controls button:before{left:8px}.haunted-controls button:after{right:8px}
.haunted-controls button:hover{border-color:#b97a68;background:linear-gradient(135deg,#532133,#21121c);box-shadow:inset 0 0 0 3px #130c1288,0 0 20px #a42e4e22}
.haunted-controls button:focus-visible{outline:2px solid #dbb582;outline-offset:5px}
.haunted-controls .vape-mode{color:#e5d0b7;background:linear-gradient(135deg,#482035,#1b111c)}
.vape-icon{display:block;width:60px;height:28px;flex-shrink:0;filter:drop-shadow(0 0 4px #c6607933)}
.vape-burst{position:fixed;inset:0;pointer-events:none;z-index:20;overflow:hidden}
.vape-puff{position:absolute;left:var(--puff-x);top:var(--puff-y);width:clamp(130px,24vw,260px);aspect-ratio:1;border-radius:50%;background:radial-gradient(ellipse at 40% 42%,#e2dce4a6,#c2b5cc88 30%,#a598b344 52%,transparent 72%);filter:blur(14px);opacity:0;will-change:transform,opacity}
@media(max-width:600px){.haunted-controls{gap:12px}.haunted-controls button{font-size:16px;padding:12px 20px;min-height:50px}.vape-icon{width:48px}.vape-puff{filter:blur(10px)}}
@media(prefers-reduced-motion:reduce){.vape-puff{opacity:.18;transform:translate(-50%,-50%);width:150px}.haunted-controls button{transition:none}}

/* Slow red theatrical lighting, controlled by the visitor. */
.spooky-light-wash{position:fixed;inset:0;pointer-events:none;z-index:1;opacity:0;background:radial-gradient(ellipse at 50% 15%,#b5123277,transparent 70%),linear-gradient(110deg,#8e092955,transparent 60%,#a00d3044);mix-blend-mode:screen;transition:opacity .8s}
.spooky-light-on .spooky-light-wash{animation:crypt-light 3.6s ease-in-out infinite}
@keyframes crypt-light{0%,100%{opacity:.08}50%{opacity:.68}}
@media(prefers-reduced-motion:reduce){.spooky-light-on .spooky-light-wash{animation:none;opacity:.35}}

/* Over-the-top haunted ballroom lighting. */
.spooky-light-wash{z-index:2;mix-blend-mode:screen;background:radial-gradient(ellipse at 50% 8%,#ff123dcc,transparent 65%),radial-gradient(ellipse at 0% 75%,#8f13dfaa,transparent 70%),radial-gradient(ellipse at 100% 70%,#dc082baa,transparent 65%)}
.spooky-light-on .spooky-light-wash{animation:haunted-ballroom 5s ease-in-out infinite}
.spooky-light-wash:before{content:'';position:absolute;inset:-40%;background:conic-gradient(from 0deg at 50% 0%,transparent 150deg,#8b39d566 165deg,transparent 180deg,#ff173a66 195deg,transparent 210deg);filter:blur(16px);transform-origin:50% 20%;animation:crypt-beams 8s ease-in-out infinite alternate;animation-play-state:paused}
.spooky-light-on .spooky-light-wash:before{animation-play-state:running}
.spooky-light-wash:after{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 50% 50%,transparent 20%,#16000a99 100%);box-shadow:inset 0 0 100px #7c002e88}
.spooky-light-on .hero-slideshow img{filter:saturate(.95) brightness(.75) contrast(1.15)!important}
.spooky-light-on .hero h1{color:#f0c5b6;text-shadow:0 0 25px #ed163b88,0 3px 5px #000}
@keyframes haunted-ballroom{0%,100%{opacity:.38}35%{opacity:.92}65%{opacity:.6}82%{opacity:.88}}
@keyframes crypt-beams{from{transform:rotate(-22deg) scale(1.05)}to{transform:rotate(22deg) scale(1.25)}}
@media(prefers-reduced-motion:reduce){.spooky-light-on .spooky-light-wash{animation:none;opacity:.7}.spooky-light-wash:before{animation:none;transform:rotate(12deg)}}

/* Quiet controls beneath the menu; a monochrome haunted thunderstorm. */
.home-page .haunted-controls{position:absolute;top:80px;left:0;right:0;z-index:6;padding:0 15px;gap:16px;align-items:center}
.home-page .haunted-controls button{min-height:36px;padding:7px 8px;font:12px Georgia,serif;letter-spacing:.2px;color:#c4b49f;background:#120e1155;border:0;border-radius:0;box-shadow:none;text-shadow:0 1px 5px #000;gap:5px}
.home-page .haunted-controls button:before,.home-page .haunted-controls button:after{display:none}
.home-page .haunted-controls button:hover,.home-page .haunted-controls button[aria-pressed="true"]{color:#f0dfc6;background:#351d2855;box-shadow:none}
.home-page .haunted-controls .vape-icon{width:38px;height:20px}
.spooky-light-wash{mix-blend-mode:screen;background:radial-gradient(ellipse at 25% 0%,#e3e9ffcc,transparent 75%),linear-gradient(125deg,#586aaf99,transparent 65%);transition:opacity .6s}
.spooky-light-on .spooky-light-wash{animation:haunted-thunder 7.5s linear infinite}
.spooky-light-wash:before{inset:0;background:linear-gradient(108deg,transparent 0 48%,#ecedff99 49%,transparent 50%),linear-gradient(75deg,transparent 0 64%,#ccd9ff66 65%,transparent 66%);filter:blur(3px);transform:none;animation:none;opacity:.3}
.spooky-light-wash:after{box-shadow:inset 0 0 130px #1b234e88;background:radial-gradient(ellipse at 50% 45%,transparent 15%,#00061277 100%)}
.spooky-light-on .hero>.hero-slideshow .slide{filter:grayscale(1) sepia(.18) hue-rotate(170deg) saturate(.7) brightness(.64) contrast(1.7)!important;transition:filter 1.5s;animation:haunted-portrait 7.5s linear infinite}
.spooky-light-on .hero h1{color:#d9dce8;text-shadow:0 0 22px #9cace766,0 3px 8px #000}
@keyframes haunted-thunder{0%,24%,43%,100%{opacity:.04}28%{opacity:.9}35%{opacity:.12}61%{opacity:.08}66%{opacity:.7}75%{opacity:.04}}
@keyframes haunted-portrait{0%,24%,43%,100%{filter:grayscale(1) brightness(.62) contrast(1.7)}28%{filter:grayscale(1) brightness(1.1) contrast(2)}35%{filter:grayscale(1) brightness(.7) contrast(1.8)}61%{filter:grayscale(1) brightness(.62) contrast(1.7)}66%{filter:grayscale(1) brightness(.95) contrast(2)}75%{filter:grayscale(1) brightness(.62) contrast(1.7)}}
@media(max-width:600px){.home-page .haunted-controls{top:70px;gap:8px;padding:0 8px}.home-page .haunted-controls button{font-size:10px;padding:8px 5px;min-height:36px}.home-page .haunted-controls .vape-icon{width:28px}}
@media(prefers-reduced-motion:reduce){.spooky-light-on .spooky-light-wash{animation:none;opacity:.25}.spooky-light-on .hero>.hero-slideshow .slide{animation:none;filter:grayscale(1) brightness(.72) contrast(1.6)!important}}

/* Final polish: a clear shows link and classic forked lightning. */
header nav a[href="shows.html"]{color:#e1a6af!important;text-shadow:0 0 12px #982d4822}
header nav a[href="shows.html"]:after{content:'';display:block;height:1px;width:16px;margin:5px auto -6px;background:#ba6175}
.spooky-light-wash:before{inset:0;background:url('assets/lightning-bolts.svg') center top/cover no-repeat;filter:drop-shadow(0 0 13px #b9caff);opacity:1;transform:none;animation:none}
.spooky-light-wash{background:radial-gradient(ellipse at 50% 0%,#abbffb55,transparent 75%);mix-blend-mode:screen}
.spooky-light-on .spooky-light-wash{animation:classic-lightning 7.5s linear infinite}
@keyframes classic-lightning{0%,24%,43%,61%,80%,100%{opacity:0}28%{opacity:1}35%{opacity:.12}66%{opacity:.85}74%{opacity:.08}}
.home-page .haunted-controls button{min-height:44px}
.about-page .about-content p{margin-bottom:23px}
@media(max-width:600px){.home-page .hero h1.performer-title{font-size:clamp(32px,9vw,42px)}.home-page .haunted-controls{top:70px;gap:4px;flex-wrap:wrap}.home-page .haunted-controls button{min-height:44px;font-size:11px;padding:8px 7px}.home-page .haunted-controls .vape-icon{width:26px}.spooky-light-wash:before{background-size:auto 100%;background-position:center top}.about-page .about-content p{font-size:16px}.about-page .selected-stages li a{font-size:15px}.gallery-controls button{min-height:44px}.film-open{min-height:44px}}
@media(prefers-reduced-motion:reduce){.spooky-light-on .spooky-light-wash{animation:none;opacity:.2}.spooky-light-wash:before{filter:none}}

@media(max-width:600px){.home-page .haunted-controls{display:grid;grid-template-columns:auto auto auto;justify-content:center;gap:4px}.home-page .haunted-controls button{font-size:10px;white-space:nowrap;padding:7px 5px}}

/* A photographic social panel with reliable direct profile links. */
.social-photo-collage{position:relative;display:grid;grid-template-columns:1fr 1.15fr 1fr;height:340px;gap:5px;overflow:hidden;background:#110e10;border:1px solid #805c4144}
.social-photo-collage>img{position:static;display:block;width:100%;height:100%;min-height:0;object-fit:cover;filter:saturate(.65) brightness(.72)}
.social-photo-collage>img:nth-child(2){object-position:50% 48%}
.social-photo-collage:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent 35%,#110e11d9);pointer-events:none}
.collage-title{position:absolute;left:28px;bottom:24px;z-index:1;color:#eee1c8;font:46px 'Pirata One',Georgia,serif;text-shadow:0 2px 16px #000}
.collage-title span{display:block;font:italic 17px Georgia,serif;margin-top:5px}
.collage-links{display:flex;justify-content:center;gap:35px;padding:20px 0 5px}.collage-links a{font:17px 'Pirata One',Georgia,serif;color:#e0c9a7;padding:10px;min-height:44px;text-decoration:none}.collage-links a:hover{color:#e9abb7}
.collage-credits{font:10px/1.6 Georgia,serif!important;color:#9d8c78!important;text-align:center;margin:5px 0 0!important}
@media(max-width:600px){.social-photo-collage{height:280px;gap:3px;grid-template-columns:1fr 1.1fr 1fr}.collage-title{left:18px;bottom:20px;font-size:36px}.collage-title span{font-size:14px}.collage-links{gap:25px}}

.online-presence{max-width:520px;margin:0 auto 60px}
.online-presence h2{text-align:center}
.online-still{display:block;position:relative;max-width:350px;margin:auto;text-decoration:none;border:1px solid #805c4144}
.online-still img{position:static;display:block;width:100%;height:auto;filter:none}
.online-still span{display:block;text-align:center;padding:14px 10px;font:14px Georgia,serif;background:#171014;color:#e0c9a7}
.online-still:hover{opacity:.9}
@media(max-width:600px){.online-still{max-width:300px}.online-presence h2{font-size:28px}}

/* Small illustrated atmosphere switches with captions underneath. */
.home-page .haunted-controls{display:grid;grid-template-columns:repeat(3,minmax(0,125px));justify-content:center;gap:12px;top:76px}
.home-page .haunted-controls button{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:7px;min-height:72px;width:100%;padding:6px 4px;font:10px/1.35 Georgia,serif;color:#ccbea8;background:transparent;border:0;box-shadow:none;text-shadow:0 2px 8px #000;white-space:normal}
.home-page .haunted-controls button:hover,.home-page .haunted-controls button[aria-pressed="true"]{color:#f2dfbf;background:transparent;filter:drop-shadow(0 0 6px #d7967755)}
.home-page .haunted-controls #spooky-music:before{content:'♫';display:block;position:static;font:31px/32px Georgia,serif;color:#cbbb9e}
.home-page .haunted-controls #spooky-light:before{content:'ϟ';display:block;position:static;font:39px/32px Georgia,serif;color:#cbbb9e}
.home-page .haunted-controls #smoke-machine:before{display:none}
.home-page .haunted-controls button:after{display:none}
.home-page .haunted-controls .vape-icon{width:59px;height:32px;filter:drop-shadow(0 2px 7px #0008)}
.home-page .haunted-controls #smoke-machine span{display:block;min-height:14px}
@media(max-width:600px){.home-page .haunted-controls{top:70px;grid-template-columns:repeat(3,minmax(0,110px));gap:4px;padding:0 10px}.home-page .haunted-controls button{font-size:9px;min-height:72px;padding:5px 2px;white-space:normal}.home-page .haunted-controls .vape-icon{width:54px;height:30px}}

/* A quiet atmosphere corner below contact, away from the main portrait. */
.home-page .haunted-controls{position:relative;top:auto;left:auto;right:auto;width:min(100%,470px);margin:0 auto 35px;padding:15px 16px 0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;z-index:6;opacity:.8}
.home-page .haunted-controls:hover,.home-page .haunted-controls:focus-within{opacity:1}
.home-page .haunted-controls button{min-height:78px;font:10px/1.4 Georgia,serif;color:#b4a38d;padding:4px;gap:7px;white-space:normal}
.home-page .haunted-controls .emile-smoke-icon{position:static;display:block;width:70px;height:45px;object-fit:contain;filter:none}
.home-page .haunted-controls #spooky-music:before,.home-page .haunted-controls #spooky-light:before{height:45px;line-height:45px;font-size:29px;color:#b4a38d}
@media(max-width:600px){.home-page .haunted-controls{position:relative;top:auto;gap:8px;padding:10px 18px 0;margin-bottom:25px;grid-template-columns:repeat(3,minmax(0,1fr))}.home-page .haunted-controls button{font-size:9px;min-height:78px;padding:3px}.home-page .haunted-controls .emile-smoke-icon{width:66px;height:44px}}

/* Optional effects tucked into a small panel on the portrait. */
.home-page .spooky-panel{position:absolute;right:24px;bottom:48px;z-index:8;text-align:right}
#spooky-panel-toggle{font:16px 'Pirata One',Georgia,serif;color:#d4c0a1;background:#160f16a6;border:1px solid #8c624844;padding:9px 15px;border-radius:3px;cursor:pointer;text-shadow:0 2px 5px #000}
#spooky-panel-toggle:hover,#spooky-panel-toggle[aria-expanded="true"]{color:#f0ddbd;border-color:#b17c6266}
#spooky-panel-content{position:absolute;bottom:calc(100% + 10px);right:0;width:340px;max-width:calc(100vw - 32px);padding:12px 8px;background:#130d14ed;border:1px solid #8c624855;border-radius:5px;box-shadow:0 8px 30px #0008;text-align:center}
#spooky-panel-content[hidden]{display:none}
.home-page #spooky-panel-content .haunted-controls{position:relative;top:auto;left:auto;right:auto;width:100%;margin:0;padding:0;gap:4px;opacity:1}
.home-page #spooky-panel-content .haunted-controls button{min-height:78px;padding:3px}
@media(max-width:600px){.home-page .spooky-panel{right:16px;bottom:44px}#spooky-panel-toggle{font-size:15px;padding:9px 13px}#spooky-panel-content{width:310px}.home-page #spooky-panel-content .haunted-controls{margin:0;padding:0;gap:3px}}

.collage-links{flex-wrap:wrap;gap:22px}.home-page .social-icons{gap:30px}@media(max-width:600px){.home-page .social-icons{gap:20px}.collage-links{gap:12px}}

/* Centre the complete social-link groups on every screen size. */
.home-page .social-section{width:100%;max-width:none;margin-inline:auto;text-align:center}
.home-page .social-icons{display:flex;align-items:center;justify-content:center;width:max-content;max-width:100%;margin:0 auto;gap:30px;transform:none;left:auto;right:auto}
.home-page .social-icons>a{flex:0 0 82px;width:82px;min-width:0;align-items:center;text-align:center;margin:0}
.collage-links{display:flex;align-items:center;justify-content:center;width:100%;margin-inline:auto;text-align:center}
@media(max-width:600px){.home-page .social-icons{gap:16px}.home-page .social-icons>a{flex-basis:76px;width:76px}}

/* Soft oval darkness frames the portrait, like the original treatment. */
.home-page .hero>.hero-slideshow:after{background:radial-gradient(ellipse 48% 64% at 50% 40%,transparent 24%,#110e1144 49%,#110e11cf 76%,#110e11 100%),linear-gradient(180deg,#110e1155,transparent 25%,#110e11 98%)}
@media(max-width:600px){.home-page .hero>.hero-slideshow:after{background:radial-gradient(ellipse 65% 61% at 50% 39%,transparent 23%,#110e1144 47%,#110e11c9 77%,#110e11 100%),linear-gradient(180deg,#110e1144,transparent 25%,#110e11 98%)}}

/* A pronounced oval portrait fading directly into black. */
.home-page .hero{background:#110e10}
.home-page .hero>.hero-slideshow{mask-image:radial-gradient(ellipse 48% 62% at 50% 39%,#000 30%,#000b 58%,transparent 92%);-webkit-mask-image:radial-gradient(ellipse 48% 62% at 50% 39%,#000 30%,#000b 58%,transparent 92%)}
.home-page .hero>.hero-slideshow:after{background:linear-gradient(180deg,#110e1022,transparent 30%,#110e10 99%)}
@media(max-width:600px){.home-page .hero>.hero-slideshow{mask-image:radial-gradient(ellipse 61% 59% at 50% 38%,#000 27%,#000a 55%,transparent 91%);-webkit-mask-image:radial-gradient(ellipse 61% 59% at 50% 38%,#000 27%,#000a 55%,transparent 91%)}}

/* A small blood-drop pointer for mouse devices, with native fallbacks. */
@media(hover:hover) and (pointer:fine){body,body a,body button,body summary{cursor:url('assets/blood-cursor.svg') 8 3,auto}body a,body button,body summary{cursor:url('assets/blood-cursor.svg') 8 3,pointer}body input,body textarea,[contenteditable="true"]{cursor:text}}
@media(forced-colors:active){body,body a,body button,body summary{cursor:auto}body a,body button{cursor:pointer}}

.home-page .social-icons>a{justify-content:center;min-height:44px}.home-page .social-icons svg{margin:0 auto}.home-page .social-icons span,.home-page .social-icons small{display:none}

/* Match the homepage's soft oval portrait treatment on About. */
.about-page .about-content>figure{background:transparent;mask-image:radial-gradient(ellipse 48% 62% at 50% 40%,#000 30%,#000b 58%,transparent 92%);-webkit-mask-image:radial-gradient(ellipse 48% 62% at 50% 40%,#000 30%,#000b 58%,transparent 92%)}
.about-page .about-content>figure:after{background:linear-gradient(180deg,#110e1022,transparent 30%,#110e10 99%)}
@media(max-width:600px){.about-page .about-content>figure{mask-image:radial-gradient(ellipse 61% 59% at 50% 39%,#000 27%,#000a 55%,transparent 91%);-webkit-mask-image:radial-gradient(ellipse 61% 59% at 50% 39%,#000 27%,#000a 55%,transparent 91%)}}
.about-page .about-content>figure{mask-image:none;-webkit-mask-image:none}.about-page .about-content>figure img{mask-image:radial-gradient(ellipse 48% 62% at 50% 40%,#000 30%,#000b 58%,transparent 92%);-webkit-mask-image:radial-gradient(ellipse 48% 62% at 50% 40%,#000 30%,#000b 58%,transparent 92%)}
@media(max-width:600px){.about-page .about-content>figure img{mask-image:radial-gradient(ellipse 61% 59% at 50% 39%,#000 27%,#000a 55%,transparent 91%);-webkit-mask-image:radial-gradient(ellipse 61% 59% at 50% 39%,#000 27%,#000a 55%,transparent 91%)}}
