:root {
  --mn-ink: #2f2a24;
  --mn-ink-soft: #6b6257;
  --mn-bg: #fbf8f3;
  --mn-panel: #f3ece1;
  --mn-line: #e3d9c9;
  --mn-alert: #b91c1c;
  --mn-mint: #0b6b62;
  --mn-mint-bg: #e8f4f1;
  --mn-head: #3a3229;
  --mn-on-mint: #ffffff;

  --mn-footer-bg: #2f2a24;
  --mn-footer-ink: #f3ece1;
  --mn-footer-legal: #c9bfb0;

  --mn-sans: 'Iowan Old Style', 'Palatino Linotype', Palatino, 'Book Antiqua', Georgia, 'Times New Roman', serif;
  --mn-mono: ui-monospace, 'DejaVu Sans Mono', SFMono-Regular, Menlo, Consolas, monospace;

  --mn-radius: 6px;
  --mn-max: 70rem;
  --mn-step-0: clamp(0.98rem, 0.95rem + 0.15vw, 1.05rem);
  --mn-step-1: clamp(1.25rem, 1.15rem + 0.5vw, 1.45rem);
  --mn-step-3: clamp(2rem, 1.45rem + 2.6vw, 3.4rem);
}

@media (prefers-color-scheme: dark) {
  :root {
    --mn-ink: #f2ece2;
    --mn-ink-soft: #b5aa9a;
    --mn-bg: #211e1a;
    --mn-panel: #2b2722;
    --mn-line: #3d372f;
    --mn-alert: #fca5a5;
    --mn-mint: #7fd4c6;
    --mn-mint-bg: #2a3a37;
    --mn-head: #f2ece2;
    --mn-on-mint: #211e1a;
    --mn-footer-bg: #2f2a24;
    --mn-footer-ink: #f3ece1;
    --mn-footer-legal: #c9bfb0;
    --mn-sans: 'Iowan Old Style', 'Palatino Linotype', Palatino, 'Book Antiqua', Georgia, 'Times New Roman', serif;
    --mn-mono: ui-monospace, 'DejaVu Sans Mono', SFMono-Regular, Menlo, Consolas, monospace;
    --mn-radius: 6px;
    --mn-max: 70rem;
    --mn-step-0: clamp(0.98rem, 0.95rem + 0.15vw, 1.05rem);
    --mn-step-1: clamp(1.25rem, 1.15rem + 0.5vw, 1.45rem);
    --mn-step-3: clamp(2rem, 1.45rem + 2.6vw, 3.4rem);
  }
}

:root { color-scheme: light dark; }

* { box-sizing: border-box; }

html { -webkit-text-size-adjust: 100%; }

body {
  margin: 0;
  background: var(--mn-bg);
  color: var(--mn-ink);
  font-family: var(--mn-sans);
  font-size: var(--mn-step-0);
  line-height: 1.55;
  -webkit-font-smoothing: antialiased;
}

.mn-wrap { max-width: var(--mn-max); margin: 0 auto; padding: 0 1.25rem; }

h1, h2, h3, h4 {
  color: var(--mn-head);
  font-family: var(--mn-sans);
  letter-spacing: -0.025em;
  text-wrap: balance;
}
p { text-wrap: pretty; }

sup, sub { line-height: 0; font-size: 0.75em; }

.mn-header {
  position: sticky; top: 0; z-index: 5;
  background: var(--mn-bg);
  border-bottom: 1px solid var(--mn-line);
}
@supports (backdrop-filter: blur(10px)) {
  .mn-header {
    background: color-mix(in oklab, var(--mn-bg) 88%, transparent);
    backdrop-filter: blur(10px);
  }
}

#main, :target { scroll-margin-top: 5rem; }
.mn-header__inner { display: flex; align-items: center; gap: 1rem; padding: 0.8rem 1.25rem; max-width: var(--mn-max); margin: 0 auto; }
.mn-brand { display: inline-flex; align-items: center; gap: 0.55rem; text-decoration: none; color: var(--mn-head); font-weight: 700; font-size: 1.15rem; letter-spacing: -0.02em; }
.mn-brand img { width: 30px; height: 30px; display: block; }
.mn-nav { margin-left: auto; display: flex; align-items: center; gap: 1.1rem; font-size: 0.93rem; font-weight: 500; }

.mn-nav a:not(.mn-btn) { color: var(--mn-ink-soft); text-decoration: none; }
.mn-nav a:not(.mn-btn):hover, .mn-nav a:not(.mn-btn):focus-visible { color: var(--mn-ink); }
.mn-nav a[aria-current="page"]:not(.mn-btn) { color: var(--mn-ink); }

@media (max-width: 26rem) {
  .mn-header__inner { padding-inline: 1rem; gap: 0.75rem; }
  .mn-nav { gap: 0.7rem; }

  .mn-header__inner:has(.mn-btn) .mn-nav a[href="/about/"] { display: none; }

  .mn-brand span { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
  .mn-nav a { white-space: nowrap; }
}

@media (max-width: 22rem) {
  .mn-header__inner { padding-inline: 0.75rem; gap: 0.5rem; }
  .mn-nav { gap: 0.5rem; font-size: 0.85rem; }
  .mn-nav .mn-btn--small { padding-inline: 0.7rem; }
}

.mn-btn {
  display: inline-flex; align-items: center; gap: 0.5rem; min-height: 2.75rem;
  padding: 0.7rem 1.3rem; border-radius: 999px;
  background: var(--mn-mint); color: var(--mn-on-mint);
  text-decoration: none; font-weight: 650; border: 1px solid transparent;
}
.mn-btn:hover { filter: brightness(1.08); }
.mn-btn:focus-visible { outline: 2px solid var(--mn-head); outline-offset: 3px; }
.mn-btn--quiet { background: transparent; color: var(--mn-mint); border-color: var(--mn-line); }
.mn-btn--quiet:hover { background: var(--mn-mint-bg); border-color: var(--mn-mint); filter: none; }

.mn-btn--small { min-height: 2.75rem; padding: 0.5rem 0.85rem; font-size: 0.92rem; white-space: nowrap; }

.mn-hero { padding-block: clamp(2.5rem, 6vw, 4.5rem) 2rem; }
.mn-hero h1 { font-size: var(--mn-step-3); line-height: 1.05; margin: 0 0 1rem; max-width: 20ch; }
.mn-hero p.mn-lead { font-size: 1.12rem; color: var(--mn-ink-soft); max-width: 38rem; margin: 0 0 1.75rem; }

.mn-label {
  font-family: var(--mn-mono); font-size: 0.72rem; font-weight: 500;
  letter-spacing: 0.18em; text-transform: uppercase;
  color: var(--mn-mint); margin: 0 0 0.9rem;
}

.mn-cards { display: grid; gap: 0.9rem; grid-template-columns: 1fr; margin: 2rem 0; padding: 0; list-style: none; }
@media (min-width: 40rem) { .mn-cards { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 62rem) { .mn-cards--3 { grid-template-columns: repeat(3, 1fr); } }

.mn-cards--list { grid-template-columns: 1fr; max-width: 44rem; }
@media (min-width: 40rem) { .mn-cards--list { grid-template-columns: 1fr; } }
.mn-card {
  position: relative;
  border: 1px solid var(--mn-line); border-radius: var(--mn-radius);
  background: var(--mn-panel); padding: 1.15rem;
}

.mn-cards .mn-card h2, .mn-cards .mn-card h3 { margin: 0 0 0.3rem; font-size: 1.02rem; }
.mn-card p { margin: 0; color: var(--mn-ink-soft); font-size: 0.93rem; }

.mn-card a.mn-tile-link { position: absolute; inset: 0; border-radius: var(--mn-radius); text-indent: -9999px; overflow: hidden; }

.mn-card:has(a:hover) { border-color: var(--mn-mint); background: var(--mn-mint-bg); }
.mn-card:has(a:focus-visible) { outline: 2px solid var(--mn-mint); outline-offset: 2px; border-color: var(--mn-mint); }
.mn-card--soon { background: transparent; border-style: dashed; }
.mn-card--soon h3 { color: var(--mn-ink-soft); }

.mn-section { padding-block: 2.75rem; border-top: 1px solid var(--mn-line); }
.mn-section h2 { font-size: var(--mn-step-1); margin: 0 0 1.25rem; }
.mn-section p { max-width: 44rem; }

.mn-section ul:not([class]), .mn-section ol:not([class]) { max-width: 44rem; }

.mn-table { overflow-x: auto; margin: 1.25rem 0; }
.mn-table:focus-visible { outline: 2px solid var(--mn-mint); outline-offset: 2px; }
.mn-table table { border-collapse: collapse; width: 100%; min-width: 30rem; font-size: 0.93rem; }
.mn-table th, .mn-table td { text-align: left; padding: 0.55rem 0.8rem; border-bottom: 1px solid var(--mn-line); vertical-align: top; }
.mn-table th { font-weight: 650; color: var(--mn-head); white-space: nowrap; }
.mn-table tbody tr:last-child td { border-bottom: 0; }
.mn-table td:nth-child(3), .mn-table td:nth-child(4) { font-family: var(--mn-mono); font-size: 0.88rem; white-space: nowrap; }

.mn-band { background: var(--mn-panel); border-top: 1px solid var(--mn-line); border-bottom: 1px solid var(--mn-line); }

.mn-steps { counter-reset: step; list-style: none; padding: 0; margin: 1.5rem 0 0; display: grid; gap: 0.9rem; }
@media (min-width: 48rem) { .mn-steps { grid-template-columns: repeat(auto-fit, minmax(16rem, 1fr)); } }
.mn-steps li { counter-increment: step; border-left: 3px solid var(--mn-mint); padding: 0 0 0 0.9rem; color: var(--mn-ink-soft); font-size: 0.95rem; }
.mn-steps strong { display: block; color: var(--mn-ink); font-weight: 650; }
.mn-steps strong::before { content: counter(step) ". "; font-family: var(--mn-mono); color: var(--mn-mint); font-weight: 500; }

.mn-prose { padding-block: 2.5rem 3rem; }
.mn-prose h1 { font-size: clamp(1.75rem, 1.5rem + 1vw, 2.2rem); margin: 0 0 1rem; }
.mn-prose h2 { font-size: var(--mn-step-1); margin: 2.25rem 0 0.6rem; }
.mn-prose p, .mn-prose li { max-width: 44rem; }
.mn-prose a { color: var(--mn-mint); }

.mn-footer { background: var(--mn-footer-bg); color: var(--mn-footer-ink); margin-top: 3rem; padding: 2.5rem 0; font-size: 0.93rem; }
.mn-footer a { color: var(--mn-footer-ink); }
.mn-footer__grid { display: grid; gap: 1.5rem; grid-template-columns: repeat(2, minmax(0, 1fr)); }
.mn-footer__brand { grid-column: 1 / -1; }
.mn-footer__brand ul { grid-template-columns: repeat(2, max-content); column-gap: 1.5rem; margin-top: 0.5rem; }

@media (min-width: 48rem) { .mn-footer__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (min-width: 62rem) { .mn-footer__grid { grid-template-columns: 1.3fr repeat(5, minmax(0, 1fr)); } .mn-footer__brand { grid-column: auto; } .mn-footer__brand ul { grid-template-columns: 1fr; } }

.mn-footer h2 { margin: 0 0 0.5rem; font-family: var(--mn-mono); font-size: 0.72rem; font-weight: 500; letter-spacing: 0.18em; text-transform: uppercase; color: var(--mn-footer-ink); }
.mn-footer ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 0.4rem; }
.mn-footer__legal { margin-top: 1.75rem; font-size: 0.85rem; color: var(--mn-footer-legal); }
.mn-footer__give p { margin: 1.75rem 0 0; max-width: 62ch; color: var(--mn-footer-ink); }

.mn-footer h2.mn-footer__give-label { margin-top: 1.75rem; }
.mn-footer__give-label + p { margin-top: 0.5rem; }
.mn-footer img { width: 34px; height: 34px; display: block; }

.mn-skip { position: absolute; left: -9999px; }
.mn-skip:focus { left: 1rem; top: 1rem; background: var(--mn-bg); color: var(--mn-ink); padding: 0.6rem 1rem; z-index: 10; border: 1px solid var(--mn-mint); border-radius: 6px; }
.mn-note { font-size: 0.9rem; color: var(--mn-ink-soft); }
.mn-note a { color: var(--mn-mint); }

.mn-section--flush { border-top: 0; }

.mn-section--defer { content-visibility: auto; contain-intrinsic-size: auto 1500px; }
.mn-cta { margin-top: 1.75rem; }

@media (forced-colors: active) {
  .mn-header { background: Canvas; backdrop-filter: none; }
  .mn-card { border-color: CanvasText; }
}

:root {
  --mn-step-1: clamp(1.45rem, 1.25rem + 0.9vw, 1.9rem);
  --mn-rhythm: clamp(3rem, 2.4rem + 2.8vw, 4.5rem);
}

.mn-section { padding-block: var(--mn-rhythm); }
.mn-section > h2 { font-size: var(--mn-step-1); letter-spacing: -0.03em; margin-block-end: 0.5rem; }
.mn-section > h2 + p { margin-block-start: 0; }
.mn-cards { margin-block: 1.75rem 0; }

.mn-section > h2::before {
  content: ""; display: block; inline-size: 2.5rem; block-size: 3px;
  background: var(--mn-mint); border-radius: 2px; margin-block-end: 1rem;
}

.mn-hero h1 { font-size: clamp(2.1rem, 1.5rem + 2.6vw, 3.2rem); letter-spacing: -0.035em; }
.mn-hero p.mn-lead { max-width: 34rem; }

.mn-card {
  box-shadow: 0 1px 2px color-mix(in oklab, var(--mn-ink) 6%, transparent);
  transition: transform 160ms ease, box-shadow 160ms ease, border-color 160ms ease, background 160ms ease;
}
.mn-card:has(a:hover) {
  transform: translateY(-2px);
  box-shadow: 0 6px 18px color-mix(in oklab, var(--mn-ink) 12%, transparent);
}
.mn-btn { transition: transform 120ms ease, filter 120ms ease; }
.mn-btn:active { transform: translateY(1px); }

.mn-demo {
  border: 1px solid var(--mn-line); border-radius: 14px; background: var(--mn-panel);
  padding: clamp(1.1rem, 3vw, 1.6rem); margin-block: 1.5rem 0;
}
.mn-demo__label {
  font-family: var(--mn-mono); font-size: 0.7rem; letter-spacing: 0.18em;
  text-transform: uppercase; color: var(--mn-mint); margin: 0 0 0.6rem;
}
.mn-demo__q { font-size: 1.12rem; color: var(--mn-ink); margin: 0 0 1rem; max-width: 42rem; }
.mn-demo__opts { display: flex; flex-wrap: wrap; gap: 0.5rem; list-style: none; padding: 0; margin: 0 0 1rem; }
.mn-demo__opts li {
  font-family: var(--mn-mono); font-size: 0.92rem; padding: 0.45rem 0.9rem;
  border: 1px solid var(--mn-line); border-radius: 999px; background: var(--mn-bg);
}
.mn-demo details { border-top: 1px solid var(--mn-line); padding-block-start: 0.9rem; }
.mn-demo summary {
  cursor: pointer; font-weight: 650; color: var(--mn-mint); list-style: none;
  display: flex; align-items: center; gap: 0.5rem;
}
.mn-demo summary::-webkit-details-marker { display: none; }
.mn-demo summary::after { content: "+"; font-family: var(--mn-mono); margin-inline-start: auto; }
.mn-demo details[open] summary::after { content: "\2212"; }
.mn-demo summary:focus-visible { outline: 2px solid var(--mn-mint); outline-offset: 3px; border-radius: 4px; }
.mn-demo details > *:not(summary) { margin-block: 0.75rem 0; color: var(--mn-ink-soft); font-size: 0.97rem; }
.mn-demo details > p:last-child { color: var(--mn-ink); }

@media (prefers-reduced-motion: reduce) {
  .mn-card, .mn-btn { transition: none; }
  .mn-card:has(a:hover) { transform: none; }
}

var {
  font-style: italic;
  font-family: inherit;
}

.mn-orgs {
  border-top: 1px solid var(--mn-line);
  padding-block: 1.5rem;
  display: flex;
  flex-flow: row wrap;
  justify-content: center;
  align-items: center;
  gap: 0.6rem 1rem;
}

.mn-orgs__label,
.mn-orgs__viewport,
.mn-orgs > .mn-orgs__track { flex: 0 0 100%; }
.mn-orgs__label {
  margin: 0;
  font-size: 0.82rem;
  font-weight: 650;
  letter-spacing: 0.01em;
  color: var(--mn-ink-soft);
  text-align: center;
}
.mn-orgs__note { order: 1; }

.mn-orgs__track {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  align-items: center;
  gap: clamp(1.25rem, 4vw, 2.5rem);
}
.mn-orgs__item { display: flex; align-items: center; }

.mn-orgs__item img {
  display: block;
  max-height: 72px;
  max-width: 10rem;
}
.mn-orgs__note {
  margin: 0;
  font-size: 0.82rem;
  color: var(--mn-ink-soft);
  text-align: center;
}

.mn-orgs__name {
  display: block;
  margin-block-start: 0.3rem;
  font-size: 0.75rem;
  font-weight: 650;
  color: var(--mn-ink-soft);
  text-align: center;
}
.mn-orgs__item--named { flex-direction: column; }

.mn-orgs__item--named .mn-orgs__out { flex-direction: column; align-items: center; text-decoration: none; }

.mn-say { padding-block: 2.5rem; border-top: 1px solid var(--mn-line); }
.mn-say h2 { font-size: var(--mn-step-1); margin: 0 0 1.25rem; }
.mn-say__list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: 1rem;
  grid-template-columns: 1fr;
}

@media (min-width: 48rem) { .mn-say__list { grid-template-columns: repeat(2, 1fr); } }
.mn-say__item {
  background: var(--mn-panel);
  border-radius: var(--mn-radius);
  padding: 1.15rem 1.25rem;
  display: flex;
  flex-direction: column;
  gap: 0.6rem;
}
.mn-say__quote { margin: 0; }
.mn-say__quote p { margin: 0; font-size: 1.02rem; line-height: 1.55; max-width: 42ch; }

.mn-say__item cite {
  font-style: normal;
  font-size: 0.85rem;
  font-weight: 650;
  color: var(--mn-ink-soft);
}

.mn-say__meta { margin: 0; font-size: 0.8rem; color: var(--mn-ink-soft); }

.mn-say__more { margin: 1.25rem 0 0; }
.mn-say__more a { color: var(--mn-mint); font-weight: 650; }
.mn-say h2 + .mn-say__list { margin-bottom: 1.75rem; }

.mn-orgs__out { display: flex; border-radius: 3px; }

.mn-orgs__out:focus-visible { outline: 2px solid currentColor; outline-offset: 4px; }

.mn-orgs__item--text { align-items: center; min-height: 40px; }
.mn-orgs__link,
.mn-orgs__wordmark {
  font-weight: 650;
  font-size: 0.95rem;
  letter-spacing: 0.01em;
  color: var(--mn-ink-soft);
  text-decoration: none;
  white-space: nowrap;
}

.mn-orgs__link {
  border-block-end: 1px dotted currentColor;
  padding-block-end: 1px;
}
.mn-orgs__link:hover { color: var(--mn-ink); border-block-end-style: solid; }

.mn-orgs__item--lines .mn-orgs__link,
.mn-orgs__item--lines .mn-orgs__wordmark { display: inline-block; text-align: center; line-height: 1.15; }
.mn-orgs__line { display: block; }

.mn-orgs__link[href="https://colleenyoung.org/"],
.mn-orgs__link[href="https://colleenyoung.org/"]:hover {
  font-family: Arial, Helvetica, sans-serif;
  font-weight: 700;
  color: #0d1424;
}
@media (prefers-color-scheme: dark) {
  .mn-orgs__link[href="https://colleenyoung.org/"],
  .mn-orgs__link[href="https://colleenyoung.org/"]:hover { color: var(--mn-ink); }
}

.mn-orgs__link:focus-visible {
  outline: 2px solid currentColor;
  outline-offset: 3px;
  border-radius: 2px;
}

.mn-orgs--row .mn-orgs__track { justify-content: center; }
.mn-orgs--wrap .mn-orgs__track { flex-wrap: wrap; justify-content: center; row-gap: 1.25rem; }

.mn-orgs--marquee .mn-orgs__viewport {
  overflow: hidden;
  max-width: 100%;
  display: flex;
  align-items: center;
  min-height: calc(72px + 0.8rem);
  mask-image: linear-gradient(to right, transparent, #000 4rem, #000 calc(100% - 4rem), transparent);
}
.mn-orgs--marquee .mn-orgs__track {
  flex: 0 0 auto;
  padding-inline-end: clamp(1.25rem, 4vw, 2.5rem);
  animation: mn-orgs-scroll var(--mn-orgs-speed, 72s) linear infinite;
}
@keyframes mn-orgs-scroll { to { transform: translateX(-100%); } }

.mn-orgs__pause {
  position: absolute;
  width: 1px; height: 1px;
  margin: -1px; padding: 0; border: 0;
  clip-path: inset(50%);
  overflow: hidden;
  white-space: nowrap;
}
.mn-orgs__pause-label {
  order: 2;
  cursor: pointer;
  font-size: 0.8rem;
  color: var(--mn-mint);
  border: 1px solid var(--mn-line);
  border-radius: 999px;
  padding: 0.3rem 0.8rem;
  min-height: 44px;
  display: inline-flex;
  align-items: center;
}
.mn-orgs__pause-label [data-off] { display: none; }
.mn-orgs__pause:checked ~ .mn-orgs__viewport .mn-orgs__track { animation-play-state: paused; }
.mn-orgs__pause:checked ~ .mn-orgs__pause-label [data-on] { display: none; }
.mn-orgs__pause:checked ~ .mn-orgs__pause-label [data-off] { display: inline; }
.mn-orgs__pause:focus-visible ~ .mn-orgs__pause-label {
  outline: 2px solid var(--mn-mint);
  outline-offset: 3px;
}

.mn-orgs__viewport:focus-within .mn-orgs__track { animation-play-state: paused; }

.mn-orgs__viewport:focus-visible { outline: 2px solid var(--mn-mint); outline-offset: 4px; border-radius: 6px; }

@media (prefers-reduced-motion: reduce) {

  .mn-orgs--marquee .mn-orgs__pause,
  .mn-orgs--marquee .mn-orgs__pause-label { display: none; }
  .mn-orgs--marquee .mn-orgs__viewport {
    overflow-x: auto; overscroll-behavior-x: contain; touch-action: pan-x pan-y pinch-zoom;
    mask-image: none; display: block;

    scrollbar-width: thin; scrollbar-color: var(--mn-ink-soft) transparent; padding-block-end: 0.5rem;
  }
  .mn-orgs--marquee .mn-orgs__track {
    animation-name: none; flex-wrap: nowrap; width: max-content; margin-inline: auto; padding-inline-end: 0;
  }
  .mn-orgs--marquee .mn-orgs__track[aria-hidden="true"],
  .mn-orgs--marquee .mn-orgs__item[aria-hidden="true"] { display: none; }
  .mn-orgs--marquee .mn-orgs__item { flex: 0 0 auto; }
  .mn-orgs--inline .mn-orgs__item img { transition: none; }
}

.mn-orgs__svg { display: block; color: var(--mn-ink); max-width: 10rem; height: auto; }
.mn-orgs__name { color: var(--mn-ink-soft); }

.mn-orgs__all { color: var(--mn-mint); font-weight: 650; white-space: nowrap; }
.mn-orgs__all:focus-visible { outline: 2px solid currentColor; outline-offset: 3px; border-radius: 2px; }

.mn-collab__list {
  list-style: none; margin: 1.5rem 0 0; padding: 0;
  display: flex; flex-wrap: wrap; justify-content: center; align-items: center;
  gap: 1.75rem clamp(1.5rem, 5vw, 3rem);
}
.mn-collab__list .mn-orgs__link,
.mn-collab__list .mn-orgs__wordmark { white-space: normal; text-align: center; }

html, body { overflow-x: clip; }

@media (max-width: 30rem) and (prefers-reduced-motion: no-preference) {
  .mn-orgs--marquee .mn-orgs__viewport {
    overflow-x: auto;
    overscroll-behavior-x: contain;
    -webkit-overflow-scrolling: touch;
    touch-action: pan-x pan-y pinch-zoom;
    mask-image: none;
  }
  .mn-orgs--marquee .mn-orgs__track { animation: none; transform: none; flex-wrap: nowrap; }

  .mn-orgs--marquee:not([data-strip-js="on"]) .mn-orgs__track[aria-hidden="true"],
  .mn-orgs--marquee:not([data-strip-js="on"]) .mn-orgs__item[aria-hidden="true"] { display: none; }
  .mn-orgs--marquee .mn-orgs__item { flex: 0 0 auto; }
  .mn-orgs--marquee:not([data-strip-js="on"]) .mn-orgs__pause,
  .mn-orgs--marquee:not([data-strip-js="on"]) .mn-orgs__pause-label { display: none; }
}

@media (prefers-reduced-motion: no-preference) {
  .mn-orgs[data-strip-js="on"] .mn-orgs__track { animation: none; }
  .mn-orgs[data-strip-js="on"] .mn-orgs__viewport {
    overflow-x: auto; overscroll-behavior-x: contain; scrollbar-width: none;
    touch-action: pan-x pan-y pinch-zoom; cursor: grab;
  }
  .mn-orgs[data-strip-js="on"] .mn-orgs__viewport::-webkit-scrollbar { display: none; }
  .mn-orgs[data-strip-js="on"] .mn-orgs__viewport:active { cursor: grabbing; }
}
.mn-orgs__arrows { display: none; }
@media (hover: hover) and (pointer: fine) {
  .mn-orgs[data-strip-js="on"] .mn-orgs__arrows { display: flex; justify-content: center; gap: 0.5rem; flex: 0 0 100%; }
}
.mn-orgs__arrow {
  display: inline-flex; align-items: center; justify-content: center;
  width: 2.75rem; height: 2.75rem; padding: 0;
  font: inherit; font-size: 1.4rem; line-height: 1;
  color: var(--mn-ink-soft); background: transparent;
  border: 1px solid currentColor; border-radius: 999px; cursor: pointer;
}
.mn-orgs__arrow:hover { color: var(--mn-ink); }
.mn-orgs__arrow:focus-visible { outline: 2px solid var(--mn-mint); outline-offset: 3px; }

input[type="date"] {
  -webkit-appearance: none; appearance: none;
  box-sizing: border-box; min-height: 2.75rem; min-width: 12rem;
  padding: 0.6rem 0.75rem; font: inherit; color: var(--mn-ink);
  background: var(--mn-bg); border: 1px solid var(--mn-line); border-radius: var(--mn-radius);
}
input[type="date"]::-webkit-calendar-picker-indicator {
  width: 1.25rem; height: 1.25rem; padding: 0.2rem; cursor: pointer; opacity: 1;
  background: currentColor;
  -webkit-mask: url("/assets/calendar.svg") center / 1.1rem no-repeat;
  mask: url("/assets/calendar.svg") center / 1.1rem no-repeat;
}
input[type="date"]:hover { border-color: var(--mn-ink-soft); }
input[type="date"]:focus-visible { outline: 2px solid var(--mn-mint); outline-offset: 2px; border-color: var(--mn-mint); }
input[type="date"]:user-invalid { border-color: var(--mn-alert); }
input[type="date"]:user-invalid:focus-visible { outline-color: var(--mn-alert); }

.mn-qs { list-style: none; margin: 1.5rem 0 0; padding: 0; display: grid; gap: 1rem; }
.mn-q {
  border: 1px solid var(--mn-line);
  border-radius: 14px;
  background: var(--mn-panel);
  padding: 1.1rem 1.2rem;
}
.mn-q__ask { margin: 0; font-size: 1.02rem; display: flex; gap: 0.7rem; align-items: baseline; }
.mn-q__n {
  font-family: var(--mn-mono);
  font-size: 0.8rem;
  color: var(--mn-mint);
  flex: 0 0 auto;
  min-width: 1.6rem;
}
.mn-q__follow {
  margin: 0.6rem 0 0 2.3rem;
  font-size: 0.95rem;
  color: var(--mn-ink-soft);
}
.mn-q__hint { margin: 0.8rem 0 0 2.3rem; }
.mn-q__hint summary {
  cursor: pointer;
  list-style: none;
  font-size: 0.9rem;
  font-weight: 650;
  color: var(--mn-mint);
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  min-height: 44px;
}
.mn-q__hint summary::-webkit-details-marker { display: none; }
.mn-q__hint summary::after { content: "+"; font-family: var(--mn-mono); }
.mn-q__hint[open] summary::after { content: "\2212"; }
.mn-q__hint summary:focus-visible { outline: 2px solid var(--mn-mint); outline-offset: 3px; border-radius: 4px; }
.mn-q__hint p { margin: 0.4rem 0 0; font-size: 0.93rem; color: var(--mn-ink-soft); }

.mn-prose p, .mn-lead { max-width: 34rem; }
.mn-lead { font-size: var(--mn-step-1); line-height: 1.5; }
h1, h2, h3 { letter-spacing: -0.01em; }

.mn-demo__q, .mn-demo__opts, .mn-demo__label, .mn-q__n, var { font-family: var(--mn-mono); }

.mn-card { background: var(--mn-bg); }
.mn-card:has(a:hover) { background: var(--mn-mint-bg); }

.mn-demo math { font-size: 1.05em; }
.mn-demo__opts li math { font-size: 1em; }

math[display="block"] { overflow-x: auto; overflow-y: hidden; max-width: 100%; padding-block: 4px; margin-block: -4px; }

.mn-demo details a { color: var(--mn-mint); text-underline-offset: 0.18em; }
.mn-demo .mn-fig { display: block; max-width: 100%; height: auto; color: var(--mn-ink-soft); margin-block: 0.75rem; }
.mn-fig__curve, .mn-fig__dots { color: var(--mn-mint); }
.mn-fig path.mn-fig__curve { stroke: var(--mn-mint); }
.mn-fig .mn-fig__dots circle { fill: var(--mn-mint); }
.mn-fig line.mn-fig__line { stroke: var(--mn-ink); }

.mn-art { display: block; width: 4.5rem; height: auto; margin: 0 0 0.6rem; color: var(--mn-mint); }
.mn-card--soon .mn-art { color: var(--mn-ink-soft); }

.mn-compare { width: 100%; max-width: 52rem; border-collapse: collapse; margin-block-start: 1.5rem; font-size: 0.95rem; }
.mn-compare th, .mn-compare td { text-align: left; vertical-align: top; padding: 0.7rem 0.8rem; border-bottom: 1px solid var(--mn-line); }
.mn-compare thead th { font-family: var(--mn-mono); font-size: 0.75rem; letter-spacing: 0.08em; text-transform: uppercase; color: var(--mn-ink-soft); font-weight: 500; }
.mn-compare thead th:first-of-type { color: var(--mn-mint); }
.mn-compare tbody th { font-weight: 650; color: var(--mn-ink); }
.mn-compare td { color: var(--mn-ink-soft); }
.mn-compare td.mn-compare__us { color: var(--mn-ink); background: var(--mn-mint-bg); }
@media (max-width: 40rem) {
  .mn-compare, .mn-compare tbody, .mn-compare tr, .mn-compare th, .mn-compare td { display: block; }
  .mn-compare thead { display: none; }
  .mn-compare tr { border: 1px solid var(--mn-line); border-radius: var(--mn-radius); margin-block-end: 0.8rem; overflow: hidden; }
  .mn-compare tbody th { border-bottom: 1px solid var(--mn-line); background: var(--mn-panel); }
  .mn-compare td { display: grid; grid-template-columns: 9.5rem 1fr; gap: 0.6rem; border-bottom: 0; padding-block: 0.5rem; }
  .mn-compare td::before { content: attr(data-label); font-family: var(--mn-mono); font-size: 0.75rem; color: var(--mn-ink-soft); padding-block-start: 0.15rem; }
}

.mn-faq details { border-top: 1px solid var(--mn-line); padding-block: 0.85rem; max-width: 44rem; }
.mn-faq details:last-of-type { border-bottom: 1px solid var(--mn-line); }
.mn-faq summary { cursor: pointer; font-weight: 650; color: var(--mn-ink); list-style: none; display: flex; align-items: center; gap: 0.5rem; }
.mn-faq summary::-webkit-details-marker { display: none; }
.mn-faq summary::after { content: "+"; font-family: var(--mn-mono); color: var(--mn-mint); margin-inline-start: auto; }
.mn-faq details[open] summary::after { content: "\2212"; }
.mn-faq summary:focus-visible { outline: 2px solid var(--mn-mint); outline-offset: 3px; border-radius: 4px; }
.mn-faq details p { margin: 0.6rem 0 0; color: var(--mn-ink-soft); }

@media (prefers-reduced-motion: no-preference) {
  @supports (animation-timeline: view()) {
    main:has(> .mn-hero .mn-demo) > .mn-section, main:has(> .mn-hero .mn-demo) > .mn-band {
      animation: mn-rise linear both;
      animation-timeline: view();
      animation-range: entry 0% entry 40%;
    }
  }
}

@keyframes mn-rise { from { transform: translateY(12px); } }

.mn-home {
  --mn-rhythm: clamp(2.25rem, 1.8rem + 2vw, 3.5rem);
  --band-l: 0.93; --band-c: 0.035; --fig-l: 0.36; --fig-c: 0.085;
}
@media (prefers-color-scheme: dark) {
  .mn-home { --band-l: 0.31; --band-c: 0.04; --fig-l: 0.86; --fig-c: 0.07; }
}

.mn-home .mn-hero { padding-block: clamp(1.75rem, 4vw, 3rem) 0; }
.mn-hero__grid { display: grid; gap: 1.5rem 2.75rem; align-items: start; }
@media (min-width: 62rem) { .mn-hero__grid { grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr); } }
.mn-home .mn-hero h1 { font-size: clamp(2.1rem, 1.3rem + 2.4vw, 3.1rem); line-height: 1.05; max-width: none; margin: 0 0 1rem; }
.mn-home .mn-hero p.mn-lead { font-size: clamp(1.1rem, 1rem + 0.5vw, 1.3rem); color: var(--mn-ink); max-width: 30rem; margin: 0 0 1.5rem; }
.mn-hero__text p.mn-cta { margin: 0 0 0.75rem; }
.mn-hero__text .mn-note { margin: 0; max-width: 30rem; }
.mn-hero__side { display: grid; gap: 1rem; }
.mn-home .mn-hero .mn-demo--hero, .mn-home .mn-hero .mn-facts { background: var(--mn-panel); margin: 0; }
.mn-home .mn-hero .mn-demo--hero { padding: clamp(1rem, 2.4vw, 1.4rem); }
.mn-home .mn-hero .mn-demo__q { font-size: 1.02rem; margin-block-end: 0.8rem; }
.mn-home .mn-hero .mn-demo__label { font-size: 0.8rem; letter-spacing: 0.08em; text-transform: none; }

.mn-facts { border: 1px solid var(--mn-line); border-radius: 14px; padding: 1rem 1.1rem 1.1rem; }
.mn-facts__title { margin: 0 0 0.7rem; font-family: var(--mn-mono); font-size: 0.8rem; letter-spacing: 0.08em; color: var(--mn-mint); }
.mn-facts dl { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0.75rem; margin: 0; }
.mn-facts dl > div { display: flex; flex-direction: column-reverse; justify-content: flex-end; border-inline-start: 3px solid var(--mn-mint); padding-inline-start: 0.7rem; }
.mn-facts dd { margin: 0; font-family: var(--mn-mono); font-weight: 600; font-size: clamp(1.7rem, 1.2rem + 1.8vw, 2.4rem); line-height: 1.1; color: var(--mn-ink); }
.mn-facts dt { font-size: 0.82rem; line-height: 1.3; color: var(--mn-ink-soft); }

.mn-facts__passes { list-style: none; margin: 0.9rem 0 0; padding: 0.8rem 0 0; border-top: 1px solid var(--mn-line); display: grid; gap: 0.5rem; }
.mn-facts__passes a { display: block; text-decoration: none; color: var(--mn-ink-soft); font-size: 0.88rem; line-height: 1.35; }
.mn-facts__passes strong { color: var(--mn-mint); font-weight: 600; margin-inline-end: 0.3rem; }
.mn-facts__passes a:hover span, .mn-facts__passes a:focus-visible span { text-decoration: underline; }

.mn-home > .mn-orgs { border-top: 0; padding-block: 1.75rem 0.25rem; justify-content: flex-start; }
.mn-home > .mn-orgs .mn-orgs__label, .mn-home > .mn-orgs .mn-orgs__note { text-align: start; }
.mn-home > .mn-orgs.mn-orgs--row .mn-orgs__track { justify-content: flex-start; }

.mn-home .mn-cards { gap: 0.8rem; margin-block: 1.25rem 0; }
@media (min-width: 62rem) { .mn-home .mn-cards--4 { grid-template-columns: repeat(4, 1fr); } }
.mn-home .mn-section > h2::before { margin-block-end: 0.7rem; }
.mn-home .mn-card--band { padding: 0; overflow: hidden; display: flex; flex-direction: column; }
.mn-card__band {
  display: flex; align-items: center; justify-content: center;
  block-size: 5rem; padding-block: 0.6rem;
  background: color-mix(in oklab, var(--mn-mint) 14%, var(--mn-bg));
  color: var(--mn-mint);
  border-block-end: 1px solid var(--mn-line);
}
.mn-home .mn-card__band svg { display: block; block-size: 100%; inline-size: auto; max-inline-size: 100%; margin: 0; color: inherit; }
.mn-card__body { padding: 0.85rem 1rem 1rem; display: flex; flex-direction: column; flex: 1; }
.mn-home .mn-cards .mn-card--band h2, .mn-home .mn-cards .mn-card--band h3 { font-size: 1.1rem; font-weight: 750; margin: 0 0 0.3rem; }
.mn-chips { display: flex; flex-wrap: wrap; gap: 0.35rem; list-style: none; margin: auto 0 0; padding: 0.7rem 0 0; }
.mn-chips li { font-family: var(--mn-mono); font-size: 0.76rem; line-height: 1.2; padding: 0.22rem 0.6rem; border-radius: 999px; background: var(--mn-panel); border: 1px solid var(--mn-line); color: var(--mn-ink); }
.mn-card--band:has(a:hover) .mn-chips li { background: var(--mn-bg); }
.mn-home .mn-card--band.mn-card--soon .mn-card__band { opacity: 0.8; }
@supports (color: oklch(from red l c h)) {
  .mn-home .mn-card--band { --shift: 0; }
  .mn-home .mn-card--band:nth-child(4n+2) { --shift: 42; }
  .mn-home .mn-card--band:nth-child(4n+3) { --shift: -48; }
  .mn-home .mn-card--band:nth-child(4n+4) { --shift: -100; }
  .mn-home .mn-card__band {
    background: oklch(from var(--mn-mint) var(--band-l) var(--band-c) calc(h + var(--shift)));
    color: oklch(from var(--mn-mint) var(--fig-l) var(--fig-c) calc(h + var(--shift)));
  }
}
