/* Designer inventory tokens, approved 2026-09-19. Shared across the complete site. */
:root {
  --teal-900: #00525e;
  --teal-800: #00525e;
  --teal-600: #39998e;
  --teal-500: #268b85;
  --teal-400: #64dec4;
  --orange: #d97757;
  --coral: var(--orange);
  --coral-700: var(--orange);
  --coral-button: var(--orange);
  --forest: #00525e;
  --ink: #000;
  --ink-2: #56514e;
  --ink-3: #56514e;
  --card: #fff;
  --surface: #f5f5f5;
  --oat: var(--surface);
  --sage: var(--surface);
  --cream: var(--surface);
  --teal-100: var(--surface);
  --selected: #e9e9e9;
  --grad-dark: #00525e;
  --grad-teal: #00525e;
  --grad-tint: #f5f5f5;
  --line: rgb(0 82 94 / 16%);
  --rule: var(--line);
  --font-display: 'Manrope', sans-serif;
  --font-body: 'Manrope', sans-serif;
  --r-sm: 8px;
  --r-md: 12px;
  --r-lg: 12px;
  --r-pill: 100px;
  --space-sm: 12px;
  --space-md: 16px;
  --space-lg: 36px;
  --space-section: clamp(48px, 6vw, 80px);
  --type-hero: clamp(32px, 4vw, 48px);
  --type-section: clamp(28px, 3vw, 36px);
  --type-card: 24px;
  --type-body: 18px;
  --type-label: 14px;
  --type-badge: 12px;
}
body { font-family: var(--font-body); font-size: var(--type-body); color: var(--ink); background: #fff; }
button, input, textarea, select { font-family: inherit; }
h1, h2, h3, h4, .sector-title, .h1 { font-family: var(--font-display); font-weight: 700; letter-spacing: -.025em; color: var(--ink); }
h1, .sector-title { font-size: var(--type-hero); line-height: 1.14; }
h2, h2.h1, .how-head h3, .cta h2 { font-size: var(--type-section); line-height: 1.22; }
h3, .ev b, .case h3, .partner b { font-size: var(--type-card); font-weight: 700; line-height: 1.35; }
.lede, .case p, .partner p, .ev p, .pain p { font-size: var(--type-body); line-height: 1.65; }
.eyebrow, .eyebrow.teal { font-size: var(--type-label); font-weight: 700; letter-spacing: .1em; color: var(--teal-900); }
.section-head { border: 0; padding-top: 0; }
.section-head .eyebrow::before { display: none; }
section { padding-block: var(--space-section); scroll-margin-top: 140px; }
.btn { border-radius: var(--r-sm); padding: var(--space-sm) 24px; font-size: var(--type-body); font-weight: 700; min-height: 48px; line-height: 1.35; box-shadow: none; }
.btn-primary { background: var(--teal-900); color: #fff; }
.btn-coral { background: var(--coral-button); color: #fff; }
.btn-coral:hover { background: var(--coral-button); color: #fff; filter: brightness(.96); }
/* White on Crail meets the 3:1 large-text threshold at 19px bold.
   Preserve the brand fill and exact header button dimensions. */
.btn.btn-coral, .dark .btn.btn-primary {
  font-size: max(19px, var(--type-body));
  font-weight: 700;
}
.btn.btn-coral:hover, .dark .btn.btn-primary:hover {
  background: var(--coral-button);
  color: #fff;
  filter: none;
  box-shadow: inset 0 0 0 2px rgb(0 0 0 / 18%);
}
.btn-ghost { border: 1px solid var(--teal-900); color: var(--teal-900); }
.btn:active, .sec-btn:active { transform: translateY(1px); }
a:focus-visible, button:focus-visible, input:focus-visible, textarea:focus-visible {
  outline: 3px solid var(--teal-500); outline-offset: 4px;
}
.dark a:focus-visible, .cta button:focus-visible { outline-color: var(--teal-400); }
.site-header { padding: var(--space-md) 0; background: #fff; border: 0; backdrop-filter: none; }
.site-header .nav {
  height: auto; min-height: 80px; max-width: 1100px; padding: var(--space-md) var(--space-lg);
  border-radius: var(--r-lg); background: var(--surface); gap: var(--space-md);
}
.logo img { height: 32px; width: auto; }
.menu { margin-left: 0; gap: 0; }
.menu > li > a, .menu > li > button { font-size: var(--type-label); font-weight: 500; padding: var(--space-sm); letter-spacing: 0; color: var(--ink); }
.menu > li.home-item > a, .menu > li.open > button { background: var(--selected); border-radius: var(--r-pill); }
.nav-cta { gap: var(--space-sm); }
.nav-cta .btn {
  font-size: 18px; font-weight: 700; line-height: 25px;
  padding: var(--space-sm); border: 0; width: 122px; height: 49px; min-height: 49px;
  flex: 0 0 auto; align-self: center; white-space: nowrap;
}
.nav-cta .btn.login {
  border: 1px solid var(--teal-900); border-radius: var(--r-pill);
  font-size: 18px; padding: var(--space-sm);
  width: 148px; height: 51px; min-height: 51px;
}
.nav-cta .btn.login { display: inline-flex; }
.nav-cta .btn.btn-coral { font-size: 19px; }
.mega { box-shadow: 0 12px 30px rgb(0 82 94 / 10%); }
.mega-col li a small { color: var(--ink-2); font-size: var(--type-badge); }
.sector-band:is(.band-np, .band-hi, .band-al, .band-wf) { background: #fff; background-image: none; color: var(--ink); padding-top: 24px; padding-bottom: var(--space-lg); }
.sector-band .sector-title { margin-top: 48px; margin-bottom: var(--space-lg); color: var(--ink); max-width: 760px; }
.sector-band:is(.band-np, .band-hi, .band-al, .band-wf) .return-bar { background: var(--surface); border-radius: var(--r-pill); padding: 8px; gap: 8px; width: fit-content; }
.sector-band .return-bar .sec-btn, .sector-band .return-bar .btn-home, .switch-btns .sec-btn, .switch-btns .btn-home {
  background: transparent; border: 0; color: var(--teal-900); border-radius: var(--r-pill);
  font-size: var(--type-label); font-weight: 500; min-height: 44px; padding: var(--space-sm) var(--space-md);
}
.sector-band .return-bar .btn-home { background: var(--selected); }
.sector-band .return-bar .sec-btn::after, .switch-btns .sec-btn::after { color: var(--teal-900); }
.sector-band .return-bar a:hover, .switch-btns a:hover { background: var(--selected); }
.sector-band .return-bar .sec-btn, .switch-btns .sec-btn { box-shadow: none; }
.sector-band .logo-band { margin-bottom: 0; }
.sector-band:is(.band-np, .band-hi, .band-al, .band-wf) .marquee-track img { border: 0; box-shadow: none; border-radius: 0; height: 80px; }
.sector-band .logo-marquee { padding-bottom: 32px; }
.proof.proof-first { padding-top: 32px; padding-bottom: var(--space-section); background: #fff; }
.qtrack { align-items: stretch; }
.quote.qslide, .quote.qslide:nth-child(even) {
  flex-basis: calc(50% - 10px); padding: var(--space-lg); background: var(--surface);
  border: 0; border-radius: var(--r-md); box-shadow: none;
}
.quote.qslide blockquote, .quote.qslide.long blockquote { font-family: var(--font-body); font-size: var(--type-card); line-height: 1.5; font-weight: 500; color: var(--ink); }
.qslide .who { font-size: var(--type-label); line-height: 1.5; color: var(--ink-2); margin-top: auto; padding-top: var(--space-md); }
.qslide .who b { color: var(--ink); }
.qinit { background: var(--teal-900); color: #fff; }
.qcarousel .qbtn { background: #fff; border: 1px solid var(--line); color: var(--teal-900); width: 44px; height: 44px; box-shadow: none; }
.qdots i { width: 24px; height: 44px; border: 0; background: transparent; position: relative; cursor: pointer; display: inline-flex; align-items: center; }
.qdots i::after { content: ''; display: block; width: 8px; height: 8px; margin: auto; background: var(--selected); border-radius: 50%; }
.qdots i.on { background: transparent; }
.qdots i.on::after { background: var(--teal-900); }
.numbers-strip { margin-top: 64px; }
.numbers-strip .outcomes { gap: 0; }
.numbers-strip .outcome, .numbers-strip .outcome:nth-child(n) {
  background: #fff; border: 0; border-radius: 0; padding: 24px; box-shadow: none;
}
.numbers-strip .outcome + .outcome { border-left: 1px solid var(--line); }
.numbers-strip .outcome .big { font-size: var(--type-section); font-weight: 700; color: var(--teal-500); line-height: 1.2; }
.numbers-strip .outcome p { font-size: var(--type-body); color: var(--ink); }
.numbers-strip .outcome cite { font-size: var(--type-badge); color: var(--ink-2); }
.type, .type.prep, .numbers-strip .outcome .type, #evidence.paper .ev:nth-child(n) .type, .case-meta .status {
  display: inline-block; width: fit-content; padding: 5px var(--space-sm); border: 0;
  border-radius: var(--r-pill); background: var(--teal-600); color: #fff;
  font-size: var(--type-badge); font-weight: 700; line-height: 1.5; text-transform: uppercase; letter-spacing: .06em;
}
.numbers-strip .outcome:nth-child(n) .type.prep { color: #fff; }
.dark, .sector-hero.dark, .cta.demo-cta { background: var(--teal-900); background-image: none; }
.dark h2, .dark h3 { color: #fff; }
.sector-hero.dark h2.h1 { font-family: var(--font-display); font-size: var(--type-section); font-weight: 700; line-height: 1.22; }
.dark .eyebrow, .cta .eyebrow { color: var(--teal-400); }
.dark .lede { color: #fff; }
.dark .shot { box-shadow: none; }
.dark .btn-primary { background: var(--coral-button); color: #fff; }
.how-inline { margin-top: 64px; }
.pain .n { color: var(--teal-900); font-family: var(--font-body); font-weight: 700; }
.pain .ps-tag.pr, .pain .ps-tag.so { background: transparent; padding: 0; font-size: var(--type-badge); letter-spacing: .08em; color: var(--teal-900); }
.pain b { font-size: var(--type-card); font-weight: 700; color: var(--ink); }
.pain-link { color: var(--teal-900); min-height: 44px; align-items: center; }
#evidence.paper { background: var(--oat); background-image: none; }
#evidence.paper .ev:nth-child(n) {
  background: #fff; border: 1px solid var(--line); border-radius: var(--r-md);
  padding: 28px; color: var(--ink); box-shadow: none;
}
#evidence.paper .ev:nth-child(n) b { color: var(--ink); margin-top: var(--space-sm); }
#evidence.paper .ev:nth-child(n) p { color: var(--ink-2); }
#evidence.paper .ev:nth-child(n) cite { color: var(--ink-2); font-size: var(--type-label); line-height: 1.5; display: block; }
#evidence.paper .btn-ghost.light { border-color: var(--teal-900); color: var(--teal-900); }
.case:nth-child(n), .partner:nth-child(n) { border: 1px solid var(--line); box-shadow: none; background: #fff; border-radius: var(--r-md); }
.case h3 { color: var(--ink); }
.case .org { font-family: var(--font-body); font-weight: 700; }
.case .org small { color: var(--ink-2); }
.case-meta { flex-wrap: wrap; gap: 8px; }
.case-meta .tag { font-size: var(--type-badge); background: var(--teal-900); margin-bottom: 0; }
.case blockquote { border: 0; background: var(--surface); font-family: var(--font-body); color: var(--ink); }
.case blockquote footer { color: var(--ink-2); }
.textlink { color: var(--teal-900); }
.more-partners { border-top: 1px solid var(--line); }
.more-partners.only .partner-list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.partner b { color: var(--ink); }
.switch-band { padding-top: 0; padding-bottom: var(--space-section); }
.switch-inner { background: var(--surface); border: 0; border-radius: var(--r-md); }
.form { border: 0; box-shadow: none; border-radius: var(--r-md); padding: var(--space-lg); }
.form label { color: var(--teal-900); font-size: var(--type-label); }
.form input, .form textarea { font-size: var(--type-body); border-radius: var(--r-sm); min-height: 48px; border: 1px solid var(--line); }
.form .invalid { border-color: var(--coral); outline: 2px solid var(--coral); }
.preview-form-note { display: block; }
.form .preview-form-status, .gate-error { margin: 0; color: var(--teal-900); font-size: var(--type-body); line-height: 1.5; }
.gate-error { border-left: 3px solid var(--coral); padding-left: 12px; }
.form small, .form .opt { color: var(--ink-2); font-size: var(--type-badge); }
body > footer { background: var(--teal-900); }
body > footer .foot-brand img { filter: brightness(0) invert(1); }
body > footer .foot-grid h6 { color: #fff; }
body > footer .foot-grid li, body > footer .foot-brand p, body > footer .foot-bottom { color: #fff; }
@media (max-width: 1150px) {
  .site-header { padding-inline: var(--space-md); }
  .site-header .nav { padding-inline: var(--space-md); }
}
@media (max-width: 1000px) {
  .site-header .menu { background: var(--surface); border-radius: var(--r-md); padding: var(--space-md); max-height: 70vh; overflow-y: auto; }
  .menu > li > a, .menu > li > button { min-height: 44px; }
  .hamburger { min-height: 44px; padding: var(--space-sm); color: var(--teal-900); border: 1px solid var(--line); border-radius: var(--r-sm); }
}
@media (max-width: 900px) {
  .quote.qslide, .quote.qslide:nth-child(even), .qcarousel.grid .qslide { flex-basis: 100%; padding: 28px; }
  .numbers-strip .outcome + .outcome { border-left: 0; border-top: 1px solid var(--line); }
  .numbers-strip .outcome { padding-inline: 0; }
}
@media (max-width: 640px) {
  .site-header { padding: 8px; }
  .site-header .nav { position: relative; flex-wrap: wrap; justify-content: space-between; gap: 8px; padding: var(--space-sm); }
  .site-header .logo { display: inline-flex; align-items: center; min-height: 44px; }
  .logo img { height: 28px; }
  .nav-cta { width: 100%; justify-content: flex-start; gap: 8px; }
  .nav-cta .hamburger { position: absolute; top: var(--space-sm); right: var(--space-sm); font-size: var(--type-label); }
  .site-header .menu { top: 100%; left: 0; width: 100%; }
  .sector-band:is(.band-np, .band-hi, .band-al, .band-wf) .return-bar { border-radius: var(--r-md); display: grid; grid-template-columns: 1fr 1fr; width: 100%; gap: 4px; }
  .sector-band .return-bar .sec-btn, .sector-band .return-bar .btn-home { white-space: normal; text-align: center; justify-content: center; font-size: 12px; padding: 10px 8px; }
  .sector-band .sector-title { margin-top: var(--space-lg); }
  .quote.qslide blockquote, .quote.qslide.long blockquote { font-size: 20px; }
  .form, #evidence.paper .ev:nth-child(n) { padding: 24px; }
  .switch-btns { display: grid; grid-template-columns: 1fr; width: 100%; }
  .switch-btns .sec-btn, .switch-btns .btn-home { justify-content: flex-start; }
  .more-partners.only .partner-list { grid-template-columns: minmax(0, 1fr); }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
  .sector-band .marquee-track { animation: none; }
  .logo-marquee { overflow-x: auto; }
}

/* Homepage and shared templates */
body.home .hero { background: #fff; border: 0; padding: 64px 0; }
body.home .hero h1, .res-post-hero h1 { font-size: var(--type-hero); font-weight: 700; line-height: 1.14; }
body.home .hero .lede { font-size: var(--type-body); line-height: 1.65; }
body.home .hero-logos.captioned { margin-top: 64px; }
.sector-bar { background: var(--teal-900); }
.sector-bar .wrap { padding-block: 20px; gap: 12px; }
.sector-bar .wrap .sec-btn {
  border: 1px solid rgb(255 255 255 / 45%); border-radius: var(--r-sm); box-shadow: none;
  font-size: var(--type-label); padding: var(--space-sm) 20px; min-height: 48px;
  background: transparent; color: #fff;
}
.sector-bar .wrap .sec-btn::after { color: #fff; }
.sector-bar .wrap .sec-btn:hover { background: rgb(255 255 255 / 12%); filter: none; }
.sector-bar a:focus-visible { outline-color: var(--teal-400); }
.hero-logos.captioned figcaption, .badges figcaption { font-size: var(--type-badge); color: var(--ink-2); line-height: 1.5; }
.cta, .dark.pgroup-dark, .finding-card, .success-card { background: var(--teal-900); background-image: none; }
.paper, .more-tools { background: var(--oat); background-image: none; }
.dark h1, .cta h2 { color: #fff; }
.pgroup h2 { font-size: var(--type-section); font-weight: 700; }
.prow h3, .principle h3, .tool h3, .res-card h3, .how-card h3,
.access-grid b, .finding-card strong, .success-card h3, .success-item b {
  font-family: var(--font-display); font-size: var(--type-card); font-weight: 700; line-height: 1.35;
}
.pgroup p, .prow .problem, .prow p, .principle p, .tool p, .res-card p,
.access-grid span, .success-item span, .how-card p, .article, .checks li {
  font-size: var(--type-body); line-height: 1.65;
}
.principle, .tool:nth-child(n), .how-card:nth-child(n), .res-card,
.stat-card:nth-child(n), .success-item:nth-child(n), .mini-feats div:nth-child(n),
.feature-index a:nth-child(n), .access-grid > div:nth-child(n), .person {
  background: #fff; color: var(--ink); border: 1px solid var(--line);
  border-radius: var(--r-md); box-shadow: none;
}
.tool:nth-child(n) *, .how-card:nth-child(n) *, .stat-card:nth-child(n) *,
.feature-index a:nth-child(n) * { color: var(--ink); }
.tool:nth-child(n) p, .how-card:nth-child(n) p, .stat-card:nth-child(n) span,
.mini-feats div:nth-child(n) p, .res-card p, .principle p, .access-grid span { color: var(--ink-2); }
.how-card:nth-child(n) .label, #recognition .how-card:nth-child(n) .label,
.checks .status, .table .pill, .label-row .type, .label-row .type.prep {
  padding: 5px var(--space-sm); border: 0; border-radius: var(--r-pill);
  background: var(--teal-600); color: #fff; font-size: var(--type-badge);
  font-weight: 700; line-height: 1.5; letter-spacing: .06em;
}
.stat-card:nth-child(n) b, .principle .n { color: var(--teal-500); font-weight: 700; }
.stat-card:nth-child(n) cite { color: var(--ink-2); }
.how-card:nth-child(n) .proof { background: transparent; color: var(--ink-2); border-color: var(--line); }
.how-card:nth-child(n) .textlink, .tool:nth-child(n) .textlink { color: var(--teal-900); }
.res-body { padding: 28px; }
.res-card h3 { color: var(--ink); }
.res-meta, .person .role { color: var(--teal-900); font-size: var(--type-badge); }
.res-tabs a, .chip { min-height: 44px; font-size: var(--type-label); }
.res-more-row { flex-wrap: wrap; }
.res-feature, .res-card:hover { box-shadow: none; }
.res-post-hero, .res-post { overflow-wrap: anywhere; }
.article h2 { font-size: var(--type-section); }
.article h3 { font-size: var(--type-card); }
.article blockquote, .founder blockquote, .quote:not(.qslide) blockquote, .case-lead blockquote {
  font-family: var(--font-body); font-size: var(--type-card); font-weight: 500; line-height: 1.5;
}
.article blockquote, .quote:not(.qslide), .case-lead, .founder {
  border: 0; border-radius: var(--r-md); background: var(--surface); box-shadow: none;
}
.article blockquote { color: var(--ink); }
.article a { color: var(--teal-900); text-decoration-color: var(--teal-600); }
.article table { display: block; max-width: 100%; overflow-x: auto; }
.table th { background: var(--surface); color: var(--teal-900); }
.table td { color: var(--ink-2); }
.table .pill { white-space: normal; }
/* Science table uses three columns after removal of the status badges. */
#studies .table { table-layout: fixed; }
#studies .table th:first-child, #studies .table td:first-child { width: 20%; white-space: normal; }
#studies .table th:nth-child(2), #studies .table td:nth-child(2) { width: 26%; }
#studies .table th:last-child, #studies .table td:last-child { width: 54%; overflow-wrap: anywhere; }
.prow .evidence { border: 1px solid var(--line); border-radius: var(--r-md); background: var(--surface); }
.pgroup .ps-tag.pr { color: #fff; }
.pgroup .pnum { font-weight: 700; }
.person { grid-template-columns: 72px minmax(0, 1fr); gap: 16px; padding: 24px; }
.person img { width: 72px; height: 72px; }
.person h3 { font-size: var(--type-card); line-height: 1.25; overflow-wrap: anywhere; }
.person .role { line-height: 1.5; letter-spacing: .04em; }
.person p { font-size: var(--type-body); line-height: 1.65; }
.lm-form .form { border: 1px solid var(--line); box-shadow: none; padding: var(--space-lg); }
.lm-form .form h2 { font-size: var(--type-card); }
.gate-card { border: 0; border-radius: var(--r-md); max-height: calc(100dvh - 32px); overflow-y: auto; }
.gate-card h2 { font-size: var(--type-card); }
.gate-card .gate-form { padding: 0; background: transparent; border: 0; }
.gate-close { width: 44px; height: 44px; }
.study-form input, .study-form select { border-radius: var(--r-sm); min-height: 48px; font-size: var(--type-body); }
.study-form label { font-size: var(--type-label); }
.play-btn { color: var(--ink); }
.btn { white-space: normal; max-width: 100%; justify-content: center; text-align: center; }
section:not(.dark):not(.cta) .btn-ghost.light { color: var(--teal-900); border-color: var(--teal-900); }
.lm-copy .lm-quote blockquote { color: var(--ink); }
.lm-copy .lm-quote .who { color: var(--ink-2); }
.lm-copy .lm-quote .qtag { color: #fff; background: var(--teal-600); width: fit-content; }
.person { align-content: start; grid-template-rows: auto auto; row-gap: 8px; }
.person img { grid-row: 1 / 3; }
#recognition .how-card:nth-child(n) { background: #fff; border: 1px solid var(--line); }
#recognition .how-card:nth-child(n) h3 { color: var(--ink); }
#recognition .how-card:nth-child(n) p { color: var(--ink-2); }
.principle cite, .principle cite a, .table td a { color: var(--teal-900); }
.science-grid > *, .about-grid > *, .lm-grid > *, .surveys-grid > * { min-width: 0; }
@media (max-width: 1100px) {
  .team-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 760px) {
  body.home .hero { padding-block: 48px; }
  .sector-bar .wrap { grid-template-columns: 1fr 1fr; padding-block: var(--space-md); gap: 8px; }
  .sector-bar .wrap .sec-btn { white-space: normal; padding: 12px 8px; font-size: 12px; }
  .res-body { padding: 24px; }
  .article blockquote, .founder blockquote, .quote:not(.qslide) blockquote, .case-lead blockquote { font-size: 20px; }
}
@media (max-width: 640px) {
  .team-grid { grid-template-columns: minmax(0, 1fr); }
  .lm-form .form { padding: 24px; }
  .sisters figcaption { white-space: normal; }
}

/* Final prototype tweaks, September 2026. Labels size to their text, not their cards. */
.btn, .tag, .qtag, .ps-tag, .type, .table .pill, .case-meta .status,
.checks .status, .how-card .label, .chip, .res-tabs a {
  width: fit-content;
  max-width: 100%;
  flex-grow: 0;
  align-self: flex-start;
  justify-self: start;
}
.tag, .qtag, .type, .table .pill, .case-meta .status,
.checks .status, .how-card .label {
  white-space: normal;
  overflow-wrap: normal;
}
.quote .tag, .quote.lead .tag, .case-meta .tag,
#evidence.paper .ev:nth-child(n) .tag {
  color: #fff;
  font-size: var(--type-badge);
}
.pgroup-dark .ps-tag.so {
  background: var(--teal-900);
  color: #fff;
}

/* Transparent monitor assets sit directly on their section background. */
.shot:has(img[src*="shot-reports-clean"]),
.shot:has(img[src*="shot-matching-cutout"]) {
  background: transparent;
  border: 0;
  box-shadow: none;
  border-radius: 0;
  overflow: visible;
}
.shot img[src*="shot-reports-clean"],
.shot img[src*="shot-matching-cutout"] {
  display: block;
  width: 100%;
  height: auto;
}

/* Audit corrections. Preserve the approved Crail and Figma button sizes. */
.type, .type.prep, .numbers-strip .outcome .type,
#evidence.paper .ev:nth-child(n) .type, .case-meta .status,
.checks .status, .table .pill {
  background: var(--teal-900);
  color: #fff;
}
.cases { align-items: stretch; }
.cases:has(> .case:only-child) { grid-template-columns: minmax(0, 1fr); }
@media (min-width: 901px) {
  .cases > .case:only-child { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); column-gap: 40px; }
  .cases > .case:only-child .case-meta { grid-column: 1; grid-row: 1; }
  .cases > .case:only-child .org { grid-column: 1; grid-row: 2; }
  .cases > .case:only-child h3 { grid-column: 1; grid-row: 3 / span 2; }
  .cases > .case:only-child > p { grid-column: 2; grid-row: 1 / span 3; }
  .cases > .case:only-child > .textlink { grid-column: 2; grid-row: 4; align-self: end; }
}
.case > .textlink { display: flex; width: fit-content; align-items: center; min-height: 44px; margin-top: 8px; }
.pdf-cases .case { display: flex; flex-direction: column; }
.pdf-cases .case > .textlink { margin-top: auto; padding-top: 16px; }
.cases + p, .cross-sector-note + p { margin-top: 28px; }
.partner-list:has(> .partner:only-child) { grid-template-columns: minmax(0, 1fr); }
.finding-card > .btn { margin-top: 20px !important; }
.webinar-index .res-thumb { background: var(--surface); }
.webinar-index .res-thumb img { object-fit: contain; }
.sector-hero .actions .sec-btn {
  background: transparent;
  color: #fff;
  border: 1px solid rgb(255 255 255 / 65%);
  box-shadow: none;
}
.sector-hero .actions .sec-btn::after { color: #fff; }
.sector-hero .actions .sec-btn:hover { background: rgb(255 255 255 / 12%); }
.sector-band:is(.band-np, .band-hi, .band-al, .band-wf) { padding-bottom: 24px; }
.sector-band .logo-marquee { padding-bottom: 16px; }
.sector-band .logo-marquee:last-child { padding-bottom: 0; }
.proof.proof-first { padding-top: 24px; }
@media (min-width: 1200px) {
  .cases:has(> .case:nth-child(3):last-child) {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .cases:has(> .case:nth-child(3):last-child) .org { min-height: 76px; }
}
