@font-face {
  font-family: "PressStart2P";
  font-weight: normal;
  src: url(../font/PressStart2P.woff2) format("woff2");
}

body.pixel-mode::after {
  content: '';
  position: fixed;
  inset: 0;
  z-index: 99999;
  pointer-events: none;
  background: repeating-linear-gradient(0deg, transparent, transparent 2px, rgba(0, 0, 0, 0.05) 2px, rgba(0, 0, 0, 0.05) 4px);
  mix-blend-mode: multiply;
}

body.pixel-mode {
  animation: crt-flicker 8s infinite;
}

@keyframes crt-flicker {

  0%,
  98%,
  100% {
    opacity: 1;
  }

  98.5% {
    opacity: 0.9;
  }

  99% {
    opacity: 1;
  }

  99.5% {
    opacity: 0.95;
  }
}

body.pixel-mode,
body.pixel-mode * {
  font-family: 'PressStart2P', monospace !important;
  line-height: 1.8 !important;
  letter-spacing: 0.02em;
}

body.pixel-mode img,
body.pixel-mode .glass-box,
body.pixel-mode .blue-box,
body.pixel-mode .nav-big,
body.pixel-mode .nav-small,
body.pixel-mode .footer {
  image-rendering: pixelated;
}

body.pixel-mode img {
  filter: contrast(1.1) saturate(0.9);
  image-rendering: pixelated;
  image-rendering: crisp-edges;
}

body.pixel-mode *,
body.pixel-mode .rounded-5,
body.pixel-mode .rounded-4,
body.pixel-mode .rounded-3,
body.pixel-mode .rounded-2,
body.pixel-mode .rounded-top-4 {
  border-radius: 0 !important;
}

body.pixel-mode .glass-box {
  border: 3px solid #3b82f6 !important;
  box-shadow: 4px 4px 0 #1a3a6e, inset 0 0 0 1px #ffffff18;
  background: #050505e8 !important;
}

body.pixel-mode .blue-box {
  border: 3px solid #00aaff !important;
  box-shadow: 4px 4px 0 #0a2a4a, 0 0 20px #0078ff55;
  background: linear-gradient(180deg, #0a1a3a 0%, #050f20 100%) !important;
}

body.pixel-mode .nav-big,
body.pixel-mode .nav-big.nav-smaller {
  border-bottom: 4px solid #3b82f6 !important;
  background: #050505ee !important;
  backdrop-filter: none !important;
  box-shadow: 0 4px 0 #1a3a6e;
}

body.pixel-mode .nav-small {
  border-bottom: 4px solid #3b82f6 !important;
  background: #050505ee !important;
  backdrop-filter: none !important;
}

body.pixel-mode .home-button-main,
body.pixel-mode .home-button-second,
body.pixel-mode .btn {
  border-radius: 0 !important;
  border: 3px solid !important;
  box-shadow: 4px 4px 0 rgba(0, 0, 0, 0.8) !important;
  transition: none !important;
  text-shadow: 2px 2px 0 rgba(0, 0, 0, 0.8);
}

body.pixel-mode .main-header {
  text-shadow: 0 0 10px #00aaff, 0 0 20px #0078ff, 3px 3px 0 #00004488;
  font-size: clamp(1.2rem, 2.5vw, 2rem) !important;
}

body.pixel-mode h1,
body.pixel-mode .h1 {
  text-shadow: 3px 3px 0 #00004488, 0 0 12px #3b82f6;
}

body.pixel-mode h3,
body.pixel-mode .h3,
body.pixel-mode h4,
body.pixel-mode .h4 {
  text-shadow: 2px 2px 0 #00004488;
}

body.pixel-mode .stat-number {
  font-size: 2.2rem !important;
  text-shadow: 3px 3px 0 #00004488, 0 0 15px #00aaff;
  background: none !important;
  -webkit-text-fill-color: #00ddff !important;
  color: #00ddff !important;
}

body.pixel-mode .footer {
  border-top: 4px solid #3b82f6 !important;
  background: #020202 !important;
  box-shadow: 0 -4px 0 #1a3a6e;
}

body.pixel-mode hr,
body.pixel-mode .glass-hr {
  border: 2px solid #3b82f6 !important;
  opacity: 1;
}

body.pixel-mode .partners-box {
  border: 3px solid #1a3a6e;
  box-shadow: inset 0 0 30px #0078ff11;
}

body.pixel-mode .glows {
  filter: blur(0px) !important;
  opacity: 0.08 !important;
  border-radius: 0 !important;
  background: #0078ff !important;
}

body.pixel-mode .main-bg::after {
  background: none !important;
}

body.pixel-mode .glass-box-hover:hover {
  border-color: #00aaff !important;
  transform: translate(-4px, -4px) !important;
  box-shadow: 8px 8px 0 #1a3a6e !important;
  transition: none !important;
}

body.pixel-mode .text-dim {
  color: #8ab4cc !important;
}

body.pixel-mode .clr-blue {
  color: #5ab4ff !important;
}

body.pixel-mode .clr-green {
  color: #15bd91 !important;
}

body.pixel-mode .text-primary {
  color: #4aa8ff !important;
}

body.pixel-mode ::-webkit-scrollbar {
  width: 12px;
}

body.pixel-mode ::-webkit-scrollbar-track {
  background: #050505;
  border-left: 3px solid #1a3a6e;
}

body.pixel-mode ::-webkit-scrollbar-thumb {
  background: #3b82f6;
  border: 2px solid #050505;
}

body.pixel-mode {
  cursor: crosshair;
}

body.pixel-mode a,
body.pixel-mode button {
  cursor: crosshair;
}

#pixel-toggle {
  position: fixed;
  bottom: 1.5rem;
  right: 1.5rem;
  z-index: 99997;
  width: 3rem;
  height: 3rem;
  background: #050505;
  border: 2px solid #3b82f688;
  border-radius: 0.5rem;
  color: #a1a1aa;
  font-size: 1.3rem;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: border-color 0.2s, color 0.2s, box-shadow 0.2s;
  box-shadow: 0 2px 12px #00000060;
}

#pixel-toggle:hover {
  border-color: #3b82f6;
  color: #fff;
  box-shadow: 0 0 12px #3b82f644;
}

body.pixel-mode #pixel-toggle {
  font-family: 'PressStart2P', monospace !important;
  border: 3px solid #00aaff !important;
  border-radius: 0 !important;
  background: #050518 !important;
  color: #00aaff !important;
  box-shadow: 3px 3px 0 #1a3a6e, 0 0 15px #0078ff55 !important;
  animation: pixel-btn-pulse 2s infinite;
}

@keyframes pixel-btn-pulse {

  0%,
  100% {
    box-shadow: 3px 3px 0 #1a3a6e, 0 0 8px #0078ff55 !important;
  }

  50% {
    box-shadow: 3px 3px 0 #1a3a6e, 0 0 22px #00aaff99 !important;
  }
}

body.pixel-mode .footer .col-12.col-md-3:nth-child(3) .d-flex.flex-column div {
  width: 100% !important;
  display: block !important;
  align-items: center !important;
  text-align: center !important;
}

body.pixel-mode .footer .h5 {
  font-size: 1rem !important;
}

body.pixel-mode .glass-box .d-flex.align-items-center {
  flex-direction: column !important;
  align-items: flex-start !important;
  gap: 1rem !important;
}

body.pixel-mode .glass-box .text-white {
  font-size: 0.65rem !important;
  width: 100% !important;
  margin-right: 0 !important;
}

body.pixel-mode .glass-box .bi-envelope,
body.pixel-mode .glass-box .bi-telephone {
  margin-bottom: 0.5rem !important;
  display: inline-block !important;
}

body.pixel-mode .photo-8bit {
  display: block !important;
  z-index: 10;
}

body.pixel-mode .photo-front,
body.pixel-mode .photo-back {
  display: none !important;
}

body.pixel-mode .photo-box:hover .photo-content {
  transform: none !important;
}

body.pixel-mode div[class="d-flex flex-column flex-md-row align-items-start align-items-md-center"] {
  flex-direction: column !important;
}

body.pixel-mode div[class="glows up-left"],
body.pixel-mode div[class="glows low-right"] {
  display: none !important;
}

@media (max-width: 767px) {

  body.pixel-mode #home,
  body.pixel-mode .home-box {
    height: auto !important;
    min-height: 100vh;
    padding-bottom: 2rem;
  }

  body.pixel-mode .home-gcon-logo {
    max-width: 80%;
    margin: 0 auto;
    display: block;
    padding-top: 2rem;
  }
}
