*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--black:#000;--white:#fff;--red:#c00;--grey:#111;--grey-mid:#2a2a2a;--grey-text:#555;--font:"Courier New", Courier, monospace}html{scroll-behavior:smooth;background:var(--black)}body{font-family:var(--font);background:var(--black);color:var(--white);font-size:14px;line-height:1.5;overflow-x:hidden}a{color:var(--white);text-decoration:none}img{display:block}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}header{z-index:100;background:var(--black);border-bottom:1px solid var(--red);justify-content:space-between;align-items:center;height:56px;padding:0 24px;display:flex;position:fixed;top:0;left:0;right:0}.logo{align-items:center;display:flex}.logo-img{object-fit:contain;width:auto;height:52px;transition:opacity .15s}.logo:hover .logo-img{opacity:.75}nav{align-items:center;gap:28px;display:flex}nav a{font-family:var(--font);letter-spacing:.12em;text-transform:uppercase;color:var(--grey-text);align-items:center;gap:6px;font-size:11px;transition:color .1s;display:flex}nav a:hover{color:var(--white)}.pill{letter-spacing:.15em;background:var(--grey-mid);color:var(--grey-text);padding:2px 5px;font-size:8px}.menu-toggle{border:1px solid var(--grey-mid);color:var(--white);font-family:var(--font);cursor:pointer;background:0 0;padding:6px 12px;font-size:18px;line-height:1;display:none}.booking-success{z-index:90;width:min(560px,100% - 32px);color:var(--white);background:var(--grey);border:1px solid var(--red);justify-content:space-between;align-items:center;gap:20px;padding:16px 18px;display:flex;position:fixed;top:72px;left:50%;transform:translate(-50%);box-shadow:0 12px 40px #000c}.booking-success[hidden]{display:none}.booking-success strong,.booking-success span{display:block}.booking-success strong{letter-spacing:.2em;color:var(--white);font-size:12px}.booking-success span{letter-spacing:.08em;color:#aaa;margin-top:3px;font-size:10px}.booking-success button{font:20px/1 var(--font);color:var(--white);border:1px solid var(--grey-mid);cursor:pointer;background:0 0;flex:none;padding:4px 8px}.booking-success button:hover{color:var(--white);border-color:var(--red)}.hero{background-color:var(--black);border-bottom:1px solid var(--red);align-items:center;min-height:100svh;padding-top:56px;display:flex;position:relative;overflow:hidden}.hero-content{z-index:1;justify-content:center;align-items:center;width:100%;padding:clamp(32px,6vw,72px) clamp(24px,7vw,96px);display:flex;position:relative}.hero-promo-frame{isolation:isolate;width:min(700px,78vw);line-height:0;position:relative}.hero-promo-frame:before{content:"";z-index:2;pointer-events:none;background-blend-mode:screen;opacity:.7;background:linear-gradient(90deg,#cc00008c,#0000 28% 72%,#cc00008c),linear-gradient(#cc00008c,#0000 28% 72%,#cc00008c);padding:1px;position:absolute;inset:-1px;-webkit-mask-image:linear-gradient(#000 0 0),linear-gradient(#000 0 0);mask-image:linear-gradient(#000 0 0),linear-gradient(#000 0 0);-webkit-mask-position:0 0,0 0;mask-position:0 0,0 0;-webkit-mask-size:auto,auto;mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.hero-promo-frame:after{content:"";z-index:-1;pointer-events:none;filter:blur(12px);background:radial-gradient(#0000 58%,#cc000024 78%,#0000 100%);position:absolute;inset:-14px}.hero-promo{object-fit:cover;opacity:1;width:100%;max-height:72svh}.hero-logo{object-fit:contain;filter:brightness(0)invert()drop-shadow(0 3px 5px #000000a6)drop-shadow(0 0 6px #00000059);z-index:1;width:clamp(150px,24vw,320px);height:auto;position:absolute;bottom:-15%;left:1%}.hero h1{font-family:var(--font);letter-spacing:-.03em;text-transform:uppercase;margin-bottom:32px;font-size:clamp(72px,16vw,210px);font-weight:900;line-height:.85}.sub{color:var(--grey-text);letter-spacing:.12em;border-left:2px solid var(--red);margin-bottom:40px;padding-left:14px;font-size:12px}.btn{font-family:var(--font);letter-spacing:.2em;color:var(--black);background:var(--white);border:2px solid var(--white);padding:13px 26px;font-size:12px;font-weight:700;transition:background .1s,color .1s,border-color .1s;display:inline-block}.btn:hover{background:var(--red);color:var(--white);border-color:var(--red)}.block{border-bottom:1px solid var(--grey-mid);padding:clamp(48px,8vw,100px) clamp(24px,7vw,96px)}.block--dark{background:var(--grey)}.block-label{font-family:var(--font);letter-spacing:.3em;text-transform:uppercase;color:var(--grey-text);border-top:1px solid var(--grey-mid);margin-bottom:40px;padding-top:14px;font-size:10px}.stub{padding-top:48px;padding-bottom:48px}.stub-text{font-family:var(--font);letter-spacing:.2em;color:var(--grey-text);text-transform:uppercase;font-size:12px}.about-copy{max-width:720px;color:var(--white);letter-spacing:.02em;font-family:Georgia,Times New Roman,serif;font-size:clamp(17px,2.2vw,26px);line-height:1.45}.about-copy p+p{color:var(--grey-text);margin-top:20px}.music-teaser{border:1px solid var(--grey-mid);background:var(--black);max-width:980px;margin:0 auto}.music-teaser img{width:100%;height:auto;display:block}.merch-grid{background:var(--grey-mid);border:1px solid var(--grey-mid);grid-template-columns:1fr;gap:1px;max-width:480px;margin-bottom:32px;display:grid}.product{background:var(--black);flex-direction:column;display:flex}.product-img{aspect-ratio:1;background:var(--grey);border-bottom:1px solid var(--grey-mid);cursor:pointer;flex-direction:column;justify-content:center;align-items:center;gap:12px;display:flex;position:relative;overflow:hidden}.shirt-img{object-fit:cover;width:100%;height:100%;transition:opacity .3s;position:absolute;inset:0}.shirt-front{opacity:0}.shirt-back,.shirt-viewer.show-front .shirt-front{opacity:1}.shirt-viewer.show-front .shirt-back{opacity:0}.shirt-label{font-family:var(--font);letter-spacing:.2em;color:var(--white);z-index:2;pointer-events:none;background:#0009;padding:4px 8px;font-size:9px;font-weight:700;transition:opacity .2s;position:absolute;bottom:10px;right:12px}.shirt-sigil{object-fit:contain;z-index:2;pointer-events:none;filter:drop-shadow(0 0 8px #000)drop-shadow(0 0 16px #000)drop-shadow(0 3px 6px #000);width:62px;height:62px;position:absolute;bottom:34px;right:10px}.product-sigil{object-fit:contain;opacity:.18;filter:invert();width:55%;height:auto;position:relative}.product-type{font-family:var(--font);letter-spacing:.3em;color:var(--grey-text);text-transform:uppercase;font-size:10px;position:relative}.product-info{flex-direction:column;flex:1;gap:8px;padding:20px;display:flex}.product-info h2{font-family:var(--font);letter-spacing:.08em;text-transform:uppercase;font-size:14px;font-weight:700}.product-desc{font-family:var(--font);color:var(--grey-text);flex:1;font-size:11px;line-height:1.6}.product-footer{border-top:1px solid var(--grey-mid);justify-content:space-between;align-items:center;margin-top:12px;padding-top:14px;display:flex}.price{font-family:var(--font);letter-spacing:.05em;font-size:15px;font-weight:700}.add-btn{font-family:var(--font);letter-spacing:.2em;text-transform:uppercase;color:var(--white);border:1px solid var(--grey-mid);cursor:pointer;background:0 0;padding:8px 12px;font-size:9px;font-weight:700;text-decoration:none;transition:background .1s,color .1s,border-color .1s;display:inline-block}.product-name{font-family:var(--font);letter-spacing:.1em;text-transform:uppercase;margin-bottom:4px;font-size:12px;font-weight:700}.product-price{font-family:var(--font);color:var(--grey-text);letter-spacing:.05em;margin-bottom:14px;font-size:11px}.checkout-btn{width:100%;font-family:var(--font);letter-spacing:.16em;text-align:center;text-transform:uppercase;color:var(--white);background:var(--red);border:1px solid var(--red);padding:12px 14px;font-size:10px;font-weight:700;transition:background .1s,color .1s;display:block}.checkout-btn:hover{background:var(--white);color:var(--black)}.checkout-note{font-family:var(--font);letter-spacing:.1em;text-align:center;color:var(--grey-text);font-size:8px;line-height:1.5}.add-btn:hover{background:var(--white);color:var(--black);border-color:var(--white)}.merch-note{font-family:var(--font);letter-spacing:.15em;color:var(--grey-text);text-transform:uppercase;font-size:10px}footer{border-top:1px solid var(--red);font-family:var(--font);letter-spacing:.15em;text-transform:uppercase;color:var(--grey-text);justify-content:space-between;align-items:center;padding:18px clamp(24px,7vw,96px);font-size:10px;display:flex}footer a{color:var(--grey-text);transition:color .1s}footer a:hover{color:var(--red)}:focus-visible{outline:2px solid var(--red);outline-offset:2px}@media (width<=680px){header{padding:0 16px}nav{background:var(--black);border-top:1px solid var(--red);flex-direction:column;gap:0;display:none;position:fixed;inset:56px 0 0}nav.is-open{display:flex}nav a{border-bottom:1px solid var(--grey-mid);color:var(--white);pointer-events:all;padding:20px;font-size:14px}.menu-toggle{display:block}.merch-grid{grid-template-columns:1fr}.hero{min-height:auto;padding-top:72px;padding-bottom:48px}.hero-content{padding:20px 16px 0}.hero-promo-frame{width:88vw}.hero-promo{max-height:none}.hero h1{font-size:clamp(64px,21vw,130px)}.hero-logo{width:clamp(120px,36vw,190px)}.hero-sigil{opacity:.05;max-width:90vw}footer{text-align:center;flex-direction:column;gap:8px;padding:18px}}@media (width>=681px) and (width<=900px){.merch-grid{grid-template-columns:repeat(2,1fr)}}
