* { margin: 0; padding: 0; box-sizing: border-box; }
body {
  display: flex; justify-content: center; align-items: center; min-height: 100vh;
  background-color: #000; font-family: 'Courier New', Courier, monospace; overflow: hidden;
}
#wallpaper-bg {
  position: fixed; inset: 0; width: 100vw; height: 100vh;
  background-image: url('/img/background.jpg');
  background-size: cover; background-position: center; background-repeat: no-repeat;
  z-index: 0; filter: brightness(0.4) contrast(1.1);
}
#matrix-bg, #fire-bg { position: fixed; inset: 0; width: 100vw; height: 100vh; }
#matrix-bg { z-index: 1; }
#fire-bg { z-index: 2; pointer-events: none; mix-blend-mode: screen; }
.container {
  position: relative; z-index: 3; width: 92vw; max-width: 500px; padding: 20px;
  background-color: rgba(0,5,0,.45); box-shadow: 0 0 30px rgba(0,255,65,.25);
  border: 1px solid rgba(0,255,65,.4); border-radius: 8px; backdrop-filter: blur(3px);
}
.logo { width: 100%; aspect-ratio: 1/1; }
@keyframes intenseMatrixFlash {
  0%,100% { opacity:.6; filter:drop-shadow(0 0 4px #00ff41) drop-shadow(0 0 10px #00ff41); }
  45% { opacity:.8; filter:drop-shadow(0 0 8px #00ff41) drop-shadow(0 0 18px #00ff41); }
  50% { opacity:1; filter:drop-shadow(0 0 15px #fff) drop-shadow(0 0 30px #00ff41) drop-shadow(0 0 45px #00ff41); }
  55% { opacity:.85; filter:drop-shadow(0 0 10px #00ff41) drop-shadow(0 0 20px #00ff41); }
}
.matrix-text { animation:intenseMatrixFlash 1.2s ease-in-out infinite; font-family:'Courier New',monospace; font-weight:900; }
.laser-grid { opacity:.35; }
.documents { display:flex; gap:12px; margin-top:18px; justify-content:center; flex-wrap:wrap; }
.document-link {
  display:flex; align-items:center; justify-content:center; gap:8px; flex:1; min-width:190px;
  padding:12px 16px; color:#00ff41; background-color:rgba(0,20,5,.75);
  border:1px solid #00ff41; border-radius:4px; font-family:'Courier New',Courier,monospace;
  font-size:14px; font-weight:bold; text-decoration:none; letter-spacing:1px;
  box-shadow:0 0 5px rgba(0,255,65,.4), inset 0 0 8px rgba(0,255,65,.08);
  transition:background-color .2s ease, box-shadow .2s ease, transform .2s ease;
}
.document-link:hover { background-color:rgba(0,255,65,.12); box-shadow:0 0 10px rgba(0,255,65,.8),0 0 20px rgba(0,255,65,.3); transform:translateY(-2px); }
.document-link::before { content:"▣"; font-size:18px; }
.document-link:focus-visible { outline:2px solid #fff; outline-offset:3px; }
button.document-link { cursor:pointer; appearance:none; }
.contact-modal {
  position:fixed; inset:0; display:none; align-items:center; justify-content:center; padding:20px;
  background:rgba(0,0,0,.88); z-index:100;
}
.contact-modal.active { display:flex; }
.contact-box {
  position:relative; width:100%; max-width:500px; padding:30px; background:rgba(0,10,2,.97);
  border:1px solid #00ff41; border-radius:6px;
  box-shadow:0 0 15px rgba(0,255,65,.6),0 0 40px rgba(0,255,65,.2); color:#00ff41;
}
.contact-box h2 { margin-bottom:24px; text-align:center; letter-spacing:5px; }
.contact-box label { display:block; margin:15px 0 5px; font-size:13px; letter-spacing:2px; }
.contact-box input,.contact-box textarea {
  width:100%; padding:10px; color:#00ff41; background:#000500; border:1px solid rgba(0,255,65,.7);
  border-radius:3px; font-family:'Courier New',Courier,monospace; outline:none;
}
.contact-box textarea { resize:vertical; }
.contact-box input:focus,.contact-box textarea:focus { border-color:#00ff41; box-shadow:0 0 8px rgba(0,255,65,.6); }
.contact-close { position:absolute; top:8px; right:12px; border:0; background:transparent; color:#00ff41; font-size:28px; cursor:pointer; }
.send-button {
  width:100%; margin-top:20px; padding:12px; color:#00ff41; background:rgba(0,255,65,.08);
  border:1px solid #00ff41; border-radius:4px; font-family:'Courier New',Courier,monospace;
  font-weight:bold; letter-spacing:2px; cursor:pointer;
}
.send-button:hover { background:rgba(0,255,65,.18); box-shadow:0 0 12px rgba(0,255,65,.6); }
.send-button:disabled { opacity:.5; cursor:wait; }
#contactStatus { min-height:20px; margin-top:15px; text-align:center; font-size:13px; }
.honeypot { position:absolute; left:-10000px; width:1px; height:1px; overflow:hidden; }
@media (max-height:700px) {
  body { align-items:flex-start; overflow-y:auto; }
  .container { max-width:400px; margin:15px 0; padding:12px; }
  .documents { margin-top:8px; }
  .document-link { padding:8px 12px; font-size:12px; }
}
@media (max-width:500px) {
  .container { width:95vw; }
  .documents { flex-direction:column; }
  .document-link { width:100%; min-width:0; }
  .contact-box { padding:28px 20px 20px; }
}
