/* Brutalist Signal theme overlay */
:root {
  --bs-bg: #FFFFFF;
  --bs-surface: #F7F7F7;
  --bs-text: #111111;
  --bs-muted: #3F3F3F;
  --bs-line: #1D1D1D;
  --bs-soft-line: #BFBFBF;
  --bs-accent: #D71920;
}

body {
  background: var(--bs-bg);
  color: var(--bs-text);
  line-height: 1.62;
  font-family: "Inter", "Arial", sans-serif;
}

h1, h2, h3, h4, h5, h6, .logo-text {
  font-family: "Roboto Slab", "Arvo", "Georgia", serif;
  font-weight: 700;
  letter-spacing: -0.02em;
}

a { color: var(--bs-text); }
a:hover { color: var(--bs-accent); text-decoration-color: var(--bs-accent); }

.site-header {
  background: #FFFFFF;
  border-bottom: 2px solid var(--bs-line);
  box-shadow: none;
  backdrop-filter: none;
}

.header-inner {
  max-width: 1260px;
}

.site-logo .logo-text {
  font-size: 1.28rem;
  color: var(--bs-text);
}

.site-nav {
  gap: 6px 8px;
}

.site-nav a {
  border: 1px solid var(--bs-line);
  border-radius: var(--radius, 8px);
  background: #FFFFFF;
  color: var(--bs-text);
  font-size: 0.88rem;
  padding: 8px 11px;
  font-weight: 600;
}

.site-nav a:hover {
  background: var(--bs-accent);
  border-color: var(--bs-accent);
  color: #FFFFFF;
}

.ticker-wrap {
  margin: 8px auto 24px;
}

.ticker-wrap--marquee .ticker-chip,
.ticker-card {
  border-radius: 0;
  border: 2px solid var(--bs-line);
  background: #FFFFFF;
  box-shadow: none;
}

.ticker-chip {
  color: var(--bs-text);
}

.ticker-card-link:hover {
  background: #FAFAFA;
}

.hero {
  padding-top: 20px;
}

.hero > div,
.hero-slide {
  border-radius: var(--radius, 8px);
  border: 2px solid var(--bs-line);
  box-shadow: none;
  background: #FFFFFF;
  color: var(--bs-text);
}

.hero > div::after,
.hero-slide::after {
  display: none;
}

.hero--image > div::before,
.hero-slide::before {
  background:
    linear-gradient(180deg, rgba(255,255,255,0.94), rgba(255,255,255,0.98)),
    var(--hero-bg, none) center/cover no-repeat;
  opacity: 1;
}

.hero-kicker {
  margin: 0 0 14px;
  color: var(--bs-accent);
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.hero h1,
.hero-slide h2 {
  font-size: clamp(2rem, 5vw, 4rem);
  line-height: 0.96;
  text-transform: none;
  color: var(--bs-text);
}

.hero p,
.hero-slide p {
  color: var(--bs-muted);
  max-width: 740px;
}

.hero--split-headlines .hero-slide-overlay {
  max-width: 860px;
}

.hero--split-headlines .hero-slide {
  border-left: 10px solid var(--bs-accent);
}

.hero--stacked-manifest .hero-cta-row {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
}

.btn-primary {
  border-radius: var(--radius, 8px);
  background: var(--bs-accent);
  color: #FFFFFF;
  border: 2px solid var(--bs-accent);
  text-transform: none;
  letter-spacing: 0;
  box-shadow: none;
}

.btn-primary:hover {
  background: #FFFFFF;
  color: var(--bs-accent);
  border-color: var(--bs-accent);
  transform: none;
}

.btn-primary--ghost {
  background: #FFFFFF;
  color: var(--bs-text);
  border-color: var(--bs-line);
}

.articles-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 20px;
}

.article-card {
  border-radius: var(--radius, 8px);
  border: 2px solid var(--bs-line);
  box-shadow: none;
  background: #FFFFFF;
}

.article-card:hover {
  transform: none;
  box-shadow: none;
  border-color: var(--bs-accent);
}

.article-card-body {
  padding: 18px;
}

.article-card-category {
  color: var(--bs-accent);
}

.article-layout {
  grid-template-columns: minmax(0, 1fr) 320px;
  gap: 24px;
}

.sidebar-widget,
.poll-widget,
.author-profile,
.faq-item,
.testimonial-card,
.category-card,
.comment-fake-form,
.contact-fake-form {
  border-radius: var(--radius, 8px);
  border: 2px solid var(--bs-line);
  box-shadow: none;
  background: #FFFFFF;
}

.topic-section-head {
  border-bottom: 2px solid var(--bs-line);
}

.topic-section-head h2 {
  font-size: 1.7rem;
}

.counters-section {
  margin: 36px 0;
  border-top: 2px solid var(--bs-line);
  border-bottom: 2px solid var(--bs-line);
  background: #FFFFFF;
  color: var(--bs-text);
  padding: 26px 20px;
}

.counters-grid {
  max-width: 1260px;
  margin: 0 auto;
}

.counter-item {
  border: 2px solid var(--bs-line);
  background: #FFFFFF;
  padding: 16px;
}

.counter-value {
  font-size: clamp(1.7rem, 4vw, 2.6rem);
  font-weight: 800;
  line-height: 1;
}

.counter-label {
  margin-top: 8px;
  color: var(--bs-muted);
  font-size: 0.88rem;
}

.counters-section--industrial-inline .counters-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0;
}

.counters-section--industrial-inline .counter-item {
  border-left-width: 0;
}

.counters-section--industrial-inline .counter-item:first-child {
  border-left-width: 2px;
}

.counters-section--grid-panels .counters-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
}

.counters-section--grid-panels .counter-item {
  min-height: 138px;
  display: grid;
  align-content: end;
}

.counters-section--ledger-row .counters-grid {
  display: grid;
  gap: 8px;
}

.counters-section--ledger-row .counter-item {
  display: grid;
  grid-template-columns: minmax(140px, 220px) 1fr;
  align-items: center;
  gap: 12px;
}

.counters-section--ledger-row .counter-label {
  margin-top: 0;
}

.testimonials-grid,
.categories-grid,
.compact-links-grid,
.shop-products-grid {
  gap: 14px;
}

.pagination a,
.pagination span {
  border: 2px solid var(--bs-line);
  border-radius: var(--radius, 8px);
  background: #FFFFFF;
}

.pagination .current {
  background: var(--bs-accent);
  border-color: var(--bs-accent);
  color: #FFFFFF;
}

.site-footer {
  background: #FFFFFF;
  border-top: 2px solid var(--bs-line);
  color: var(--bs-muted);
  margin-top: 56px;
}

.footer-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.footer-col h4 {
  color: var(--bs-text);
  text-transform: none;
  letter-spacing: 0;
}

.footer-social-icon {
  border: 2px solid var(--bs-line);
  border-radius: var(--radius, 8px);
}

.footer-bottom {
  border-top: 2px solid var(--bs-line);
}

@media (max-width: 1200px) {
  .articles-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .counters-section--industrial-inline .counters-grid,
  .counters-section--grid-panels .counters-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
  }
}

@media (max-width: 900px) {
  .article-layout { grid-template-columns: 1fr; }
  .footer-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 700px) {
  .articles-grid { grid-template-columns: 1fr; }
  .hero > div,
  .hero-slide { padding: 34px 20px; }
  .counters-section--ledger-row .counter-item {
    grid-template-columns: 1fr;
  }
  .footer-grid { grid-template-columns: 1fr; }
  .hero--stacked-manifest .hero-cta-row {
    display: grid;
    grid-template-columns: 1fr;
  }
}
