/* Approved Alef headings / Heebo reading layout, 24 September 2026. */
html .home-renewed { --section-space: 64px; --title-size: 36px; --body-size: 18px; }
html .home-renewed :is(h1, h2, h3, strong) { font-weight: 700; letter-spacing: 0px; }
html .home-renewed :is(.home-topic-paths h2, .era-heading h2, .memory-layout h2), html .home-renewed #places-title { font-size: var(--title-size); line-height: 1.25; margin: 0px; }
html .home-renewed .text-link { font-size: 16px; font-weight: 700; line-height: 1.5; min-height: 44px; }
html .home-renewed .story-table { padding-bottom: 80px; }
html .home-renewed .table-heading { margin-bottom: 0px; }
html .home-renewed .table-heading > div { display: grid; justify-items: start; gap: 8px; max-width: 100%; }
html .home-renewed .table-heading h1 { font-size: clamp(44px, 4.2vw, 60px); line-height: 1.1; }
html .table-heading .table-description { font-size: 19px; line-height: 1.45; margin: 0px; text-wrap: balance; }
html .home-renewed .table-stage { margin-top: 32px; }
html .home-renewed .table-theme { font-weight: 700; line-height: 1.15; }
html .home-renewed .table-peek { font-size: 15px; font-weight: 700; line-height: 1.4; }
html .home-renewed .table-peek small { font-size: 13px; font-weight: 400; }
html .home-renewed .home-topic-paths { display: grid; grid-template-columns: minmax(0px, 1fr); padding-block: var(--section-space) 0; gap: 20px; }
html .home-renewed .home-topic-primary { display: grid; grid-template-columns: repeat(5, minmax(max-content, 1fr)); gap: 12px; }
html .home-renewed .home-topic-primary a { min-height: 56px; padding: 12px 20px; font-size: 20px; line-height: 1.4; font-weight: 700; white-space: nowrap; transition: background-color 180ms var(--ease-settle), color 180ms var(--ease-settle); }
html .home-renewed .home-topic-primary a:focus-visible { background: var(--ink); color: var(--paper); outline: 2px solid var(--ink); outline-offset: 4px; }
html .home-manifesto { grid-template-columns: 80px minmax(0px, 760px); gap: 32px; padding-block: 112px; }
html .manifesto-mark { width: 72px; height: 72px; margin: 4px 0px 0px; }
html .home-manifesto .manifesto-lead { font-size: var(--title-size); font-weight: 700; line-height: 1.05; margin: 0px 0px 16px; }
html .home-manifesto p { font-size: var(--body-size); line-height: 1.65; margin: 0px 0px 16px; }
html .home-manifesto .manifesto-foot { font-size: 14px; line-height: 1.5; margin: 0px; }
html .home-renewed .story-carousel { padding-top: 80px; }
html .home-renewed .spotlight-layout { row-gap: 24px; }
html .home-renewed .spotlight-heading h2 { font-size: clamp(38px, 3.35vw, 48px); line-height: 1.05; margin: 0px; }
html .home-renewed .spotlight-copy { padding: 0px; }
html .home-renewed .spotlight-copy h3 { font-size: 28px; line-height: 1.25; margin: 0px 0px 8px; }
html .home-renewed .spotlight-copy .eyebrow { font-size: 13px; font-weight: 400; line-height: 1.5; margin: 0px 0px 8px; }
html .home-renewed .spotlight-copy > p:not(.eyebrow) { font-size: var(--body-size); line-height: 1.6; margin: 0px 0px 12px; max-width: 36ch; }
html .spotlight-footer { padding-top: 88px; }
html .home-renewed .story-timeline { padding-block: var(--section-space); }
html .home-renewed .era-heading { display: flex; align-items: baseline; justify-content: space-between; flex-wrap: wrap; gap: 8px 24px; margin: 0px 0px 24px; }
html .home-renewed .era-heading h2 { max-width: none; }
html .era-heading-meta { gap: 8px 16px; }
html .era-periods > a { font-size: 15px; line-height: 1.5; }
html .era-filter-bar { padding-bottom: 12px; margin-bottom: 24px; }
html :is(.era-periods > a[aria-pressed="true"], .era-person[aria-pressed="true"] span, .era-person[aria-pressed="true"] bdi, .era-finder-title) { font-weight: 700; }
html :is(.era-heading-meta > p, .era-archive-link, .era-finder) { font-size: 14px; }
html .era-person span { margin-top: 4px; }
html .home-renewed .era-panel { padding-block: 32px 0px; }
html .era-date { margin-bottom: 16px; }
html .home-renewed .era-story-copy h3 { font-size: 28px; line-height: 1.25; margin: 0px 0px 8px; }
html .home-renewed .era-story-copy > .era-hook { font-size: var(--body-size); line-height: 1.6; margin: 0px 0px 12px; max-width: 42ch; }
html .home-renewed .era-display-year { font-weight: 400; letter-spacing: -2px; }
html .home-renewed .place-invitation { padding-block: var(--section-space); gap: 12px 6%; }
html .home-renewed .place-copy { margin: 0px; }
html .home-renewed #places-title, html .home-renewed .memory-layout h2 { line-height: 1.05; }
html .place-copy > p { font-size: var(--body-size); line-height: 1.6; margin: 0px 0px 12px; }
html .home-renewed .place-trail { margin-top: 20px; }
html .home-renewed .place-trail a { padding-block: 24px; }
html .home-renewed .place-trail-name { font-size: 24px; font-weight: 700; line-height: 1.25; }
html .place-trail-name small { font-size: 13px; font-weight: 400; line-height: 1.5; margin-top: 4px; }
html .home-renewed .memory-invitation { padding-block: 48px; }
html .memory-button { font-size: 17px; font-weight: 700; line-height: 1.5; min-height: 56px; padding: 14px 24px; gap: 32px; }
@media (max-width: 1000px) {
html .home-renewed { --title-size: 32px; }
html .spotlight-footer { padding-top: 80px; }
}
@media (max-width: 899px) {
html .home-renewed .home-topic-primary { grid-template-columns: repeat(2, minmax(max-content, 1fr)); }
}
@media (max-width: 900px) {
html .home-renewed .story-carousel { padding-top: 0px; }
html .home-renewed .spotlight-layout { row-gap: 0px; }
html .home-renewed .spotlight-heading { margin-top: 24px; }
html .home-renewed .spotlight-heading h2 { font-size: 34px; }
html .home-renewed .spotlight-copy { padding-top: 20px; }
html .spotlight-footer { padding-top: 24px; }
}
@media (max-width: 760px) {
html .home-renewed { --section-space: 48px; --title-size: 30px; --body-size: 17px; }
html .home-renewed .story-table { padding-bottom: 0px; }
html .home-renewed .table-heading h1 { font-size: 40px; }
html .table-heading .table-description { font-size: 18px; line-height: 1.45; margin: 0px; max-width: 30ch; }
html .home-renewed .table-stage { margin-top: 24px; }
html .table-mobile-identity .table-mobile-topic { font-size: 34px; line-height: 1.2; font-weight: 700; }
html .table-mobile-identity h2 { font-size: 21px; font-weight: 700; line-height: 1.3; }
html .table-mobile-story { font-size: 15px; }
html .table-touch-hint { font-size: 13px; line-height: 1.5; }
html .home-renewed .home-topic-paths { gap: 16px; }
html .home-renewed .home-topic-primary { gap: 10px; }
html .home-renewed .home-topic-primary a { font-size: 18px; min-height: 48px; padding: 10px 12px; }
html .home-manifesto { grid-template-columns: minmax(0px, 1fr); gap: 16px; padding-block: 72px; }
html .manifesto-mark { width: 44px; height: 44px; margin: 0px; }
html .home-manifesto .manifesto-lead { font-size: var(--title-size); line-height: 1.05; margin-bottom: 12px; }
html .home-renewed .spotlight-copy h3 { font-size: 24px; }
html .home-renewed .era-heading { display: block; margin-bottom: 16px; }
html .home-renewed .era-heading h2 { margin-bottom: 4px; }
html .home-renewed .era-panel { padding-block: 24px 0px; }
html .home-renewed .place-invitation { row-gap: 12px; }
html .home-renewed .place-copy { grid-row: 2; }
html .home-renewed .place-landscape { grid-row: 3; margin-top: 12px; }
html .home-renewed .place-trail { grid-row: 4; margin-top: 12px; }
html .home-renewed .place-trail a { padding-block: 16px; }
html .home-renewed .place-trail-name { font-size: 22px; }
html .home-renewed .memory-invitation { padding-block: 40px; }
html .home-renewed .memory-layout { gap: 24px; }
}
@media (max-width: 680px), (max-width: 1000px) and (max-height: 500px) {
html .era-filter-bar { padding-bottom: 0px; margin-bottom: 16px; }
html .era-mobile-period select { font-size: 15px; font-weight: 700; }
html .era-date { margin: 8px 0px 0px; }
html .home-renewed .era-story-copy h3 { font-size: 24px; margin: 0px; line-height: 1.25; }
html .home-renewed .era-display-year { font-size: 17px; letter-spacing: 0px; }
html .home-renewed .era-story-copy > .era-hook { margin-block: 16px 12px; max-width: none; }
}
@media (max-width: 360px) {
html .home-renewed .home-topic-primary { gap: 8px; }
html .home-renewed .home-topic-primary a { font-size: 16px; padding-inline: 10px; }
html .home-renewed .era-heading h2 { font-size: 28px; }
}
