@import url("https://fonts.googleapis.com/css2?family=Geist+Mono:wght@500;600;700&family=Hanken+Grotesk:wght@400;500;600;700;800;900&family=Newsreader:opsz,wght@6..72,400;6..72,500;6..72,600;6..72,700&display=swap");

:root {
  --mca-primary: #0d7a68;
  --mca-primary-hover: #13937e;
  --mca-primary-pressed: #085a4d;
  --mca-coral: #c45b4e;
  --mca-coral-pressed: #8f3f36;
  --mca-coral-soft: #f6e2dd;
  --mca-canvas: #f8f5ed;
  --mca-surface: #fdfbf7;
  --mca-white: #ffffff;
  --mca-border: #e3dcc8;
  --mca-border-strong: #d1c7b2;
  --mca-ink: #3E2F24;
  --mca-text: #37423d;
  --mca-muted: #636d66;
  --mca-sage: #7c9a8f;
  --mca-honey: #b5862c;
  --mca-honey-soft: #faf3dc;
  --mca-shadow: 0 22px 54px rgba(26, 36, 33, 0.1);
  --mca-tight-shadow: 0 12px 28px rgba(26, 36, 33, 0.08);
  --mca-heading-font: "Newsreader", "Iowan Old Style", Georgia, serif;
  --mca-body-font: "Hanken Grotesk", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --mca-mono-font: "Geist Mono", ui-monospace, "SF Mono", Menlo, monospace;
  color-scheme: light;
}

* {
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
  overflow-x: hidden;
}

body {
  margin: 0;
  background: var(--mca-canvas);
  color: var(--mca-text);
  font-family: var(--mca-body-font);
  line-height: 1.55;
  overflow-x: hidden;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

a {
  color: inherit;
  text-decoration: none;
}

a:focus-visible {
  outline: 3px solid rgba(196, 91, 78, 0.55);
  outline-offset: 4px;
}

img,
svg {
  display: block;
}

img {
  max-width: 100%;
}

.mca-page {
  width: 100%;
  min-height: 100vh;
  overflow: hidden;
}

.mca-header,
.mca-hero,
.mca-outputs,
.mca-steps,
.mca-essay-insights,
.mca-sharing,
.mca-acceptances,
.mca-faq,
.mca-final,
.mca-audience-hero,
.mca-problem-section,
.mca-capabilities-section,
.mca-strategy-section,
.mca-role-section,
.mca-efficiency-section,
.mca-school-role-section,
.mca-recommender-section,
.mca-school-comparison-section,
	  .mca-school-workflow-section,
	  .mca-founder-hero,
	  .mca-founder-story,
	  .mca-founder-discoveries,
	  .mca-founder-approach,
	  .mca-founder-voice,
	  .mca-founder-trust,
	  .mca-founder-credentials,
	  .mca-founder-recommendation,
	  .mca-footer,
	  .mca-placeholder-main {
  width: min(1120px, calc(100% - 40px));
  margin-inline: auto;
}

.mca-header {
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: 26px;
  min-height: 86px;
  border-bottom: 1px solid var(--mca-border);
}

.mca-logo {
  width: 168px;
  height: auto;
}

.mca-nav {
  display: flex;
  min-width: 0;
  justify-content: flex-end;
  align-items: center;
  gap: 22px;
  color: var(--mca-muted);
  font-size: 0.95rem;
  font-weight: 700;
}

.mca-nav a:hover,
.mca-text-link:hover,
.mca-footer a:hover {
  color: var(--mca-primary);
}

.mca-button {
  display: inline-flex;
  min-height: 46px;
  align-items: center;
  justify-content: center;
  border: 1px solid transparent;
  border-radius: 6px;
  padding: 0 20px;
  font-weight: 800;
  line-height: 1.1;
  transition: background-color 160ms ease, border-color 160ms ease, color 160ms ease, transform 160ms ease;
}

.mca-button:hover {
  transform: translateY(-1px);
}

.mca-button-primary {
  background: var(--mca-primary);
  color: var(--mca-white);
}

.mca-button-primary:hover {
  background: var(--mca-primary-hover);
}

.mca-button-secondary {
  border-color: var(--mca-primary);
  background: var(--mca-white);
  color: var(--mca-primary);
}

.mca-button-secondary:hover {
  background: var(--mca-brand-tint, #e6f5f2);
}

.mca-button-disabled,
.mca-button-disabled:hover {
  border-color: var(--mca-border-strong);
  background: rgba(253, 251, 247, 0.72);
  color: var(--mca-muted);
  cursor: not-allowed;
  transform: none;
}

.mca-hero {
  display: grid;
  grid-template-columns: minmax(0, 0.88fr) minmax(540px, 1.12fr);
  gap: 58px;
  align-items: center;
  padding: 74px 0 82px;
}

.mca-kicker {
  margin: 0 0 13px;
  color: var(--mca-primary);
  font-family: var(--mca-mono-font);
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  line-height: 1.1;
  text-transform: uppercase;
}

h1,
h2,
h3,
p {
  margin-top: 0;
}

h1,
h2,
h3 {
  color: var(--mca-ink);
  letter-spacing: 0;
  overflow-wrap: break-word;
}

h1 {
  max-width: 760px;
  margin-bottom: 28px;
  font-family: var(--mca-heading-font);
  font-size: 4.24rem;
  font-weight: 650;
  line-height: 0.98;
}

h1 span {
  display: block;
  margin-top: 0.34em;
  color: var(--mca-primary);
}

h2 {
  margin-bottom: 18px;
  font-family: var(--mca-heading-font);
  font-size: 2.72rem;
  font-weight: 600;
  line-height: 1.02;
}

h3 {
  margin-bottom: 10px;
  font-size: 1.18rem;
  line-height: 1.16;
}

.mca-lede,
.mca-section-copy p,
.mca-step p,
.mca-output-card p,
.mca-sharing-grid p,
.mca-final p,
.mca-placeholder-main p {
  color: var(--mca-text);
  font-size: 1.08rem;
}

.mca-lede {
  max-width: 650px;
  margin-bottom: 30px;
}

.mca-actions,
.mca-audience-links {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 18px;
}

.mca-hero-copy,
.mca-audience-hero-copy,
.mca-section-copy,
.mca-section-heading,
.mca-capability-grid,
.mca-strategy-flow,
.mca-role-compare,
.mca-efficiency-grid {
  min-width: 0;
}

.mca-text-link {
  color: var(--mca-primary-pressed);
  font-weight: 800;
}

.mca-workflow-shell {
  display: grid;
  gap: 16px;
  border: 1px solid color-mix(in srgb, var(--mca-sage), white 42%);
  border-radius: 8px;
  background:
    linear-gradient(135deg, rgba(230, 245, 242, 0.66), rgba(253, 251, 247, 0.95)),
    var(--mca-surface);
  box-shadow: var(--mca-shadow);
  padding: 24px;
}

.mca-workflow {
  display: grid;
  gap: 14px;
}

.mca-workflow-panel,
.mca-logic-card {
  border: 1px solid var(--mca-border);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.9);
  padding: 18px;
}

.mca-workflow-label {
  margin: 0 0 12px;
  color: var(--mca-primary);
  font-family: var(--mca-mono-font);
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  line-height: 1.1;
  text-transform: uppercase;
}

.mca-chip-row,
.mca-ready-list {
  display: grid;
  gap: 10px;
}

.mca-chip-row {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.mca-chip-row span,
.mca-ready-list span {
  display: flex;
  min-height: 42px;
  align-items: center;
  justify-content: center;
  border: 1px solid color-mix(in srgb, var(--mca-primary), white 56%);
  border-radius: 7px;
  background: #e6f5f2;
  color: var(--mca-primary-pressed);
  padding: 8px 10px;
  font-size: 0.88rem;
  font-weight: 800;
  line-height: 1.14;
  text-align: center;
}

.mca-ready-list {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.mca-ready-list span {
  border-color: var(--mca-border);
  background: var(--mca-surface);
  color: var(--mca-text);
}

.mca-ready-list span:last-child {
  grid-column: 1 / -1;
  background: var(--mca-honey-soft);
  color: #604717;
}

.mca-logic-card {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 14px;
  align-items: center;
  background: var(--mca-white);
}

.mca-logic-card p:last-child {
  margin: 0;
  color: var(--mca-text);
  font-size: 1rem;
}

.mca-shield,
.mca-card-icon {
  display: grid;
  flex: none;
  place-items: center;
  border-radius: 7px;
  background: var(--mca-primary);
  color: var(--mca-white);
}

.mca-shield {
  width: 46px;
  height: 46px;
  border: 1px solid color-mix(in srgb, var(--mca-primary), white 58%);
  background: rgba(230, 245, 242, 0.82);
  padding: 7px;
}

.mca-shield svg,
.mca-card-icon svg {
  width: 24px;
  height: 24px;
  fill: none;
  stroke: currentColor;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 1.85;
}

.mca-shield img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  /* transform: rotate(180deg); */
}

.mca-flow-arrow {
  position: relative;
  width: 4px;
  height: 36px;
  justify-self: center;
  border-radius: 999px;
  background: linear-gradient(180deg, var(--mca-primary), var(--mca-coral));
}

.mca-flow-arrow::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: -2px;
  width: 10px;
  height: 10px;
  border-right: 3px solid var(--mca-coral);
  border-bottom: 3px solid var(--mca-coral);
  transform: translateX(-50%) rotate(45deg);
}

.mca-flow-arrow-branch {
  width: 148px;
  height: 44px;
  background:
    linear-gradient(180deg, var(--mca-primary), var(--mca-coral)) center top / 4px 20px no-repeat,
    linear-gradient(90deg, var(--mca-primary), var(--mca-coral)) center 20px / 116px 4px no-repeat,
    linear-gradient(180deg, var(--mca-primary), var(--mca-coral)) 16px 20px / 4px 18px no-repeat,
    linear-gradient(180deg, var(--mca-primary), var(--mca-coral)) center 20px / 4px 18px no-repeat,
    linear-gradient(180deg, var(--mca-primary), var(--mca-coral)) calc(100% - 16px) 20px / 4px 18px no-repeat;
}

.mca-flow-arrow-branch::after {
  bottom: 0;
}

.mca-sharing-note {
  margin: 2px 0 0;
  border: 1px solid color-mix(in srgb, var(--mca-primary), white 58%);
  border-radius: 8px;
  background: rgba(206, 233, 229, 0.68);
  color: var(--mca-primary-pressed);
  padding: 12px 14px;
  font-weight: 850;
  text-align: center;
}

.mca-ownership {
  margin: 0;
  color: var(--mca-muted);
  font-size: 0.78rem;
  line-height: 1.35;
  text-align: center;
}

.mca-workflow-mobile {
  display: none;
}

.mca-outputs,
.mca-steps,
.mca-essay-insights,
.mca-sharing,
.mca-acceptances,
.mca-faq,
.mca-final {
  padding: 84px 0;
  border-top: 1px solid var(--mca-border);
}

.mca-section-copy,
.mca-section-heading,
.mca-acceptances-copy {
  max-width: 760px;
}

.mca-outputs {
  display: grid;
  grid-template-columns: minmax(0, 0.62fr) minmax(600px, 1.38fr);
  gap: 44px;
  align-items: start;
}

.mca-output-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.mca-output-card {
  display: grid;
  min-height: 184px;
  align-content: start;
  gap: 10px;
  border: 1px solid var(--mca-border);
  border-radius: 8px;
  background: var(--mca-surface);
  box-shadow: var(--mca-tight-shadow);
  padding: 22px;
}

.mca-card-icon {
  width: 38px;
  height: 38px;
  margin-bottom: 6px;
  background: var(--mca-primary);
}

.mca-output-card h3,
.mca-sharing-grid h3,
.mca-step h3 {
  color: var(--mca-ink);
  font-weight: 800;
}

.mca-output-card p,
.mca-sharing-grid p,
.mca-step p {
  margin-bottom: 0;
}

.mca-step-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin-top: 34px;
  border-top: 1px solid var(--mca-border);
  border-bottom: 1px solid var(--mca-border);
}

.mca-step {
  min-height: 230px;
  border-right: 1px solid var(--mca-border);
  padding: 30px 28px;
}

.mca-step:last-child {
  border-right: 0;
}

.mca-step > span {
  display: grid;
  width: 42px;
  height: 42px;
  margin-bottom: 22px;
  place-items: center;
  border-radius: 999px;
  background: var(--mca-coral-soft);
  color: var(--mca-coral-pressed);
  font-family: var(--mca-mono-font);
  font-weight: 700;
}

.mca-proof-line {
  display: inline-flex;
  margin: 28px 0 0;
  border: 1px solid color-mix(in srgb, var(--mca-honey), white 54%);
  border-radius: 8px;
  background: var(--mca-honey-soft);
  color: #604717;
  padding: 14px 16px;
  font-weight: 850;
}

.mca-essay-insights {
  display: grid;
  grid-template-columns: minmax(0, 0.9fr) minmax(360px, 1fr);
  gap: 56px;
  align-items: center;
}

.mca-pattern-board {
  display: grid;
  gap: 14px;
  border: 1px solid var(--mca-border);
  border-radius: 8px;
  background: var(--mca-surface);
  box-shadow: var(--mca-tight-shadow);
  padding: 22px;
}

.mca-pattern-board span {
  position: relative;
  display: flex;
  min-height: 54px;
  align-items: center;
  border: 1px solid var(--mca-border);
  border-radius: 8px;
  background: var(--mca-white);
  color: var(--mca-text);
  padding: 12px 14px 12px 42px;
  font-weight: 850;
}

.mca-pattern-board span::before,
.mca-sharing-grid article::before {
  content: "";
  position: absolute;
  width: 12px;
  height: 12px;
  border-radius: 999px;
  background: var(--mca-primary);
  box-shadow: 0 0 0 5px var(--mca-honey-soft);
}

.mca-pattern-board span::before {
  left: 17px;
}

.mca-sharing-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
  margin: 34px 0 24px;
}

.mca-sharing-grid article {
  position: relative;
  min-height: 188px;
  border: 1px solid var(--mca-border);
  border-radius: 8px;
  background: var(--mca-surface);
  padding: 50px 18px 20px;
}

.mca-sharing-grid article::before {
  top: 22px;
  left: 22px;
}

.mca-audience-links {
  gap: 22px;
}

.mca-acceptances {
  position: relative;
  overflow: hidden;
  padding: 56px 0 68px;
  border-bottom: 1px solid var(--mca-border);
  background: rgba(230, 245, 242, 0.22);
  box-shadow: 0 0 0 100vmax rgba(230, 245, 242, 0.22);
  clip-path: inset(0 -100vmax);
}

.mca-acceptances-copy {
  margin-inline: auto;
  text-align: center;
}

.mca-acceptances-copy h2 {
  max-width: 840px;
  margin-inline: auto;
  font-size: 2.36rem;
}

.mca-acceptances-copy p {
  max-width: 760px;
  margin: 0 auto;
  color: var(--mca-text);
  font-size: 1.06rem;
}

.mca-logo-marquee {
  --mca-logo-frame-width: 142px;
  --mca-logo-frame-height: 86px;
  --mca-logo-frame-padding: 22px;
  width: 100%;
  margin-top: 28px;
  overflow: hidden;
  border-block: 1px solid var(--mca-border);
  padding: 24px 0;
  -webkit-mask-image: linear-gradient(to right, transparent 0, #000 72px, #000 calc(100% - 72px), transparent 100%);
  mask-image: linear-gradient(to right, transparent 0, #000 72px, #000 calc(100% - 72px), transparent 100%);
}

.mca-temp-logo-marquee__track {
  display: flex;
  width: max-content;
  animation: mca-logo-scroll 60s linear infinite;
  will-change: transform;
}

.mca-temp-logo-marquee__group {
  display: flex;
  flex: none;
  gap: 24px;
  padding-right: 24px;
}

.mca-temp-logo-marquee__item {
  display: grid;
  width: var(--mca-logo-frame-width);
  height: var(--mca-logo-frame-height);
  place-items: center;
  overflow: hidden;
  border: 1px solid rgba(209, 199, 178, 0.76);
  border-radius: 8px;
  background: var(--mca-surface);
  padding: calc(var(--mca-logo-frame-padding) / 2);
}

.mca-temp-logo-marquee__item--featured {
  border-color: rgba(13, 122, 104, 0.46);
  box-shadow: inset 0 0 0 2px rgba(13, 122, 104, 0.08);
}

.mca-temp-logo-marquee__logo {
  width: auto;
  max-width: calc(var(--mca-logo-frame-width) - var(--mca-logo-frame-padding));
  height: auto;
  max-height: calc(var(--mca-logo-frame-height) - var(--mca-logo-frame-padding));
  object-fit: contain;
}

.mca-faq {
  display: grid;
  grid-template-columns: minmax(0, 0.62fr) minmax(600px, 1.38fr);
  gap: 44px;
  align-items: start;
}

.mca-faq-list {
  display: grid;
  gap: 14px;
}

.mca-faq-list details {
  border: 1px solid var(--mca-border);
  border-radius: 8px;
  background: var(--mca-surface);
  box-shadow: var(--mca-tight-shadow);
  overflow: hidden;
}

.mca-faq-list summary {
  display: flex;
  min-height: 64px;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  color: var(--mca-ink);
  cursor: pointer;
  padding: 18px 22px;
  font-size: 1.08rem;
  font-weight: 850;
  line-height: 1.18;
}

.mca-faq-list summary::-webkit-details-marker {
  display: none;
}

.mca-faq-list summary::after {
  content: "+";
  display: grid;
  flex: none;
  width: 28px;
  height: 28px;
  place-items: center;
  border: 1px solid color-mix(in srgb, var(--mca-primary), white 58%);
  border-radius: 999px;
  background: rgba(230, 245, 242, 0.72);
  color: var(--mca-primary-pressed);
  font-family: var(--mca-mono-font);
  font-size: 1rem;
  font-weight: 700;
}

.mca-faq-list details[open] summary {
  border-bottom: 1px solid var(--mca-border);
  background: rgba(230, 245, 242, 0.42);
}

.mca-faq-list details[open] summary::after {
  content: "−";
}

.mca-faq-list p {
  margin: 0;
  padding: 0 22px 18px;
  color: var(--mca-text);
  font-size: 1.02rem;
}

.mca-faq-list summary + p {
  padding-top: 18px;
}

@keyframes mca-logo-scroll {
  from {
    transform: translate3d(0, 0, 0);
  }

  to {
    transform: translate3d(-50%, 0, 0);
  }
}

.mca-final {
  display: grid;
  justify-items: center;
  text-align: center;
}

.mca-final h2 {
  max-width: 780px;
}

.mca-footer {
  display: grid;
  grid-template-columns: auto 1fr auto;
  gap: 24px;
  align-items: center;
  padding: 28px 0 38px;
  border-top: 1px solid var(--mca-border);
  color: var(--mca-muted);
  font-size: 0.92rem;
}

.mca-footer-logo {
  width: 142px;
  height: auto;
}

.mca-footer nav {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 18px;
  font-weight: 700;
}

.mca-footer p {
  margin: 0;
}

.mca-footer-credit {
  max-width: 320px;
  color: var(--mca-muted);
  font-size: 0.82rem;
  line-height: 1.35;
  text-align: right;
}

.mca-footer-credit a {
  color: inherit;
  text-decoration: underline;
  text-underline-offset: 0.14em;
}

.mca-footer-end {
  display: grid;
  gap: 10px;
  justify-items: end;
}

.mca-footer-social {
  display: flex;
  min-height: 24px;
  justify-content: flex-end;
  gap: 8px;
}

.mca-placeholder-main {
  min-height: 56vh;
  padding: 86px 0;
}

.mca-placeholder-card {
  max-width: 760px;
  border: 1px solid var(--mca-border);
  border-radius: 8px;
  background: var(--mca-surface);
  box-shadow: var(--mca-tight-shadow);
  padding: 34px;
}

.mca-audience-hero {
  display: grid;
  grid-template-columns: minmax(0, 0.96fr) minmax(420px, 1.04fr);
  gap: 58px;
  align-items: center;
  padding: 74px 0 82px;
}

.mca-audience-hero h1 {
  font-size: 3.94rem;
}

.mca-counselor-story h1 {
  font-size: 3.35rem;
}

.mca-counselor-story .mca-audience-hero-copy {
  display: grid;
  justify-items: center;
  text-align: center;
}

.mca-counselor-story .mca-lede,
.mca-counselor-story .mca-route-note {
  margin-right: auto;
  margin-left: auto;
}

.mca-counselor-story .mca-actions {
  justify-content: center;
}

.mca-route-note {
  max-width: 620px;
  margin: 18px 0 0;
  border-left: 3px solid var(--mca-honey);
  color: var(--mca-muted);
  padding-left: 14px;
  font-size: 0.92rem;
}

.mca-counselor-visual,
.mca-efficiency-illustration {
  display: grid;
  min-width: 0;
  place-items: center;
  margin: 0;
  border: 1px solid color-mix(in srgb, var(--mca-sage), white 42%);
  border-radius: 8px;
  background:
    linear-gradient(135deg, rgba(230, 245, 242, 0.66), rgba(253, 251, 247, 0.95)),
    var(--mca-surface);
  box-shadow: var(--mca-shadow);
  padding: 24px;
}

.mca-counselor-visual img,
.mca-efficiency-illustration img {
  width: 100%;
  max-height: 340px;
  object-fit: contain;
}

.mca-counselor-story .mca-counselor-visual {
  justify-items: stretch;
  padding: 18px;
}

.mca-counselor-photo-frame {
  width: 100%;
  min-height: 320px;
  aspect-ratio: 3 / 2;
  overflow: hidden;
  border-radius: 6px;
}

.mca-counselor-story .mca-counselor-photo-frame img {
  display: block;
  width: 100%;
  height: 100%;
  max-width: none;
  max-height: none;
  object-fit: cover;
  object-position: center center;
}

.mca-counselor-visual figcaption {
  width: 100%;
  border-top: 1px solid var(--mca-border);
  margin-top: 20px;
  color: var(--mca-muted);
  padding-top: 14px;
  font-weight: 750;
  text-align: center;
}

.mca-problem-section,
.mca-capabilities-section,
.mca-strategy-section,
.mca-role-section,
.mca-efficiency-section {
  padding: 84px 0;
  border-top: 1px solid var(--mca-border);
}

.mca-capability-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
  margin-top: 34px;
}

.mca-capability-grid span {
  position: relative;
  display: flex;
  min-height: 66px;
  align-items: center;
  border: 1px solid var(--mca-border);
  border-radius: 8px;
  background: var(--mca-surface);
  padding: 16px 16px 16px 44px;
  color: var(--mca-text);
  font-weight: 850;
  line-height: 1.18;
}

.mca-capability-grid span::before,
.mca-efficiency-list li::before {
  content: "";
  position: absolute;
  width: 12px;
  height: 12px;
  border-radius: 999px;
  background: var(--mca-primary);
  box-shadow: 0 0 0 5px var(--mca-honey-soft);
}

.mca-capability-grid span::before {
  left: 18px;
}

.mca-strategy-section {
  display: grid;
  grid-template-columns: minmax(0, 0.78fr) minmax(420px, 1.22fr);
  gap: 54px;
  align-items: center;
}

.mca-strategy-flow {
  display: grid;
  gap: 14px;
  padding: 0;
  margin: 0;
  list-style: none;
}

.mca-strategy-flow li {
  position: relative;
  display: flex;
  min-height: 58px;
  align-items: center;
  border: 1px solid var(--mca-border);
  border-radius: 8px;
  background: var(--mca-surface);
  box-shadow: var(--mca-tight-shadow);
  padding: 14px 18px;
  color: var(--mca-ink);
  font-weight: 850;
}

.mca-strategy-flow li:not(:last-child)::after {
  content: "";
  position: absolute;
  bottom: -15px;
  left: 50%;
  width: 2px;
  height: 14px;
  background: linear-gradient(180deg, var(--mca-primary), var(--mca-coral));
  transform: translateX(-50%);
}

.mca-role-compare {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 22px;
  margin-top: 34px;
}

.mca-role-compare article {
  border: 1px solid var(--mca-border);
  border-radius: 8px;
  background: var(--mca-surface);
  box-shadow: var(--mca-tight-shadow);
  padding: 28px;
}

.mca-role-compare article:first-child {
  border-color: color-mix(in srgb, var(--mca-primary), white 55%);
  background:
    linear-gradient(180deg, rgba(230, 245, 242, 0.58), rgba(253, 251, 247, 0.96)),
    var(--mca-surface);
}

.mca-role-compare p {
  margin-bottom: 0;
}

.mca-role-compare ul,
.mca-efficiency-list {
  display: grid;
  gap: 12px;
  padding: 0;
  margin: 18px 0 0;
  list-style: none;
}

.mca-role-compare li {
  position: relative;
  padding-left: 24px;
  color: var(--mca-text);
}

.mca-role-compare li::before {
  content: "";
  position: absolute;
  top: 0.62em;
  left: 0;
  width: 8px;
  height: 8px;
  border-radius: 999px;
  background: var(--mca-primary);
}

.mca-efficiency-section {
  display: grid;
  grid-template-columns: minmax(0, 0.78fr) minmax(420px, 1.22fr);
  gap: 54px;
  align-items: start;
}

.mca-efficiency-grid {
  display: grid;
  gap: 22px;
}

.mca-efficiency-list {
  margin-top: 0;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.mca-efficiency-list li {
  position: relative;
  min-height: 76px;
  border: 1px solid var(--mca-border);
  border-radius: 8px;
  background: var(--mca-surface);
  padding: 18px 18px 18px 46px;
  color: var(--mca-text);
  font-weight: 850;
  line-height: 1.22;
}

.mca-efficiency-list li::before {
  left: 18px;
  top: 24px;
}

.mca-efficiency-illustration {
  padding: 20px;
  box-shadow: var(--mca-tight-shadow);
}

.mca-reflection-photo {
  justify-items: stretch;
  overflow: hidden;
}

.mca-reflection-photo img {
  display: block;
  width: 100%;
  height: 100%;
  max-height: none;
  border-radius: 6px;
  object-fit: cover;
  object-position: 68% center;
}

.mca-school-hero h1 {
  font-size: 3.46rem;
  margin-bottom: 14px;
}

.mca-school-hero-subtitles {
  display: grid;
  gap: 0.2em;
  max-width: 620px;
  margin: 0 0 28px;
  color: var(--mca-primary);
  font-family: var(--mca-heading-font);
  font-size: 1.55rem;
  font-weight: 650;
  line-height: 1.2;
}

.mca-school-hero-subtitles strong {
  font-weight: inherit;
}

.mca-school-role-visual {
  display: grid;
  min-width: 0;
  gap: 16px;
  border: 1px solid color-mix(in srgb, var(--mca-sage), white 42%);
  border-radius: 8px;
  background:
    linear-gradient(135deg, rgba(230, 245, 242, 0.66), rgba(253, 251, 247, 0.95)),
    var(--mca-surface);
  box-shadow: var(--mca-shadow);
  padding: 24px;
}

.mca-school-role-visual article {
  border: 1px solid var(--mca-border);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.9);
  padding: 20px;
}

.mca-visual-card-title,
.mca-school-role-visual p:last-child,
.mca-role-detail p,
.mca-three-column p {
  margin-bottom: 0;
}

.mca-visual-card-title {
  color: var(--mca-ink);
  font-size: 1.18rem;
  font-weight: 800;
  line-height: 1.16;
}

.mca-school-role-section,
.mca-recommender-section,
.mca-school-comparison-section,
.mca-school-workflow-section {
  padding: 84px 0;
  border-top: 1px solid var(--mca-border);
}

.mca-school-role-section {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(360px, 0.9fr);
  gap: 54px;
  align-items: center;
}

.mca-school-role-section-reversed {
  grid-template-columns: minmax(360px, 0.9fr) minmax(0, 1.1fr);
}

.mca-school-role-section-reversed .mca-school-role-copy {
  order: 2;
}

.mca-school-role-section-reversed .mca-role-visual {
  order: 1;
}

.mca-school-role-section--photo h2,
.mca-school-counselor-intro {
  text-align: center;
}

.mca-school-counselor-intro {
  max-width: 720px;
  margin: 18px auto 0;
  color: var(--mca-text);
  font-size: 1.08rem;
}

.mca-school-role-copy,
.mca-role-detail-grid,
.mca-school-role-visual,
.mca-role-visual,
.mca-clarify-box,
.mca-three-column,
.mca-school-flow {
  min-width: 0;
}

.mca-role-detail-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
  margin-top: 28px;
}

.mca-role-detail,
.mca-three-column article {
  border: 1px solid var(--mca-border);
  border-radius: 8px;
  background: var(--mca-surface);
  box-shadow: var(--mca-tight-shadow);
  padding: 24px;
}

.mca-check-list {
  display: grid;
  gap: 12px;
  padding: 0;
  margin: 16px 0 0;
  list-style: none;
}

.mca-check-list li {
  position: relative;
  color: var(--mca-text);
  padding-left: 24px;
  line-height: 1.28;
}

.mca-check-list li::before {
  content: "";
  position: absolute;
  top: 0.52em;
  left: 0;
  width: 8px;
  height: 8px;
  border-radius: 999px;
  background: var(--mca-primary);
  box-shadow: 0 0 0 5px var(--mca-honey-soft);
}

.mca-primary-outcome {
  margin-top: 20px;
  border: 1px solid color-mix(in srgb, var(--mca-honey), white 54%);
  border-radius: 8px;
  background: var(--mca-honey-soft);
  color: #604717;
  padding: 16px;
}

.mca-primary-outcome span,
.mca-mini-label {
  display: block;
  margin-bottom: 8px;
  color: var(--mca-primary-pressed);
  font-family: var(--mca-mono-font);
  font-size: 0.74rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  line-height: 1.1;
  text-transform: uppercase;
}

.mca-primary-outcome p {
  margin-bottom: 0;
}

.mca-role-visual {
  display: grid;
  place-items: center;
  margin: 0;
  border: 1px solid color-mix(in srgb, var(--mca-sage), white 42%);
  border-radius: 8px;
  background:
    linear-gradient(135deg, rgba(230, 245, 242, 0.58), rgba(253, 251, 247, 0.96)),
    var(--mca-surface);
  box-shadow: var(--mca-shadow);
  padding: 24px;
}

.mca-role-visual img {
  width: 100%;
  max-height: 320px;
  object-fit: contain;
}

.mca-school-counselor-photo {
  justify-items: stretch;
  overflow: hidden;
}

.mca-advisor-photo {
  justify-items: stretch;
  overflow: hidden;
}

.mca-school-counselor-photo-frame {
  width: 100%;
  min-height: 460px;
  aspect-ratio: 4 / 5;
  overflow: hidden;
  border-radius: 6px;
}

.mca-advisor-photo-frame {
  width: 100%;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  border-radius: 6px;
}

.mca-school-counselor-photo-frame img {
  display: block;
  width: 100%;
  height: 100%;
  max-width: none;
  max-height: none;
  object-fit: cover;
  object-position: center center;
}

.mca-advisor-photo-frame img {
  display: block;
  width: 100%;
  height: 100%;
  max-width: none;
  max-height: none;
  object-fit: cover;
  object-position: center center;
}

.mca-recommender-section {
  display: grid;
  grid-template-columns: minmax(0, 0.9fr) minmax(320px, 0.7fr);
  gap: 44px;
  align-items: center;
}

.mca-clarify-box {
  border: 1px solid color-mix(in srgb, var(--mca-coral), white 58%);
  border-left: 4px solid var(--mca-coral);
  border-radius: 8px;
  background: var(--mca-coral-soft);
  color: var(--mca-text);
  padding: 22px;
  font-size: 1.06rem;
  font-weight: 750;
}

.mca-recommender-card {
  display: grid;
  gap: 16px;
}

.mca-recommender-card .mca-check-list {
  margin-top: 0;
}

.mca-material-note {
  margin: 0;
  border: 1px solid color-mix(in srgb, var(--mca-primary), white 58%);
  border-radius: 8px;
  background: rgba(230, 245, 242, 0.72);
  color: var(--mca-primary-pressed);
  padding: 14px;
  font-weight: 800;
}

.mca-recommender-card .mca-clarify-box {
  margin-top: 2px;
  font-size: 1rem;
}

.mca-three-column {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
  margin-top: 34px;
}

.mca-three-column article {
  min-height: 298px;
}

.mca-three-column h3 {
  margin-bottom: 18px;
}

.mca-three-column p + .mca-mini-label {
  margin-top: 22px;
}

.mca-school-flow {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 14px;
  padding: 0;
  margin: 34px 0 0;
  list-style: none;
}

.mca-school-flow li {
  position: relative;
  display: flex;
  min-height: 118px;
  align-items: center;
  border: 1px solid var(--mca-border);
  border-radius: 8px;
  background: var(--mca-surface);
  box-shadow: var(--mca-tight-shadow);
  padding: 18px;
  color: var(--mca-ink);
  font-weight: 850;
  line-height: 1.18;
}

.mca-school-flow li:not(:last-child)::after {
  content: "";
  position: absolute;
  top: 50%;
  right: -15px;
  width: 14px;
  height: 2px;
  background: linear-gradient(90deg, var(--mca-primary), var(--mca-coral));
  transform: translateY(-50%);
}

.mca-founder-hero {
  display: grid;
  grid-template-columns: minmax(0, 0.98fr) minmax(360px, 0.72fr);
  gap: 58px;
  align-items: center;
  padding: 74px 0 82px;
}

.mca-founder-hero h1 {
  font-size: 4rem;
  line-height: 1.02;
}

.mca-founder-card {
  display: grid;
  gap: 18px;
  border: 1px solid color-mix(in srgb, var(--mca-sage), white 42%);
  border-radius: 8px;
  background:
    linear-gradient(135deg, rgba(230, 245, 242, 0.66), rgba(253, 251, 247, 0.95)),
    var(--mca-surface);
  box-shadow: var(--mca-shadow);
  padding: 22px;
}

.mca-founder-photo-placeholder,
.mca-founder-icon-placeholder {
  display: grid;
  place-items: center;
  border: 1px dashed var(--mca-border-strong);
  border-radius: 8px;
  background: rgba(253, 251, 247, 0.82);
  color: var(--mca-muted);
  font-weight: 800;
  line-height: 1.25;
  text-align: center;
}

.mca-founder-photo-placeholder {
  min-height: 430px;
  padding: 24px;
}

.mca-founder-photo {
  width: 100%;
  min-height: 430px;
  aspect-ratio: 3 / 4;
  overflow: hidden;
  border-radius: 8px;
}

.mca-founder-photo img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
}

.mca-founder-nameplate {
  border: 1px solid var(--mca-border);
  border-radius: 8px;
  background: var(--mca-white);
  padding: 22px;
}

.mca-founder-nameplate h2 {
  margin-bottom: 10px;
  font-size: 2rem;
}

.mca-founder-nameplate p {
  margin-bottom: 4px;
  color: var(--mca-text);
  font-weight: 750;
}

.mca-founder-story,
.mca-founder-approach,
.mca-founder-voice,
.mca-founder-trust {
  padding: 84px 0;
  border-top: 1px solid var(--mca-border);
}

.mca-founder-story,
.mca-founder-approach {
  display: grid;
  grid-template-columns: minmax(0, 0.92fr) minmax(360px, 0.78fr);
  gap: 54px;
  align-items: center;
}

.mca-founder-note {
  border: 1px solid color-mix(in srgb, var(--mca-honey), white 54%);
  border-left: 4px solid var(--mca-honey);
  border-radius: 8px;
  background: var(--mca-honey-soft);
  color: #604717;
  padding: 26px;
  font-size: 1.12rem;
  font-weight: 800;
}

.mca-founder-story-media {
  display: grid;
  gap: 18px;
}

.mca-founder-school-photo {
  width: 100%;
  margin: 0;
  overflow: hidden;
  border: 1px solid color-mix(in srgb, var(--mca-sage), white 42%);
  border-radius: 8px;
  background: var(--mca-surface);
  box-shadow: var(--mca-tight-shadow);
}

.mca-founder-school-photo img {
  display: block;
  width: 100%;
  height: 100%;
  aspect-ratio: 16 / 9;
  object-fit: cover;
  object-position: center center;
}

.mca-founder-note p,
.mca-founder-reminder,
.mca-affiliation-note {
  margin-bottom: 0;
}

.mca-founder-process {
  display: grid;
  gap: 20px;
}

.mca-founder-sequence {
  display: grid;
  gap: 12px;
  padding: 0;
  margin: 0;
  list-style: none;
}

.mca-founder-sequence li {
  position: relative;
  display: flex;
  min-height: 56px;
  align-items: center;
  border: 1px solid var(--mca-border);
  border-radius: 8px;
  background: var(--mca-surface);
  box-shadow: var(--mca-tight-shadow);
  padding: 14px 18px;
  color: var(--mca-ink);
  font-weight: 850;
}

.mca-founder-sequence li:not(:last-child)::after {
  content: "";
  position: absolute;
  bottom: -13px;
  left: 50%;
  width: 2px;
  height: 12px;
  background: linear-gradient(180deg, var(--mca-primary), var(--mca-coral));
  transform: translateX(-50%);
}

.mca-founder-logic-card {
  display: grid;
  grid-template-columns: 112px minmax(0, 1fr);
  gap: 18px;
  align-items: center;
  border: 1px solid color-mix(in srgb, var(--mca-primary), white 58%);
  border-radius: 8px;
  background:
    linear-gradient(135deg, rgba(230, 245, 242, 0.72), rgba(253, 251, 247, 0.96)),
    var(--mca-surface);
  padding: 20px;
}

.mca-founder-icon-placeholder {
  min-height: 112px;
  padding: 14px;
  color: var(--mca-primary-pressed);
  font-size: 0.86rem;
}

.mca-founder-logic-card p:last-child {
  margin-bottom: 0;
}

.mca-founder-voice {
  display: grid;
  grid-template-columns: minmax(0, 0.78fr) minmax(420px, 1fr);
  gap: 48px;
  align-items: start;
}

.mca-founder-quote {
  margin: 0;
  border: 1px solid color-mix(in srgb, var(--mca-coral), white 58%);
  border-left: 4px solid var(--mca-coral);
  border-radius: 8px;
  background: var(--mca-coral-soft);
  color: var(--mca-text);
  padding: 26px;
  font-size: 1.12rem;
  font-weight: 700;
}

.mca-founder-reminder {
  grid-column: 1 / -1;
  border: 1px solid color-mix(in srgb, var(--mca-primary), white 58%);
  border-radius: 8px;
  background: rgba(230, 245, 242, 0.72);
  color: var(--mca-primary-pressed);
  padding: 16px;
  font-weight: 850;
}

.mca-trust-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
  margin-top: 30px;
}

.mca-trust-grid article {
  border: 1px solid var(--mca-border);
  border-radius: 8px;
  background: var(--mca-surface);
  box-shadow: var(--mca-tight-shadow);
  padding: 24px;
}

.mca-trust-grid p {
  margin-bottom: 0;
}

.mca-affiliation-note {
  margin-top: 24px;
  border: 1px solid color-mix(in srgb, var(--mca-honey), white 54%);
  border-radius: 8px;
  background: var(--mca-honey-soft);
  color: #604717;
  padding: 16px;
  font-weight: 850;
}

.mca-founder-page .mca-founder-hero {
  grid-template-columns: minmax(0, 0.92fr) minmax(320px, 0.62fr);
  gap: 62px;
  align-items: center;
  padding: 96px 0 86px;
}

.mca-founder-portrait-stack {
  position: relative;
  min-height: 620px;
}

.mca-founder-photo-offset {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 84%;
  height: 82%;
  background: rgba(219, 241, 237, 0.78);
}

.mca-founder-page .mca-founder-photo {
  position: relative;
  z-index: 1;
  width: min(100%, 570px);
  min-height: 0;
  aspect-ratio: 4 / 5;
  margin: 0 0 0 58px;
  border-radius: 4px;
  box-shadow: 0 20px 40px rgba(26, 36, 33, 0.12);
}

.mca-founder-page .mca-founder-photo img {
  object-position: center center;
}

.mca-founder-hero-copy {
  display: grid;
  justify-items: center;
  text-align: center;
}

.mca-founder-page .mca-founder-hero h1 {
  max-width: 5.8em;
  margin-bottom: 22px;
  color: var(--mca-ink);
  font-size: 5.2rem;
  line-height: 0.98;
}

.mca-founder-name {
  margin-bottom: 8px;
  color: var(--mca-primary);
  font-size: 1.38rem;
  font-weight: 900;
}

.mca-founder-role {
  margin-bottom: 0;
  color: var(--mca-muted);
  font-weight: 800;
  line-height: 1.35;
}

.mca-founder-page .mca-founder-story {
  display: grid;
  grid-template-columns: 1fr;
  gap: 30px;
  max-width: 980px;
  padding: 70px 0 48px;
  border-top: 0;
}

.mca-founder-page .mca-founder-story h2 {
  max-width: 820px;
  margin-bottom: 0;
  color: var(--mca-ink);
  font-size: 3.9rem;
  line-height: 1.04;
}

.mca-founder-story-body {
  display: grid;
  gap: 32px;
}

.mca-founder-story-body p,
.mca-founder-discovery p {
  margin-bottom: 0;
  color: var(--mca-text);
  font-size: 1.28rem;
  line-height: 1.72;
}

.mca-founder-discoveries {
  display: grid;
  gap: 78px;
  padding: 38px 0 90px;
}

.mca-founder-discovery {
  display: grid;
  grid-template-columns: 180px minmax(0, 1fr);
  gap: 52px;
  align-items: start;
}

.mca-founder-discovery-reversed {
  grid-template-columns: minmax(0, 0.92fr) minmax(0, 0.88fr);
  align-items: center;
}

.mca-founder-number {
  display: grid;
  width: 128px;
  height: 128px;
  place-items: center;
  border: 4px solid var(--mca-ink);
  border-radius: 50%;
  color: var(--mca-ink);
  font-family: var(--mca-heading-font);
  font-size: 4.7rem;
  font-weight: 800;
  line-height: 1;
}

.mca-founder-page .mca-founder-school-photo {
  width: min(100%, 470px);
  justify-self: center;
  padding: 28px;
  border: 0;
  border-radius: 36px;
  background: #8a654b;
  box-shadow: 0 22px 44px rgba(26, 36, 33, 0.13);
}

.mca-founder-page .mca-founder-school-photo img {
  width: 100%;
  height: 100%;
  aspect-ratio: 4 / 3;
  border-radius: 24px;
  object-fit: cover;
  object-position: center center;
}

.mca-founder-credentials {
  padding: 76px 0;
  border-top: 1px solid var(--mca-border);
  text-align: center;
}

.mca-founder-credentials h2 {
  margin-inline: auto;
  margin-bottom: 28px;
}

.mca-founder-credential-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.mca-founder-credential-grid article {
  display: grid;
  min-height: 142px;
  place-items: center;
  border: 1px solid var(--mca-border);
  border-radius: 8px;
  background: var(--mca-surface);
  box-shadow: var(--mca-tight-shadow);
  padding: 24px;
}

.mca-founder-credential-grid p {
  margin-bottom: 0;
  color: var(--mca-ink);
  font-size: 1.08rem;
  font-weight: 850;
  line-height: 1.35;
}

@media (max-width: 980px) {
  .mca-header {
    grid-template-columns: 1fr auto;
  }

  .mca-nav {
    grid-column: 1 / -1;
    justify-content: flex-start;
    order: 3;
    padding-bottom: 18px;
  }

  .mca-hero,
  .mca-outputs,
  .mca-essay-insights,
  .mca-audience-hero,
  .mca-strategy-section,
  .mca-efficiency-section,
  .mca-school-role-section,
  .mca-school-role-section-reversed,
  .mca-recommender-section,
  .mca-faq,
  .mca-founder-hero,
  .mca-founder-story,
  .mca-founder-approach,
  .mca-founder-voice {
    grid-template-columns: 1fr;
  }

  .mca-hero,
  .mca-audience-hero,
  .mca-founder-hero {
    gap: 38px;
    padding-top: 56px;
  }

  h1 {
    font-size: 3.4rem;
  }

  h2 {
    font-size: 2.26rem;
  }

  .mca-sharing-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .mca-capability-grid,
  .mca-efficiency-list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .mca-school-role-section-reversed .mca-school-role-copy,
  .mca-school-role-section-reversed .mca-role-visual {
    order: initial;
  }

  .mca-school-counselor-photo-frame {
    min-height: 560px;
    aspect-ratio: 3 / 4;
  }

  .mca-school-counselor-photo-frame img {
    object-position: center center;
  }

  .mca-three-column,
  .mca-school-flow,
  .mca-trust-grid {
    grid-template-columns: 1fr;
  }

  .mca-three-column article,
  .mca-school-flow li {
    min-height: auto;
  }

  .mca-school-flow li:not(:last-child)::after {
    top: auto;
    right: auto;
    bottom: -15px;
    left: 50%;
    width: 2px;
    height: 14px;
    background: linear-gradient(180deg, var(--mca-primary), var(--mca-coral));
    transform: translateX(-50%);
  }

  .mca-footer {
    grid-template-columns: 1fr;
    justify-items: start;
  }

  .mca-footer-end {
    justify-items: start;
  }

  .mca-footer-credit {
    text-align: left;
  }

  .mca-footer nav {
    justify-content: flex-start;
  }

  .mca-founder-hero h1 {
    font-size: 3.28rem;
  }
}

@media (max-width: 640px) {
  .mca-header,
  .mca-hero,
  .mca-outputs,
  .mca-steps,
  .mca-essay-insights,
  .mca-sharing,
  .mca-acceptances,
  .mca-faq,
  .mca-final,
  .mca-audience-hero,
  .mca-problem-section,
  .mca-capabilities-section,
  .mca-strategy-section,
  .mca-role-section,
  .mca-efficiency-section,
  .mca-school-role-section,
  .mca-recommender-section,
  .mca-school-comparison-section,
  .mca-school-workflow-section,
  .mca-founder-hero,
  .mca-founder-story,
  .mca-founder-discoveries,
  .mca-founder-approach,
  .mca-founder-voice,
  .mca-founder-trust,
  .mca-founder-credentials,
  .mca-founder-recommendation,
  .mca-footer,
  .mca-placeholder-main {
    width: min(100% - 28px, 1120px);
  }

  .mca-header {
    grid-template-columns: 1fr;
    justify-items: start;
    gap: 14px;
    min-height: auto;
    padding: 18px 0;
  }

  .mca-logo {
    width: 142px;
  }

  .mca-nav {
    width: 100%;
    flex-wrap: wrap;
    gap: 10px 14px;
    overflow-x: visible;
    padding-bottom: 8px;
    font-size: 0.86rem;
    white-space: normal;
  }

  .mca-nav a {
    min-width: 0;
  }

  .mca-header > .mca-button {
    display: none;
  }

  .mca-hero,
  .mca-outputs,
  .mca-steps,
  .mca-essay-insights,
  .mca-sharing,
  .mca-acceptances,
  .mca-faq,
  .mca-final,
  .mca-audience-hero,
  .mca-problem-section,
  .mca-capabilities-section,
  .mca-strategy-section,
  .mca-role-section,
  .mca-efficiency-section,
  .mca-school-role-section,
  .mca-recommender-section,
  .mca-school-comparison-section,
	  .mca-school-workflow-section,
	  .mca-founder-hero,
	  .mca-founder-story,
	  .mca-founder-discoveries,
	  .mca-founder-approach,
	  .mca-founder-voice,
	  .mca-founder-trust,
	  .mca-founder-credentials,
	  .mca-founder-recommendation {
    padding: 58px 0;
  }

  h1 {
    max-width: 100%;
    font-size: 2.55rem;
    line-height: 1.03;
  }

  h1 span {
    margin-top: 0.42em;
  }

  .mca-audience-hero h1 {
    font-size: 2.18rem;
  }

  .mca-counselor-story h1 {
    font-size: 1.95rem;
  }

  .mca-school-hero h1 {
    font-size: 2.05rem;
  }

  .mca-school-hero-subtitles {
    font-size: 1.15rem;
  }

  .mca-founder-hero h1 {
    font-size: 2.36rem;
  }

  h2 {
    max-width: 100%;
    font-size: 1.96rem;
    line-height: 1.08;
  }

  .mca-lede,
  .mca-section-copy p,
  .mca-step p,
  .mca-output-card p,
  .mca-sharing-grid p,
  .mca-final p {
    font-size: 1rem;
  }

  .mca-actions {
    align-items: stretch;
    flex-direction: column;
  }

  .mca-actions .mca-button,
  .mca-actions .mca-text-link {
    width: 100%;
  }

  .mca-text-link {
    text-align: center;
  }

  .mca-workflow-shell {
    padding: 18px;
  }

  .mca-workflow-desktop {
    display: none;
  }

  .mca-workflow-mobile {
    display: grid;
    gap: 12px;
  }

  .mca-workflow-mobile article {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: 12px;
    align-items: start;
    border: 1px solid var(--mca-border);
    border-radius: 8px;
    background: var(--mca-white);
    padding: 14px;
  }

  .mca-workflow-mobile b {
    display: grid;
    width: 32px;
    height: 32px;
    place-items: center;
    border-radius: 999px;
    background: var(--mca-primary);
    color: var(--mca-white);
    font-family: var(--mca-mono-font);
    font-size: 0.82rem;
  }

  .mca-workflow-mobile p {
    margin-bottom: 2px;
    color: var(--mca-ink);
    font-weight: 850;
  }

  .mca-workflow-mobile span {
    color: var(--mca-muted);
    font-size: 0.94rem;
  }

  .mca-output-grid,
  .mca-step-grid,
  .mca-sharing-grid,
  .mca-capability-grid,
  .mca-role-compare,
  .mca-efficiency-list,
  .mca-role-detail-grid,
  .mca-three-column,
  .mca-school-flow {
    grid-template-columns: 1fr;
  }

  .mca-step-grid {
    border-bottom: 0;
  }

  .mca-step {
    min-height: auto;
    border-right: 0;
    border-bottom: 1px solid var(--mca-border);
    padding: 24px 20px;
  }

  .mca-output-card,
  .mca-sharing-grid article,
  .mca-role-compare article,
  .mca-role-detail,
  .mca-three-column article {
    min-height: auto;
    padding: 22px 20px;
  }

  .mca-sharing-grid article {
    padding-top: 50px;
  }

  .mca-audience-links {
    align-items: stretch;
    flex-direction: column;
  }

  .mca-audience-links .mca-text-link {
    text-align: left;
  }

  .mca-capability-grid span,
  .mca-efficiency-list li {
    min-height: auto;
    padding: 16px 16px 16px 44px;
  }

  .mca-counselor-visual,
  .mca-efficiency-illustration,
  .mca-school-role-visual,
  .mca-role-visual,
  .mca-founder-card {
    padding: 18px;
  }

  .mca-counselor-photo-frame {
    min-height: 240px;
    aspect-ratio: 4 / 3;
  }

  .mca-school-counselor-photo-frame {
    min-height: 430px;
    aspect-ratio: 2 / 3;
  }

  .mca-counselor-visual img,
  .mca-efficiency-illustration img,
  .mca-role-visual img {
    max-height: 230px;
  }

  .mca-school-counselor-photo-frame img {
    height: 100%;
    max-height: none;
  }

  .mca-reflection-photo img {
    height: 100%;
    max-height: none;
  }

  .mca-advisor-photo-frame img {
    height: 100%;
    max-height: none;
  }

  .mca-counselor-visual figcaption,
  .mca-route-note,
  .mca-clarify-box {
    font-size: 0.9rem;
  }

  .mca-clarify-box {
    padding: 18px;
  }

  .mca-logo-marquee {
    --mca-logo-frame-width: 118px;
    --mca-logo-frame-height: 78px;
    --mca-logo-frame-padding: 20px;
    margin-top: 22px;
    padding: 20px 0;
  }

  .mca-acceptances {
    padding: 38px 0 52px;
  }

  .mca-acceptances-copy h2 {
    font-size: 1.72rem;
  }

  .mca-acceptances-copy p {
    font-size: 0.98rem;
  }

  .mca-founder-photo-placeholder {
    min-height: 300px;
  }

  .mca-founder-photo {
    min-height: 300px;
  }

  .mca-founder-logic-card {
    grid-template-columns: 1fr;
  }

}

@media (max-width: 980px) {
  .mca-founder-page .mca-founder-hero {
    grid-template-columns: 1fr;
    gap: 42px;
  }

  .mca-founder-hero-copy {
    order: -1;
  }

  .mca-founder-portrait-stack {
    min-height: 560px;
  }

  .mca-founder-photo-offset {
    left: 50%;
    width: min(82%, 500px);
    transform: translateX(-56%);
  }

  .mca-founder-page .mca-founder-photo {
    width: min(100%, 500px);
    margin-inline: auto;
  }

  .mca-founder-page .mca-founder-hero h1 {
    font-size: 4.3rem;
  }

  .mca-founder-page .mca-founder-story {
    max-width: min(100% - 40px, 1120px);
  }

  .mca-founder-discovery,
  .mca-founder-discovery-reversed {
    grid-template-columns: 1fr;
  }

  .mca-founder-discovery-reversed .mca-founder-school-photo {
    order: 2;
  }

  .mca-founder-discovery-reversed > div {
    order: 1;
  }

  .mca-founder-credential-grid {
    grid-template-columns: 1fr;
  }

}

@media (max-width: 640px) {
  .mca-founder-page .mca-founder-hero {
    padding-top: 52px;
    padding-bottom: 46px;
  }

  .mca-founder-page .mca-founder-hero h1 {
    font-size: 3rem;
  }

  .mca-founder-portrait-stack {
    min-height: 410px;
  }

  .mca-founder-photo-offset {
    width: 88%;
    height: 78%;
    transform: translateX(-50%);
  }

  .mca-founder-page .mca-founder-photo {
    width: min(100%, 330px);
    aspect-ratio: 4 / 5;
  }

  .mca-founder-page .mca-founder-story h2 {
    font-size: 2.32rem;
  }

  .mca-founder-story-body p,
  .mca-founder-discovery p {
    font-size: 1.06rem;
    line-height: 1.62;
  }

  .mca-founder-discoveries {
    gap: 48px;
  }

  .mca-founder-number {
    width: 86px;
    height: 86px;
    border-width: 3px;
    font-size: 3.1rem;
  }

  .mca-founder-page .mca-founder-school-photo {
    padding: 18px;
    border-radius: 24px;
  }

  .mca-founder-page .mca-founder-school-photo img {
    border-radius: 16px;
  }

}

.mca-founder-page .mca-founder-recommendation {
  display: block;
  margin-top: 18px;
  margin-bottom: 92px;
  padding: 0;
  color: var(--mca-text);
}

.mca-founder-recommendation-paper {
  position: relative;
  overflow: hidden;
  border: 1px solid rgba(118, 82, 63, 0.28);
  border-radius: 8px;
  background:
    radial-gradient(circle at 18% 14%, rgba(255, 247, 227, 0.56), transparent 30%),
    radial-gradient(circle at 88% 18%, rgba(94, 57, 34, 0.18), transparent 30%),
    radial-gradient(circle at 52% 92%, rgba(181, 134, 44, 0.16), transparent 34%),
    linear-gradient(135deg, rgba(190, 151, 107, 0.82), rgba(229, 205, 169, 0.94) 46%, rgba(170, 124, 80, 0.76)),
    #c9a070;
  box-shadow:
    0 28px 64px rgba(76, 51, 36, 0.18),
    inset 0 1px 0 rgba(255, 255, 255, 0.42),
    inset 0 -1px 0 rgba(76, 51, 36, 0.14);
  padding: 58px 0 44px 58px;
}

.mca-founder-recommendation-paper::before {
  position: absolute;
  inset: 0;
  content: "";
  pointer-events: none;
  opacity: 0.42;
  background-image:
    radial-gradient(circle at 18px 22px, rgba(86, 55, 35, 0.12) 0 1px, transparent 1.4px),
    radial-gradient(circle at 52px 64px, rgba(255, 246, 225, 0.2) 0 1px, transparent 1.5px),
    linear-gradient(rgba(118, 82, 63, 0.045) 1px, transparent 1px),
    linear-gradient(90deg, rgba(118, 82, 63, 0.032) 1px, transparent 1px);
  background-size: 86px 74px, 112px 96px, 20px 20px, 26px 26px;
  mix-blend-mode: multiply;
}

.mca-founder-recommendation-copy {
  position: relative;
  z-index: 1;
  max-width: 720px;
  margin: 0 auto 26px;
  padding-right: 58px;
  text-align: center;
}

.mca-founder-recommendation-copy h2 {
  margin-bottom: 14px;
  color: #164037;
  font-size: clamp(2.25rem, 4.4vw, 4rem);
  line-height: 1.02;
}

.mca-founder-recommendation-copy p {
  margin: 0;
  color: #2d2720;
  font-size: 1.08rem;
}

.mca-recommendation-controls {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 14px;
  margin: 0 58px 22px 0;
}

.mca-recommendation-arrow {
  display: grid;
  width: 42px;
  height: 42px;
  place-items: center;
  border: 1px solid rgba(118, 82, 63, 0.26);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.78);
  color: var(--mca-primary-pressed);
  cursor: pointer;
  box-shadow: 0 10px 22px rgba(76, 51, 36, 0.12);
  transition:
    background 180ms ease,
    transform 180ms ease,
    box-shadow 180ms ease;
}

.mca-recommendation-arrow span {
  display: block;
  margin-top: -2px;
  font-size: 2rem;
  line-height: 1;
}

.mca-recommendation-arrow:hover {
  background: var(--mca-white);
  box-shadow: 0 14px 26px rgba(76, 51, 36, 0.16);
  transform: translateY(-1px);
}

.mca-recommendation-arrow:disabled {
  cursor: default;
  opacity: 0.42;
  transform: none;
}

.mca-recommendation-status {
  min-width: 68px;
  margin: 0;
  color: #3f2a1d;
  font-family: var(--mca-mono-font);
  font-size: 0.86rem;
  font-weight: 800;
  text-align: center;
}

.mca-recommendation-viewport {
  position: relative;
  z-index: 1;
  display: flex;
  gap: 24px;
  overflow-x: auto;
  overscroll-behavior-x: contain;
  scroll-behavior: smooth;
  scroll-padding-left: 0;
  scroll-snap-type: x mandatory;
  -webkit-overflow-scrolling: touch;
  cursor: grab;
  border-block: 1px solid rgba(118, 82, 63, 0.22);
  background:
    linear-gradient(90deg, rgba(108, 69, 42, 0.13), rgba(255, 246, 227, 0.12), rgba(108, 69, 42, 0.13)),
    rgba(95, 61, 40, 0.08);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.3),
    inset 0 -1px 0 rgba(76, 51, 36, 0.12);
  margin-top: 4px;
  padding: 28px 58px 34px 0;
  scrollbar-color: rgba(118, 82, 63, 0.48) transparent;
  -webkit-mask-image: linear-gradient(90deg, #000 0, #000 calc(100% - 42px), transparent 100%);
  mask-image: linear-gradient(90deg, #000 0, #000 calc(100% - 42px), transparent 100%);
}

.mca-recommendation-viewport:focus-visible {
  outline: 3px solid rgba(196, 91, 78, 0.45);
  outline-offset: 6px;
}

.mca-recommendation-viewport.is-dragging {
  cursor: grabbing;
  scroll-snap-type: none;
  user-select: none;
}

.mca-recommendation-card {
  display: grid;
  flex: 0 0 min(860px, calc(100% - 140px));
  grid-template-columns: minmax(320px, 0.45fr) minmax(0, 1fr);
  gap: 48px;
  align-items: start;
  border: 1px solid rgba(118, 82, 63, 0.22);
  border-radius: 8px;
  background:
    radial-gradient(circle at 12% 8%, rgba(255, 255, 255, 0.58), transparent 28%),
    linear-gradient(135deg, rgba(255, 253, 247, 0.97), rgba(247, 236, 216, 0.96)),
    #fbf4e7;
  box-shadow:
    0 20px 34px rgba(76, 51, 36, 0.2),
    0 2px 0 rgba(255, 255, 255, 0.38) inset;
  padding: 30px;
  scroll-snap-align: start;
}

.mca-recommendation-card-photo-only {
  flex-basis: min(540px, calc(100% - 180px));
  grid-template-columns: 1fr;
  justify-items: center;
}

.mca-recommendation-card-photo-only .mca-recommendation-photo-stack {
  width: 100%;
  min-height: 0;
}

.mca-recommendation-card-quote-only {
  flex-basis: min(660px, calc(100% - 160px));
  grid-template-columns: 1fr;
  background:
    radial-gradient(circle at 18% 16%, rgba(255, 255, 255, 0.5), transparent 32%),
    radial-gradient(circle at 82% 82%, rgba(181, 134, 44, 0.14), transparent 30%),
    linear-gradient(135deg, rgba(255, 250, 240, 0.98), rgba(240, 221, 189, 0.94)),
    #f4e3c6;
}

.mca-recommendation-card-quote-only .mca-recommendation-text {
  padding-top: 0;
}

.mca-recommendation-card-quote-only blockquote {
  position: relative;
  padding-left: 26px;
}

.mca-recommendation-card-quote-only blockquote::before {
  position: absolute;
  top: -8px;
  left: 0;
  content: "\201C";
  color: rgba(118, 82, 63, 0.32);
  font-family: var(--mca-heading-font);
  font-size: 3.5rem;
  line-height: 1;
}

.mca-recommendation-card-tilt-a {
  transform: rotate(-0.35deg);
}

.mca-recommendation-card-tilt-b {
  transform: rotate(0.28deg);
}

.mca-recommendation-card-tilt-c {
  transform: rotate(-0.2deg);
}

.mca-recommendation-card-tilt-d {
  transform: rotate(0.22deg);
}

.mca-recommendation-card-tilt-e {
  transform: rotate(-0.26deg);
}

.mca-recommendation-photo-stack {
  position: relative;
  display: grid;
  width: 100%;
  max-width: 336px;
  min-height: 330px;
  justify-self: center;
  gap: 14px;
  isolation: isolate;
  place-items: center;
  padding: 14px;
}

.mca-recommendation-photo-stack-duo,
.mca-recommendation-photo-stack-trio,
.mca-recommendation-photo-stack-quad {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  max-width: 366px;
  min-height: 0;
  align-items: start;
  place-items: stretch;
  row-gap: 16px;
}

.mca-recommendation-polaroid {
  position: relative;
  z-index: 2;
  width: min(255px, 100%);
  margin: 0;
  border: 1px solid rgba(118, 82, 63, 0.16);
  background:
    linear-gradient(180deg, #fffefb 0%, #fffaf0 100%);
  box-shadow:
    0 2px 0 rgba(255, 255, 255, 0.78) inset,
    0 1px 0 rgba(76, 51, 36, 0.08),
    0 18px 26px rgba(49, 31, 20, 0.24),
    0 34px 54px rgba(49, 31, 20, 0.18);
  padding: 14px 14px 40px;
  transform: translateY(-4px) rotate(-1.15deg);
}

.mca-recommendation-polaroid::before {
  position: absolute;
  inset: 8px;
  z-index: 3;
  border: 1px solid rgba(255, 255, 255, 0.72);
  content: "";
  pointer-events: none;
}

.mca-recommendation-polaroid-secondary {
  position: relative;
  z-index: 2;
  top: auto;
  left: auto;
  width: 100%;
  opacity: 1;
  padding-bottom: 30px;
  transform: translateY(0) rotate(1.2deg);
}

.mca-recommendation-polaroid-tertiary {
  position: relative;
  right: auto;
  bottom: auto;
  z-index: 2;
  width: 100%;
  opacity: 1;
  padding-bottom: 30px;
  transform: translateY(0) rotate(-1.35deg);
}

.mca-recommendation-polaroid-quaternary {
  position: relative;
  z-index: 2;
  width: 100%;
  opacity: 1;
  padding-bottom: 30px;
  transform: translateY(0) rotate(0.85deg);
}

.mca-recommendation-photo-stack-duo .mca-recommendation-polaroid,
.mca-recommendation-photo-stack-trio .mca-recommendation-polaroid,
.mca-recommendation-photo-stack-quad .mca-recommendation-polaroid {
  width: 100%;
  padding: 10px 10px 30px;
}

.mca-recommendation-photo-stack-duo .mca-recommendation-polaroid:not(.mca-recommendation-polaroid-secondary):not(.mca-recommendation-polaroid-tertiary):not(.mca-recommendation-polaroid-quaternary),
.mca-recommendation-photo-stack-trio .mca-recommendation-polaroid:not(.mca-recommendation-polaroid-secondary):not(.mca-recommendation-polaroid-tertiary):not(.mca-recommendation-polaroid-quaternary),
.mca-recommendation-photo-stack-quad .mca-recommendation-polaroid:not(.mca-recommendation-polaroid-secondary):not(.mca-recommendation-polaroid-tertiary):not(.mca-recommendation-polaroid-quaternary) {
  order: 1;
  grid-column: 1 / -1;
  width: min(260px, 82%);
  justify-self: center;
  padding: 14px 14px 40px;
}

.mca-recommendation-photo-stack-duo .mca-recommendation-polaroid-secondary,
.mca-recommendation-photo-stack-trio .mca-recommendation-polaroid-secondary,
.mca-recommendation-photo-stack-quad .mca-recommendation-polaroid-secondary {
  order: 2;
}

.mca-recommendation-photo-stack-duo .mca-recommendation-polaroid-tertiary,
.mca-recommendation-photo-stack-trio .mca-recommendation-polaroid-tertiary {
  order: 3;
}

.mca-recommendation-photo-stack-quad .mca-recommendation-polaroid-tertiary {
  order: 3;
}

.mca-recommendation-photo-stack-quad .mca-recommendation-polaroid-quaternary {
  order: 4;
}

.mca-recommendation-photo {
  display: grid;
  width: 100%;
  min-height: 232px;
  aspect-ratio: 4 / 5;
  place-items: center;
  overflow: hidden;
  border: 1px solid rgba(118, 82, 63, 0.14);
  background: #f8f2e8;
  box-shadow:
    0 1px 0 rgba(255, 255, 255, 0.72),
    inset 0 0 0 1px rgba(255, 255, 255, 0.32);
}

.mca-recommendation-photo img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.mca-recommendation-video {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  background: #14110d;
}

.mca-recommendation-photo-landscape {
  min-height: 176px;
  aspect-ratio: 4 / 3;
}

.mca-recommendation-photo-stack-duo .mca-recommendation-photo,
.mca-recommendation-photo-stack-trio .mca-recommendation-photo,
.mca-recommendation-photo-stack-quad .mca-recommendation-photo {
  min-height: 130px;
}

.mca-recommendation-photo-stack-duo .mca-recommendation-polaroid:not(.mca-recommendation-polaroid-secondary):not(.mca-recommendation-polaroid-tertiary):not(.mca-recommendation-polaroid-quaternary) .mca-recommendation-photo,
.mca-recommendation-photo-stack-trio .mca-recommendation-polaroid:not(.mca-recommendation-polaroid-secondary):not(.mca-recommendation-polaroid-tertiary):not(.mca-recommendation-polaroid-quaternary) .mca-recommendation-photo,
.mca-recommendation-photo-stack-quad .mca-recommendation-polaroid:not(.mca-recommendation-polaroid-secondary):not(.mca-recommendation-polaroid-tertiary):not(.mca-recommendation-polaroid-quaternary) .mca-recommendation-photo {
  min-height: 184px;
}

.mca-recommendation-photo-pending {
  padding: 18px;
  border: 1px dashed rgba(118, 82, 63, 0.36);
  color: var(--mca-muted);
  font-family: var(--mca-mono-font);
  font-size: 0.78rem;
  font-weight: 700;
  line-height: 1.35;
  text-align: center;
  word-break: break-word;
}

.mca-recommendation-polaroid figcaption {
  margin-top: 15px;
  color: var(--mca-ink);
  font-family: var(--mca-heading-font);
  font-size: 1.34rem;
  font-weight: 800;
  line-height: 1.1;
  text-align: center;
}

.mca-recommendation-photo-stack-duo .mca-recommendation-polaroid figcaption,
.mca-recommendation-photo-stack-trio .mca-recommendation-polaroid figcaption,
.mca-recommendation-photo-stack-quad .mca-recommendation-polaroid figcaption {
  margin-top: 10px;
  font-size: 1rem;
}

.mca-recommendation-photo-stack-duo .mca-recommendation-polaroid:not(.mca-recommendation-polaroid-secondary):not(.mca-recommendation-polaroid-tertiary):not(.mca-recommendation-polaroid-quaternary) figcaption,
.mca-recommendation-photo-stack-trio .mca-recommendation-polaroid:not(.mca-recommendation-polaroid-secondary):not(.mca-recommendation-polaroid-tertiary):not(.mca-recommendation-polaroid-quaternary) figcaption,
.mca-recommendation-photo-stack-quad .mca-recommendation-polaroid:not(.mca-recommendation-polaroid-secondary):not(.mca-recommendation-polaroid-tertiary):not(.mca-recommendation-polaroid-quaternary) figcaption {
  margin-top: 14px;
  font-size: 1.18rem;
}

.mca-recommendation-text {
  position: relative;
  z-index: 5;
  padding-top: 10px;
}

.mca-recommendation-card:not(.mca-recommendation-card-photo-only):not(.mca-recommendation-card-quote-only) .mca-recommendation-text {
  align-self: stretch;
  padding: 18px 20px;
  border: 1px solid rgba(118, 82, 63, 0.14);
  border-radius: 8px;
  background:
    linear-gradient(135deg, rgba(255, 253, 248, 0.96), rgba(247, 236, 216, 0.92)),
    #fbf5e8;
  box-shadow:
    0 12px 24px rgba(76, 51, 36, 0.08),
    0 1px 0 rgba(255, 255, 255, 0.52) inset;
}

.mca-recommendation-person {
  margin: 0 0 16px;
  color: var(--mca-primary-pressed);
  font-size: 0.86rem;
  font-weight: 900;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.mca-recommendation-affiliation {
  margin: -8px 0 18px;
  color: var(--mca-muted);
  font-size: 0.96rem;
  font-weight: 800;
  line-height: 1.35;
}

.mca-recommendation-text blockquote {
  margin: 0;
}

.mca-recommendation-text blockquote p {
  margin: 0 0 18px;
  color: var(--mca-text);
  font-size: 1.07rem;
  line-height: 1.62;
}

.mca-recommendation-text blockquote p:last-child {
  margin-bottom: 0;
}

.mca-recommendation-feature-link {
  display: inline-flex;
  width: fit-content;
  margin-top: 18px;
  align-items: center;
  border-bottom: 2px solid rgba(218, 178, 83, 0.55);
  color: var(--mca-primary);
  font-size: 0.96rem;
  font-weight: 850;
  line-height: 1.35;
  text-decoration: none;
}

.mca-recommendation-feature-link:hover,
.mca-recommendation-feature-link:focus-visible {
  border-bottom-color: var(--mca-mustard);
  color: var(--mca-primary-pressed);
}

.mca-recommendation-dots {
  position: relative;
  z-index: 1;
  display: flex;
  justify-content: center;
  gap: 9px;
  margin: 2px 58px 0 0;
}

.mca-recommendation-dots button {
  width: 10px;
  height: 10px;
  border: 0;
  border-radius: 999px;
  background: rgba(76, 51, 36, 0.28);
  cursor: pointer;
  padding: 0;
}

.mca-recommendation-dots button[aria-current="true"] {
  width: 26px;
  background: var(--mca-primary-pressed);
}

@media (max-width: 980px) {
  .mca-founder-page .mca-founder-recommendation {
    gap: 0;
    padding: 0;
  }

  .mca-founder-recommendation-paper {
    padding: 48px 0 38px 42px;
  }

  .mca-founder-recommendation-copy {
    padding-right: 42px;
  }

  .mca-recommendation-controls,
  .mca-recommendation-dots {
    margin-right: 42px;
  }

  .mca-recommendation-viewport {
    gap: 22px;
    padding-right: 42px;
    -webkit-mask-image: linear-gradient(90deg, #000 0, #000 calc(100% - 30px), transparent 100%);
    mask-image: linear-gradient(90deg, #000 0, #000 calc(100% - 30px), transparent 100%);
  }

  .mca-recommendation-card {
    flex-basis: min(720px, calc(100% - 88px));
    grid-template-columns: 1fr;
    gap: 30px;
  }

  .mca-recommendation-card-photo-only,
  .mca-recommendation-card-quote-only {
    flex-basis: min(560px, calc(100% - 88px));
  }

  .mca-recommendation-photo-stack {
    max-width: 430px;
    min-height: 300px;
    margin-bottom: 4px;
  }

  .mca-recommendation-photo-stack-duo,
  .mca-recommendation-photo-stack-trio,
  .mca-recommendation-photo-stack-quad {
    min-height: 0;
  }

  .mca-recommendation-photo-stack-duo .mca-recommendation-polaroid:not(.mca-recommendation-polaroid-secondary):not(.mca-recommendation-polaroid-tertiary):not(.mca-recommendation-polaroid-quaternary),
  .mca-recommendation-photo-stack-trio .mca-recommendation-polaroid:not(.mca-recommendation-polaroid-secondary):not(.mca-recommendation-polaroid-tertiary):not(.mca-recommendation-polaroid-quaternary),
  .mca-recommendation-photo-stack-quad .mca-recommendation-polaroid:not(.mca-recommendation-polaroid-secondary):not(.mca-recommendation-polaroid-tertiary):not(.mca-recommendation-polaroid-quaternary) {
    width: min(270px, 76%);
  }

  .mca-recommendation-text {
    padding-top: 0;
  }

  .mca-recommendation-card:not(.mca-recommendation-card-photo-only):not(.mca-recommendation-card-quote-only) .mca-recommendation-text {
    padding: 18px;
  }
}

@media (max-width: 640px) {
  .mca-founder-page .mca-founder-recommendation {
    margin-bottom: 58px;
    padding: 0;
  }

  .mca-founder-recommendation-paper {
    padding: 38px 0 34px 18px;
  }

  .mca-founder-recommendation-copy {
    margin-bottom: 20px;
    padding-right: 18px;
  }

  .mca-founder-recommendation-copy h2 {
    font-size: 2.3rem;
  }

  .mca-founder-recommendation-copy p {
    font-size: 1rem;
  }

  .mca-recommendation-controls,
  .mca-recommendation-dots {
    margin-right: 18px;
  }

  .mca-recommendation-viewport {
    gap: 16px;
    padding: 8px 18px 24px 0;
    -webkit-mask-image: linear-gradient(90deg, #000 0, #000 calc(100% - 14px), transparent 100%);
    mask-image: linear-gradient(90deg, #000 0, #000 calc(100% - 14px), transparent 100%);
  }

  .mca-recommendation-card {
    flex-basis: calc(100% - 36px);
    padding: 22px 18px;
    gap: 28px;
    transform: none;
  }

  .mca-recommendation-card-photo-only,
  .mca-recommendation-card-quote-only {
    flex-basis: calc(100% - 36px);
  }

  .mca-recommendation-card-quote-only blockquote {
    padding-left: 20px;
  }

  .mca-recommendation-photo-stack,
  .mca-recommendation-photo-stack-duo,
  .mca-recommendation-photo-stack-trio,
  .mca-recommendation-photo-stack-quad {
    padding: 8px;
  }

  .mca-recommendation-photo-stack {
    max-width: 100%;
    min-height: 330px;
    margin-bottom: 8px;
  }

  .mca-recommendation-photo-stack-duo,
  .mca-recommendation-photo-stack-trio,
  .mca-recommendation-photo-stack-quad {
    min-height: 0;
    gap: 12px;
  }

  .mca-recommendation-polaroid {
    width: min(248px, 96%);
    padding: 12px 12px 36px;
  }

  .mca-recommendation-polaroid-secondary {
    right: auto;
    bottom: auto;
    width: 100%;
  }

  .mca-recommendation-polaroid-tertiary {
    right: auto;
    bottom: auto;
    width: 100%;
  }

  .mca-recommendation-polaroid-quaternary {
    width: 100%;
  }

  .mca-recommendation-photo {
    min-height: 218px;
  }

  .mca-recommendation-photo-stack-duo .mca-recommendation-polaroid,
  .mca-recommendation-photo-stack-trio .mca-recommendation-polaroid,
  .mca-recommendation-photo-stack-quad .mca-recommendation-polaroid {
    padding: 9px 9px 28px;
  }

  .mca-recommendation-photo-stack-duo .mca-recommendation-polaroid:not(.mca-recommendation-polaroid-secondary):not(.mca-recommendation-polaroid-tertiary):not(.mca-recommendation-polaroid-quaternary),
  .mca-recommendation-photo-stack-trio .mca-recommendation-polaroid:not(.mca-recommendation-polaroid-secondary):not(.mca-recommendation-polaroid-tertiary):not(.mca-recommendation-polaroid-quaternary),
  .mca-recommendation-photo-stack-quad .mca-recommendation-polaroid:not(.mca-recommendation-polaroid-secondary):not(.mca-recommendation-polaroid-tertiary):not(.mca-recommendation-polaroid-quaternary) {
    width: min(238px, 86%);
    padding: 11px 11px 34px;
  }

  .mca-recommendation-photo-stack-duo .mca-recommendation-photo,
  .mca-recommendation-photo-stack-trio .mca-recommendation-photo,
  .mca-recommendation-photo-stack-quad .mca-recommendation-photo {
    min-height: 116px;
  }

  .mca-recommendation-photo-stack-duo .mca-recommendation-polaroid:not(.mca-recommendation-polaroid-secondary):not(.mca-recommendation-polaroid-tertiary):not(.mca-recommendation-polaroid-quaternary) .mca-recommendation-photo,
  .mca-recommendation-photo-stack-trio .mca-recommendation-polaroid:not(.mca-recommendation-polaroid-secondary):not(.mca-recommendation-polaroid-tertiary):not(.mca-recommendation-polaroid-quaternary) .mca-recommendation-photo,
  .mca-recommendation-photo-stack-quad .mca-recommendation-polaroid:not(.mca-recommendation-polaroid-secondary):not(.mca-recommendation-polaroid-tertiary):not(.mca-recommendation-polaroid-quaternary) .mca-recommendation-photo {
    min-height: 176px;
  }

  .mca-recommendation-text blockquote p {
    font-size: 1rem;
    line-height: 1.58;
  }

  .mca-recommendation-card:not(.mca-recommendation-card-photo-only):not(.mca-recommendation-card-quote-only) .mca-recommendation-text {
    padding: 16px;
  }
}

.mca-founder-stories .mca-founder-recommendation-paper {
  background:
    radial-gradient(circle at 16% 14%, rgba(255, 250, 236, 0.5), transparent 30%),
    radial-gradient(circle at 82% 86%, rgba(132, 91, 58, 0.16), transparent 34%),
    linear-gradient(135deg, rgba(197, 155, 103, 0.9), rgba(224, 195, 151, 0.95) 52%, rgba(181, 130, 84, 0.9)),
    #caa36d;
  padding-bottom: 46px;
}

.mca-story-autoplay-controls {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 0 14px;
}

.mca-story-autoplay-toggle {
  border: 1px solid rgba(86, 55, 35, 0.22);
  border-radius: 999px;
  background: rgba(255, 254, 249, 0.72);
  color: var(--mca-primary-pressed);
  font-size: 0.78rem;
  font-weight: 900;
  letter-spacing: 0.02em;
  line-height: 1;
  padding: 9px 13px;
  cursor: pointer;
  transition:
    background 180ms ease,
    color 180ms ease;
}

.mca-story-autoplay-toggle:hover,
.mca-story-autoplay-toggle:focus-visible {
  background: var(--mca-white);
  color: var(--mca-primary);
}

.mca-story-viewport {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: flex-start;
  gap: 24px;
  overflow-x: auto;
  overflow-y: hidden;
  overscroll-behavior-x: contain;
  scroll-behavior: auto;
  scroll-padding-left: 0;
  scroll-snap-type: x mandatory;
  -webkit-overflow-scrolling: touch;
  cursor: grab;
  border-block: 1px solid rgba(86, 55, 35, 0.16);
  background:
    linear-gradient(90deg, rgba(255, 249, 235, 0.16), rgba(108, 69, 42, 0.055), rgba(255, 249, 235, 0.16)),
    rgba(255, 248, 231, 0.12);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.18),
    inset 0 -1px 0 rgba(76, 51, 36, 0.055);
  margin-top: 2px;
  max-height: none;
  height: var(--mca-story-viewport-height, auto);
  padding: 28px 0 38px;
  scrollbar-color: rgba(118, 82, 63, 0.48) transparent;
  transition: height 560ms ease;
}

.mca-story-viewport:focus-visible {
  outline: 3px solid rgba(196, 91, 78, 0.45);
  outline-offset: 6px;
}

.mca-story-viewport.is-dragging {
  cursor: grabbing;
  scroll-snap-type: none;
  user-select: none;
}

.mca-story-card {
  display: grid;
  flex: 0 0 100%;
  grid-template-columns: minmax(178px, 0.48fr) minmax(0, 1fr);
  gap: 20px;
  min-height: 0;
  max-height: none;
  overflow: visible;
  align-items: start;
  border: 1px solid rgba(86, 55, 35, 0.22);
  border-radius: 8px;
  background:
    radial-gradient(circle at 14% 10%, rgba(255, 255, 255, 0.62), transparent 28%),
    linear-gradient(135deg, rgba(255, 253, 247, 0.98), rgba(247, 236, 216, 0.97)),
    #fbf4e7;
  box-shadow:
    0 12px 24px rgba(49, 31, 20, 0.15),
    0 22px 42px rgba(49, 31, 20, 0.08),
    0 2px 0 rgba(255, 255, 255, 0.42) inset;
  padding: 20px;
  scroll-snap-align: start;
}

.mca-story-card--quote-only {
  grid-template-columns: 1fr;
}

.mca-story-card--photo-only {
  grid-template-columns: 1fr;
  align-content: start;
}

.mca-story-media-column {
  display: grid;
  min-width: 0;
  align-self: start;
  align-content: start;
  gap: 12px;
}

.mca-story-card--photo-only .mca-story-media-column {
  width: min(100%, 390px);
  justify-self: center;
}

.mca-story-card--photo-only .mca-story-media-column--collage {
  width: min(100%, 560px);
}

.mca-story-featured {
  margin: 4px 6px 0;
}

.mca-story-polaroid {
  border: 1px solid rgba(86, 55, 35, 0.16);
  background: linear-gradient(180deg, #fffefb 0%, #fffaf0 100%);
  box-shadow:
    0 2px 0 rgba(255, 255, 255, 0.82) inset,
    0 1px 0 rgba(76, 51, 36, 0.08),
    0 16px 26px rgba(49, 31, 20, 0.18),
    0 28px 44px rgba(49, 31, 20, 0.1);
  padding: 12px 12px 34px;
  transform: rotate(-2.1deg) translateY(1px);
  transform-origin: 48% 56%;
}

.mca-story-card:nth-child(2n) .mca-story-polaroid {
  transform: rotate(1.85deg) translateY(-1px);
}

.mca-story-card:nth-child(3n) .mca-story-polaroid {
  transform: rotate(-1.35deg) translateY(1px);
}

.mca-story-card:nth-child(4n) .mca-story-polaroid {
  transform: rotate(2.35deg);
}

.mca-story-card:nth-child(5n) .mca-story-polaroid {
  transform: rotate(-2.45deg) translateY(-1px);
}

.mca-story-card:nth-child(6n) .mca-story-polaroid {
  transform: rotate(1.15deg) translateY(2px);
}

.mca-story-featured-frame {
  position: relative;
  display: block;
  width: 100%;
  overflow: visible;
  border: 1px solid rgba(118, 82, 63, 0.14);
  background: #f8f2e8;
}

.mca-story-featured-frame img,
.mca-story-modal-image-frame img {
  display: block;
  width: 100%;
  height: auto;
  object-fit: contain;
}

.mca-story-thumb img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.mca-story-featured figcaption {
  margin-top: 12px;
  color: var(--mca-ink);
  font-family: var(--mca-heading-font);
  font-size: 1.04rem;
  font-weight: 850;
  line-height: 1.18;
  text-align: center;
}

.mca-story-collage {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-items: start;
  gap: 14px;
  padding: 4px;
}

.mca-story-card .mca-story-collage .mca-story-collage-polaroid {
  margin: 0;
  padding: 9px 9px 24px;
  transform: rotate(-1.6deg) translateY(1px);
  box-shadow:
    0 2px 0 rgba(255, 255, 255, 0.82) inset,
    0 1px 0 rgba(76, 51, 36, 0.08),
    0 14px 22px rgba(49, 31, 20, 0.16),
    0 22px 34px rgba(49, 31, 20, 0.08);
}

.mca-story-card .mca-story-collage .mca-story-collage-polaroid:nth-child(2n) {
  transform: rotate(1.45deg) translateY(7px);
}

.mca-story-card .mca-story-collage .mca-story-collage-polaroid:nth-child(3n) {
  transform: rotate(-0.95deg) translateY(-2px);
}

.mca-story-card .mca-story-collage .mca-story-collage-polaroid:nth-child(4n) {
  transform: rotate(1.05deg) translateY(4px);
}

.mca-story-collage-frame {
  display: block;
  overflow: hidden;
  border: 1px solid rgba(118, 82, 63, 0.14);
  background: #f8f2e8;
}

.mca-story-collage-frame img {
  display: block;
  width: 100%;
  height: auto;
  object-fit: contain;
}

.mca-story-collage-polaroid figcaption {
  margin-top: 8px;
  color: var(--mca-ink);
  font-family: var(--mca-heading-font);
  font-size: 0.78rem;
  font-weight: 850;
  line-height: 1.12;
  text-align: center;
}

.mca-story-thumbnails {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(70px, 1fr));
  gap: 10px;
}

.mca-story-card--photo-only .mca-story-thumbnails {
  grid-template-columns: repeat(auto-fit, minmax(72px, 96px));
  justify-content: center;
}

.mca-story-thumb {
  position: relative;
  display: grid;
  gap: 4px;
  border: 1px solid rgba(86, 55, 35, 0.16);
  background: linear-gradient(180deg, #fffefb 0%, #fffaf0 100%);
  cursor: pointer;
  padding: 6px 6px 14px;
  box-shadow: 0 10px 18px rgba(49, 31, 20, 0.14);
  transform: rotate(-1.35deg);
  transform-origin: 50% 58%;
  transition: box-shadow 180ms ease, transform 180ms ease;
}

.mca-story-card--photo-only .mca-story-thumb {
  padding: 5px 5px 11px;
}

.mca-story-thumb:nth-child(even) {
  transform: rotate(1.2deg);
}

.mca-story-thumb:nth-child(3n) {
  transform: rotate(-0.7deg);
}

.mca-story-thumb:hover,
.mca-story-thumb:focus-visible {
  box-shadow: 0 13px 22px rgba(49, 31, 20, 0.16);
  transform: rotate(0deg) translateY(-1px);
}

.mca-story-thumb.is-active {
  outline: 3px solid rgba(11, 125, 101, 0.34);
  outline-offset: 2px;
}

.mca-story-thumb-frame {
  position: relative;
  display: grid;
  aspect-ratio: 4 / 3;
  overflow: hidden;
  place-items: center;
  background: #f8f2e8;
}

.mca-story-thumb-label {
  color: #3f2a1d;
  font-size: 0.72rem;
  font-weight: 800;
  line-height: 1.16;
  text-align: center;
}

.mca-story-card--photo-only .mca-story-thumb-label {
  font-size: 0.66rem;
}

.mca-story-play-icon {
  position: absolute;
  inset: 50% auto auto 50%;
  display: grid;
  width: 42px;
  height: 42px;
  place-items: center;
  border-radius: 999px;
  background: rgba(22, 64, 55, 0.9);
  color: #fffefb;
  font-size: 1.1rem;
  transform: translate(-50%, -50%);
}

.mca-story-copy {
  display: flex;
  min-width: 0;
  flex-direction: column;
  position: relative;
  z-index: 2;
  align-self: start;
  border: 1px solid rgba(118, 82, 63, 0.14);
  border-radius: 8px;
  background:
    linear-gradient(135deg, rgba(255, 253, 248, 0.97), rgba(247, 236, 216, 0.94)),
    #fbf5e8;
  box-shadow:
    0 12px 24px rgba(76, 51, 36, 0.08),
    0 1px 0 rgba(255, 255, 255, 0.52) inset;
  padding: 18px;
}

.mca-story-card--quote-only .mca-story-copy {
  min-height: 0;
}

.mca-story-card--photo-only .mca-story-copy {
  align-self: start;
}

.mca-story-photo-label {
  display: grid;
  justify-items: center;
  gap: 3px;
  border: 1px solid rgba(118, 82, 63, 0.13);
  border-radius: 8px;
  background: rgba(255, 253, 248, 0.72);
  padding: 12px 14px;
  text-align: center;
}

.mca-story-photo-label .mca-story-kicker {
  margin-bottom: 0;
}

.mca-story-photo-label h3 {
  margin: 0;
  color: var(--mca-primary-pressed);
  font-size: clamp(1.35rem, 2vw, 1.72rem);
  line-height: 1.05;
}

.mca-story-kicker {
  margin: 0 0 8px;
  color: var(--mca-primary-pressed);
  font-size: 0.76rem;
  font-weight: 900;
  letter-spacing: 0.08em;
  line-height: 1.25;
  text-transform: uppercase;
}

.mca-story-copy h3 {
  margin: 0 0 8px;
  color: var(--mca-primary-pressed);
  font-size: clamp(1.45rem, 2.1vw, 1.9rem);
  line-height: 1.02;
}

.mca-story-affiliation {
  margin: 0 0 16px;
  color: var(--mca-muted);
  font-size: 0.95rem;
  font-weight: 850;
  line-height: 1.34;
}

.mca-story-preview {
  position: relative;
  margin: 0;
  color: var(--mca-text);
  font-size: 0.98rem;
  line-height: 1.55;
}

.mca-story-preview p {
  display: -webkit-box;
  margin: 0 0 14px;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 4;
}

.mca-story-preview--full p {
  display: block;
  overflow: visible;
  -webkit-line-clamp: initial;
}

.mca-story-preview p:last-child {
  margin-bottom: 0;
}

.mca-story-button {
  width: fit-content;
  margin-top: 18px;
  border: 1px solid rgba(11, 125, 101, 0.28);
  border-radius: 999px;
  background: rgba(226, 244, 239, 0.78);
  color: var(--mca-primary-pressed);
  cursor: pointer;
  font-size: 0.88rem;
  font-weight: 900;
  line-height: 1;
  padding: 12px 16px;
}

.mca-story-button:hover,
.mca-story-button:focus-visible {
  background: #d5f0e8;
}

.mca-story-feature-link {
  display: inline-flex;
  width: fit-content;
  margin-top: 14px;
  align-items: center;
  border-bottom: 2px solid rgba(218, 178, 83, 0.55);
  color: var(--mca-primary);
  font-size: 0.9rem;
  font-weight: 850;
  line-height: 1.35;
  text-decoration: none;
}

.mca-story-note {
  margin: 0;
  color: var(--mca-text);
  font-size: 1rem;
  line-height: 1.5;
}

.mca-story-dots {
  position: relative;
  z-index: 1;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 9px;
  margin: 18px 0 0;
}

.mca-story-dots span {
  width: 10px;
  height: 10px;
  border-radius: 999px;
  background: rgba(76, 51, 36, 0.3);
  transition:
    width 180ms ease,
    background 180ms ease;
}

.mca-story-dots span[data-visible="true"] {
  background: rgba(11, 125, 101, 0.45);
}

.mca-story-dots span[aria-current="true"] {
  width: 26px;
  background: var(--mca-primary-pressed);
}

.mca-sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  clip-path: inset(50%);
}

.mca-story-modal {
  width: min(980px, calc(100vw - 36px));
  max-height: min(88vh, 820px);
  border: 0;
  background: transparent;
  color: var(--mca-text);
  padding: 0;
}

.mca-story-modal::backdrop {
  background: rgba(20, 17, 13, 0.62);
}

.mca-story-modal-panel {
  position: relative;
  max-height: min(88vh, 820px);
  overflow-y: auto;
  border: 1px solid rgba(86, 55, 35, 0.22);
  border-radius: 10px;
  background:
    radial-gradient(circle at 16% 12%, rgba(255, 255, 255, 0.56), transparent 32%),
    linear-gradient(135deg, #fffaf0, #f0dfc3),
    #f7ebd4;
  box-shadow: 0 34px 80px rgba(20, 17, 13, 0.34);
  padding: 28px;
}

.mca-story-modal-close {
  position: sticky;
  top: 0;
  z-index: 3;
  display: block;
  margin-left: auto;
  border: 1px solid rgba(86, 55, 35, 0.24);
  border-radius: 999px;
  background: rgba(255, 254, 249, 0.94);
  color: var(--mca-primary-pressed);
  cursor: pointer;
  font-size: 0.86rem;
  font-weight: 900;
  padding: 10px 14px;
}

.mca-story-modal-grid {
  display: grid;
  grid-template-columns: minmax(0, 0.42fr) minmax(0, 1fr);
  gap: 28px;
  align-items: start;
}

.mca-story-modal-polaroid {
  margin: 0;
  border: 1px solid rgba(86, 55, 35, 0.16);
  background: linear-gradient(180deg, #fffefb 0%, #fffaf0 100%);
  box-shadow:
    0 1px 0 rgba(76, 51, 36, 0.08),
    0 18px 32px rgba(49, 31, 20, 0.2);
  padding: 12px 12px 32px;
  transform: rotate(-0.35deg);
}

.mca-story-modal-image-frame {
  overflow: visible;
  background: #f8f2e8;
}

.mca-story-modal-polaroid figcaption {
  margin-top: 12px;
  color: var(--mca-ink);
  font-family: var(--mca-heading-font);
  font-size: 1rem;
  font-weight: 850;
  text-align: center;
}

.mca-story-modal-copy {
  min-width: 0;
}

.mca-story-modal-role {
  margin: 0 0 8px;
  color: var(--mca-primary-pressed);
  font-size: 0.78rem;
  font-weight: 900;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.mca-story-modal-copy h2,
.mca-story-modal-affiliation {
  margin: 0 0 18px;
  color: var(--mca-muted);
  font-size: 1rem;
  font-weight: 850;
}

.mca-story-modal-quote {
  margin: 0;
}

.mca-story-modal-quote p {
  margin: 0 0 18px;
  color: var(--mca-text);
  font-size: 1.04rem;
  line-height: 1.62;
}

.mca-story-modal-quote p:last-child {
  margin-bottom: 0;
}

.mca-story-modal-links {
  margin-top: 18px;
}

@media (min-width: 1180px) {
  .mca-story-card {
    flex-basis: calc((100% - 24px) / 2);
  }
}

@media (max-width: 980px) {
  .mca-story-autoplay-controls,
  .mca-story-dots {
    margin-right: 0;
  }

  .mca-story-viewport {
    max-height: none;
    padding-right: 0;
  }

  .mca-story-card {
    flex-basis: 100%;
    grid-template-columns: minmax(170px, 0.52fr) minmax(0, 1fr);
    max-height: none;
  }

  .mca-story-card--photo-only,
  .mca-story-card--quote-only {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 720px) {
  .mca-story-card {
    grid-template-columns: 1fr;
    min-height: 0;
  }

  .mca-story-collage {
    gap: 10px;
  }

  .mca-story-modal-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 640px) {
  .mca-story-autoplay-controls,
  .mca-story-dots {
    margin-right: 0;
  }

  .mca-story-viewport {
    gap: 16px;
    padding: 18px 0 28px;
  }

  .mca-story-card {
    flex-basis: 100%;
    padding: 16px;
    transform: none;
  }

  .mca-story-polaroid,
  .mca-story-card:nth-child(3n) .mca-story-polaroid,
  .mca-story-card:nth-child(5n) .mca-story-polaroid {
    transform: rotate(-0.75deg);
  }

  .mca-story-card:nth-child(2n) .mca-story-polaroid,
  .mca-story-card:nth-child(4n) .mca-story-polaroid,
  .mca-story-card:nth-child(6n) .mca-story-polaroid {
    transform: rotate(0.72deg);
  }

  .mca-story-thumbnails {
    grid-template-columns: repeat(auto-fit, minmax(82px, 1fr));
  }

  .mca-story-card .mca-story-collage .mca-story-collage-polaroid {
    padding: 7px 7px 20px;
  }

  .mca-story-collage-polaroid figcaption {
    font-size: 0.7rem;
  }

  .mca-story-copy {
    padding: 17px;
  }

  .mca-story-modal {
    width: calc(100vw - 24px);
  }

  .mca-story-modal-panel {
    padding: 18px;
  }
}

@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }

  .mca-temp-logo-marquee__track {
    animation: none;
    flex-wrap: wrap;
    width: 100%;
    row-gap: 24px;
  }

  .mca-temp-logo-marquee__group[aria-hidden="true"] {
    display: none;
  }

  .mca-button {
    transition: none;
  }

  .mca-button:hover {
    transform: none;
  }

  .mca-recommendation-viewport {
    scroll-behavior: auto;
  }

  .mca-recommendation-arrow {
    transition: none;
  }

  .mca-story-viewport {
    scroll-behavior: auto;
  }

  .mca-story-autoplay-toggle,
  .mca-story-thumb,
  .mca-story-viewport {
    transition: none;
  }
}


/* ============================================================
   Balance corrections - 2026-08-22
   Equal-height cards and consistent column alignment.
   ============================================================ */

/* Two-column story sections: align tops instead of centring, so a short
   column no longer leaves an image floating in the middle of whitespace. */
.mca-school-role-section,
.mca-recommender-section {
  align-items: start;
}

/* Cards sitting side by side share a height and distribute their own
   content, instead of one ending early with a large empty bottom. */
.mca-role-detail-grid {
  align-items: stretch;
}

.mca-role-detail-grid > * {
  display: flex;
  flex-direction: column;
  height: 100%;
}

.mca-role-detail-grid > * > *:last-child {
  margin-bottom: 0;
}

/* Three- and five-across strips: equal height, evenly spaced. */
.mca-three-column {
  align-items: stretch;
}

.mca-three-column article {
  display: flex;
  flex-direction: column;
  gap: 6px;
  height: 100%;
}

/* Photos in alternating sections: the figure and its frame stretch to the
   height of the card block beside them, and the photo fills that frame,
   instead of a small image sitting above a large empty gap. */
.mca-role-visual {
  display: flex;
  flex-direction: column;
  height: 100%;
  margin: 0;
}

.mca-school-counselor-photo-frame,
.mca-role-visual > div {
  display: flex;
  flex: 1 1 auto;
  min-height: 0;
}

.mca-role-visual img {
  width: 100%;
  height: 100%;
  min-height: 380px;
  object-fit: cover;
  object-position: center top;
}


/* ============================================================
   Data presentation - Independent Counselors page - 2026-08-22
   Applies the hero's balance (copy beside a visual) to the
   sections below it, and makes the five-stage flow read as a
   sequence rather than a stack of bars.
   ============================================================ */

/* "Student reflection and counselor efficiency" - the heading sat alone in
   the left column with a tall void beneath it while the photo was stacked
   under the list on the right. Photo now fills the left column. */
.mca-efficiency-section {
  grid-template-columns: minmax(0, 0.92fr) minmax(420px, 1.08fr);
  grid-template-areas:
    "head list"
    "photo list";
  gap: 30px 54px;
  align-items: start;
}

.mca-efficiency-section > div:first-child {
  grid-area: head;
}

.mca-efficiency-grid {
  display: contents;
}

.mca-efficiency-list {
  grid-area: list;
  align-content: start;
}

.mca-efficiency-illustration {
  grid-area: photo;
  place-items: stretch;
  padding: 12px;
}

.mca-efficiency-illustration img {
  width: 100%;
  height: 100%;
  min-height: 300px;
  max-height: none;
  object-fit: cover;
  object-position: center top;
  border-radius: 6px;
}

/* Five-stage flow: number each stage so the order is legible at a glance,
   and let the connector run down the left rail rather than the centre. */
.mca-strategy-flow {
  counter-reset: mca-stage;
}

.mca-strategy-flow li {
  counter-increment: mca-stage;
  gap: 14px;
  padding-left: 14px;
  font-weight: 650;
}

.mca-strategy-flow li::before {
  content: counter(mca-stage);
  flex: 0 0 auto;
  display: grid;
  place-items: center;
  width: 30px;
  height: 30px;
  border-radius: 999px;
  background: var(--mca-honey-soft);
  color: var(--mca-primary);
  font-family: var(--mca-mono-font);
  font-size: 0.82rem;
  font-weight: 700;
}

.mca-strategy-flow li:not(:last-child)::after {
  left: 29px;
  transform: none;
}

/* Capability list: 11 items in a 3-across grid left a ragged trailing row.
   Four across fills more evenly and shortens the block. */
.mca-capability-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

@media (max-width: 900px) {
  .mca-capability-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .mca-efficiency-section {
    grid-template-columns: 1fr;
    grid-template-areas: "head" "list" "photo";
  }
}


/* ============================================================
   Parchment hero, mobile navigation, and small components
   2026-08-22
   ============================================================ */

.mca-sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
  border: 0;
}

/* ---------- "Coming soon" badge ---------- */

.mca-badge-soon {
  display: inline-block;
  margin-left: 8px;
  border: 1px solid color-mix(in srgb, var(--mca-honey), white 55%);
  border-radius: 999px;
  background: var(--mca-honey-soft);
  padding: 2px 9px;
  color: var(--mca-honey);
  font-family: var(--mca-mono-font);
  font-size: 0.62rem;
  font-weight: 700;
  letter-spacing: 0.07em;
  text-transform: uppercase;
  vertical-align: middle;
}

/* ---------- Parchment hero ----------
   A single aged sheet the hero sits on: warm ivory ground, uneven
   mottling, fine grain, and darker edges, with a soft shadow so it
   reads as paper laid on the page. Pure CSS - no image requests. */

.mca-hero,
.mca-audience-hero,
.mca-founder-hero {
  position: relative;
  isolation: isolate;
  border-radius: 3px;
  padding-inline: clamp(20px, 4vw, 58px);
}

.mca-hero::before,
.mca-audience-hero::before,
.mca-founder-hero::before {
  content: "";
  position: absolute;
  z-index: -2;
  inset: 18px -3vw 26px;
  border-radius: 3px 4px 3px 5px;
  background:
    radial-gradient(58% 44% at 18% 12%, rgba(197, 168, 120, 0.16), transparent 62%),
    radial-gradient(52% 40% at 86% 78%, rgba(176, 146, 98, 0.15), transparent 66%),
    radial-gradient(38% 30% at 62% 30%, rgba(255, 253, 246, 0.85), transparent 70%),
    linear-gradient(168deg, #fbf7ec 0%, #f6efdf 44%, #f2e9d6 100%);
  box-shadow:
    0 1px 0 rgba(255, 255, 255, 0.7) inset,
    0 0 0 1px rgba(168, 140, 94, 0.16),
    0 18px 44px -26px rgba(74, 55, 33, 0.42);
}

/* Grain and fibre, laid over the ground and under the text. */
.mca-hero::after,
.mca-audience-hero::after,
.mca-founder-hero::after {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 18px -3vw 26px;
  border-radius: 3px 4px 3px 5px;
  opacity: 0.5;
  mix-blend-mode: multiply;
  pointer-events: none;
  background-image:
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='260' height='260'%3E%3Cfilter id='g'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='260' height='260' filter='url(%23g)' opacity='0.3'/%3E%3C/svg%3E"),
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='700' height='700'%3E%3Cfilter id='m'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.012' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='700' height='700' filter='url(%23m)' opacity='0.16'/%3E%3C/svg%3E"),
    repeating-linear-gradient(
      92deg,
      rgba(150, 122, 78, 0.05) 0 1px,
      transparent 1px 5px
    );
  background-size: 260px 260px, 700px 700px, auto;
  /* darker, aged edges */
  -webkit-mask-image: radial-gradient(120% 118% at 50% 46%, #000 58%, rgba(0, 0, 0, 0.72) 100%);
  mask-image: radial-gradient(120% 118% at 50% 46%, #000 58%, rgba(0, 0, 0, 0.72) 100%);
}

/* Panels sitting on the parchment get a touch more lift so they separate. */
.mca-hero .mca-workflow-card,
.mca-hero .mca-hero-visual,
.mca-audience-hero figure {
  box-shadow: 0 20px 40px -28px rgba(74, 55, 33, 0.5);
}

@media (prefers-reduced-motion: reduce) {
  .mca-hero::after,
  .mca-audience-hero::after,
  .mca-founder-hero::after {
    opacity: 0.36;
  }
}

/* ---------- Mobile navigation ---------- */

.mca-nav-toggle {
  display: none;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  border: 1px solid var(--mca-border-strong);
  border-radius: 7px;
  background: var(--mca-surface);
  cursor: pointer;
  padding: 0;
}

.mca-nav-toggle-bars,
.mca-nav-toggle-bars::before,
.mca-nav-toggle-bars::after {
  display: block;
  width: 19px;
  height: 2px;
  border-radius: 2px;
  background: var(--mca-ink);
}

.mca-nav-toggle-bars {
  position: relative;
}

.mca-nav-toggle-bars::before,
.mca-nav-toggle-bars::after {
  content: "";
  position: absolute;
  left: 0;
}

.mca-nav-toggle-bars::before { top: -6px; }
.mca-nav-toggle-bars::after  { top: 6px; }

.mca-nav-toggle:focus-visible {
  outline: 2px solid var(--mca-primary);
  outline-offset: 2px;
}

@media (max-width: 767px) {
  .mca-nav-toggle {
    display: inline-flex;
    order: 2;
  }

  .mca-header {
    grid-template-columns: 1fr auto auto;
    gap: 12px;
    padding-block: 12px;
  }

  .mca-header .mca-button-primary {
    order: 3;
  }

  .mca-nav {
    display: none;
  }

  .mca-header[data-nav-open="true"] .mca-nav {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 0;
    grid-column: 1 / -1;
    order: 4;
    border-top: 1px solid var(--mca-border);
    padding-block: 6px 14px;
  }

  .mca-header[data-nav-open="true"] .mca-nav a {
    padding: 13px 2px;
    border-bottom: 1px solid color-mix(in srgb, var(--mca-border), transparent 45%);
    font-size: 1rem;
  }

  .mca-header[data-nav-open="true"] .mca-nav a:last-child {
    border-bottom: 0;
  }

  .mca-hero::before,
  .mca-hero::after,
  .mca-audience-hero::before,
  .mca-audience-hero::after,
  .mca-founder-hero::before,
  .mca-founder-hero::after {
    inset: 10px -5vw 16px;
  }
}


/* The primary CTA was hidden in the mobile header by an earlier rule.
   Most traffic reaches this site by phone from a printed QR code, so the
   one action we want people to take has to be visible there. */
@media (max-width: 767px) {
  .mca-header .mca-button.mca-button-primary {
    display: inline-flex;
    align-items: center;
    order: 3;
    padding: 10px 15px;
    font-size: 0.9rem;
    white-space: nowrap;
  }

  .mca-header .mca-logo {
    width: 132px;
  }
}

@media (max-width: 380px) {
  .mca-header .mca-logo {
    width: 112px;
  }
  .mca-header .mca-button.mca-button-primary {
    padding: 9px 12px;
    font-size: 0.85rem;
  }
}


/* ============================================================
   DESIGN PASS - 2026-08-22
   The pages were built almost entirely from outlined boxes, which
   flattened the hierarchy: eleven pills, four cards, six pills,
   four role cards, all carrying the same visual weight. This pass
   removes the boxes wherever the box was carrying no information,
   lets whitespace and type do the separating, and gives the page a
   rhythm of wide and narrow sections.
   ============================================================ */

/* ---------- 1. More air between sections ---------- */

.mca-steps,
.mca-outputs,
.mca-essay-insights,
.mca-sharing,
.mca-capabilities-section,
.mca-strategy-section,
.mca-role-section,
.mca-efficiency-section,
.mca-problem-section {
  padding-block: clamp(64px, 8vw, 108px);
}

h2 {
  max-width: 22ch;
  font-size: clamp(2rem, 3.3vw, 3.05rem);
  line-height: 1.04;
}

.mca-section-heading h2,
.mca-acceptances-copy h2,
.mca-moments-copy h2 {
  max-width: 26ch;
}

/* ---------- 2. Output cards: lose the box, keep the icon ---------- */

.mca-output-card {
  min-height: 0;
  border: 0;
  border-top: 1px solid var(--mca-border);
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  padding: 22px 0 0;
  gap: 8px;
}

.mca-output-card .mca-card-icon {
  margin-bottom: 4px;
}

.mca-output-grid {
  gap: 34px;
}

/* ---------- 3. Sharing: four quiet columns, not four cards ---------- */

.mca-sharing-grid {
  gap: 34px;
}

.mca-sharing-grid article {
  border: 0;
  border-top: 1px solid var(--mca-border);
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  padding: 20px 0 0 0;
}

.mca-sharing-grid article::before {
  top: 30px;
  left: 0;
}

.mca-sharing-grid article h3 {
  padding-left: 24px;
}

/* ---------- 4. Capability and benefit lists: plain, marked text ---------- */

.mca-capability-grid span,
.mca-efficiency-list li {
  min-height: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  padding: 6px 0 6px 24px;
  align-items: flex-start;
  font-weight: 600;
}

.mca-capability-grid {
  gap: 10px 30px;
}

.mca-efficiency-list {
  gap: 4px;
}

/* ---------- 5. Steps: numerals do the work ---------- */

.mca-step span[aria-hidden="true"] {
  width: auto;
  height: auto;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  color: var(--mca-primary);
  font-family: var(--mca-heading-font);
  font-size: 2.6rem;
  font-weight: 600;
  line-height: 1;
  opacity: 0.55;
}

.mca-step {
  gap: 6px;
}

/* ---------- 6. FAQ: hairlines instead of stacked cards ---------- */

.mca-faq-list {
  gap: 0;
  border-top: 1px solid var(--mca-border);
}

.mca-faq-list details {
  border: 0;
  border-bottom: 1px solid var(--mca-border);
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

.mca-faq-list summary {
  padding-inline: 0;
}

/* ---------- 7. Student photography band ---------- */

.mca-moments {
  position: relative;
  padding: clamp(64px, 8vw, 100px) 0;
  border-block: 1px solid var(--mca-border);
  background: rgba(230, 245, 242, 0.28);
  box-shadow: 0 0 0 100vmax rgba(230, 245, 242, 0.28);
  clip-path: inset(0 -100vmax);
}

.mca-moments-copy {
  max-width: 640px;
  margin-bottom: 34px;
}

.mca-moments-copy h2 {
  margin-bottom: 0;
}

.mca-moments-strip {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
}

.mca-moments-strip figure {
  position: relative;
  margin: 0;
  overflow: hidden;
  border-radius: 6px;
  background: var(--mca-surface);
  box-shadow: 0 18px 34px -26px rgba(74, 55, 33, 0.5);
  aspect-ratio: 4 / 5;
}

.mca-moments-strip img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center top;
  display: block;
}

.mca-moments-strip figure:nth-child(even) {
  margin-top: 26px;
}

@media (max-width: 900px) {
  .mca-moments-strip {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .mca-moments-strip figure:nth-child(even) {
    margin-top: 0;
  }
}

@media (max-width: 767px) {
  .mca-output-grid,
  .mca-sharing-grid {
    gap: 24px;
  }
  .mca-capability-grid {
    gap: 8px 20px;
  }
}


/* The site constrains every section with a shared container rule that lists
   each section class by name; the new photo band has to join it or its
   content sits flush against the viewport edge. */
.mca-moments {
  width: min(1120px, calc(100% - 40px));
  margin-inline: auto;
}

@media (max-width: 640px) {
  .mca-moments {
    width: min(100% - 28px, 1120px);
  }
}

/* The 22ch cap suits left-aligned section headings but squeezes the two
   centred ones into a narrow column. Give those their own measure. */
.mca-acceptances-copy h2 {
  max-width: 20ch;
  font-size: clamp(1.9rem, 2.9vw, 2.55rem);
}

.mca-final h2 {
  max-width: 24ch;
}


/* The 22ch cap is right for headings with a full column, but the FAQ and
   the narrow left columns already constrain their own width - capping them
   again squeezes the heading into a four-line sliver. */
.mca-faq h2,
.mca-outputs h2,
.mca-essay-insights h2,
.mca-strategy-section h2,
.mca-efficiency-section h2 {
  max-width: none;
}

/* Slightly tighter section rhythm: the extra air was right, this much of it
   made the homepage 25% longer than it needs to be. */
.mca-steps,
.mca-outputs,
.mca-essay-insights,
.mca-sharing,
.mca-capabilities-section,
.mca-strategy-section,
.mca-role-section,
.mca-efficiency-section,
.mca-problem-section {
  padding-block: clamp(52px, 6vw, 84px);
}

.mca-moments {
  padding-block: clamp(52px, 6vw, 84px);
}


/* The accepted-schools heading is centred and long; 20ch broke it into five
   short lines. Give it back a comfortable measure. */
.mca-acceptances-copy h2 {
  max-width: 34ch;
}


/* ============================================================
   Student photo marquee - replaces the four-photo static strip.
   Two identical groups scroll as one track; when the first group
   has moved exactly its own width, the second sits where the
   first began, so the loop is seamless.
   ============================================================ */

.mca-moments-marquee {
  position: relative;
  width: 100vw;
  margin-left: 50%;
  transform: translateX(-50%);
  overflow: hidden;
  padding-block: 6px;
  -webkit-mask-image: linear-gradient(to right, transparent 0, #000 90px, #000 calc(100% - 90px), transparent 100%);
  mask-image: linear-gradient(to right, transparent 0, #000 90px, #000 calc(100% - 90px), transparent 100%);
}

.mca-moments-track {
  display: flex;
  width: max-content;
  animation: mca-moments-scroll 96s linear infinite;
}

.mca-moments-group {
  display: flex;
  flex: 0 0 auto;
  align-items: stretch;
  gap: 14px;
  padding-right: 14px;
}

.mca-moments-group figure {
  flex: 0 0 auto;
  height: 260px;
  margin: 0;
  overflow: hidden;
  border-radius: 6px;
  background: var(--mca-surface);
  box-shadow: 0 16px 30px -24px rgba(74, 55, 33, 0.55);
}

.mca-moments-group img {
  display: block;
  width: auto;
  height: 100%;
  object-fit: cover;
}

@keyframes mca-moments-scroll {
  from { transform: translate3d(0, 0, 0); }
  to   { transform: translate3d(-50%, 0, 0); }
}

/* Let people stop it and look. */
.mca-moments-marquee:hover .mca-moments-track,
.mca-moments-marquee:focus-within .mca-moments-track {
  animation-play-state: paused;
}

@media (max-width: 767px) {
  .mca-moments-group figure { height: 190px; }
  .mca-moments-track { animation-duration: 70s; }
}

/* No motion: hold still and let the row be swiped instead. */
@media (prefers-reduced-motion: reduce) {
  .mca-moments-track {
    animation: none;
  }
  .mca-moments-marquee {
    overflow-x: auto;
    scrollbar-width: thin;
  }
  .mca-moments-group[aria-hidden="true"] {
    display: none;
  }
}


/* Independent counselor accounts are not open yet; mark it everywhere the
   page invites someone to create one, and in the navigation. */
.mca-nav-soon {
  display: inline-block;
  margin-left: 5px;
  border-radius: 999px;
  background: var(--mca-honey-soft);
  padding: 1px 6px;
  color: var(--mca-honey);
  font-family: var(--mca-mono-font);
  font-size: 0.56rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  vertical-align: 1px;
}

.mca-soon-note {
  max-width: 46ch;
  margin: 16px 0 0;
  border-left: 2px solid color-mix(in srgb, var(--mca-honey), white 40%);
  padding-left: 14px;
  color: var(--mca-muted);
  font-size: 0.95rem;
}

/* The primary button reads as available; soften it while accounts are closed. */
.mca-badge-soon {
  background: rgba(255, 255, 255, 0.82);
  border-color: rgba(255, 255, 255, 0.5);
  color: var(--mca-primary);
}

.mca-button-secondary .mca-badge-soon,
.mca-nav .mca-badge-soon {
  background: var(--mca-honey-soft);
  color: var(--mca-honey);
}


/* ============================================================
   CLIENT ROUND - 2026-08-25
   ============================================================ */

/* ---------- Footer: real social profiles ----------
   The three grey circles were placeholders. Icons are injected by
   script.js only for profiles that have a URL, so an unset profile
   leaves a gap rather than a dead link. */

.mca-footer-social-link {
  display: grid;
  width: 30px;
  height: 30px;
  place-items: center;
  border: 1px solid var(--mca-border-strong);
  border-radius: 999px;
  background: rgba(253, 251, 247, 0.72);
  color: var(--mca-primary);
  transition: background 160ms ease, color 160ms ease, border-color 160ms ease;
}

.mca-footer-social-link svg {
  width: 15px;
  height: 15px;
  fill: currentColor;
}

.mca-footer-social-link:hover,
.mca-footer-social-link:focus-visible {
  border-color: var(--mca-primary);
  background: var(--mca-primary);
  color: #fff;
}

/* ---------- Home hero: headline centred over its own column ----------
   Centred against the lede, the button and the log-in link beneath it,
   not against the page or the workflow graphic beside it. */

.mca-hero-copy {
  display: grid;
  justify-items: center;
  text-align: center;
}

.mca-hero-copy h1,
.mca-hero-copy .mca-lede {
  margin-inline: auto;
}

.mca-hero-copy .mca-lede {
  text-align: justify;
}

.mca-hero-copy .mca-actions {
  width: 100%;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

.mca-hero-copy .mca-actions .mca-text-link {
  text-align: center;
}

/* Above 980px the hero is two columns and the copy side is only ~272px to
   ~406px wide, where 4.24rem broke the headline into six ragged lines. Below
   that breakpoint the hero is a single full-width column and the existing
   sizes already fit, so this must not reach them. */

@media (min-width: 981px) {
  .mca-hero-copy h1 {
    font-size: clamp(2.4rem, 3.2vw, 3.5rem);
  }
}

/* ---------- "Your information. Your choice." on one line ----------
   The design pass caps every h2 at 22ch; this one runs to 29 and broke
   across two lines. */

.mca-sharing .mca-section-copy h2 {
  max-width: none;
}

@media (min-width: 860px) {
  .mca-sharing .mca-section-copy h2 {
    white-space: nowrap;
  }
}

/* ---------- Independent Counselors: bullets clear of the text ----------
   The markers were positioned for the boxed lists at left: 18px. When the
   design pass dropped the boxes it also cut the padding to 24px, so the
   dot and its ring landed on the first letters. */

.mca-capability-grid span,
.mca-efficiency-list li {
  padding-left: 34px;
}

.mca-capability-grid span::before,
.mca-efficiency-list li::before {
  top: 0.52em;
  left: 7px;
  width: 10px;
  height: 10px;
  box-shadow: 0 0 0 4px var(--mca-honey-soft);
}

/* ---------- Independent Counselors: centred section headlines ----------
   Every section heading on the page, including the two that sit in the
   narrow left column of a two-column section. */

.mca-problem-section .mca-section-copy,
.mca-capabilities-section .mca-section-heading,
.mca-role-section .mca-section-heading,
.mca-strategy-section .mca-section-copy,
.mca-efficiency-section > div:first-child {
  margin-inline: auto;
  text-align: center;
}

.mca-problem-section .mca-section-copy h2,
.mca-capabilities-section .mca-section-heading h2,
.mca-role-section .mca-section-heading h2,
.mca-strategy-section .mca-section-copy h2,
.mca-efficiency-section > div:first-child h2 {
  margin-inline: auto;
}

/* ---------- Schools hero: copy column centred ----------
   Constrained to the column; the role cards on the right are untouched.
   Centring the lede and the button as well matches the Independent
   Counselors hero, which already centres its whole copy column, and a
   lone button reads as deliberate under a centred headline. */

.mca-school-hero .mca-audience-hero-copy {
  display: grid;
  justify-items: center;
  text-align: center;
}

.mca-school-hero .mca-audience-hero-copy h1,
.mca-school-hero .mca-school-hero-subtitles,
.mca-school-hero .mca-lede {
  margin-inline: auto;
}

.mca-school-hero .mca-actions {
  justify-content: center;
}

/* ---------- Our Founder: plain credentials, not three cards ---------- */

.mca-founder-bio {
  max-width: 620px;
  margin-inline: auto;
  text-align: left;
}

.mca-founder-bio-name {
  margin-bottom: 14px;
  color: var(--mca-ink);
  font-family: var(--mca-heading-font);
  font-size: 1.32rem;
  font-weight: 650;
  line-height: 1.2;
  text-align: center;
}

.mca-founder-bio-list {
  display: grid;
  gap: 11px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.mca-founder-bio-list li {
  position: relative;
  padding-left: 22px;
  color: var(--mca-text);
  font-size: 1.02rem;
  line-height: 1.4;
}

.mca-founder-bio-list li::before {
  content: "";
  position: absolute;
  top: 0.6em;
  left: 0;
  width: 7px;
  height: 7px;
  border-radius: 999px;
  background: var(--mca-primary);
}

/* ---------- Student stories: one photo size for every card ----------
   Every frame took its height from its own photo, so a portrait shot made
   its card half again as tall as a landscape one, and the carousel grows to
   fit the tallest card on screen. Fixed square frames with a cover crop give
   every card an identical media block. Each story image already carries an
   objectPosition, so a crop that cuts badly can be nudged per photo. The
   modal is deliberately left alone: clicking through shows the full frame. */

.mca-story-featured-frame,
.mca-story-collage-frame,
.mca-story-thumb-frame {
  aspect-ratio: 1 / 1;
  overflow: hidden;
}

.mca-story-featured-frame img,
.mca-story-collage-frame img,
.mca-story-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* Cards with no quote sized their media column at 390px against the 178px a
   two-column card gets, which would reopen the height gap the square frames
   just closed. 240px also keeps all three thumbnails on one row. */

@media (min-width: 721px) {
  .mca-story-card--photo-only .mca-story-media-column {
    width: min(100%, 240px);
  }

  .mca-story-card--photo-only .mca-story-media-column--collage {
    width: min(100%, 470px);
  }
}

.mca-story-card--photo-only .mca-story-thumbnails {
  grid-template-columns: repeat(auto-fit, minmax(70px, 1fr));
  justify-content: stretch;
}


/* ---------- "Real students. Real activities. Real applications." ----------
   Centred over the full-bleed photo strip it introduces, and held on one
   line: the 640px copy width and the 26ch heading cap each broke it in two.
   The string measures 22.25em, so the size has to track the viewport to stay
   unbroken; below 900px it wraps normally rather than shrink to nothing. */

.mca-moments-copy {
  max-width: none;
  text-align: center;
}

.mca-moments-copy h2 {
  max-width: none;
  margin-inline: auto;
}

@media (min-width: 900px) {
  .mca-moments-copy h2 {
    font-size: min(3.05rem, 4.2vw);
    white-space: nowrap;
  }
}


/* ---------- Workflow panel labels ----------
   Geist Mono read as a terminal readout. The body grotesk is already the
   voice of the chips directly beneath each label, so the panel reads as one
   component instead of two. */

.mca-workflow-label {
  font-family: var(--mca-body-font);
  font-weight: 800;
  letter-spacing: 0.1em;
}

/* ---------- Story-to-logic connector ----------
   It was drawn as a split: one stem entering the bar from above and three
   dropping out of it, which is backwards. Profile, Activities and Honors
   feed in, and one line carries the result down to the logic card. */

.mca-flow-arrow-branch {
  background:
    linear-gradient(180deg, var(--mca-primary), var(--mca-coral)) 16px 0 / 4px 20px no-repeat,
    linear-gradient(180deg, var(--mca-primary), var(--mca-coral)) center 0 / 4px 20px no-repeat,
    linear-gradient(180deg, var(--mca-primary), var(--mca-coral)) calc(100% - 16px) 0 / 4px 20px no-repeat,
    linear-gradient(90deg, var(--mca-primary), var(--mca-coral)) center 20px / 116px 4px no-repeat,
    linear-gradient(180deg, var(--mca-primary), var(--mca-coral)) center 24px / 4px 20px no-repeat;
}
