@import url('https://fonts.googleapis.com/css2?family=VT323&display=swap');
*{box-sizing:border-box}
body{margin:0;background:#020202;color:#d0d0c8;font-family:'VT323', monospace;font-size:18px;letter-spacing:1px}
.scanlines{position:fixed;inset:0;pointer-events:none;background:repeating-linear-gradient(to bottom,rgba(255,255,255,.035),rgba(255,255,255,.035) 1px,transparent 2px,transparent 5px);z-index:9;mix-blend-mode:overlay}
.wrap{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:250px 1fr;border-left:1px solid #333;border-right:1px solid #333;min-height:100vh}
.side{background:#050505;border-right:1px solid #333;padding:18px}
.site-title{
font-size:32px;
line-height:.85;
color:#8b0000;
font-weight:bold;
text-shadow:
-1px 0 #ffffff55,
2px 0 #ff000066,
0 0 6px #550000;
margin-bottom:16px;
}
.jp{font-size:24px;color:#eee;margin-top:10px}
.small{font-size:12px;color:#8b1c1c;margin:8px 0 28px}
nav a{display:block;color:#d0d0c8;text-decoration:none;margin:10px 0}
nav a:hover,b{color:#b91515}
.box{border:1px solid #3f3f3f;margin:24px 0;padding:10px;background:#070707}
.box h3,.panel h2{margin:-10px -10px 10px;padding:5px 9px;border-bottom:1px solid #3f3f3f;font-weight:normal;color:#eee}
audio{width:100%;height:32px;filter:grayscale(1)}
button{font-family:inherit;background:#0b0b0b;color:#ddd;border:1px solid #555;padding:7px 13px;margin-top:8px;cursor:pointer}
button:hover{background:#1b0000}
.counter{border:1px solid #555;padding:6px;text-align:center;font-size:24px;letter-spacing:4px;background:#090909}
.main{padding:18px}
.hero{height:320px;background:linear-gradient(rgba(0,0,0,.05),rgba(0,0,0,.55)),url("images/hero.jpg") center/cover;border:1px solid #2f2f2f;position:relative}
.since{position:absolute;top:14px;right:18px;color:#ddd}
.enter{position:absolute;left:0;right:0;top:370px;text-align:center}
enter h1{font-size:80px;margin:0 0 8px;color:#b91515;text-shadow:3px 3px #111}
.enter p{font-size:18px;color:#eee}
.enter button{font-size:18px;padding:12px 28px;background:#050505cc}
.intro{padding:14px 20px;line-height:1.3}
.columns{display:grid;grid-template-columns:1.15fr 1fr 1fr;gap:14px}
.panel{border:1px solid #3f3f3f;background:#060606;padding:8px;min-height:220px}
.panel h2{display:flex;justify-content:space-between;font-size:17px}
.panel h2 span{font-size:13px;color:#aaa}
.news-item{display:grid;grid-template-columns:70px 1fr;gap:10px;margin:8px 0}
.news-item img{width:70px;height:48px;object-fit:cover;border:1px solid #444;filter:grayscale(.75)}
.cover{width:80%;border:1px solid #444;filter:grayscale(.4)}
.flyer{width:75%;max-height:230px;object-fit:cover;border:1px solid #444;filter:grayscale(.55)}
.center{text-align:center}
.links{min-height:auto}
.links a{display:inline-block;color:#d0d0c8;text-decoration:none;border:1px solid #444;padding:8px 14px;margin:4px;background:#090909}
footer{text-align:center;color:#888;font-size:12px;padding:24px}
@media(max-width:850px){.wrap{display:block}.side{border-right:0;border-bottom:1px solid #333}.hero{height:320px}.enter h1{font-size:34px}.columns{grid-template-columns:1fr}}select{
width:100%;
background:#000;
color:#fff;
border:1px solid #444;
padding:6px;
font-family:'VT323', monospace;
font-size:18px;
margin-top:5px;
}
.tower-box{
  margin-top:20px;
  width:100%;
  height:900px;
  border:1px solid #222;
  overflow:hidden;
  background:#000;
}

.tower-box img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:left top;
  display:block;
  filter:grayscale(100%) contrast(1.3);
}.tower-box{
    position:relative;
}

.signal-light{
    position:absolute;
    top:45px;
    left:46%;
    transform:translateX(-50%);

    width:10px;
    height:10px;

    background:#ff0000;
    border-radius:50%;

    box-shadow:
        0 0 5px #ff0000,
        0 0 15px #ff0000,
        0 0 25px #ff0000;

    animation:blink 1.5s infinite;
}

@keyframes blink{
    0%,100%{
        opacity:1;
    }
    50%{
        opacity:.2;
    }
}