*{box-sizing:border-box}html,body{margin:0;min-height:100%;padding:0}body{background:#14100c}@keyframes derbyspin{to{transform:rotate(360deg)}}@keyframes derbypulse{0%,to{opacity:1}50%{opacity:.35}}@keyframes derbyshake{0%,to{transform:translate(0) rotate(-1.2deg)}25%{transform:translate(.5px,-.5px) rotate(-1.2deg)}75%{transform:translate(-.5px,.5px) rotate(-1.2deg)}}.lisu-page{min-height:100svh;background:#14100c;color:#f3ead9;font-family:Saira,sans-serif;overflow:hidden;position:relative;display:flex;flex-direction:column}.warning-stripe{height:12px;flex:none;background:repeating-linear-gradient(45deg,#f0892a 0 22px,#14100c 22px 44px)}.derby-grid{flex:1;min-height:0;display:grid;grid-template-columns:1.05fr 1fr;gap:clamp(24px,4vw,64px);align-items:center;max-width:1320px;width:100%;margin:0 auto;padding:clamp(16px,3vh,40px) clamp(28px,4vw,60px)}.video-wrap{position:relative;min-width:0}.speed-lines{position:absolute;inset:-16%;z-index:0;background:repeating-conic-gradient(from 0deg at 50% 50%,rgba(243,234,217,.1) 0deg .55deg,transparent .55deg 3.4deg);mask-image:radial-gradient(circle at 50% 50%,transparent 30%,#000 62%,transparent 86%);animation:derbyspin 90s linear infinite;pointer-events:none}.video-frame{position:relative;z-index:1;border:4px solid #f3ead9;box-shadow:10px 10px #f0892a,0 0 0 1px #000;background:#000;animation:derbyshake 3.6s ease-in-out infinite;overflow:hidden}.video-frame video{display:block;width:100%;height:auto}.recording{position:absolute;top:12px;left:12px;display:flex;align-items:center;gap:8px;background:#0008;padding:5px 11px;font-family:Saira Condensed,sans-serif;font-weight:700;letter-spacing:.2em;font-size:12px}.recording-dot{width:8px;height:8px;border-radius:50%;background:#e23b22;animation:derbypulse 1.1s ease-in-out infinite}.driver-caption{position:absolute;bottom:0;right:0;background:#f0892a;color:#14100c;padding:6px 14px;font-family:Saira Condensed,sans-serif;font-weight:800;letter-spacing:.12em;font-size:13px;text-transform:uppercase}.stamp{position:absolute;top:-20px;right:-12px;z-index:3;transform:rotate(12deg);border:3px double #e23b22;color:#e23b22;padding:7px 13px 5px;font-family:Saira Condensed,sans-serif;font-weight:800;letter-spacing:.1em;font-size:16px;line-height:.95;text-align:center;text-transform:uppercase;background:#14100c}.content{min-width:0;display:flex;flex-direction:column;justify-content:center}.eyebrow{display:flex;align-items:center;gap:12px;font-family:Saira Condensed,sans-serif;font-weight:700;letter-spacing:.3em;font-size:clamp(11px,1vw,13px);color:#e9b06a;text-transform:uppercase}.eyebrow:after{content:"";height:1px;flex:1;background:#5c4a36}.kicker{font-family:Saira Condensed,sans-serif;font-weight:600;letter-spacing:.18em;font-size:clamp(13px,1.4vw,18px);color:#f3ead9;opacity:.8;margin-top:clamp(8px,1.6vh,16px)}h1{display:flex;flex-wrap:wrap;align-items:flex-end;column-gap:clamp(6px,1vw,14px);font-family:Anton,sans-serif;font-weight:400;margin:2px 0 0;line-height:.84;text-transform:uppercase;letter-spacing:0}h1 span{display:inline-block;font-size:clamp(44px,6.1vw,96px)}h1 span:first-child{color:#f3ead9;text-shadow:5px 5px 0 #00000055}h1 span:last-child{color:#f0892a;text-shadow:5px 5px 0 #7a1d10,0 0 1px #f0892a}.intro{margin:clamp(12px,2vh,22px) 0 0;font-size:clamp(14px,1.15vw,17px);line-height:1.45;color:#d8cbb4}.intro strong{color:#f3ead9}.ticket{position:relative;margin-top:clamp(14px,2.4vh,26px);display:flex;background:#f3ead9;color:#14100c;box-shadow:8px 8px #0005}.ticket-main{flex:1;padding:clamp(14px,2vh,22px) clamp(16px,1.6vw,26px);min-width:0}.ticket-label{font-family:Saira Condensed,sans-serif;font-weight:700;letter-spacing:.26em;font-size:11px;color:#b5471f;text-transform:uppercase}.ticket-title{font-family:Anton,sans-serif;font-size:clamp(22px,2.6vw,34px);line-height:.95;text-transform:uppercase;margin:4px 0 12px}.ticket-details{display:grid;grid-template-columns:1fr 1fr;gap:8px 22px;font-family:Saira Condensed,sans-serif}.ticket-details dt{font-size:10px;letter-spacing:.18em;color:#8a7c63;font-weight:700}.ticket-details dd{margin:0;font-size:15px;font-weight:700}.ticket-details div:last-child{grid-column:1 / -1}.ticket-divider{width:0;border-left:3px dashed #c2b291}.ticket-stub{width:clamp(86px,9vw,116px);padding:14px 12px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;background:#14100c;color:#f3ead9}.stub-label{font-family:Saira Condensed,sans-serif;font-weight:800;letter-spacing:.14em;font-size:10px;color:#f0892a;white-space:nowrap}.stub-number{font-family:Anton,sans-serif;font-size:clamp(26px,3vw,36px);line-height:.9;margin:4px 0 10px}.barcode{display:flex;gap:2px;height:28px;align-items:stretch}.barcode span{background:#f3ead9}.signature{margin-top:clamp(16px,2.6vh,28px)}.signature-label{font-family:Saira Condensed,sans-serif;font-weight:600;letter-spacing:.28em;font-size:clamp(11px,1vw,13px);color:#8a7c63;text-transform:uppercase}.signature-name{font-family:Anton,sans-serif;font-size:clamp(28px,3.6vw,48px);text-transform:uppercase;color:#f3ead9;margin-top:4px;line-height:1}.signature-name span{color:#f0892a}@media (max-width: 820px){.lisu-page{overflow:auto}.derby-grid{display:flex;flex-direction:column;align-items:stretch;justify-content:center;gap:28px;padding:28px 18px 32px}.stamp{right:4px}}@media (max-width: 480px){h1{column-gap:8px}h1 span{font-size:clamp(40px,13.5vw,54px)}.recording{letter-spacing:.12em;font-size:10px}.driver-caption{font-size:11px}.eyebrow,.signature-label{letter-spacing:.18em}.ticket{box-shadow:6px 6px #0005}.ticket-main{padding:12px 12px 14px}.ticket-label{letter-spacing:.18em;font-size:10px}.ticket-title{font-size:clamp(20px,8vw,28px);margin-bottom:9px}.ticket-details{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:7px 12px}.ticket-details dt{letter-spacing:.12em}.ticket-details dd{font-size:13px;line-height:1.15}.ticket-stub{width:clamp(78px,22vw,94px);padding:12px 8px}.stub-label{letter-spacing:.08em;font-size:9px}.stub-number{font-size:clamp(28px,10vw,34px);margin-bottom:8px}.barcode{height:24px}}@media (prefers-reduced-motion: reduce){.speed-lines,.video-frame,.recording-dot{animation:none}}
