.hero-grid {
  display: grid;
  gap: 2rem;
  grid-template-columns: minmax(0, 1.2fr) minmax(0, 0.8fr);
  align-items: center;
}
@media (max-width: 800px) {
  .hero-grid { grid-template-columns: 1fr; }
}
.slate-grid, .agenda-grid, .contrast-grid {
  display: grid;
  gap: 1.25rem;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  margin-top: 1.5rem;
}
.slate-card {
  background: #fff;
  color: #111;
  border: 2px solid #1a1a1a;
  padding: 1.25rem 1.35rem;
  clip-path: polygon(0 0, 100% 0, 100% calc(100% - 12px), calc(100% - 12px) 100%, 0 100%);
}
.slate-card-lead {
  border-color: #E31C25;
  box-shadow: 0 0 0 2px rgba(227, 28, 37, 0.25);
}
.slate-office {
  font-size: 0.72rem;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #E31C25;
  font-weight: 800;
  margin: 0 0 0.35rem;
}
.slate-card h3 { margin: 0 0 0.35rem; font-size: 1.35rem; }
.slate-look { font-size: 0.85rem; color: #555; margin: 0 0 0.75rem; }
.slate-with { font-size: 0.85rem; font-weight: 700; margin: 1rem 0; }
.agenda-card, .contrast-card {
  background: rgba(255,255,255,0.04);
  border: 1px solid rgba(255,255,255,0.18);
  padding: 1.1rem 1.2rem;
}
.section-light .contrast-card,
.section.section-light .contrast-card {
  background: #fff;
  border: 2px solid #1a1a1a;
  color: #111;
}
.section-dark .agenda-card h3 { color: #fff; }
.section-dark .agenda-card p { color: #cfcbc3; font-size: 0.95rem; }
.section-dark .agenda-card strong { color: #fff; }
.contrast-label {
  display: block;
  font-size: 0.68rem;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  font-weight: 800;
  margin: 0.85rem 0 0.3rem;
}
.contrast-label.dem { color: #2563EB; }
.contrast-label.maga { color: #E31C25; }
.contrast-note {
  font-size: 0.9rem;
  margin-top: 1.25rem;
  max-width: 44rem;
  opacity: 0.9;
}
.billboard {
  background: #111;
  color: #fff;
  border: 2px solid #E31C25;
  padding: 1.5rem;
}
.billboard-tag { font-size: 0.7rem; letter-spacing: 0.16em; color: #E31C25; font-weight: 800; }
.billboard-title { font-size: 1.75rem; font-weight: 900; line-height: 1.05; margin: 0.5rem 0; }
.billboard-sub { opacity: 0.85; }
.billboard-bar { height: 4px; background: #E31C25; margin: 1rem 0; transform: skewX(-18deg); }
.billboard-foot { font-size: 0.8rem; opacity: 0.7; word-break: break-all; }

.agenda-grid {
  display: grid;
  gap: 1rem;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  margin-top: 1.5rem;
}

.badge-real, .badge-notion {
  display: inline-block;
  font-size: 0.68rem;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  font-weight: 800;
  padding: 0.2rem 0.45rem;
  margin: 0 0 0.5rem;
}
.badge-real { background: #14532d; color: #bbf7d0; }
.badge-notion { background: #44403c; color: #fde68a; }
.attr-banner {
  font-size: 0.9rem;
  margin: 1rem 0 0;
  padding: 0.75rem 0.9rem;
  border: 1px solid rgba(255,255,255,0.2);
  max-width: 40rem;
}
.slate-grid, .agenda-grid, .contrast-grid {
  display: grid;
  gap: 1.15rem;
  grid-template-columns: repeat(auto-fit, minmax(230px, 1fr));
  margin-top: 1.5rem;
}
