:root {
  --ic-rust: #c45c26;
  --ic-copper: #e08a3c;
  --ic-amber: #f0b429;
  --ic-teal: #2f8f86;
  --ic-neon: #3cf0e0;
  --ic-mag: #ff4d7a;
  --ic-night: #0b1016;
  --ic-scrap: #161c24;
  --ic-paper: #f3e6d4;
  --ic-cable: rgba(60, 240, 224, 0.28);
}

body:has(.page-content.home) {
  background: #000;
}

body:has(.page-content.home) #navbar {
  display: none !important;
}

body:has(.page-content.home) .full.height {
  min-height: 100dvh;
  margin: 0 !important;
  padding: 0 !important;
}

body:has(.page-content.home) .page-footer {
  background: #080c11;
  border-top: 1px solid rgba(60, 240, 224, 0.22);
  box-shadow: 0 -1px 0 rgba(196, 92, 38, 0.35);
}

.page-footer .left-links {
  display: none !important;
}

.page-footer {
  justify-content: flex-end !important;
}

.page-content.home {
  position: relative;
  overflow: hidden;
  margin: 0 !important;
  padding: 0 !important;
  color: var(--ic-paper);
  background: #000;
}

.ic-hero {
  position: relative;
  min-height: 100dvh;
  width: 100%;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  padding: 0;
  margin: 0;
  isolation: isolate;
}

.ic-hero__img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 42% 38%;
  z-index: 0;
}

.ic-hero__shade {
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  background:
    linear-gradient(180deg, rgba(8, 10, 14, 0.18) 0%, rgba(8, 10, 14, 0.08) 35%, rgba(8, 10, 14, 0.45) 100%);
}

.ic-hero__grain,
.ic-hero__cables {
  position: absolute;
  inset: 0;
  z-index: 2;
  pointer-events: none;
}

.ic-hero__grain {
  opacity: 0.16;
  background-image:
    repeating-linear-gradient(0deg, transparent 0 2px, rgba(0, 0, 0, 0.16) 3px),
    url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.7'/%3E%3C/svg%3E");
  mix-blend-mode: overlay;
}

.ic-hero__cables {
  opacity: 0.32;
  background:
    repeating-linear-gradient(108deg, transparent 0 96px, var(--ic-cable) 96px 97px),
    repeating-linear-gradient(72deg, transparent 0 118px, rgba(196, 92, 38, 0.2) 118px 119px);
  mask-image: linear-gradient(180deg, transparent, #000 18%, #000 70%, transparent);
}

.ic-hero__content {
  position: relative;
  z-index: 3;
  width: min(1080px, calc(100% - 2.5rem));
  margin: 0 auto;
  padding: 2rem 0 0.4rem;
}

.ic-kicker {
  display: inline-flex;
  align-items: center;
  gap: 0.55rem;
  margin: 0 0 0.85rem;
  padding: 0.28rem 0.7rem;
  border: 1px solid rgba(60, 240, 224, 0.55);
  background: rgba(8, 18, 22, 0.72);
  color: var(--ic-neon);
  font-size: 0.72rem;
  font-weight: 700;
  font-family: "Orbitron", sans-serif;
  letter-spacing: 0.28em;
  text-transform: uppercase;
  box-shadow: 0 0 16px rgba(60, 240, 224, 0.18), inset 0 0 12px rgba(196, 92, 38, 0.12);
}

.ic-kicker::before {
  content: "";
  width: 0.55rem;
  height: 0.55rem;
  border-radius: 1px;
  background: var(--ic-neon);
  box-shadow: 0 0 10px var(--ic-neon), 0 0 18px var(--ic-rust);
}

.ic-title {
  margin: 0;
  max-width: none;
  color: #f8fbff;
  font-family: "Audiowide", "Orbitron", sans-serif;
  font-size: clamp(1.85rem, 6.4vw, 4.6rem);
  font-weight: 400;
  letter-spacing: 0.12em;
  line-height: 1;
  white-space: nowrap;
  text-transform: uppercase;
  text-shadow:
    0 0 8px rgba(60, 240, 224, 0.55),
    0 0 22px rgba(60, 240, 224, 0.28),
    0 0 36px rgba(196, 92, 38, 0.35),
    0 10px 40px rgba(0, 0, 0, 0.55);
}

.ic-lede {
  max-width: 38rem;
  margin: 0.85rem 0 1.15rem;
  color: #d7ece8;
  font-size: clamp(1.02rem, 2vw, 1.2rem);
  line-height: 1.4;
  text-shadow: 0 8px 24px rgba(0, 0, 0, 0.55);
}

.ic-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
}

.ic-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 2.55rem;
  padding: 0.65rem 1.1rem;
  border-radius: 0;
  clip-path: polygon(8px 0, 100% 0, 100% calc(100% - 8px), calc(100% - 8px) 100%, 0 100%, 0 8px);
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  text-decoration: none !important;
}

.ic-btn--primary {
  color: #081014 !important;
  background: linear-gradient(180deg, var(--ic-amber), var(--ic-rust));
  box-shadow: 0 0 18px rgba(196, 92, 38, 0.4), 0 0 8px rgba(60, 240, 224, 0.18);
}

.ic-btn:hover {
  filter: brightness(1.08);
}

.ic-districts {
  position: relative;
  z-index: 3;
  width: min(1080px, calc(100% - 2rem));
  margin: 1.1rem auto 1.5rem;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1.1rem;
  align-items: end;
}

.ic-tv {
  color: inherit;
  text-decoration: none !important;
  display: block;
}

.ic-tv__chassis {
  position: relative;
  padding: 0.7rem 0.7rem 0.55rem;
  background:
    linear-gradient(160deg, #6a3a22 0%, #3a2218 42%, #1c120e 100%);
  border: 1px solid #8a5340;
  box-shadow:
    inset 0 1px 0 rgba(255, 210, 160, 0.18),
    inset 0 -8px 16px rgba(0, 0, 0, 0.45),
    0 12px 24px rgba(0, 0, 0, 0.4);
}

.ic-tv__chassis::before,
.ic-tv__chassis::after {
  content: "";
  position: absolute;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: radial-gradient(circle at 35% 35%, #d7c4a8, #6a5340 55%, #2a1c14);
  box-shadow: inset 0 0 2px #000;
}

.ic-tv__chassis::before {
  top: 7px;
  left: 7px;
}

.ic-tv__chassis::after {
  top: 7px;
  right: 7px;
}

.ic-tv__screen {
  position: relative;
  overflow: hidden;
  height: 148px;
  border: 3px solid #1a0e0a;
  border-radius: 10px 10px 14px 14px / 8px 8px 18px 18px;
  box-shadow:
    inset 0 0 28px rgba(0, 0, 0, 0.55),
    inset 0 0 8px currentColor,
    0 0 16px rgba(60, 240, 224, 0.08);
  animation: ic-flicker 5.5s infinite;
}

.ic-tv__screen--amber {
  color: #ffbf5e;
  background: #140d06;
}

.ic-tv__screen--cyan {
  color: #5ef6ea;
  background: #061214;
}

.ic-tv__screen--green {
  color: #7cff7a;
  background: #071107;
}

.ic-tv__scan {
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    repeating-linear-gradient(180deg, transparent 0 2px, rgba(0, 0, 0, 0.22) 3px),
    linear-gradient(180deg, transparent 0%, rgba(255, 255, 255, 0.08) 46%, transparent 52%);
  animation: ic-scan 3.8s linear infinite;
  mix-blend-mode: overlay;
}

.ic-tv__term {
  margin: 0;
  padding: 0.55rem 0.65rem;
  font-family: "Share Tech Mono", ui-monospace, monospace;
  font-size: 0.72rem;
  line-height: 1.45;
  white-space: pre;
  animation: ic-term 11s linear infinite;
}

.ic-tv__term--slow {
  animation-duration: 15s;
}

.ic-tv__term--fast {
  animation-duration: 8.5s;
}

.ic-tv__led {
  position: absolute;
  right: 14px;
  bottom: 34px;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #3cf0e0;
  box-shadow: 0 0 8px #3cf0e0;
  animation: ic-led 1.6s steps(2, end) infinite;
}

.ic-tv__label {
  margin: 0.45rem 0 0;
  color: #e8c49a;
  font-family: "Orbitron", sans-serif;
  font-size: 0.62rem;
  letter-spacing: 0.16em;
  text-align: center;
}

.ic-tv:hover .ic-tv__chassis,
.ic-tv:focus-visible .ic-tv__chassis {
  box-shadow:
    inset 0 1px 0 rgba(255, 210, 160, 0.22),
    0 0 0 1px rgba(60, 240, 224, 0.35),
    0 0 22px rgba(60, 240, 224, 0.18);
}

@keyframes ic-term {
  0% { transform: translateY(0); }
  100% { transform: translateY(-50%); }
}

@keyframes ic-scan {
  0% { background-position: 0 0, 0 -40%; }
  100% { background-position: 0 0, 0 140%; }
}

@keyframes ic-flicker {
  0%, 16%, 18%, 100% { filter: brightness(1); }
  17% { filter: brightness(1.18); }
  72% { filter: brightness(0.92); }
}

@keyframes ic-led {
  0%, 49% { opacity: 1; }
  50%, 100% { opacity: 0.25; }
}

@media (max-width: 860px) {
  .ic-districts {
    grid-template-columns: 1fr;
  }

  .ic-hero__content {
    padding-top: 1.35rem;
  }
}

@media (prefers-reduced-motion: reduce) {
  .ic-tv__term,
  .ic-tv__scan,
  .ic-tv__screen,
  .ic-tv__led {
    animation: none;
  }
}
