/* Waffle Coach visual system, shared with Nela World. Publication identity retained. */
@font-face {
  font-family: Nunito;
  src: url("/assets/fonts/Nunito-Bold.ttf") format("truetype");
  font-weight: 700;
  font-display: swap;
}
@font-face {
  font-family: Raleway;
  src: url("/assets/fonts/Raleway-Regular.ttf") format("truetype");
  font-weight: 400;
  font-display: swap;
}
@font-face {
  font-family: Raleway;
  src: url("/assets/fonts/Raleway-Bold.ttf") format("truetype");
  font-weight: 700;
  font-display: swap;
}
:root {
  --ink: #302440;
  --muted: #665d70;
  --line: #e0dce5;
  --paper: #fafafa;
  --accent: #62468b;
  --wash: #eee8f7;
  --lime: #f9d3b6;
  --purple: #bfb0ea;
  --teal: #9fdae0;
  --pink: #fdb8b9;
}
body,
.atlas-body {
  background: var(--paper);
  font-family: Raleway, sans-serif;
}
.brand,
h1,
h2,
h3,
.atlas-intro h1,
.profile-heading h1,
.profile-main > h1,
.record-card h3,
.topic-heading h2,
.detail-title,
.empty h3,
.need-group h2,
.discovery-grid h2,
.feature h2,
.article-head h1,
.intro h1,
.comparison tbody th > a {
  font-family: Nunito, sans-serif;
  font-weight: 700;
  letter-spacing: -0.025em;
}
.brand {
  color: var(--ink);
  letter-spacing: -1.5px;
}
.brand span {
  color: var(--accent);
}
.atlas-header {
  padding: 24px 36px;
  gap: 36px;
  background: #fff;
}
.atlas-header .brand {
  font-size: 31px;
  white-space: nowrap;
}
.atlas-header nav a,
.masthead nav a {
  padding: 8px 11px;
  border-radius: 20px;
  font-weight: 700;
  font-size: 12px;
}
.atlas-header nav {
  gap: 4px;
}
.atlas-header nav a[aria-current] {
  background: var(--wash);
  border-bottom: 0;
}
.atlas-header nav a:hover,
.masthead nav a:hover {
  background: var(--wash);
}
.draft,
.eyebrow,
.filter-heading,
.topline,
.kind,
.card-index,
.card-bottom,
.coverage span,
#result-count,
.detail-section h3,
.relation small {
  font-family: Raleway, sans-serif;
  font-weight: 700;
}
.draft {
  font-size: 10px;
  letter-spacing: 0.08em;
  max-width: 150px;
}
.eyebrow {
  font-size: 11px;
  letter-spacing: 0.12em;
}
.atlas-intro {
  background: var(--wash);
  border-radius: 28px;
  padding: 36px 40px;
  gap: 28px;
  position: relative;
  overflow: hidden;
}
.atlas-intro h1 {
  font-size: clamp(32px, 3.5vw, 48px);
  line-height: 1.13;
}
.atlas-intro p {
  border-left: 1px solid #c9badc;
  padding-left: 28px;
  margin-right: 0;
  line-height: 1.8;
}
.atlas-layout {
  gap: 28px;
}
.filters {
  padding: 22px 18px;
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 22px;
  align-self: start;
}
.filter-heading {
  font-size: 10px;
}
.filters button,
.filters select,
.search,
.type-tabs button,
.tag,
.card-bottom button,
.reset,
.drawer-top button,
.desk-controls input,
.desk-controls select,
.desk-controls button,
.filter-controls button {
  font-family: Raleway, sans-serif;
}
.filters button {
  border-radius: 12px;
  font-size: 13px;
}
.filters button:hover {
  background: #f5f0fb;
}
.filters button[aria-pressed="true"] {
  background: var(--wash);
  color: var(--accent);
  font-weight: 700;
}
.filters select,
.search,
.desk-controls input,
.desk-controls select {
  border-radius: 12px;
  background: white;
  font-size: 14px;
}
.search {
  padding: 17px 20px;
}
.type-tabs {
  border: 0;
  gap: 8px;
  padding-bottom: 0;
}
.type-tabs button {
  border: 1px solid var(--line);
  border-radius: 24px;
  background: white;
  font-size: 12px;
}
.type-tabs button[aria-pressed="true"] {
  background: var(--purple);
  border-color: var(--purple);
  color: var(--ink);
  font-weight: 700;
}
.record-card {
  border-radius: 22px;
  padding: 25px;
  border-color: var(--line);
}
.record-card:hover {
  border-color: #b5a4ca;
  box-shadow: 0 6px 24px #30244008;
}
.record-card h3 {
  font-size: 27px;
  line-height: 1.2;
}
.record-card p {
  line-height: 1.7;
  font-size: 14px;
}
.kind {
  display: inline-block;
  align-self: flex-start;
  background: var(--wash);
  color: #62468b;
  border-radius: 20px;
  padding: 5px 10px;
  font-size: 10px;
  letter-spacing: 0.05em;
}
.kind-Research {
  background: #f9d3b6;
  color: #64442e;
}
.kind-Initiative {
  background: #d6eff1;
  color: #31595d;
}
.kind-Insight {
  background: #fbe1e2;
  color: #713e51;
}
.kind-Offering {
  background: #e1efd9;
  color: #405935;
}
.tag {
  border-radius: 20px;
  background: #f3f0f7;
  color: #665376;
  padding: 5px 10px;
  font-size: 11px;
}
.card-bottom {
  font-size: 10px;
  border-color: var(--line);
  line-height: 1.6;
}
.card-bottom button {
  font-size: 12px;
}
.coverage {
  line-height: 1.7;
}
.topic-heading h2 {
  font-size: 30px;
}
.profile-evidence,
.snapshot-note,
.factbox,
.evidence-band,
.empty {
  border-radius: 20px;
}
.profile-heading {
  gap: 40px;
}
.profile-layout {
  gap: 40px;
}
.relation,
.full-record-link {
  border-radius: 14px;
}
.relation span,
.detail-summary {
  font-family: Raleway, sans-serif;
  line-height: 1.6;
}
.relation:hover {
  background: var(--wash);
}
.comparison-scroll {
  border-radius: 20px;
  background: white;
}
.comparison thead {
  background: var(--wash);
}
.comparison tbody th > a {
  font-size: 20px;
}
.desk-controls button,
.reset {
  border-radius: 24px;
  background: var(--purple);
  color: var(--ink);
  border: 0;
  font-weight: 700;
  padding: 12px 20px;
}
.feature {
  border: 1px solid var(--line);
  border-radius: 28px;
  overflow: hidden;
  background: white;
}
.mechanism {
  background: var(--wash);
}
.feature-copy {
  padding: 36px;
}
.intro {
  border-top: 1px solid var(--line);
}
.evidence-band {
  background: var(--wash);
  color: var(--ink);
}
.article-head h1 {
  line-height: 1.12;
}
.prose {
  line-height: 1.85;
}
.section-head h2 {
  font-family: Nunito, sans-serif;
}
.atlas-footer,
footer {
  color: var(--muted);
  font-size: 12px;
}
button,
input,
select {
  font-family: Raleway, sans-serif;
}
dialog {
  border-radius: 24px 0 0 24px;
}
dialog::backdrop {
  background: #30244066;
}
@media (max-width: 950px) {
  .atlas-header {
    gap: 16px;
    padding: 20px 24px;
    flex-wrap: wrap;
  }
  .atlas-intro {
    padding: 28px;
  }
  .atlas-intro p {
    font-size: 14px;
  }
  .atlas-header .brand {
    font-size: 29px;
  }
}
@media (max-width: 650px) {
  .atlas-header {
    padding: 20px;
  }
  .atlas-header nav {
    gap: 3px;
  }
  .atlas-header nav a {
    padding: 7px 9px;
    font-size: 11px;
  }
  .atlas-intro {
    padding: 25px;
    border-radius: 22px;
  }
  .atlas-intro h1 {
    font-size: 34px;
  }
  .atlas-intro p {
    padding: 0;
    border: 0;
  }
  .filters {
    padding: 18px;
  }
  .record-card {
    padding: 22px;
  }
  .atlas-layout {
    gap: 20px;
  }
  .profile-heading {
    gap: 24px;
  }
  .feature-copy {
    padding: 24px;
  }
}
.mechanism {
  color: var(--ink);
}
.mechanism .eyebrow {
  color: var(--accent);
}
.steps small {
  color: var(--muted);
}
.steps li {
  border-color: #cec1df;
}
.steps b,
.story h3,
.evidence-band h2 {
  font-family: Nunito, sans-serif;
  font-weight: 700;
}
.step-no {
  font-family: Raleway, sans-serif;
  font-weight: 700;
  color: var(--accent);
}
.diagram-note {
  color: var(--muted);
}
.pill {
  border-radius: 20px;
  color: var(--accent);
  font-family: Raleway, sans-serif;
  font-weight: 700;
}
.footer-brand,
.prose h2,
.simple h1,
.simple h2 {
  font-family: Nunito, sans-serif;
  font-weight: 700;
}
.deck {
  font-family: Raleway, sans-serif;
}
