/* Desktop composition grows at most 15% beyond the 1440px reference.
   Buttons retain their original dimensions. Mobile/tablet rules stay local.
   Reading columns grow with type, preserving line length. Full-screen copy also
   observes viewport height so an ultrawide, short window cannot clip the text. */
@media (min-width: 1440px) {
  :root { --reading-unit: clamp(1px, calc(.807143px + .0133929vw), 1.15px); }
  html[data-layout="home"] { --reading-unit: clamp(1px, min(calc(.807143px + .0133929vw), .1111111svh), 1.15px); }
  html[data-layout="home"] .section-copy,
  html[data-layout="home"] .section h1,
  html[data-layout="home"] .section h2 { max-width: calc(950 * var(--reading-unit)); }
  html[data-layout="home"] { --headline-size: clamp(54px, min(4.65vw, 8svh), calc(72 * var(--reading-unit))); }
  html[data-layout="home"] .subtitle { font-size: calc(17 * var(--reading-unit)); max-width: calc(640 * var(--reading-unit)); margin-top: calc(22 * var(--reading-unit)); }
  html[data-layout="home"] .small { font-size: calc(11 * var(--reading-unit)); margin-bottom: calc(20 * var(--reading-unit)); }
  html[data-layout="home"] .hero-cta { gap: calc(22 * var(--reading-unit)); margin-top: calc(24 * var(--reading-unit)); }
  html[data-layout="home"] .deadline-caption { font-size: calc(9 * var(--reading-unit)); }
  html[data-layout="home"] .deadline-time { font-size: calc(14 * var(--reading-unit)); }
  html[data-layout="home"] .ef-investors { font-size: calc(15 * var(--reading-unit)); max-width: calc(625 * var(--reading-unit)); margin-top: calc(24 * var(--reading-unit)); }
  html[data-layout="home"] .portfolio-examples { max-width: calc(930 * var(--reading-unit)); gap: calc(16 * var(--reading-unit)) calc(30 * var(--reading-unit)); margin-top: calc(20 * var(--reading-unit)); }
  html[data-layout="home"] .portfolio-examples li { font-size: calc(14 * var(--reading-unit)); }
  html[data-layout="home"] .portfolio-examples span { font-size: calc(11 * var(--reading-unit)); }
  html[data-layout="home"] .founders-cloud { gap: calc(28 * var(--reading-unit)) calc(36 * var(--reading-unit)); }
  html[data-layout="home"] .founder em { font-size: calc(21 * var(--reading-unit)); }
  html[data-layout="home"] .founder small { font-size: calc(10 * var(--reading-unit)); }

  .editorial-main { padding: calc(155 * var(--reading-unit)) 5vw calc(100 * var(--reading-unit)); }
  .editorial-main > h1 { font-size: calc(68 * var(--reading-unit)); max-width: calc(1050 * var(--reading-unit)); margin-bottom: calc(60 * var(--reading-unit)); }
  .reading-column { max-width: calc(720 * var(--reading-unit)); font-size: calc(17 * var(--reading-unit)); }
  .editorial-intro { font-size: calc(22 * var(--reading-unit)); margin-bottom: calc(36 * var(--reading-unit)); }
  .reading-column p + p { margin-top: calc(24 * var(--reading-unit)); }
  .manifesto-copy h2, .faq-section h2 { font-size: calc(28 * var(--reading-unit)); }
  .faq-topics { font-size: calc(13 * var(--reading-unit)); gap: calc(10 * var(--reading-unit)) calc(24 * var(--reading-unit)); }
  .faq-item summary { font-size: calc(17 * var(--reading-unit)); padding: calc(20 * var(--reading-unit)) calc(35 * var(--reading-unit)) calc(20 * var(--reading-unit)) 0; }
  .faq-item summary::after { font-size: calc(20 * var(--reading-unit)); top: calc(19 * var(--reading-unit)); }
  .faq-answer { font-size: calc(16 * var(--reading-unit)); padding: 0 calc(28 * var(--reading-unit)) calc(25 * var(--reading-unit)) 0; }
  .editorial-link { font-size: calc(15 * var(--reading-unit)); }
  .editorial-action { margin: calc(38 * var(--reading-unit)) 0 calc(66 * var(--reading-unit)); }

  /* The older public URLs have independent inline styles. */
  html[data-layout="manifesto"] #content { width: 100%; max-width: calc(940 * var(--reading-unit)); padding-inline: calc(100 * var(--reading-unit)); }
  html[data-layout="manifesto"] .hero h1 { font-size: calc(160 * var(--reading-unit)); }
  html[data-layout="manifesto"] .story p { font-size: calc(32 * var(--reading-unit)); }
  html[data-layout="manifesto"] .story { margin-bottom: calc(80 * var(--reading-unit)); }
  html[data-layout="manifesto"] .conclusion p { font-size: calc(36 * var(--reading-unit)); }
  html[data-layout="manifesto"] .conclusion .final { font-size: calc(52 * var(--reading-unit)); }
  html[data-layout="meet"] .main-layout { width: 100%; max-width: calc(1100 * var(--reading-unit)); padding-inline: calc(40 * var(--reading-unit)); justify-content: center; }
  html[data-layout="meet"] .category-nav { width: calc(180 * var(--reading-unit)); }
  html[data-layout="meet"] #content { min-width: 0; max-width: calc(650 * var(--reading-unit)); padding-left: calc(60 * var(--reading-unit)); }
  html[data-layout="meet"] .hero h1 { font-size: calc(80 * var(--reading-unit)); }
  html[data-layout="meet"] .hero p { font-size: calc(16 * var(--reading-unit)); max-width: calc(500 * var(--reading-unit)); }
  html[data-layout="meet"] .category-nav a { font-size: calc(12 * var(--reading-unit)); }
  html[data-layout="meet"] .past-event-title { font-size: calc(20 * var(--reading-unit)); }
  html[data-layout="meet"] .past-event-meta, html[data-layout="meet"] .social a { font-size: calc(11 * var(--reading-unit)); }
  html[data-layout="meet"] .past-event-item { padding-block: calc(20 * var(--reading-unit)); }
  html[data-layout="meet"] .event-tabs { margin-top: calc(40 * var(--reading-unit)); margin-bottom: calc(30 * var(--reading-unit)); }
  html[data-layout="missionbook"] { font-size: calc(18 * var(--reading-unit)); }
  html[data-layout="missionbook"] .article { max-width: 40rem; }

}
/* Preserve the compact composition in shallow desktop windows. */
@media (min-width: 1440px) and (max-height: 800px) {
  html[data-layout="home"] { --headline-size: clamp(38px, 6.75svh, 54px); }
  html[data-layout="home"] .subtitle { font-size: 14px; margin-top: 14px; }
}
@media (min-width: 1440px) and (max-height: 520px) {
  html[data-layout="home"] { --headline-size: 28px; }
  html[data-layout="home"] .small { margin-bottom: 8px; }
  html[data-layout="home"] .subtitle { font-size: 12px; margin-top: 8px; }
  html[data-layout="home"] .hero-cta { margin-top: 12px; }
  html[data-layout="home"] .ef-investors { font-size: 12px; margin-top: 8px; }
  html[data-layout="home"] .portfolio-examples { gap: 8px 18px; margin-top: 10px; }
  html[data-layout="home"] .portfolio-examples li { font-size: 11px; }
  html[data-layout="home"] .portfolio-examples span { font-size: 9px; }
}
