:root{--ink:#11110f;--paper:#f2eee4;--muted:#b7b1a5;--orange:#f05a36;--line:rgba(242,238,228,.18);--mono:"DM Mono",monospace;--sans:"Space Grotesk",sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ink);color:var(--paper);font-family:var(--sans);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}.announcement{height:34px;background:var(--orange);color:#160f0c;display:flex;align-items:center;justify-content:center;gap:12px;font:500 10px var(--mono);letter-spacing:.13em}.pulse,.status-dot{width:7px;height:7px;border-radius:50%;background:currentColor;display:inline-block}.dot{opacity:.55}.site-header{height:88px;padding:0 6vw;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.wordmark{display:flex;align-items:center;gap:12px;font-weight:700;letter-spacing:.08em;font-size:13px}.wordmark small{display:block;font:9px var(--mono);letter-spacing:.13em;color:var(--muted);margin-top:5px}.mark{width:37px;height:37px;display:grid;place-items:center;border:1px solid var(--orange);color:var(--orange);font-size:21px}.main-nav{display:flex;align-items:center;gap:34px;font-size:12px}.main-nav a:not(.nav-cta){color:#c9c4b9}.main-nav a:hover,.text-link:hover{color:var(--orange)}.nav-cta{border:1px solid var(--line);padding:12px 17px}.menu-toggle{display:none}.section-wrap{width:min(1180px,88vw);margin:auto}.hero{min-height:650px;display:grid;grid-template-columns:1fr .9fr;align-items:center;gap:7vw;padding-top:76px;padding-bottom:78px}.eyebrow{font:10px var(--mono);letter-spacing:.18em;color:var(--orange);margin:0 0 24px}.hero h1{font-size:clamp(64px,8.2vw,116px);line-height:.88;letter-spacing:-.085em;margin:0 0 28px;font-weight:600}.hero h1 span,h2 em{color:var(--orange);font-style:normal}.hero-lede{font-size:18px;font-weight:600;margin:0 0 12px}.hero-body{max-width:490px;color:#bcb6aa;line-height:1.75;font-size:14px}.hero-actions{display:flex;align-items:center;gap:24px;margin-top:30px}.button{display:inline-flex;align-items:center;gap:25px;padding:16px 20px;font:11px var(--mono);letter-spacing:.05em}.button-primary{background:var(--orange);color:#160f0c}.button-primary:hover{background:#ff7956}.text-link{font:11px var(--mono);color:#d1cbbf}.micro-note,.fine-print{font:10px var(--mono);color:#8f897f;line-height:1.7}.hero-art{position:relative;padding:0 18px 25px 0}.art-frame{position:relative;aspect-ratio:4/4.5;background:#29251f;border:1px solid #625346;overflow:hidden}.art-frame:before{content:"";position:absolute;inset:0;background:linear-gradient(145deg,rgba(240,90,54,.1),transparent 48%,rgba(0,0,0,.3));z-index:1;pointer-events:none}.art-frame img{width:100%;height:100%;object-fit:cover;display:block}.art-fallback{background:radial-gradient(circle at 65% 35%,#81503d,#342a24 48%,#171613 80%)}.art-caption{position:absolute;bottom:0;left:0;right:0;z-index:2;display:flex;justify-content:space-between;padding:14px;background:rgba(17,17,15,.8);font:9px var(--mono);letter-spacing:.13em}.orbit{position:absolute;border:1px solid var(--orange);color:var(--orange);background:var(--ink);border-radius:50%;display:grid;place-content:center;text-align:center;font:20px var(--mono)}.orbit small{font-size:8px;letter-spacing:.15em}.orbit-one{width:86px;height:86px;right:-20px;top:12%}.orbit-two{width:78px;height:78px;left:-32px;bottom:10%;font-size:13px}.stats{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:28px 0;margin-bottom:130px}.stats div{padding-left:28px;border-left:1px solid var(--line)}.stats div:first-child{border:0;padding-left:0}.stats strong{display:block;font-size:42px;letter-spacing:-.06em;font-weight:500}.stats span{font:9px var(--mono);letter-spacing:.12em;color:var(--muted)}.ticket-section{display:grid;grid-template-columns:.8fr 1.2fr;gap:10%;padding-bottom:140px}.section-heading h2,.routing-top h2,.sound-inner h2,.booking-section h2{font-size:clamp(48px,6vw,78px);line-height:.94;letter-spacing:-.075em;font-weight:500;margin:0}.intro{font-size:19px;line-height:1.55;max-width:650px;margin:0 0 40px}.feature-grid{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line);border:1px solid var(--line)}.feature{background:var(--ink);padding:24px;min-height:175px}.feature-no{font:10px var(--mono);color:var(--orange)}.feature h3{font-size:17px;margin:19px 0 8px}.feature p{font-size:12px;line-height:1.7;color:#aaa498;margin:0}.feature-wide{grid-column:1/-1;display:flex;gap:25px;min-height:auto}.feature-wide h3{margin-top:0}.fine-print{margin-top:18px}.routing-section{background:#e9e4d9;color:var(--ink);padding:105px 0 115px}.routing-top{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:45px}.routing-top .eyebrow{color:#bd452a}.routing-top h2 em{color:#bd452a}.routing-intro{max-width:360px;color:#625d54;font-size:14px;line-height:1.7}.status-note{display:flex;gap:14px;padding:18px 20px;background:#ded8cb;border-left:3px solid var(--orange);margin-bottom:28px}.status-dot{color:#bd452a;flex:none;margin-top:5px}.status-note strong{font-size:12px}.status-note p{font-size:11px;line-height:1.6;color:#655f55;margin:5px 0 0}.route-list{border-top:1px solid #c8c1b5}.route-row{display:grid;grid-template-columns:100px 1.2fr 1fr 145px;align-items:center;gap:20px;padding:17px 10px;border-bottom:1px solid #c8c1b5}.route-date{font:10px var(--mono);color:#6e675d}.route-date b{font-size:19px;color:#1a1916;margin-left:5px}.route-city{font-size:16px;font-weight:600}.route-type{font-size:11px;color:#777064}.route-status{font:9px var(--mono);letter-spacing:.08em;color:#a44730;text-align:right}.how-section{padding-top:130px;padding-bottom:135px;display:grid;grid-template-columns:.8fr 1.2fr;gap:10%}.how-section .eyebrow{margin-bottom:25px}.steps{display:grid;grid-template-columns:1fr 1fr;gap:36px 28px}.steps article{border-top:1px solid var(--line);padding-top:17px}.steps article>span{font:9px var(--mono);color:var(--orange);letter-spacing:.1em}.steps h3{font-size:19px;margin:15px 0 8px}.steps p{font-size:12px;line-height:1.75;color:#aaa498;margin:0}.sound-section{background:#24211d;padding:90px 0}.sound-inner{display:grid;grid-template-columns:1fr .8fr;align-items:center;gap:12%}.sound-inner h2 em{color:var(--orange)}.sound-inner>div:first-child>p:not(.eyebrow){max-width:390px;color:#b8b1a5;font-size:14px;line-height:1.7;margin:24px 0}.button-outline{border:1px solid #746b5f}.button-outline:hover{border-color:var(--orange);color:var(--orange)}.sound-card{min-height:270px;border:1px solid #62594d;padding:25px;display:flex;flex-direction:column;justify-content:space-between;background:radial-gradient(circle at 50% 45%,#49372e,#24211d 70%)}.sound-label,.sound-card small{font:9px var(--mono);letter-spacing:.14em;color:#c0b7a9}.sound-mark{font-size:95px;font-weight:700;letter-spacing:-.12em;color:var(--orange);text-align:center}.sound-mark span{font-size:42px}.sound-card p{font:10px var(--mono);letter-spacing:.12em;margin:0}.booking-section{padding-top:130px;padding-bottom:130px;position:relative}.booking-section h2{font-size:clamp(58px,7vw,90px)}.booking-section h2 em{color:var(--orange)}.booking-copy{max-width:520px;color:#aaa498;font-size:14px;line-height:1.8;margin-top:28px}.booking-stamp{position:absolute;right:5%;top:35%;width:160px;height:160px;border:1px solid var(--orange);border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;transform:rotate(9deg);color:var(--orange)}.booking-stamp span,.booking-stamp small{font:8px var(--mono);letter-spacing:.15em}.booking-stamp strong{font:15px var(--mono);margin:7px 0}.booking-stamp small{font-size:6px}.site-footer{border-top:1px solid var(--line);padding:34px 6vw;display:flex;align-items:center;justify-content:space-between;gap:25px}.footer-meta{display:flex;flex-direction:column;gap:7px;font:8px var(--mono);letter-spacing:.04em;color:#8e887e}.back-top{font:9px var(--mono);color:var(--orange);white-space:nowrap}
@media(max-width:800px){.site-header{height:72px}.menu-toggle{display:block;background:none;border:0;color:var(--paper);font:10px var(--mono)}.menu-toggle span{margin-left:7px}.main-nav{display:none;position:absolute;z-index:10;top:106px;left:0;right:0;background:#1d1c19;padding:22px 6vw;flex-direction:column;align-items:flex-start;border-bottom:1px solid var(--line)}.main-nav.open{display:flex}.hero{grid-template-columns:1fr;padding-top:70px;gap:55px}.hero h1{font-size:clamp(65px,15vw,105px)}.hero-art{width:88%;margin:auto}.stats{margin-bottom:90px}.stats strong{font-size:32px}.stats span{font-size:7px}.ticket-section,.how-section{grid-template-columns:1fr;gap:45px;padding-bottom:95px}.routing-section{padding:80px 0}.routing-top{display:block}.routing-intro{margin-top:25px}.route-row{grid-template-columns:75px 1fr auto;gap:9px}.route-type{grid-column:2;grid-row:2}.route-status{grid-column:3;grid-row:1/3;font-size:7px;max-width:88px}.route-city{font-size:14px}.how-section{padding-top:90px}.sound-inner{grid-template-columns:1fr;gap:45px}.booking-stamp{position:static;margin:45px 0 0 10px;width:140px;height:140px}.site-footer{align-items:flex-start;flex-wrap:wrap}.footer-meta{order:3;width:100%}}
@media(max-width:480px){.announcement{font-size:8px;gap:7px}.hero-actions{align-items:flex-start;flex-direction:column;gap:17px}.stats{grid-template-columns:1fr 1fr;gap:20px}.stats div:nth-child(3){padding-left:0;border-left:0}.feature-grid,.steps{grid-template-columns:1fr}.feature-wide{grid-column:auto;display:block}.feature-wide h3{margin-top:19px}.route-row{grid-template-columns:62px 1fr}.route-status{grid-column:2;grid-row:3;text-align:left}.route-type{grid-column:2;grid-row:2}.route-date b{font-size:17px}.site-footer{padding-left:6vw;padding-right:6vw}.back-top{margin-left:auto}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation-duration:.01ms!important;transition-duration:.01ms!important}}

/* Illustrated tour assets */
.tour-kit-art,.route-art{display:block;width:100%;height:auto;border-radius:18px;margin:28px 0}
.tour-kit-art{max-width:900px;margin:34px auto 20px}
.route-art{max-width:1100px;margin:28px auto 34px;border:1px solid var(--line)}
@media(max-width:640px){.tour-kit-art,.route-art{border-radius:12px;margin:20px 0}}


/* Tour artwork layer — original vector concept pending recovery of supplied artwork */
.hero-art .art-frame{position:relative;overflow:hidden;background:#211c18;min-height:420px}
.hero-illustration{position:relative;width:100%;height:100%;min-height:420px;overflow:hidden;background:#211c18}
.hero-illustration svg{display:block;width:100%;height:100%;min-height:420px;object-fit:cover}
.art-placeholder-note{position:absolute;left:18px;bottom:52px;padding:7px 10px;background:rgba(17,17,15,.82);border:1px solid rgba(240,90,54,.65);color:#f2eee4;font:8px var(--mono);letter-spacing:.12em}
.hero-art .art-caption{position:relative;z-index:2}
.routing-section{position:relative;overflow:hidden}
.routing-section:before{content:"";position:absolute;left:6vw;top:0;bottom:0;width:1px;background:linear-gradient(transparent,rgba(240,90,54,.35),transparent);pointer-events:none}
.route-row{position:relative}
.route-row:before{content:"";position:absolute;left:-1.7rem;top:50%;width:7px;height:7px;border:1px solid var(--orange);border-radius:50%;background:var(--ink);transform:translateY(-50%)}
.feature{position:relative}
.feature-no{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border:1px solid rgba(240,90,54,.55);border-radius:50%;font:10px var(--mono);color:var(--orange)}
.sound-card{position:relative;overflow:hidden}
.sound-card:after{content:"";position:absolute;inset:14px;border:1px solid rgba(240,90,54,.22);pointer-events:none}
@media(max-width:800px){.hero-illustration,.hero-illustration svg{min-height:340px}.routing-section:before{left:4vw}.route-row:before{left:-1.15rem}}


/* Reference design: Kaiser Solzie graphics + four persistent color themes */
:root{--accent:#ff6700;--accent-2:#39ff14;--accent-3:#00f0ff;--surface:#171719;--paper:#f2eee4}
body[data-theme="industrial"]{--ink:#0a0a0c;--paper:#f2eee4;--orange:#ff6700;--accent:#ff6700;--accent-2:#39ff14;--accent-3:#00f0ff}
body[data-theme="warped"]{--ink:#0c0d12;--paper:#fff8e6;--orange:#ffde00;--accent:#ffde00;--accent-2:#ff007f;--accent-3:#00e5ff}
body[data-theme="vinyl"]{--ink:#100e0c;--paper:#f6e8cb;--orange:#ff9f1c;--accent:#ff9f1c;--accent-2:#ffd166;--accent-3:#e71d36}
body[data-theme="zine"]{--ink:#0d0d0d;--paper:#fff;--orange:#d90429;--accent:#d90429;--accent-2:#fff;--accent-3:#a7a7a7}
.announcement{position:relative;isolation:isolate;background:repeating-linear-gradient(135deg,var(--ink) 0 13px,var(--accent) 13px 26px);color:var(--paper);text-shadow:0 1px 3px #000;overflow:hidden}
.announcement:before{content:"";position:absolute;inset:4px 0;background:rgba(0,0,0,.78);z-index:-1}
.mark{color:var(--accent);border-color:var(--accent)}
.mark svg{width:27px;height:27px;display:block}
.theme-switcher{display:flex;align-items:center;gap:7px;margin-left:auto;margin-right:22px}
.theme-switcher>span{font:8px var(--mono);letter-spacing:.15em;color:var(--muted);margin-right:3px}
.theme-switcher button{width:15px;height:15px;padding:0;border-radius:50%;border:1px solid rgba(255,255,255,.5);cursor:pointer;background:var(--swatch);box-shadow:0 0 0 1px rgba(0,0,0,.3)}
.theme-switcher button[data-theme-choice="industrial"]{--swatch:linear-gradient(135deg,#39ff14 0 35%,#ff6700 35% 70%,#00f0ff 70%)}
.theme-switcher button[data-theme-choice="warped"]{--swatch:linear-gradient(135deg,#ffde00 0 35%,#ff007f 35% 70%,#00e5ff 70%)}
.theme-switcher button[data-theme-choice="vinyl"]{--swatch:linear-gradient(135deg,#ff9f1c 0 35%,#ffd166 35% 70%,#e71d36 70%)}
.theme-switcher button[data-theme-choice="zine"]{--swatch:linear-gradient(135deg,#d90429 0 50%,#fff 50%)}
.theme-switcher button[aria-pressed="true"]{outline:2px solid var(--paper);outline-offset:3px}
.sound-art-row{display:flex;align-items:center;justify-content:center;gap:24px;margin:24px auto 18px}
.vinyl-record{width:118px;height:118px;border-radius:50%;display:grid;place-items:center;background:repeating-radial-gradient(circle,#101010 0 3px,#292929 4px 5px,#080808 6px 8px);border:4px solid #080808;box-shadow:0 8px 24px #0008;animation:vinyl-spin 8s linear infinite}
.vinyl-record span{width:36px;height:36px;border-radius:50%;background:var(--accent);border:7px solid #17120d;box-shadow:0 0 0 2px var(--paper)}
.cassette-icon{width:145px;height:auto;color:var(--accent);filter:drop-shadow(0 6px 12px #0008)}
.vu-meter{height:48px;display:flex;align-items:end;justify-content:center;gap:4px;margin:8px auto 18px}
.vu-meter i{display:block;width:7px;height:calc(7px + (var(--n,1) * 1px));border-radius:2px 2px 0 0;background:var(--accent-2);box-shadow:0 0 8px color-mix(in srgb,var(--accent-2),transparent 40%);animation:vu-bounce .72s ease-in-out infinite alternate;animation-delay:calc(var(--i,0) * -.055s)}
.vu-meter i:nth-child(1){--i:1;--n:8}.vu-meter i:nth-child(2){--i:2;--n:16}.vu-meter i:nth-child(3){--i:3;--n:27}.vu-meter i:nth-child(4){--i:4;--n:34}.vu-meter i:nth-child(5){--i:5;--n:18}.vu-meter i:nth-child(6){--i:6;--n:28}.vu-meter i:nth-child(7){--i:7;--n:40}.vu-meter i:nth-child(8){--i:8;--n:32}.vu-meter i:nth-child(9){--i:9;--n:22}.vu-meter i:nth-child(10){--i:10;--n:42}.vu-meter i:nth-child(11){--i:11;--n:34}.vu-meter i:nth-child(12){--i:12;--n:24}.vu-meter i:nth-child(13){--i:13;--n:38}.vu-meter i:nth-child(14){--i:14;--n:29}.vu-meter i:nth-child(15){--i:15;--n:19}.vu-meter i:nth-child(16){--i:16;--n:36}.vu-meter i:nth-child(17){--i:17;--n:27}.vu-meter i:nth-child(18){--i:18;--n:40}.vu-meter i:nth-child(19){--i:19;--n:24}.vu-meter i:nth-child(20){--i:20;--n:33}.vu-meter i:nth-child(21){--i:21;--n:17}
@keyframes vinyl-spin{to{transform:rotate(360deg)}}
@keyframes vu-bounce{from{height:8px;opacity:.65}to{height:var(--n,24px);opacity:1}}
@media(max-width:900px){.theme-switcher{margin-left:auto;margin-right:14px}}
@media(max-width:640px){.theme-switcher{order:2;margin:0 12px 0 auto}.theme-switcher>span{display:none}.theme-switcher button{width:13px;height:13px}.site-header{gap:8px}.menu-toggle{order:3}.sound-art-row{gap:14px}.vinyl-record{width:92px;height:92px}.cassette-icon{width:115px}.vu-meter{gap:3px}.vu-meter i{width:5px}}
@media(prefers-reduced-motion:reduce){.vinyl-record,.vu-meter i{animation:none}}
