@font-face { font-family: 'Manrope'; font-style: normal; font-weight: 400; font-display: swap; src: url('../fonts/manrope-400.ttf') format('truetype'); }
@font-face { font-family: 'Manrope'; font-style: normal; font-weight: 500; font-display: swap; src: url('../fonts/manrope-500.ttf') format('truetype'); }
@font-face { font-family: 'Manrope'; font-style: normal; font-weight: 600; font-display: swap; src: url('../fonts/manrope-600.ttf') format('truetype'); }
@font-face { font-family: 'Manrope'; font-style: normal; font-weight: 700; font-display: swap; src: url('../fonts/manrope-700.ttf') format('truetype'); }
@font-face { font-family: 'Manrope'; font-style: normal; font-weight: 800; font-display: swap; src: url('../fonts/manrope-800.ttf') format('truetype'); }
/* === Report Card V18 — TEST variation B: data dashboard & key findings first ===
   Same light premium system as V13 (paper, ink, hairlines, lime accent, Manrope). */
.rc-v18 { --ground:#FAF8F3; --paper:#FFFFFF; --ink:#2A0C3C; --ink2:#3A1251; --muted:#6E5A86; --body:#4A3566; --line:#E3D9F2; --line2:#D5C8EC; --lilac:#F3EDFA; --tray:#F1EAF9; --lime:#BEF264;
  background:var(--ground); color:var(--ink); font-variant-numeric:tabular-nums; overflow-x:clip; padding-bottom:96px; width:100vw; max-width:none; margin-left:calc(50% - 50vw);
  font-family:'Manrope',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif; -webkit-font-smoothing:antialiased; }
.rc-v18 ::selection { background:var(--lime); color:var(--ink); }
.rc-v18 * { box-sizing:border-box; }

.rc18-hero { padding:64px 0 0; max-width:1060px; margin-inline:auto; }
.rc18-imprint { font-size:12px; font-weight:700; letter-spacing:.14em; text-transform:uppercase; color:var(--muted); margin:0 0 24px; }
.rc18-title { font-size:clamp(2.7rem,6.2vw,4.75rem); font-weight:800; line-height:1.02; letter-spacing:-0.03em; color:var(--ink); margin:0 0 24px; max-width:16ch; }
.rc18-title em { font-style:normal; box-shadow:inset 0 -0.14em 0 var(--lime); }
.rc18-stand { font-size:clamp(1.05rem,1.6vw,1.25rem); line-height:1.6; color:var(--body); max-width:62ch; margin:0; }

.rc18-ticker { margin:48px calc(50% - 50vw) 0; background:var(--ink2); border-top:1px solid var(--ink); border-bottom:1px solid var(--ink); overflow:hidden; padding:12px 0; }
.rc18-ticker__track { display:flex; gap:0; width:max-content; animation:rc18tick 32s linear infinite; }
.rc18-ticker__track span { font-size:14px; font-weight:800; letter-spacing:.05em; text-transform:uppercase; color:#fff; white-space:nowrap; padding-right:20px; }
.rc18-ticker__track span::after { content:"·"; margin-left:20px; font-weight:800; }
@keyframes rc18tick { to { transform:translateX(-50%); } }
@media (prefers-reduced-motion: reduce) { .rc18-ticker__track { animation:none; } }
.rc18-ticker__track:hover, .rc18-ticker__track:active { animation-play-state:paused; }

.rc18-sec { margin-top:96px; max-width:1060px; margin-inline:auto; }
.rc18-sec-head { max-width:1060px; margin-bottom:48px; }
.rc18-h2 { font-size:clamp(2rem,4vw,3rem); font-weight:800; letter-spacing:-0.03em; line-height:1.05; color:var(--ink); margin:0 0 16px; }
.rc18-h2--sm { font-size:clamp(1.6rem,3vw,2.2rem); }
.rc18-sec-sub { font-size:16.5px; line-height:1.65; color:var(--body); max-width:64ch; margin:0; }

/* metric cards — double-bezel, no blur */
.rc18-metrics { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:40px; max-width:1060px; }
.rc18-metric { background:var(--paper); border:1px solid var(--line2); border-radius:20px; padding:32px;
  box-shadow:0 0 0 6px var(--tray), 0 0 0 7px var(--line), inset 0 1px 0 #fff, 0 24px 40px -28px rgba(42,12,60,.28); }
.rc18-metric__num { display:block; font-size:clamp(1.9rem,3.4vw,2.6rem); font-weight:800; letter-spacing:-0.03em; line-height:1.05; color:var(--ink); margin-bottom:12px; }
.rc18-metric__lab { display:block; font-size:14.5px; line-height:1.55; color:var(--muted); }

/* findings */
.rc18-findings { list-style:none; margin:0; padding:0; border-top:1px solid var(--line2); max-width:1060px; }
.rc18-finding { display:flex; gap:24px; align-items:baseline; padding:24px 0; border-bottom:1px solid var(--line); }
.rc18-finding__n { font-size:15px; font-weight:800; color:var(--ink2); background:var(--lilac); width:36px; height:36px; border-radius:50%; display:grid; place-items:center; flex:none; align-self:flex-start; }
.rc18-finding__b { font-size:16.5px; line-height:1.6; color:var(--body); max-width:64ch; margin:0; }
.rc18-finding__b strong { color:var(--ink); }

/* tabs + comparison rows */
.rc18-tabs { display:flex; gap:8px; margin-bottom:8px; }
.rc18-tab { font-family:inherit; font-size:.95rem; font-weight:800; color:var(--body); background:transparent; border:2px solid var(--line2); border-radius:99px; padding:10px 20px; cursor:pointer; }
.rc18-tab:hover { border-color:var(--ink2); }
.rc18-tab:focus-visible { outline:3px solid var(--ink); outline-offset:2px; }
.rc18-tab--on { background:var(--ink); border-color:var(--ink); color:#fff; }
.rc18-panel { border-top:1px solid var(--line2); max-width:1060px; }
.rc18-ngnote { font-size:.98rem; line-height:1.6; color:var(--body); background:var(--lilac); border-radius:16px; padding:20px 24px; margin:24px 0 8px; max-width:70ch; }
.rc18-row { display:flex; align-items:center; gap:16px; padding:16px 8px; border-bottom:1px solid var(--line); text-decoration:none; color:var(--ink); transition:background .2s ease; }
@media (hover:hover) and (pointer:fine) { .rc18-row:hover { background:var(--lilac); } }
.rc18-row:focus-visible { outline:3px solid var(--ink); outline-offset:2px; }
.rc18-row__flag { width:44px; height:auto; border-radius:4px; box-shadow:0 0 0 1px var(--line); flex:none; }
.rc18-row__name { font-size:1.08rem; font-weight:800; letter-spacing:-0.01em; flex:1; min-width:0; }
.rc18-row__meta { font-size:.86rem; font-weight:600; color:var(--muted); white-space:nowrap; }
.rc18-row__mean { font-size:1.15rem; font-weight:800; color:var(--ink2); min-width:2.6em; text-align:right; }
.rc18-chip { flex:none; min-width:44px; text-align:center; font-weight:800; font-size:1.05rem; color:var(--ink); background:var(--lilac); border:1px solid var(--line2); border-radius:10px; padding:8px 10px; }
.rc18-chip--a { background:var(--lime); border-color:var(--lime); }
.rc18-chip--b { background:#DCE5DC; }
.rc18-chip--d { background:#F7E8C9; }
.rc18-chip--ng { font-size:.8rem; font-weight:700; color:var(--muted); background:transparent; border-style:dashed; }

/* research team showcase */
.rc18-team { border:1px solid var(--line2); border-radius:20px; background:var(--paper); padding:32px; max-width:1060px;
  box-shadow:0 0 0 6px var(--tray), 0 0 0 7px var(--line), inset 0 1px 0 #fff; }
.rc18-team__label { font-size:12px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; color:var(--muted); margin:0 0 24px; }
.rc18-faces { display:flex; flex-wrap:wrap; gap:24px 20px; }
.rc18-face { display:flex; flex-direction:column; align-items:center; gap:8px; width:96px; text-align:center; }
.rc18-face__circ { width:64px; height:64px; border-radius:50%; display:grid; place-items:center; font-weight:800; font-size:1.1rem; letter-spacing:.02em; color:var(--ink); box-shadow:0 0 0 2px var(--paper), 0 0 0 3.5px var(--line2); }
.rc18-face__circ--a { background:var(--lilac); }
.rc18-face__circ--b { background:#DCE5DC; }
.rc18-face__circ--c { background:#F7E8C9; }
.rc18-face__name { font-size:.8rem; font-weight:700; color:var(--body); line-height:1.25; }

.rc18-close { border-top:1px solid var(--line2); padding-top:64px; }
.rc18-actions { display:flex; flex-wrap:wrap; gap:16px; margin-top:32px; }
.rc18-btn { display:inline-block; font-weight:800; font-size:1rem; color:var(--ink); text-decoration:none; border:2px solid var(--ink); border-radius:99px; padding:14px 28px; transition:background .2s ease, color .2s ease; }
.rc18-btn:hover { background:var(--lilac); }
.rc18-btn--solid { background:var(--ink); color:#fff; }
.rc18-btn--solid:hover { background:var(--ink2); color:#fff; }
.rc18-credits { margin-top:48px; font-size:.92rem; line-height:1.6; color:var(--muted); max-width:70ch; }

@media (max-width:760px) {
  .rc18-hero { padding-top:48px; }
  .rc18-sec { margin-top:64px; }
  .rc18-metrics { grid-template-columns:1fr; gap:28px; }
  .rc18-faces { gap:20px 12px; justify-content:center; }
  .rc18-face { width:80px; }
  .rc18-face__circ { width:56px; height:56px; }
  .rc18-row__meta { display:none; }
  .rc18-team { padding:24px; }
}

/* ——— V16 additions: hero CTA, team showcase scale, View-card rows, matrix ——— */
.rc18-hero-cta { display:flex; flex-wrap:wrap; gap:16px; margin-top:32px; }
.rc18-btn { display:inline-block; font-weight:800; font-size:1rem; color:var(--ink); text-decoration:none; border:2px solid var(--ink); border-radius:99px; padding:14px 28px; transition:background .2s ease, color .2s ease; }
.rc18-btn:hover { background:var(--lilac); }
.rc18-btn--solid { background:var(--ink); color:#fff; }
.rc18-btn--solid:hover { background:var(--ink2); color:#fff; }
.rc18-actions { display:flex; flex-wrap:wrap; gap:16px; margin-top:32px; }
.rc18-metric__lab { color:var(--body); font-weight:600; }
.rc18-face { width:104px; }
.rc18-face__circ { width:72px; height:72px; font-size:1.2rem; }
.rc18-face__photo { width:72px; height:72px; border-radius:50%; object-fit:cover; display:block; box-shadow:0 0 0 2px var(--ground), 0 0 0 3.5px var(--line2); }
.rc18-row__go { flex:none; font-size:.86rem; font-weight:800; color:var(--ink2); white-space:nowrap; }
.rc18-matrixwrap { overflow-x:auto; border:1px solid var(--line2); border-radius:20px; background:var(--paper); max-width:1060px;
  box-shadow:0 0 0 6px var(--tray), 0 0 0 7px var(--line), inset 0 1px 0 #fff; }
.rc18-matrix { border-collapse:collapse; width:100%; min-width:560px; font-size:.98rem; }
.rc18-matrix th, .rc18-matrix td { padding:14px 16px; text-align:center; border-bottom:1px solid var(--line); }
.rc18-matrix thead th { font-size:.78rem; letter-spacing:.1em; text-transform:uppercase; color:var(--muted); border-bottom:1px solid var(--line2); }
.rc18-matrix tbody th { text-align:left; font-weight:800; color:var(--ink); white-space:nowrap; }
.rc18-matrix td { font-weight:700; color:var(--body); }
.rc18-matrix__foot th, .rc18-matrix__foot td { border-bottom:0; font-weight:800; color:var(--ink); background:var(--lilac); }
@media (max-width:760px) {
  .rc18-face { width:88px; }
  .rc18-face__circ, .rc18-face__photo { width:60px; height:60px; }
  .rc18-row__go { display:none; }
  }

/* ——— V18 deltas: PDF hero button alt-link + methodology accordion ——— */
.rc18-hero-cta__alt { font-weight:700; color:var(--ink2); align-self:center; }
.rc18-acc { border-top:1px solid var(--line2); }
.rc18-acc__item { border-bottom:1px solid var(--line); }
.rc18-acc__sum { cursor:pointer; font-size:1.12rem; font-weight:800; color:var(--ink); padding:20px 4px; list-style:none; }
.rc18-acc__sum::-webkit-details-marker { display:none; }
.rc18-acc__sum::after { content:"+"; float:right; font-weight:800; color:var(--ink2); }
.rc18-acc__item[open ] .rc18-acc__sum::after { content:"–"; }
.rc18-acc__body { padding:0 4px 24px; }
.rc18-acc__body p { font-size:15.5px; line-height:1.65; color:var(--body); max-width:68ch; margin:0 0 12px; }
.rc18-acc__body p:last-child { margin-bottom:0; }

/* ——— Hero art (Christopher, 2026-10-28): the pancreas character he supplied,
   white background removed, sits beside the header copy on desktop and
   stacks small at the right on phones. ——— */
.rc18-hero { display:flex; gap:48px; align-items:center; }
.rc18-hero__text { flex:1; min-width:0; }
.rc18-hero__art { flex:none; width:clamp(200px,24vw,300px); margin:0; }
.rc18-hero__art img { width:100%; height:auto; display:block; filter:drop-shadow(0 24px 24px rgba(42,12,60,.18)); }
@media (max-width:760px) {
  .rc18-hero { flex-direction:column; align-items:stretch; gap:24px; }
  .rc18-hero__art { width:152px; margin:8px auto 0; }
}

@media (max-width:760px) {
}
