/* SocialHams - Dark radio theme overrides for Prologue */
@import url('https://fonts.googleapis.com/css2?family=Fira+Sans:wght@400;500;600;700&family=Lato:wght@400;700&display=swap');

:root {
  --teal: #00BCD4;
  --teal-dark: #0097A7;
  --navy: #1A1A2E;
  --surface: #16213E;
  --text: #E0E0E0;
  --text-dim: #9E9E9E;
  --amber: #FFD54F;
  --amber-dark: #FFC107;
}

/* Global dark theme */
body {
  background-color: var(--navy) !important;
  color: var(--text) !important;
  font-family: 'Lato', 'Helvetica Neue', sans-serif !important;
}

h1, h2, h3, h4, h5, h6 {
  font-family: 'Fira Sans', 'Helvetica Neue', sans-serif !important;
  color: var(--text) !important;
}

p, li, td, th, span, label, dd, dt, blockquote {
  color: var(--text) !important;
}

a {
  color: var(--teal) !important;
}

a:hover {
  color: var(--amber) !important;
}

strong, b {
  color: #fff !important;
}

/* Sidebar */
#header {
  background: var(--surface) !important;
}

#header #logo .icon {
  font-size: 2em;
  color: var(--teal) !important;
}

#header #title {
  color: #fff !important;
  font-family: 'Fira Sans', sans-serif !important;
}

#header #logo p {
  color: var(--text-dim) !important;
  font-family: 'Lato', sans-serif !important;
}

#nav ul li a span {
  color: var(--text-dim) !important;
  font-family: 'Fira Sans', sans-serif !important;
}

#nav ul li a:hover span,
#nav ul li a.active span {
  color: var(--teal) !important;
}

#header .bottom .icons li a {
  color: var(--text-dim) !important;
}

#header .bottom .icons li a:hover {
  color: var(--teal) !important;
}

/* Main content area */
#main {
  background-color: var(--navy) !important;
}

#main section {
  background-color: var(--navy) !important;
  border-top-color: var(--surface) !important;
}

#main section.dark.cover {
  background-color: var(--surface) !important;
}

/* Content sections */
.container {
  color: var(--text) !important;
}

.container header h2 {
  color: #fff !important;
  font-family: 'Fira Sans', sans-serif !important;
  border-bottom-color: var(--teal) !important;
}

.container p {
  color: var(--text) !important;
  line-height: 1.8;
}

.container a {
  color: var(--teal) !important;
}

.container a:hover {
  color: var(--amber) !important;
}

.container img {
  border-radius: 6px;
}

/* Portfolio/article grid items */
.item header h3 {
  color: var(--text) !important;
  font-family: 'Fira Sans', sans-serif !important;
}

/* Buttons */
input[type="submit"],
input[type="button"],
.button {
  font-family: 'Fira Sans', sans-serif !important;
  font-weight: 600 !important;
  background-color: var(--teal) !important;
  color: var(--navy) !important;
}

input[type="submit"]:hover,
.button:hover {
  background-color: var(--amber) !important;
  color: var(--navy) !important;
}

.button.scrolly {
  background-color: var(--amber) !important;
  color: var(--navy) !important;
}

/* Footer */
#footer {
  background-color: var(--surface) !important;
}

#footer .copyright li {
  color: var(--text-dim) !important;
  font-family: 'Lato', sans-serif !important;
}

#footer .copyright li a {
  color: var(--text-dim) !important;
  font-family: 'Fira Sans', sans-serif !important;
  font-size: 0.9em;
}

#footer .copyright li a:hover {
  color: var(--teal) !important;
}

/* Forms */
input[type="text"],
input[type="email"],
textarea,
select {
  background-color: var(--surface) !important;
  color: var(--text) !important;
  border-color: rgba(255,255,255,0.1) !important;
}

/* Signal card (for petawawa bridge) */
.signal-card {
  background: var(--surface);
  border-left: 4px solid var(--amber);
  padding: 1.25em 1.75em;
  margin: 2em 0;
  border-radius: 0 6px 6px 0;
}

.signal-card h3 {
  margin-top: 0 !important;
  font-size: 1.05em !important;
  color: var(--amber) !important;
}

.signal-card p {
  color: var(--text) !important;
}

.signal-card a {
  color: var(--teal) !important;
  font-family: 'Fira Sans', sans-serif !important;
  font-weight: 600 !important;
}

/* Info box for technical details */
.tech-box {
  background: var(--surface);
  border-left: 4px solid var(--teal);
  padding: 1.25em 1.75em;
  margin: 1.5em 0;
  border-radius: 0 6px 6px 0;
}

.tech-box h3 {
  margin-top: 0 !important;
  color: var(--teal) !important;
}

/* Image handling */
.image.featured img,
.image.fit img {
  border-radius: 6px;
}

/* Section backgrounds for homepage */
section.one { background-color: var(--navy) !important; }
section.two { background-color: var(--surface) !important; }
section.three { background-color: var(--navy) !important; }
section.four { background-color: var(--surface) !important; }

/* Responsive */
@media screen and (max-width: 736px) {
  #header {
    position: relative !important;
    width: 100% !important;
  }
  .container header h2 {
    font-size: 1.3em !important;
  }
}
