html,body{width:100%;height:100%;margin:0;overflow:hidden;overscroll-behavior:none;background:#000}body.at-opening{background:#000}#opening{height:100vh;height:100dvh;background:#000;box-sizing:border-box;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left)}.opening-frame{width:min(calc(100vw - env(safe-area-inset-left) - env(safe-area-inset-right)),calc((100dvh - env(safe-area-inset-top) - env(safe-area-inset-bottom))*1.5))}
/* Keep the approved button proportional to the photograph. Its invisible
   touch area remains at least 100 x 44 px, independently of the visual face. */
#enter-classic{width:max(100px,16.67cqw);height:max(44px,3.125cqw);font-size:1.43cqw;filter:none;text-shadow:0 .065cqw .065cqw #590000}#enter-classic::before,#enter-classic::after{content:none}#enter-classic:hover,#enter-classic:focus-visible{filter:none}#enter-classic>span.button-face{display:grid;place-items:center;position:absolute;left:50%;top:50%;width:16.67cqw;height:3.125cqw;transform:translate(-50%,-50%);isolation:isolate;filter:drop-shadow(0 0 .13cqw #ff3e3e) drop-shadow(0 .325cqw .39cqw #000)}.button-face::before,.button-face::after{content:'';position:absolute;clip-path:var(--bevel)}.button-face::before{inset:0;background:linear-gradient(#fff 0%,#fff 72%,#ffe4e4 100%);z-index:-2}.button-face::after{inset:.13cqw;background:linear-gradient(180deg,#ff4a4a 0%,#df1116 12%,#a90008 46%,#810004 75%,#d72125 100%);box-shadow:inset 0 .13cqw .13cqw #ff8080,inset 0 -.195cqw .26cqw #460001;z-index:-1}.button-label{display:inline-block;transform:scaleX(.96)}.button-label>span{font-family:Arial,sans-serif;font-size:1.17em;font-style:normal;vertical-align:-.02em;margin-left:.13em}#enter-classic:focus-visible .button-face{filter:drop-shadow(0 0 .2cqw #fff) drop-shadow(0 0 .45cqw #ff3636)}#enter-classic:hover .button-face{filter:drop-shadow(0 0 .26cqw #ff5353) drop-shadow(0 .325cqw .39cqw #000)}
#website{position:fixed;inset:0;width:100%;height:100vh;height:100dvh;overflow:hidden;display:grid;grid-template-rows:44px minmax(0,1fr);padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);background:#000}#website header{min-height:0;height:44px;padding:5px 14px;border-bottom:1px solid #20232a;gap:10px}.brand{font-size:11px;letter-spacing:.12em}.brand span{font-size:7px;letter-spacing:.15em;margin-top:3px}#clear{font-size:10px;padding:7px 11px;min-height:30px}#website main{min-width:0;min-height:0;max-width:none;width:100%;height:100%;margin:0;padding:8px 12px;display:grid;grid-template-rows:minmax(0,1fr) 62px 38px;gap:7px;overflow:hidden}.intro,footer{display:none}.map-viewport{min-width:0;min-height:0;width:100%;height:100%;container-type:size;display:grid;place-items:center;background:#000;overflow:hidden}.map{width:min(100cqw,150cqh);height:auto;aspect-ratio:3/2;max-width:100%;max-height:100%;margin:0;flex:none}.map>img{width:100%;height:auto}.map>svg{width:100%;height:100%}.details{min-height:0;margin:0;padding:7px 12px;gap:14px;background:#0c0e12;border:1px solid #222831;border-radius:3px;display:flex;flex-direction:row;align-items:center;justify-content:space-between;overflow:hidden}.details .eyebrow{font-size:8px;letter-spacing:.15em;line-height:1.3}.details h2{font-size:18px;line-height:1.1;margin:4px 0 0}.details #state-info{font-size:12px;line-height:1.35;max-width:48%;margin:0}#state-list{min-width:0;min-height:0;display:grid;grid-template-columns:repeat(9,minmax(0,1fr));gap:5px;margin:0;padding:0}#state-list button{min-width:0;min-height:0;padding:4px 3px;font-size:11px;line-height:1.1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
@media(max-width:600px) and (orientation:portrait){#website main{padding:6px 8px;grid-template-rows:minmax(0,1fr) 72px 104px;gap:6px}#state-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:4px}#state-list button{font-size:11px}.details{padding:8px;gap:10px}.details h2{font-size:17px}.details #state-info{font-size:11px}}
@media(max-height:500px) and (orientation:landscape){#website{grid-template-rows:32px minmax(0,1fr)}#website header{height:32px;padding:2px 10px}.brand{font-size:10px}.brand span{display:none}#clear{font-size:9px;padding:4px 8px;min-height:25px}#website main{padding:4px 8px;grid-template-rows:minmax(0,1fr) 43px 29px;gap:4px}.details{padding:3px 9px}.details .eyebrow{font-size:7px}.details h2{font-size:14px;margin-top:2px}.details #state-info{font-size:10px}#state-list{gap:4px}#state-list button{font-size:10px;padding:3px 2px}}

#website:focus{outline:none}#enter-classic .button-label{font:inherit;vertical-align:initial;margin:0;transform:scaleX(.96)}
