
.archive-shell,
.editorial-shell,
.section-tool-single {
  display: grid;
  gap: 24px;
}

.directory-shell {
  display: grid;
  grid-template-columns: 328px minmax(0, 1fr);
  gap: 24px;
}

.directory-main {
  display: grid;
  gap: 24px;
  min-width: 0;
}

.filters,
.directory-filters {
  position: sticky;
  top: 98px;
  align-self: start;
  padding: 22px;
}

.filters form,
.directory-filters form,
.osint4all-form {
  display: grid;
  gap: 14px;
}

.filters label,
.directory-filters label,
.osint4all-form > label,
.newsletter-form > label {
  display: grid;
  gap: 7px;
  color: rgba(235, 237, 239, 0.88);
  font-weight: 700;
}

.filters label:has(input[type="checkbox"]),
.directory-filters label:has(input[type="checkbox"]),
.osint4all-form > label:has(input[type="checkbox"]),
.newsletter-form > label:has(input[type="checkbox"]) {
  grid-template-columns: auto 1fr;
  align-items: start;
  gap: 11px;
}

.directory-filter-actions {
  display: grid;
  gap: 10px;
}

.directory-filter-footnote {
  margin-top: 18px;
  padding-top: 16px;
  border-top: 1px solid rgba(173, 178, 182, 0.12);
}

.archive-header {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(290px, 380px);
  gap: 24px;
  align-items: start;
  padding: 28px;
}

.archive-header-copy h1 {
  max-width: 13ch;
  font-size: 3.35rem;
  line-height: 1;
}

.archive-header-meta {
  margin-top: 20px;
}

.archive-proof-card {
  background:
    linear-gradient(145deg, rgba(173, 178, 182, 0.07), transparent 34%),
    linear-gradient(180deg, rgba(42, 42, 48, 0.76), rgba(13, 14, 20, 0.96));
}

.archive-proof-card ul,
.page-process-card ul,
.osint4all-next-steps ul,
.tool-related-grid ul {
  display: grid;
  gap: 11px;
  margin: 12px 0 0;
  padding-left: 18px;
}

.archive-empty-state,
.comparison-empty-state {
  padding: 34px;
  text-align: left;
  background:
    radial-gradient(circle at 100% 0%, rgba(200, 184, 141, 0.28), transparent 16rem),
    linear-gradient(180deg, rgba(34, 35, 42, 0.9), rgba(13, 14, 20, 0.98));
}

.comparison-empty-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 24px;
}

.archive-intel-panels .grid {
  gap: 22px;
}

.archive-newsletter-panel,
.footer-newsletter {
  display: grid;
  grid-template-columns: minmax(240px, 0.88fr) minmax(0, 1.12fr);
  gap: 24px;
  align-items: start;
}

.newsletter-form {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px 16px;
}

.newsletter-form > label:first-of-type,
.newsletter-form > label:has(input[type="checkbox"]),
.newsletter-form > button,
.newsletter-form > .osint4all-form-note {
  grid-column: 1 / -1;
}
