@import url('https://fonts.googleapis.com/css2?family=Oswald:wght@500;600;700&family=Road+Rage&family=Rubik+Dirt&family=Creepster&family=Caveat+Brush&family=Nosifer&family=Anton&display=swap');
:root{color-scheme:dark;--orange:#ff6a13;--purple:#a04cc3;--cream:#e9dfcd;--black:#08080b;--line:#49334f}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:20px}body{margin:0;background:var(--black);color:var(--cream);font:16px/1.6 Arial,sans-serif}a{color:inherit}button,input{font:inherit}:focus-visible{outline:3px solid #ff9f56;outline-offset:5px}.skip{position:fixed;top:-100px;left:20px;background:var(--orange);color:#000;padding:12px;z-index:50}.skip:focus{top:10px}svg{width:46px;height:46px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.site-header{height:72px;padding:0 7%;display:flex;align-items:center;justify-content:space-between;gap:25px;border-bottom:1px solid #8f459a;background:#08080bf5}.site-header nav{display:flex;gap:clamp(20px,3.2vw,48px);align-items:center}.site-header nav a{text-decoration:none;text-transform:uppercase;font:600 16px 'Oswald',sans-serif;letter-spacing:.8px}.site-header nav a:first-child,.site-header nav a:hover{color:var(--orange)}.ticket-button{display:inline-flex;align-items:center;justify-content:center;gap:12px;background:var(--orange);color:#080808;text-transform:uppercase;text-decoration:none;font:700 30px/1.3 'Oswald',Impact,sans-serif;padding:16px 36px;clip-path:polygon(2% 0,22% 2%,42% 0,58% 2%,76% 0,97% 2%,98% 16%,100% 23%,99% 42%,100% 67%,98% 82%,99% 97%,78% 100%,54% 98%,32% 100%,15% 98%,1% 100%,2% 84%,0 72%,1% 54%,0 29%,2% 18%)}.ticket-button:hover{background:#ff9a47}.ticket-button:focus-visible{clip-path:none}.ticket-button.small{font-size:21px;padding:10px 30px;white-space:nowrap}.hero{position:relative;min-height:630px;background:#1a1021 url('assets/haunted-mill.png') center 46%/cover;display:flex;align-items:center;isolation:isolate;overflow:hidden}.hero:before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#09080b55 0%,#0b081310 52%,transparent 76%),linear-gradient(0deg,#08080b60,transparent 30%)}.hero-copy{width:60%;text-align:center;padding:40px 15px 65px 4%}.mill-title{font:400 clamp(48px,7.5vw,110px)/1.1 'Rubik Dirt',Impact,sans-serif;text-transform:uppercase;margin:0 0 4px;text-shadow:3px 3px 0 #09080b}h1{margin:0;text-transform:uppercase;text-shadow:3px 4px 0 #09080b}h1 span{display:block;color:var(--orange);font:400 clamp(72px,11.7vw,170px)/.95 'Road Rage',Impact,sans-serif}h1 em{display:block;color:var(--purple);font:400 clamp(48px,8.1vw,116px)/1.1 'Road Rage',Impact,sans-serif}.brush{font:400 36px/1.15 'Road Rage',Impact,sans-serif;text-transform:uppercase}.tagline{color:#ff923f;margin:22px 0 0;transform:rotate(-2deg);font-size:clamp(25px,3.1vw,43px)}.tagline:after{content:'';display:block;width:50%;height:3px;background:var(--orange);margin:16px auto 0;transform:rotate(-3deg)}.dare{position:absolute;right:3%;bottom:40px;color:var(--orange);font-size:48px;text-align:center;transform:rotate(-7deg);text-shadow:2px 3px #000}.event-strip{display:grid;grid-template-columns:1fr 1fr 1.2fr .9fr;padding:22px 4%;gap:20px;border-top:1px solid #77706d;background:#08080b}.event-fact{display:flex;gap:17px;align-items:center;text-decoration:none;border-right:1px solid #392c35}.event-fact:last-child{border:0}.event-fact svg,.symbol{color:var(--orange)}.symbol{font:50px/1 Arial,sans-serif}.event-fact p{font:600 17px/1.4 'Oswald',sans-serif;text-transform:uppercase;letter-spacing:.4px;margin:0}.event-fact p span{color:#bab1ab;font-size:14px}.event-fact[href] p span{display:block;color:var(--orange);font-size:12px}.age-icon{font:600 27px 'Oswald',sans-serif;border:3px solid var(--orange);color:var(--orange);border-radius:50%;width:57px;height:57px;display:grid;place-items:center;flex-shrink:0}.party-section{border-top:5px solid var(--orange);border-bottom:3px solid var(--orange);padding:35px 4% 28px;text-align:center;background:radial-gradient(ellipse at 50% 70%,#23132255,transparent 65%),#08080b}.features{display:grid;grid-template-columns:repeat(6,1fr);max-width:1250px;margin:0 auto 25px}.feature{border-right:1px solid #362a31;padding:0 12px}.feature:last-child{border:0}.feature svg{color:var(--orange);width:50px;height:50px}.feature h2{font:600 18px/1.3 'Oswald',sans-serif;text-transform:uppercase;letter-spacing:.3px;margin:9px 0}.feature:nth-child(3n) h2{color:#bfcee0}.main-ticket{font-size:clamp(23px,3vw,38px);padding:15px 65px;max-width:100%;flex-wrap:wrap;gap:6px 12px}.main-ticket b{font:500 55px/.7 Arial,sans-serif;margin-left:15px}.highlights{display:grid;grid-template-columns:1fr 1fr;gap:24px;padding:25px 3%;border-bottom:3px solid var(--orange)}.promo-panel{position:relative;min-height:280px;border:2px solid #71318a;box-shadow:inset 0 0 0 5px #08080b,inset 0 0 0 6px #482151;background:radial-gradient(ellipse at 30% 45%,#38144170,transparent 65%);padding:18px;display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:0 8px;overflow:hidden}.reference-art{background-image:url('assets/design-reference.png');background-repeat:no-repeat;flex-shrink:0;mix-blend-mode:lighten}.mask-art{width:180px;height:145px;background-size:1024px 1536px;background-position:-35px -919px}.panel-copy{flex:1;min-width:180px;text-align:center}.panel-copy h2{font:400 43px/1 'Road Rage',Impact,sans-serif;text-transform:uppercase;margin:0}.panel-copy h2 span{display:block;color:var(--purple)}.panel-copy h2 strong{font-weight:400;color:var(--orange);font-size:1.4em;display:block}.panel-note{font-size:26px;line-height:1.1;text-align:center;margin:8px 0 0;flex-basis:100%}.panel-note em{font-style:normal;color:var(--orange)}.shirt-panel{border-color:#69757c;box-shadow:inset 0 0 0 5px #08080b,inset 0 0 0 6px #35434a;background:radial-gradient(ellipse at 30% 45%,#34364060,transparent 65%);flex-wrap:nowrap}.shirt-art{width:250px;height:230px;background-size:1024px 1536px;background-position:-531px -900px}.shirt-panel h2{font:400 clamp(25px,3vw,42px)/1.1 'Rubik Dirt',Impact,sans-serif;text-transform:uppercase;text-align:center;margin:0}.shirt-panel h2 small{display:block;font:600 19px/1.4 'Oswald',sans-serif}.shirt-panel h2 span{display:block;font:600 17px/1.4 'Oswald',sans-serif;color:#a8c4dc;margin-top:10px}.closing-scene{min-height:440px;position:relative;background:linear-gradient(0deg,#08080b 0%,transparent 55%),url('assets/haunted-mill.png') center 60%/cover;padding:60px 5% 20px;display:flex;flex-direction:column;justify-content:space-between}.scene-motto{font:600 27px/1.5 'Oswald',sans-serif;letter-spacing:2px;text-transform:uppercase;margin:0;text-shadow:2px 2px #000}.closing-scene>.brush{text-align:center;font-size:45px;color:var(--orange);margin:50px 0 0}.practical-section{display:grid;grid-template-columns:1.2fr 1fr;gap:8%;padding:50px 6%;border-top:1px solid var(--line)}.practical-section h2{font:600 28px 'Oswald',sans-serif;text-transform:uppercase;margin:0 0 20px}details{border-bottom:1px solid #3b303e;padding:12px 0}summary{cursor:pointer;font:500 18px 'Oswald',sans-serif}details p{color:#c7bfcb}details a,.text-link{color:var(--orange);text-underline-offset:5px}.eyebrow{color:var(--purple);font:600 16px 'Oswald',sans-serif;text-transform:uppercase;letter-spacing:1px}.phone{font:600 30px 'Oswald',sans-serif;color:var(--orange);text-underline-offset:6px}.contact p:not(.eyebrow){color:#bfb5c7}.text-link{font:500 17px 'Oswald',sans-serif}footer{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:30px 6% 110px;border-top:1px solid #302537;text-transform:uppercase;font:500 14px 'Oswald',sans-serif;letter-spacing:1px}footer strong{font:400 25px 'Rubik Dirt',Impact,sans-serif}.music{position:fixed;right:18px;bottom:15px;z-index:10;background:#130f19f5;border:1px solid #784091;padding:10px 14px;display:flex;align-items:center;gap:12px;box-shadow:0 4px 25px #0009}.music button{display:flex;align-items:center;gap:10px;border:0;background:transparent;color:var(--cream);font:500 16px 'Oswald',sans-serif;cursor:pointer;padding:4px}.music button>span:first-child{color:var(--orange)}.music label{font-size:12px;color:#bfb6c6}.music input{width:60px;accent-color:var(--orange)}#audio-status:empty{display:none}#audio-status{font-size:12px;max-width:130px}
@media(min-width:1500px){main,.site-header,footer{max-width:1600px;margin:auto}.hero{min-height:720px}}
@media(max-width:1100px){.hero{min-height:540px}.hero-copy{width:65%}.event-strip{gap:12px;padding:20px 3%}.event-fact{gap:10px}.event-fact p{font-size:15px}.event-fact svg{width:37px}.mask-art{width:150px;background-position:-45px -919px}.shirt-art{width:205px;background-position:-549px -900px}.promo-panel{padding:12px}.panel-copy{min-width:150px}.panel-copy h2{font-size:35px}.shirt-panel h2 small{font-size:16px}.shirt-panel h2 span{font-size:14px}.panel-note{font-size:24px}}
@media(max-width:760px){.site-header{height:auto;min-height:100px;padding:14px 4%;gap:12px;flex-wrap:wrap;justify-content:center}.site-header nav{gap:20px;justify-content:center;flex-wrap:wrap}.site-header nav a{font-size:14px}.ticket-button.small{font-size:17px;padding:7px 24px}.hero{min-height:540px;background-position:62% center;align-items:flex-start}.hero:before{background:linear-gradient(90deg,#08080ba0,#08080b10),linear-gradient(0deg,#08080b60,transparent)}.hero-copy{width:100%;padding:40px 14px 120px}.mill-title{font-size:clamp(46px,11vw,80px)}h1 span{font-size:clamp(65px,17vw,124px)}h1 em{font-size:clamp(46px,12vw,88px)}.tagline{font-size:clamp(26px,5.4vw,40px)}.dare{font-size:35px;right:6%;bottom:5px}.event-strip{grid-template-columns:1fr 1fr;padding:20px 5%;gap:24px 15px}.event-fact:nth-child(2){border:0}.event-fact p{font-size:15px}.event-fact svg{width:34px;height:40px}.age-icon{width:43px;height:43px;font-size:23px}.features{grid-template-columns:repeat(3,1fr);row-gap:25px}.feature:nth-child(3){border:0}.feature h2{font-size:16px}.main-ticket{padding:16px 22px;font-size:23px}.main-ticket span{font-size:20px}.main-ticket b{font-size:38px;margin-left:0}.highlights{grid-template-columns:1fr;padding:22px 4%;gap:20px}.promo-panel{min-height:250px;padding:15px}.mask-art{width:180px;background-position:-35px -919px}.panel-copy h2{font-size:40px}.shirt-art{width:230px;background-position:-541px -900px}.shirt-panel h2{font-size:32px}.closing-scene{min-height:400px;background-position:65% center}.scene-motto{font-size:22px}.closing-scene>.brush{font-size:33px}.practical-section{grid-template-columns:1fr;gap:35px;padding:35px 6%}.music{left:10px;right:10px;bottom:10px;justify-content:center;gap:10px}.music label{margin-left:auto}footer{flex-direction:column;align-items:flex-start;gap:10px}.phone{font-size:28px}}
@media(max-width:390px){.site-header nav{gap:13px}.event-fact{gap:7px}.event-fact p{font-size:13px}.panel-copy h2{font-size:34px}.mask-art{width:140px;background-position:-45px -919px}.shirt-art{width:170px;background-position:-555px -900px}.shirt-panel h2{font-size:28px}.shirt-panel h2 small{font-size:14px}.panel-copy{min-width:120px}.music{padding:8px}.music button{font-size:14px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

h1 span,h1 em,.panel-copy h2{font-family:'Creepster',Impact,sans-serif}.brush{font-family:'Caveat Brush','Road Rage',sans-serif}.ticket-button{background-image:radial-gradient(#1a090970 .6px,transparent 1px);background-size:7px 11px}.party-section{border-top-style:double;border-bottom-style:double}
.mask-art{height:120px}.main-ticket b{flex-shrink:0}@media(max-width:760px){.main-ticket{gap:4px 8px}.main-ticket b{display:none}.shirt-art{width:175px;background-position:-565px -900px}.shirt-panel h2{font-size:27px}.shirt-panel h2 small{font-size:14px}.shirt-panel h2 span{font-size:14px}}
@font-face{font-family:'Another Danger';src:url('assets/another-danger.otf') format('opentype');font-style:normal;font-weight:400;font-display:swap}h1 span,h1 em{font-family:'Another Danger',Impact,sans-serif;font-weight:400;font-style:normal;line-height:1.28}h1 span{font-size:clamp(58px,8.6vw,124px)}h1 em{font-size:clamp(40px,5.8vw,84px)}@media(max-width:760px){h1 span{font-size:clamp(41px,11.4vw,84px)}h1 em{font-size:clamp(28px,7.8vw,58px)}}
/* Chained wooden crate ticket links; labels remain live, accessible text. */
.ticket-button,.ticket-button:hover{
  background-color:#27180e;
  background-image:url('assets/chained-crate.png');
  background-size:100% 100%;
  background-position:center;
  background-repeat:no-repeat;
  clip-path:none;
  color:#fff1ce;
  text-shadow:0 2px 2px #000,0 0 8px #000;
  border:0;
  border-radius:3px;
  box-shadow:0 5px 15px #0008;
  transition:filter .18s,transform .18s;
}
.ticket-button:hover{filter:brightness(1.2);transform:translateY(-2px)}
.ticket-button:active{transform:translateY(1px)}
.ticket-button:focus-visible{outline:3px solid #ffad55;outline-offset:5px}
.ticket-button.small{min-width:205px;min-height:68px;padding:14px 36px;font-size:21px}
.site-header{min-height:88px}
.main-ticket{width:min(840px,100%);min-height:210px;padding:45px 15%;font-size:30px;gap:0 9px;align-content:center}
.main-ticket span{white-space:nowrap}
.main-ticket b{display:none}
@media(max-width:760px){
  .ticket-button.small{min-width:180px;min-height:60px;font-size:18px;padding:12px 30px}
  .main-ticket{min-height:150px;padding:28px 17%;font-size:27px;display:flex;flex-direction:column;gap:5px}
  .main-ticket span{font-size:20px;white-space:normal;line-height:1.25}
}
@media(prefers-reduced-motion:reduce){.ticket-button{transition:none}.ticket-button:hover,.ticket-button:active{transform:none}}

.ticket-button{flex-direction:column;gap:2px}.ticket-button .ticket-dare{font-family:Nosifer,Impact,sans-serif;color:#ff3434;font-weight:400;font-size:20px;line-height:1.6;text-shadow:0 2px 2px #000,0 0 6px #000}.main-ticket{padding:30px 15%;gap:3px}.main-ticket .ticket-price{font-size:23px}.ticket-button.small{min-height:78px;min-width:225px;padding:10px 34px;font-size:18px}.ticket-button.small .ticket-dare{font-size:12px}.site-header{min-height:94px}@media(max-width:760px){.main-ticket{padding:22px 16%;min-height:170px}.main-ticket .ticket-label{font-size:23px}.main-ticket .ticket-price{font-size:19px}.main-ticket .ticket-dare{font-size:16px}.ticket-button.small{min-width:210px;min-height:72px}}

.ticket-button{flex-direction:column}
.ticket-dare{display:block;font-family:'Nosifer',Impact,sans-serif;font-weight:400;color:#ff3434;text-transform:none;line-height:1.6;text-shadow:0 2px 2px #000,0 0 5px #000;white-space:nowrap}
.main-ticket{gap:8px;padding:28px 13%}
.main-ticket .ticket-label{font:700 30px/1.3 'Oswald',sans-serif;white-space:normal}
.main-ticket .ticket-dare{font-size:27px}
.ticket-button.small{min-width:240px;min-height:80px;padding:12px 34px;gap:3px;font-size:18px}
.ticket-button.small .ticket-dare{font-size:13px}
.site-header{min-height:100px}
@media(max-width:760px){.main-ticket{gap:6px;padding:22px 15%;min-height:170px}.main-ticket .ticket-label{font-size:24px}.main-ticket .ticket-label>span{display:block;font-size:18px}.main-ticket .ticket-dare{font-size:19px}.ticket-button.small{min-height:76px;min-width:225px;font-size:17px}.ticket-button.small .ticket-dare{font-size:12px}.site-header{height:auto}}

/* Only the hero MILL CITY text receives the supplied chipped-paint mask.
   The SVG filter removes the texture's baked checkerboard by luminance. */
.mill-title{
  font-family:'Anton',Impact,sans-serif;
  font-weight:400;
  font-style:normal;
  font-size:clamp(48px,7.5vw,110px);
  line-height:1.1;
  text-transform:uppercase;
  letter-spacing:-.025em;
  color:#e8dfcf;
  text-shadow:1px 2px 2px #08070acc;
  -webkit-mask-image:url('assets/mill-city-paint-mask.svg');
  mask-image:url('assets/mill-city-paint-mask.svg');
  -webkit-mask-size:310px auto;
  mask-size:310px auto;
  -webkit-mask-repeat:repeat;
  mask-repeat:repeat;
  -webkit-mask-position:center;
  mask-position:center;
}
@media(max-width:760px){.mill-title{font-size:clamp(46px,11vw,80px);-webkit-mask-size:210px auto;mask-size:210px auto}}
@media(forced-colors:active){.mill-title{-webkit-mask-image:none;mask-image:none;color:CanvasText}}
/* Repeat the hero's live-text typography in the closing signature. */
.event-footer{display:flex;flex-direction:column;align-items:center;gap:0;text-align:center;padding:40px 6% 120px}
.event-footer .mill-title{font-size:clamp(42px,5vw,70px);margin:0 0 5px;-webkit-mask-size:240px auto;mask-size:240px auto}
.footer-event-title{margin:0;text-transform:uppercase;text-shadow:3px 4px 0 #09080b;letter-spacing:0}
.footer-event-title span,.footer-event-title em{display:block;font-family:'Another Danger',Impact,sans-serif;font-weight:400;font-style:normal;line-height:1.28}
.footer-event-title span{color:var(--orange);font-size:clamp(42px,6vw,84px)}
.footer-event-title em{color:var(--purple);font-size:clamp(29px,4.2vw,59px)}
.event-footer .footer-year{font:500 16px 'Oswald',sans-serif;letter-spacing:3px;margin:14px 0 0}
@media(max-width:760px){.event-footer{align-items:center;gap:0}.event-footer .mill-title{font-size:42px;-webkit-mask-size:210px auto;mask-size:210px auto}.footer-event-title span{font-size:clamp(38px,10vw,65px)}.footer-event-title em{font-size:clamp(26px,7vw,45px)}}
