:root{--bg:#080c08;--panel:#0c110c;--ink:#f4f7f2;--text:#cfe0cf;--muted:rgba(207,224,207,.62);--faint:rgba(207,224,207,.42);--line:rgba(214,217,212,.14);--acid:#4ade80;--acid-hi:#74e0aa;--mono:'Space Mono',ui-monospace,SFMono-Regular,Menlo,monospace;--serif:'Instrument Serif',Georgia,'Times New Roman',serif;--ease:cubic-bezier(.16,1,.3,1)}
*{box-sizing:border-box}
html{background:var(--bg);color-scheme:dark}
body{margin:0;background:var(--bg);color:var(--text);font-family:var(--serif);-webkit-font-smoothing:antialiased;padding-inline:clamp(16px,4vw,48px)}
::selection{background:rgba(74,222,128,.4);color:var(--bg)}
a{color:inherit;text-decoration-color:rgba(74,222,128,.5);text-underline-offset:3px}
:focus-visible{outline:2px solid var(--acid);outline-offset:3px}
img{max-width:100%;height:auto;display:block}
.label{font-family:var(--mono);font-size:11px;font-weight:400;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);margin:0}
.acid{color:var(--acid)}
.bar{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;padding-block:24px;max-width:1080px;margin-inline:auto}
.logo{display:inline-flex;padding-block:8px;color:var(--text)}
.logo svg{height:15px;width:auto;display:block}
.bar-nav{display:flex;gap:10px}
.btn{font-family:var(--mono);font-size:11px;letter-spacing:.18em;text-transform:uppercase;text-decoration:none;padding:11px 15px;border:1px solid var(--line);color:var(--text);display:inline-flex;align-items:center;gap:8px;transition:border-color .2s var(--ease),color .2s var(--ease),background-color .2s var(--ease)}
.btn:hover{border-color:var(--acid);color:var(--acid)}
.btn.solid{background:var(--acid);border-color:var(--acid);color:var(--bg)}
.btn.solid:hover{background:var(--acid-hi);border-color:var(--acid-hi);color:var(--bg)}
.btn.ghost{border-color:transparent;color:var(--muted)}
.page{max-width:1080px;margin-inline:auto;padding-block:clamp(8px,3vw,32px) clamp(48px,8vw,96px)}
h1{font-family:var(--serif);font-weight:400;font-size:clamp(56px,11vw,132px);line-height:.9;letter-spacing:-.01em;color:var(--ink);margin:14px 0 12px}
.tagline{font-style:italic;font-size:clamp(20px,2.6vw,28px);line-height:1.3;color:var(--muted);margin:0;max-width:34ch}
.ticket{display:grid;grid-template-columns:1fr auto;border:1px solid var(--line);background:var(--panel)}
.ticket-main{padding:clamp(22px,4vw,48px);min-width:0}
.crumbs{margin-bottom:22px}
.crumbs a{text-decoration:none}
.crumbs a:hover{color:var(--acid)}
.kicker{color:var(--faint)}
.fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));margin-top:36px;border-top:1px solid var(--line)}
.field{display:flex;flex-direction:column;gap:8px;padding:16px 16px 0 0}
.field .value{font-size:clamp(22px,2.4vw,30px);line-height:1.1;color:var(--ink)}
.stub{position:relative;border-left:1px dashed var(--line);padding:clamp(20px,3vw,32px);display:flex;flex-direction:column;justify-content:space-between;align-items:flex-start;gap:14px;min-width:168px}
.stub::before,.stub::after{content:"";position:absolute;left:-9px;width:17px;height:17px;border-radius:50%;background:var(--bg);border:1px solid var(--line)}
.stub::before{top:-9px}.stub::after{bottom:-9px}
.stub-num{font-size:64px;line-height:1;color:var(--acid);font-style:italic}
.barcode{display:flex;align-items:stretch;height:44px}
.barcode i{display:block;background:var(--text);opacity:.8}
.shot{margin:clamp(28px,5vw,56px) 0 0;border:1px solid var(--line);background:#050805;overflow:hidden}
.chrome-bar{display:flex;align-items:center;gap:7px;padding:10px 14px;border-bottom:1px solid var(--line)}
.chrome-bar span{width:9px;height:9px;border-radius:50%;background:rgba(214,217,212,.18)}
.chrome-bar em{font-style:normal;font-family:var(--mono);font-size:11px;letter-spacing:.06em;color:var(--muted);margin-left:10px;padding:4px 12px;border:1px solid var(--line);border-radius:999px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rail{background:transparent;border:0}
.rail-track{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(10px,2vw,20px)}
.rail-track img{border:1px solid var(--line)}
.section{display:grid;grid-template-columns:150px minmax(0,1fr);gap:24px;padding-block:32px;border-bottom:1px solid var(--line)}
.section:first-of-type{margin-top:clamp(28px,5vw,56px);border-top:1px solid var(--line)}
.section h2 span{color:var(--acid);margin-right:6px}
.section p{font-size:clamp(20px,2.2vw,25px);line-height:1.42;color:var(--text);margin:0;max-width:58ch}
.spec{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:0;margin:0;border-top:1px solid var(--line)}
.spec div{padding:14px 18px 14px 0;border-bottom:1px solid var(--line)}
.spec dt{font-family:var(--mono);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--acid);margin-bottom:6px}
.spec dd{margin:0;font-size:19px;line-height:1.35;color:var(--text)}
.cta{display:flex;flex-wrap:wrap;gap:10px;margin-top:clamp(28px,5vw,48px)}
.pager{display:grid;grid-template-columns:1fr 1fr;gap:1px;margin-top:clamp(48px,8vw,88px);background:var(--line);border:1px solid var(--line)}
.pager a{display:flex;flex-direction:column;gap:10px;padding:24px;background:var(--bg);text-decoration:none;transition:background-color .2s var(--ease)}
.pager a:last-child{text-align:right;align-items:flex-end}
.pager a:hover{background:var(--panel)}
.pager a:hover .pager-title{color:var(--acid)}
.pager-title{font-size:clamp(28px,4vw,44px);line-height:1;color:var(--ink);transition:color .2s var(--ease)}
.intro{padding-block:clamp(16px,4vw,40px) clamp(28px,5vw,48px)}
.cards{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1px;background:var(--line);border:1px solid var(--line)}
.card{background:var(--bg)}
.card a{display:flex;flex-direction:column;gap:12px;height:100%;padding:22px;text-decoration:none;transition:background-color .2s var(--ease)}
.card a:hover{background:var(--panel)}
.card a:hover h2{color:var(--acid)}
.card-media{aspect-ratio:16/10;max-width:100%;overflow:hidden;border:1px solid var(--line);background:#050805;display:flex;align-items:center;justify-content:center}
.card-media img{width:100%;height:100%;object-fit:cover;object-position:top}
.card-blank{font-size:72px;font-style:italic;color:var(--acid)}
.card h2{font-family:var(--serif);font-weight:400;font-size:40px;line-height:1;color:var(--ink);margin:6px 0 0;transition:color .2s var(--ease)}
.card p:last-child{font-size:19px;line-height:1.4;color:var(--muted);margin:0}
.lost{min-height:60vh;display:flex;flex-direction:column;justify-content:center}
.foot{max-width:1080px;margin-inline:auto;display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;padding-block:28px 36px;border-top:1px solid var(--line);font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--faint)}
.foot a{text-decoration:none}
.foot a:hover{color:var(--acid)}
@media (max-width:720px){
  .ticket{grid-template-columns:1fr}
  .stub{border-left:0;border-top:1px dashed var(--line);flex-direction:row;flex-wrap:wrap;align-items:center;min-width:0}
  .stub::before,.stub::after{top:-9px;left:auto}
  .stub::before{left:-9px}.stub::after{right:-9px;bottom:auto}
  .stub-num{font-size:44px}
  .section{grid-template-columns:1fr;gap:12px}
  .rail-track{overflow-x:auto;grid-template-columns:repeat(3,62%);scroll-snap-type:x mandatory;padding-bottom:6px}
  .rail-track img{scroll-snap-align:start}
  .pager{grid-template-columns:1fr}
  .pager a:last-child{text-align:left;align-items:flex-start}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important}}
