/* Home page: one document scroll, generous editorial layouts. */
html.home-page {
  overflow-x: clip;
  overflow-y: auto;
  scroll-behavior: auto;
  scroll-padding-top: 120px;
}

body.home-page {
  --muted: #b5b0aa;
  --surface-radius: 32px;
  overflow: visible;
  background: #030303;
  -webkit-overflow-scrolling: auto;
}

.home-page main,
.home-page main > section {
  overflow: clip;
  max-height: none;
  scroll-snap-align: none;
  scroll-snap-stop: normal;
}

.home-page .section-shell,
.home-page .statement-inner {
  width: 100%;
  max-width: 1360px;
  margin-inline: auto;
}

.home-page .site-header {
  top: 16px;
  width: min(1440px, calc(100% - 40px));
  background: #080808;
  border-color: #303031;
  backdrop-filter: none;
  box-shadow: 0 8px 28px #0003;
  animation: none;
}

.home-page .main-nav { overflow: visible; flex-wrap: wrap; }
.home-page .main-nav a { min-height: 44px; }
.home-page .skip-link { position: fixed; top: -100px; left: 24px; z-index: 300; padding: 14px 20px; background: #fff; color: #111; }
.home-page .skip-link:focus { top: 20px; }
.home-page :is(a, button, input, textarea):focus-visible { outline: 2px solid #fff; outline-offset: 5px; }
.home-page .button { min-height: 54px; padding-inline: 24px; gap: 24px; border-radius: 20px; font-size: 15px; box-shadow: none; }

.home-page .statement { background: #080808; }
.home-page .statement-grid { display: grid; grid-template-columns: 1.3fr 0.7fr; gap: 80px; align-items: center; }
.home-page .statement-copy h2,
.home-page .section-head h2,
.home-page .sources h2 { max-width: 900px; font-size: clamp(38px, 4.6vw, 68px); line-height: 1.08; letter-spacing: -0.04em; text-wrap: balance; }
.home-page .statement-copy p:not(.overline) { max-width: 640px; margin-left: 0; font-size: 18px; line-height: 1.7; color: var(--muted); }
.home-page .statement-copy .statement-about { padding-top: 0; border: 0; }
.home-page .statement-visual { min-height: 0; aspect-ratio: 1; border: 1px solid #ffffff16; border-radius: 50%; background: radial-gradient(circle, #6b101c55, transparent 70%); }
.home-page .statement-visual img { width: 88%; height: auto; animation: none; filter: none; }
.home-page .section-head,
.home-page .section-head.compact { margin: 0 0 48px; }
.home-page .section-head p:not(.overline) { max-width: 660px; margin-top: 24px; line-height: 1.65; }
.home-page .overline { color: var(--red); font-size: 11px; letter-spacing: 0.16em; }

.home-page .atlas { background: #030303; }
.home-page .atlas::after,
.home-page .people-grid::before { display: none; }
.home-page .atlas .section-shell { margin-top: 0; }
.home-page .atlas .section-head { gap: 20px 64px; }
.home-page .atlas .section-head p:not(.overline) { margin: 0; padding: 0; border: 0; }
.home-page .atlas-tools { margin-bottom: 28px; gap: 10px; }
.home-page .filter-button { min-height: 44px; padding-inline: 22px; }
.home-page .people-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); grid-auto-rows: auto; gap: 18px; }
.home-page .people-card { border-radius: 28px; background: #0d0d0d; backdrop-filter: none; box-shadow: none; }
.home-page .people-card .card-body p { font-size: 14px; line-height: 1.5; }
.home-page .people-card .card-body h3 { font-size: 34px; }

.home-page .learn { background: #080808; }
.home-page .learn-grid { grid-template-columns: 0.9fr 1.1fr; gap: 56px; align-items: start; }
.home-page .learn-aside { padding: 0; min-height: 0; background: none; border: 0; }
.home-page .learn-aside h2 { font-size: clamp(36px, 3.6vw, 52px); letter-spacing: -0.035em; line-height: 1.12; }
.home-page .learn-aside > p:not(.overline) { margin-top: 24px; font-size: 17px; }
.home-page .people-tabs { height: auto; max-height: none; overflow: visible; padding: 0; margin-top: 28px; gap: 9px; }
.home-page .people-tabs button { min-height: 44px; font-size: 14px; }
.home-page .knowledge-panel { min-height: 0; padding: clamp(24px, 3.4vw, 48px); background: #101010; border: 1px solid #ffffff21; box-shadow: none; }
.home-page .fact-list div { background: #ffffff06; border-radius: 20px; }
.home-page .online-quiz-cta { margin-top: 36px; padding: 26px 32px; border-radius: 28px; background: #281014; border-color: #64242c; box-shadow: none; }

.home-page .articles { background: #030303; }
.home-page .articles .section-head { max-width: 920px; }
.home-page .article-preview { grid-template-columns: 1.15fr 0.85fr; min-height: 550px; border: 1px solid #ffffff20; border-radius: 32px; background: #0d0d0d; }
.home-page .article-preview figure { margin: 0; min-height: 550px; }
.home-page .article-preview img { filter: none; }
.home-page .article-preview-copy { padding: clamp(28px, 4vw, 58px); }
.home-page .article-preview-copy h3 { font-size: clamp(32px, 3.2vw, 46px); line-height: 1.14; letter-spacing: -0.025em; }
.home-page .article-preview-copy p { font-size: 17px; line-height: 1.65; }

.home-page .events { background: #080808; }
.home-page .events .section-head.compact { max-width: 980px; text-align: left; }
.home-page .event-feature {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 28px 64px;
  margin: 0;
  padding: 44px 0 0;
  overflow: visible;
  background: none;
  border: 0;
  border-top: 1px solid #ffffff2b;
  border-radius: 0;
}
.home-page .event-feature + .event-feature { margin-top: 96px; padding-top: 44px; border-top: 1px solid #ffffff2b; }
.home-page .event-story { display: contents; }
.home-page .event-date { grid-column: 1 / -1; order: 0; display: flex; flex-wrap: wrap; justify-content: space-between; gap: 12px; margin: 0; color: #e0d5cf; font-size: 12px; letter-spacing: 0.08em; }
.home-page .event-date > span:first-child { color: var(--red); }
.home-page .event-story h3 { grid-column: 1; order: 1; max-width: 580px; margin: 0; font-size: clamp(32px, 3.5vw, 50px); letter-spacing: -0.035em; line-height: 1.12; text-wrap: balance; }
.home-page .event-story > p:not(.event-date) { grid-column: 2; order: 1; margin: 0; max-width: 650px; font-size: 18px; line-height: 1.7; color: #bfb8b3; }
.home-page .event-gallery { grid-column: 1 / -1; order: 2; display: grid; grid-template-columns: 1fr 1fr; grid-template-rows: auto; gap: 20px; min-height: 0; aspect-ratio: auto; margin-top: 8px; transform: none; }
.home-page .event-gallery .event-photo-main { grid-column: 1 / -1; grid-row: auto; aspect-ratio: 2.15; }
.home-page .event-photo,
.home-page .event-photo:nth-child(2),
.home-page .event-photo:nth-child(3) { min-height: 0; aspect-ratio: 1.5; transform: none; border: 0; border-radius: 28px; background: #101010; }
.home-page .event-photo img { width: 100%; height: 100%; min-height: 0; object-fit: cover; object-position: center; filter: none; transform: none; outline: 1px solid #ffffff1a; outline-offset: -1px; }
.home-page .event-photo::after { height: 50%; background: linear-gradient(transparent, #000b); }
.home-page .event-photo figcaption { left: 26px; right: 26px; bottom: 24px; font-size: 18px; font-weight: 500; line-height: 1.45; }
.home-page .event-photo figcaption span { display: block; margin-bottom: 7px; font-size: 10px; font-weight: 700; letter-spacing: 0.12em; text-transform: uppercase; }
.home-page .event-gallery-youth { grid-template-columns: 1fr 1fr 1fr; grid-template-rows: repeat(2, auto); }
.home-page .event-gallery-youth .event-photo-main { grid-column: 1; grid-row: 1 / 3; aspect-ratio: auto; }
.home-page .event-gallery-youth .event-photo:not(.event-photo-main) { aspect-ratio: 1.15; }
.home-page .event-gallery-youth .event-photo-main img { object-position: center 28%; }
.home-page .event-gallery-youth figcaption { font-size: 15px; left: 20px; right: 20px; bottom: 20px; }
.home-page .event-program,
.home-page .event-feature-youth .event-program { grid-column: 1 / -1; order: 3; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 24px; margin: 8px 0 0; padding: 0; }
.home-page .event-feature-youth .event-program { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.home-page .event-program article,
.home-page .event-feature-youth .event-program article { min-height: 0; padding: 24px 0 0; background: none; border: 0; border-top: 1px solid #ffffff26; border-radius: 0; box-shadow: none; }
.home-page .event-program span { color: var(--red); font-size: 12px; }
.home-page .event-program strong { margin-top: 18px; font-size: 20px; line-height: 1.3; }
.home-page .event-program p { margin-top: 10px; font-size: 15px; line-height: 1.65; color: var(--muted); }

.home-page .feedback { background: #030303; }
.home-page .feedback-grid { gap: 80px; }
.home-page .feedback h2 { font-size: clamp(38px, 4vw, 60px); line-height: 1.1; letter-spacing: -0.04em; }
.home-page .feedback-form { padding: 36px; background: #0d0d0d; border: 1px solid #ffffff21; }
.home-page .feedback-form :is(input, textarea) { font-size: 16px; border-radius: 18px; background: #050505; }
.home-page .sources { background: #080808; border-top: 1px solid #ffffff16; }
.home-page .sources h2 { font-size: clamp(32px, 3vw, 46px); }
.home-page .sources-list a { border-radius: 20px; background: #ffffff04; }
.home-page .site-footer { background: #030303; }

/* Explicit dark-theme text replaces the inherited light-panel colors. */
.home-page :is(.knowledge-panel, .sources, .site-footer) { color: var(--text); }
.home-page .knowledge-panel p,
.home-page .fact-list span,
.home-page .sources-heading p:not(.overline),
.home-page .sources-list span,
.home-page .footer-brand p,
.home-page .footer-copy,
.home-page .footer-nav a { color: var(--muted); }
.home-page .panel-meta { color: var(--muted); border-color: var(--line); }
.home-page .fact-list strong { color: var(--red); }
.home-page .fact-list div { background: #171717; border-color: var(--line); }
.home-page .fact-list div:hover { background: #1d1d1d; transform: none; }
.home-page .quiz-block { border-color: var(--line); }
.home-page .knowledge-panel .quiz-question { color: var(--text) !important; }
.home-page .knowledge-panel .quiz-result { color: var(--text) !important; }
.home-page .quiz-options button { color: var(--text); background: #1b1b1b; border-color: #444; padding-block: 12px; text-align: left; line-height: 1.5; }
.home-page .quiz-options button:hover,
.home-page .quiz-options button:focus-visible { color: var(--text); background: #292929; border-color: #777; }
.home-page .quiz-options button.is-correct { color: var(--black); background: var(--text); border-color: var(--text); }
.home-page .quiz-options button.is-wrong { color: var(--white); background: var(--red-deep); border-color: var(--red); }
.home-page .sources .overline { color: var(--red); }
.home-page .sources-list a { color: var(--text); background: #101010; border-color: var(--line); }
.home-page .sources-list a:hover,
.home-page .sources-list a:focus-visible { color: var(--text); background: #180708; border-color: var(--red); }
.home-page .footer-nav a { border-color: var(--line); }
.home-page .footer-nav a:hover,
.home-page .footer-nav a:focus-visible { color: var(--text); background: #1b1b1b; border-color: #555; }
.home-page .site-header { border-radius: 32px; }
.home-page .knowledge-panel,
.home-page .feedback-form { border-radius: var(--surface-radius); }

/* Card height follows its width at every breakpoint: portrait format 3:4. */
.home-page .people-card { display: block; width: 100%; height: auto; min-width: 0; aspect-ratio: 3 / 4; padding: 0; }
.home-page .people-card .card-meta { position: absolute; top: 18px; left: 18px; right: 24px; min-height: 0; z-index: 3; }
.home-page .people-card .card-body { position: absolute; bottom: 22px; left: 20px; right: 20px; display: grid; grid-template-rows: auto; gap: 9px; min-height: 0; padding: 0; z-index: 3; }
.home-page .people-card .card-body h3 { font-size: clamp(24px, 2.2vw, 34px); overflow-wrap: anywhere; }
.home-page .people-card::before { height: 82%; background: linear-gradient(180deg, transparent, #03030399 38%, #030303f5 100%); }
.home-page .people-card .card-body p { -webkit-line-clamp: 3; }

/* No entrance animations, parallax, or hover tilt while reading the home page. */
.home-page main .motion-reveal,
.home-page main .reveal-on-scroll,
.home-page main .tilt-card { opacity: 1; transform: none; filter: none; animation: none; will-change: auto; }
.home-page main .tilt-card:hover,
.home-page main .event-program article:hover { transform: none; box-shadow: none; }

@media (max-width: 1100px) {
  .home-page .people-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .home-page .statement-grid { gap: 36px; }
  .home-page .learn-grid { grid-template-columns: 1fr; gap: 36px; }
  .home-page .article-preview { grid-template-columns: 1fr 1fr; }
  .home-page .event-feature { column-gap: 32px; }
  .home-page .event-program { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .home-page .event-gallery-youth { grid-template-columns: 1fr 1fr; }
  .home-page .event-gallery-youth .event-photo-main { grid-column: 1 / -1; grid-row: auto; aspect-ratio: 1.65; }
  .home-page .event-gallery-youth .event-photo:not(.event-photo-main) { aspect-ratio: 1.4; }
  .home-page .feedback-grid { gap: 36px; }
}

@media (max-width: 760px) {
  html.home-page { scroll-padding-top: 170px; }
  .home-page .site-header { top: 10px; width: calc(100% - 24px); gap: 6px 12px; grid-template-columns: 1fr auto; min-height: 0; padding: 10px 12px; }
  .home-page .brand { width: 118px; height: 42px; }
  .home-page .main-nav { grid-column: 1 / -1; grid-row: 2; width: 100%; max-height: none; flex-wrap: wrap; justify-content: flex-start; gap: 0 6px; padding: 0; mask-image: none; }
  .home-page .main-nav a { padding: 0 8px; font-size: 12px; }
  .home-page .statement-grid { grid-template-columns: 1fr; }
  .home-page .statement-visual { width: min(280px, 75%); margin: 10px auto 0; }
  .home-page .atlas .section-head { display: block; }
  .home-page .atlas .section-head h2 { margin: 18px 0 24px; }
  .home-page .people-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); grid-auto-rows: auto; gap: 12px; }
  .home-page .people-card { border-radius: 24px; }
  .home-page .people-card .card-meta { top: 12px; left: 12px; right: 20px; font-size: 10px; }
  .home-page .people-card .card-body { left: 12px; right: 12px; bottom: 16px; gap: 5px; }
  .home-page .people-card .card-body h3 { font-size: clamp(18px, 4.4vw, 29px); line-height: 1.12; }
  .home-page .people-card .card-body p { max-height: none; font-size: 12px; line-height: 1.45; -webkit-line-clamp: 2; }
  .home-page .article-preview { grid-template-columns: 1fr; min-height: 0; }
  .home-page .article-preview figure { min-height: 0; aspect-ratio: 1.4; }
  .home-page .article-preview-copy { padding: 28px; }
  .home-page .event-feature { grid-template-columns: 1fr; gap: 24px; padding-top: 28px; }
  .home-page .event-story h3,
  .home-page .event-story > p:not(.event-date) { grid-column: 1; }
  .home-page .event-story > p:not(.event-date) { font-size: 17px; }
  .home-page .event-date { font-size: 10px; }
  .home-page .event-gallery,
  .home-page .event-gallery-youth { grid-template-columns: 1fr; grid-template-rows: auto; gap: 16px; }
  .home-page .event-gallery .event-photo,
  .home-page .event-gallery-youth .event-photo:not(.event-photo-main) { grid-column: 1; grid-row: auto; aspect-ratio: 1.3; }
  .home-page .event-gallery-youth .event-photo-main { aspect-ratio: 0.9; }
  .home-page .event-photo figcaption,
  .home-page .event-gallery-youth figcaption { left: 18px; right: 18px; bottom: 18px; font-size: 16px; }
  .home-page .event-program,
  .home-page .event-feature-youth .event-program { grid-template-columns: 1fr 1fr; gap: 24px; }
  .home-page .event-program strong { font-size: 18px; }
  .home-page .event-program p { font-size: 14px; }
  .home-page .feedback-grid { grid-template-columns: 1fr; }
  .home-page .feedback-form { padding: 24px; }
  .home-page .sources-layout { grid-template-columns: 1fr; }
}

@media (max-width: 420px) {
  .home-page .people-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .home-page .event-program,
  .home-page .event-feature-youth .event-program { grid-template-columns: 1fr; }
}

@media (max-width: 480px) {
  .home-page .people-grid { gap: 10px; }
  .home-page .people-card .card-body p { display: none; }
  .home-page .people-card .card-number { font-size: 9px; }
}

/* Reference direction: warm paper, black ink, vivid red and the project ornament. */
body.home-page {
  --paper: #f3eee5;
  --ink: #101010;
  --paper-muted: #5e5851;
  --paper-line: #d1c9bf;
  --surface-radius: 32px;
  background: var(--paper);
  font-family: Arial, "Segoe UI", sans-serif;
}
.home-page .site-header { background: #090909; border: 1px solid #383838; border-radius: 30px; }
.home-page .statement { background: #080808; color: var(--paper); }
.home-page .statement-copy h2 { font-size: clamp(40px, 5vw, 72px); letter-spacing: -0.045em; }
.home-page .statement-visual { position: relative; aspect-ratio: 1; border-radius: 32px; border: none; background: radial-gradient(ellipse at 18% 14%, #f4d6c5, #dd211c 27%, transparent 60%), radial-gradient(ellipse at 90% 85%, #d94b36, #ad060c 35%, #420003); }
.home-page .statement-visual img { width: 74%; filter: brightness(0) invert(0.93); }
.home-page .statement-visual::before,
.home-page .statement-visual::after { display: none; }
.home-page .section-head h2,
.home-page .learn-aside h2,
.home-page .sources h2,
.home-page .event-story h3 { letter-spacing: -0.045em; line-height: 1.08; }

/* Light sections own their full foreground palette, including interaction states. */
.home-page :is(.atlas, .articles, .sources) { color: var(--ink); background: var(--paper); }
.home-page :is(.atlas, .articles, .sources) .overline { color: #a91118; }
.home-page :is(.atlas, .articles) .section-head p:not(.overline),
.home-page .sources-heading p:not(.overline) { color: var(--paper-muted); }
.home-page .atlas-tools { padding-top: 12px; }
.home-page .filter-button { color: var(--ink); border-color: var(--paper-line); background: transparent; box-shadow: none; }
.home-page .filter-button:hover { background: #e7dfd4; border-color: #8f877d; }
.home-page .filter-button.is-active { color: var(--paper); background: var(--ink); border-color: var(--ink); }
.home-page .people-card { color: var(--paper); background: #111; border-color: #242424; }
.home-page .people-card .card-body p { color: #d0c9c0; }
.home-page .people-card .card-number { color: #ff747a; }
.home-page .people-card:nth-child(5n + 2),
.home-page .people-card:nth-child(5n + 4) { background: #290608; }
.home-page .people-card .card-portrait img { filter: saturate(0.82) contrast(1.08); }
.home-page .people-card:hover .card-portrait img { filter: saturate(1) contrast(1.08); }

.home-page .learn { color: var(--paper); background: #080808; }
.home-page .knowledge-panel { color: var(--ink); background: var(--paper); border: 0; }
.home-page .knowledge-panel h3 { margin-top: 32px; font-size: clamp(40px, 4.5vw, 66px); font-weight: 700; letter-spacing: -0.045em; line-height: 1.08; }
.home-page .knowledge-panel p,
.home-page .knowledge-panel .fact-list span { color: var(--paper-muted); font-size: 17px; line-height: 1.6; }
.home-page .knowledge-panel .panel-meta { color: var(--paper-muted); border-color: var(--paper-line); font-size: 13px; line-height: 1.5; }
.home-page .knowledge-panel .fact-list { gap: 12px; }
.home-page .knowledge-panel .fact-list div { background: #e6dfd5; border: 0; border-radius: 20px; }
.home-page .knowledge-panel .fact-list strong { color: #a51117; }
.home-page .knowledge-panel .quiz-block { border-color: var(--paper-line); }
.home-page .knowledge-panel .quiz-question { color: var(--ink) !important; font-size: 18px; }
.home-page .knowledge-panel .quiz-result { color: #a51117 !important; font-size: 16px; }
.home-page .knowledge-panel .quiz-options button { color: var(--ink); background: transparent; border-color: #b9b0a5; }
.home-page .knowledge-panel .quiz-options button:hover,
.home-page .knowledge-panel .quiz-options button:focus-visible { background: #e0d7ca; border-color: #72685e; }
.home-page .knowledge-panel .quiz-options button.is-correct { color: var(--paper); background: var(--ink); border-color: var(--ink); }
.home-page .knowledge-panel .quiz-options button.is-wrong { color: #fff; background: #a51117; border-color: #a51117; }
.home-page .online-quiz-cta { background: #c91920; border: 0; color: #fff; padding: 32px; }
.home-page .online-quiz-cta::after { color: #fff; }
.home-page .article-preview { background: #101010; color: var(--paper); border: 0; }
.home-page .article-preview-copy p { color: #c4bdb3; }
.home-page .article-preview-copy > span { color: #d0c9c0; }
.home-page .article-preview-copy strong { color: var(--paper); }

.home-page .events { color: var(--paper); background: #080808; }
.home-page .event-feature { border-color: #48433d; }
.home-page .event-feature + .event-feature { border-color: #48433d; }
.home-page .event-program strong { color: var(--paper); }
.home-page .event-photo { border-radius: 32px; }
.home-page .event-photo figcaption { color: #fff; }
.home-page .feedback { color: #fff; background: radial-gradient(ellipse at 100% 0%, #ed4836, transparent 52%), linear-gradient(120deg, #83050a, #c91920 60%); }
.home-page .feedback .overline,
.home-page .feedback-grid > div > p { color: #f3ded6; }
.home-page .feedback-form { background: var(--paper); color: var(--ink); border: 0; }
.home-page .feedback-form label { color: var(--ink); }
.home-page .feedback-form :is(input, textarea) { color: var(--ink); background: #e7e0d6; border: 1px solid #bfb5a9; }
.home-page .feedback-form :is(input, textarea)::placeholder { color: #655c52; }
.home-page .feedback-form button { color: #fff; background: var(--ink); }
.home-page .feedback-form button:hover { background: #a51117; }
.home-page .feedback-form .feedback-message { color: var(--paper-muted); }
.home-page .feedback-form .feedback-message[data-type="error"] { color: #a51117; }
.home-page .feedback-form .feedback-message[data-type="success"] { color: #215332; }
.home-page .sources { border: 0; }
.home-page .sources-list { gap: 16px; }
.home-page .sources-list a { color: var(--ink); background: #e7e0d6; border: 1px solid var(--paper-line); padding: 28px; border-radius: 24px; }
.home-page .sources-list span { color: var(--paper-muted); }
.home-page .sources-list a:hover,
.home-page .sources-list a:focus-visible { color: var(--ink); background: #ded4c6; border-color: #a51117; }
.home-page .sources-list strong { font-size: clamp(20px, 1.8vw, 27px); line-height: 1.25; }
.home-page .site-footer { background: #080808; color: var(--paper); border-color: #333; }
.home-page .atlas .people-card:focus-visible { outline-color: #a51117; }

@media (max-width: 1100px) {
  .home-page .knowledge-panel .fact-list { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 760px) {
  .home-page .statement-visual { width: 100%; max-width: 400px; }
  .home-page .knowledge-panel .fact-list { grid-template-columns: 1fr; }
  .home-page .knowledge-panel .fact-list div { min-height: 0; }
  .home-page .knowledge-panel .panel-meta { flex-wrap: wrap; gap: 8px; }
  .home-page .event-photo { border-radius: 24px; }
  .home-page .sources-list a { padding: 24px; }
}

/* Soft glass: stationary highlights and SVG ornament, with no scroll effects. */
body.home-page { --surface-radius: 42px; }
.home-page .site-header {
  background: linear-gradient(125deg, #ffffff12, #ffffff03 48%), #090909ed;
  border-color: #ffffff28;
  border-radius: 36px;
  backdrop-filter: blur(12px);
  box-shadow: inset 0 1px 0 #ffffff1f, 0 10px 32px #0003;
}
.home-page :is(.statement, .learn, .events) { position: relative; isolation: isolate; background: radial-gradient(ellipse at 100% 0%, #5909112b, transparent 48%), #080808; }
.home-page :is(.statement, .learn, .events) > :is(.section-shell, .statement-inner) { position: relative; z-index: 1; }
.home-page .statement-visual {
  border-radius: 44px;
  border: 1px solid #fff6;
  box-shadow: inset 0 2px 0 #ffffff70, inset 0 -1px 0 #ffffff38, 0 16px 70px #e21b1b20;
}
.home-page .statement-visual img { width: 68%; }
.home-page :is(.atlas, .articles, .sources) { background: radial-gradient(ellipse at 0% 0%, #fffaf4, transparent 58%), var(--paper); }
.home-page .people-grid { gap: 22px; }
.home-page .people-card,
.home-page .people-card:nth-child(5n + 2),
.home-page .people-card:nth-child(5n + 4) {
  border-radius: 36px;
  background: linear-gradient(140deg, #ffffff13, transparent 42%), #121011;
  border-color: #ffffff3d;
  box-shadow: inset 0 1px 0 #ffffff30, 0 8px 24px #20100a14;
}
.home-page .people-card:nth-child(5n + 2),
.home-page .people-card:nth-child(5n + 4) { background: linear-gradient(140deg, #f6544822, transparent 52%), #280609; }
.home-page .people-card:hover { border-color: #d64449; box-shadow: inset 0 1px 0 #ffffff30, 0 8px 28px #b80b1424; }
.home-page .people-card .card-meta { top: 20px; left: 22px; }
.home-page .knowledge-panel,
.home-page .feedback-form {
  border-radius: 42px;
  background: linear-gradient(135deg, #fffaf5, #f3eee5 48%, #e9e1d6);
  border: 1px solid #ffffffb3;
  box-shadow: inset 0 2px 0 #fff, 0 14px 50px #0002;
}
.home-page .knowledge-panel .fact-list div { border: 1px solid #fff9; background: #ded5c957; border-radius: 24px; box-shadow: inset 0 1px 0 #fff9; }
.home-page .knowledge-panel .quiz-options button { border-radius: 22px; }
.home-page .online-quiz-cta { border-radius: 34px; border: 1px solid #ff9d9866; background: linear-gradient(125deg, #e13b2e, #bd1019 55%, #90060c); box-shadow: inset 0 1px 0 #ffffff4d, 0 8px 35px #d519191c; }
.home-page .article-preview { border-radius: 42px; border: 1px solid #ffffff28; box-shadow: inset 0 1px 0 #ffffff30, 0 14px 44px #20100a14; }
.home-page .article-preview-copy { background: radial-gradient(ellipse at 100% 0%, #8a111522, transparent 70%); }
.home-page .event-gallery .event-photo,
.home-page .event-gallery .event-photo:nth-child(2),
.home-page .event-gallery .event-photo:nth-child(3) { border-radius: 36px; border: 1px solid #ffffff38; box-shadow: 0 8px 34px #0003; }
.home-page .event-photo figcaption {
  left: 18px; right: 18px; bottom: 18px;
  padding: 16px 18px; border: 1px solid #ffffff40; border-radius: 24px;
  background: linear-gradient(125deg, #ffffff12, #ffffff03), #0a0909d9;
  box-shadow: inset 0 1px 0 #ffffff21;
}
.home-page .feedback { position: relative; isolation: isolate; }
.home-page .feedback-form :is(input, textarea) { border-radius: 22px; background: #e7e0d677; box-shadow: inset 0 1px 3px #5c34200a; }
.home-page .sources-list a { border-radius: 30px; background: linear-gradient(135deg, #ffffff80, #e5dbce70); border: 1px solid #d2c7b9; box-shadow: inset 0 1px 0 #fff; }
.home-page .sources-list a:hover { background: #e7dfd2; }
@media (max-width: 760px) {
  .home-page .site-header { border-radius: 28px; backdrop-filter: none; background-color: #0c0b0bf5; }
  .home-page .people-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); grid-auto-rows: auto; gap: 12px; }
  .home-page .people-card,
  .home-page .people-card:nth-child(5n + 2),
  .home-page .people-card:nth-child(5n + 4) { border-radius: 26px; }
  .home-page .people-card .card-meta { top: 14px; left: 14px; }
  .home-page .people-card .card-body { left: 14px; right: 14px; bottom: 16px; }
  .home-page .knowledge-panel,
  .home-page .feedback-form { border-radius: 32px; }
  .home-page .article-preview { border-radius: 32px; }
  .home-page .event-gallery .event-photo,
  .home-page .event-gallery .event-photo:nth-child(2),
  .home-page .event-gallery .event-photo:nth-child(3) { border-radius: 30px; }
  .home-page .event-photo figcaption { left: 12px; right: 12px; bottom: 12px; padding: 12px 14px; border-radius: 20px; font-size: 14px; }
  .home-page .statement::before { width: 70%; opacity: 0.08; }
}

/* Project handouts: the supplied sticker sheet stays intact, including its QR. */
.home-page .project-materials { position: relative; color: var(--ink); background: radial-gradient(ellipse at 0% 15%, #fffaf4, transparent 65%), var(--paper); }
.home-page .materials-grid { display: grid; grid-template-columns: 0.95fr 1.05fr; align-items: center; gap: clamp(32px, 6vw, 90px); }
.home-page .materials-copy { min-width: 0; }
.home-page .materials-copy .overline { color: #a51117; }
.home-page .materials-copy h2 { margin: 0; font-size: clamp(38px, 4.3vw, 64px); line-height: 1.08; letter-spacing: -0.045em; text-wrap: balance; }
.home-page .materials-copy > p:not(.overline) { max-width: 560px; margin: 22px 0 0; color: var(--paper-muted); font-size: 17px; line-height: 1.65; }
.home-page .materials-copy > .materials-lead { color: var(--ink); font-size: 21px; line-height: 1.5; }
.home-page .materials-details { display: grid; gap: 24px; margin-top: 36px; }
.home-page .materials-details > div { display: grid; grid-template-columns: 28px 1fr; gap: 16px; }
.home-page .materials-details > div > span { padding-top: 3px; color: #a51117; font-size: 12px; font-weight: 700; }
.home-page .materials-details h3 { margin: 0 0 8px; font-size: 19px; line-height: 1.3; }
.home-page .materials-details p { margin: 0; color: var(--paper-muted); font-size: 15px; line-height: 1.6; }
.home-page .materials-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 24px; margin-top: 36px; }
.home-page .materials-primary { background: #b9141c; color: #fff; border-radius: 999px; border: 1px solid #da5b61; box-shadow: inset 0 1px 0 #ffffff4d, 0 8px 26px #b9141c1a; }
.home-page .materials-primary:hover { background: #981017; }
.home-page .materials-contact { display: inline-flex; align-items: center; gap: 16px; min-height: 44px; font-size: 14px; text-decoration: underline; text-underline-offset: 5px; }
.home-page .materials-preview { min-width: 0; margin: 0; padding: 20px; background: linear-gradient(135deg, #ffffffb3, #e3d9cc66); border: 1px solid #ffffffbd; border-radius: 42px; box-shadow: inset 0 2px 0 #fff, 0 16px 54px #44201612; }
.home-page .materials-preview > a { display: block; overflow: hidden; border-radius: 26px; background: #fff; outline-offset: 4px; }
.home-page .materials-preview img { display: block; width: 100%; height: auto; border-radius: 26px; }
.home-page .materials-preview figcaption { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 10px; padding: 18px 4px 2px; color: var(--paper-muted); font-size: 11px; line-height: 1.5; }
.home-page .project-materials :is(a, button):focus-visible { outline-color: #a51117; }
@media (max-width: 1000px) {
  .home-page .materials-grid { grid-template-columns: 1fr; gap: 40px; }
  .home-page .materials-copy > p:not(.overline) { max-width: 680px; }
  .home-page .materials-preview { width: 100%; max-width: 620px; margin-inline: auto; }
}
@media (max-width: 760px) {
  .home-page .materials-preview { padding: 12px; border-radius: 32px; }
  .home-page .materials-preview > a,
  .home-page .materials-preview img { border-radius: 22px; }
  .home-page .materials-preview figcaption { padding: 14px 6px 4px; }
}

/* Mobile header: equal side controls keep the logo geometrically centered. */
.home-page .mobile-header-button,
.home-page .main-nav .mobile-nav-link,
.home-page .mobile-account-notice { display: none; }
@media (max-width: 760px) {
  html.home-page { scroll-padding-top: 100px; }
  .home-page .site-header {
    top: max(10px, env(safe-area-inset-top));
    display: grid;
    grid-template-columns: 44px minmax(0, 1fr) 44px;
    grid-template-rows: 48px;
    gap: 0 12px;
    min-height: 0;
    padding: 10px 12px;
    border-radius: 28px;
    overflow: visible;
  }
  .home-page .site-header .brand {
    grid-column: 2; grid-row: 1; justify-self: center;
    width: 126px; max-width: 100%; height: 48px;
  }
  .home-page .site-header .nav-cta { display: none; }
  .home-page .mobile-header-button {
    display: inline-flex; align-items: center; justify-content: center;
    width: 44px; height: 44px; padding: 10px;
    color: var(--paper); background: #ffffff08;
    border: 1px solid #ffffff20; border-radius: 16px; cursor: pointer;
  }
  .home-page .mobile-header-button:hover { background: #ffffff18; }
  .home-page .mobile-header-button svg { width: 24px; height: 24px; flex: none; }
  .home-page .menu-toggle { grid-column: 1; grid-row: 1; }
  .home-page .mobile-account { grid-column: 3; grid-row: 1; }
  .home-page .menu-toggle[aria-expanded="true"] { background: #6a141a; border-color: #e74b54; }
  .home-page .site-header .main-nav {
    position: absolute; top: calc(100% + 10px); left: 0; right: 0;
    display: none; width: auto; max-height: calc(100dvh - 110px - env(safe-area-inset-top));
    padding: 14px; overflow-y: auto; overscroll-behavior-y: contain;
    color: var(--paper); background: linear-gradient(135deg, #ffffff08, transparent), #101010;
    border: 1px solid #ffffff29; border-radius: 28px;
    box-shadow: inset 0 1px 0 #ffffff16, 0 18px 40px #0005;
    mask-image: none; transition: none;
  }
  .home-page .site-header.is-menu-open .main-nav { display: grid; grid-template-columns: 1fr; gap: 4px; }
  .home-page .site-header .main-nav a,
  .home-page .site-header .main-nav .mobile-nav-link {
    display: flex; align-items: center; min-height: 48px; padding: 12px 18px;
    color: var(--paper); font-size: 16px; line-height: 1.4; border-radius: 16px;
  }
  .home-page .site-header .main-nav a:hover { background: #ffffff0d; }
  .home-page .mobile-account-notice:not([hidden]) {
    position: absolute; top: calc(100% + 10px); left: 0; right: 0;
    display: block; margin: 0; padding: 22px;
    background: #151515; color: var(--paper); border: 1px solid #ffffff29;
    border-radius: 24px; font-size: 15px; line-height: 1.5;
    box-shadow: 0 16px 36px #0004;
  }
}

/* Final dark direction with the supplied project ornaments. */
body.home-page {
  --ink: #f7f3ec;
  --paper-muted: #b5b0aa;
  --paper-line: #ffffff24;
  background: #030303;
  color: var(--text);
}
.home-page main > section {
  color: var(--text);
  background: #030303;
}
.home-page :is(.atlas, .articles, .sources, .project-materials, .feedback),
.home-page :is(.statement, .learn, .events) { color: var(--text); background: #030303; }
.home-page :is(.statement, .learn, .events, .project-materials) { position: relative; isolation: isolate; }
.home-page :is(.knowledge-panel, .feedback-form, .materials-preview, .article-preview) {
  color: var(--text);
  background: linear-gradient(135deg, #ffffff06, transparent 60%), #0c0c0d;
  border: 1px solid #ffffff20;
  box-shadow: inset 0 1px 0 #ffffff0d;
}
.home-page .knowledge-panel .fact-list div,
.home-page .sources-list a {
  color: var(--text);
  background: #121213;
  border: 1px solid #ffffff18;
  box-shadow: inset 0 1px 0 #ffffff08;
}
.home-page .sources-list a:hover,
.home-page .sources-list a:focus-visible { color: var(--text); background: #1a0c0e; border-color: #ac2932; }
.home-page .filter-button { color: var(--text); border-color: #ffffff26; background: #ffffff06; }
.home-page .filter-button:hover { color: var(--text); background: #ffffff12; border-color: #ffffff50; }
.home-page .filter-button.is-active,
.home-page .people-tabs button.is-active { color: #fff; background: #b30d17; border-color: #f11222; box-shadow: none; }
.home-page .knowledge-panel .quiz-options button { color: var(--text); background: #181819; border-color: #ffffff32; }
.home-page .knowledge-panel .quiz-options button:hover,
.home-page .knowledge-panel .quiz-options button:focus-visible { color: var(--text); background: #242426; border-color: #ffffff65; }
.home-page .knowledge-panel .quiz-options button.is-correct { color: #fff; background: #252526; border-color: #f7f3ec; }
.home-page .knowledge-panel .quiz-options button.is-wrong { color: #fff; background: #830a13; border-color: #ed3340; }
.home-page .knowledge-panel .quiz-result { color: var(--text) !important; }
.home-page .knowledge-panel .fact-list strong,
.home-page :is(.atlas, .articles, .sources, .materials-copy) .overline,
.home-page .materials-details > div > span { color: #ff5965; }
.home-page .feedback .overline { color: #ff5965; }
.home-page .feedback-grid > div > p { color: var(--muted); }
.home-page .feedback-form label { color: var(--text); }
.home-page .feedback-form :is(input, textarea) { color: var(--text); background: #060607; border: 1px solid #ffffff30; box-shadow: none; }
.home-page .feedback-form :is(input, textarea)::placeholder { color: #a6a09b; }
.home-page .feedback-form button { color: #fff; background: #bc111c; }
.home-page .feedback-form button:hover { background: #da1723; }
.home-page .feedback-form .feedback-message[data-type="error"] { color: #ff7b84; }
.home-page .feedback-form .feedback-message[data-type="success"] { color: #b7e6c4; }
.home-page .online-quiz-cta { background: linear-gradient(120deg, #ffffff05, transparent), #14090b; border-color: #6c242c; box-shadow: inset 0 1px 0 #ffffff12; }
.home-page .materials-preview figcaption { color: var(--muted); }
.home-page .materials-preview > a { background: transparent; }
.home-page .article-preview-copy { background: transparent; }
.home-page .statement-visual {
  min-height: 380px; aspect-ratio: 1; overflow: hidden;
  border: 1px solid #ffffff18; border-radius: 42px;
  background: radial-gradient(ellipse at center, #72081426, transparent 70%), #080809;
  box-shadow: inset 0 1px 0 #ffffff0a;
}
.home-page .statement-visual img { width: auto; height: 330px; max-width: 80%; object-fit: contain; filter: brightness(0) invert(1); opacity: 0.72; }
.home-page .statement::before { display: none; }
.home-page .learn::after,
.home-page .events::after {
  position: absolute; right: 4%; top: 18px; width: min(440px, 48%); height: 86px;
  content: ""; background: #e62936; opacity: 0.22; z-index: 0;
  mask: none;
  pointer-events: none;
}
.home-page .feedback::before {
  position: absolute; left: 22px; bottom: 40px; width: 65px; height: 335px;
  content: ""; z-index: 0; background: #e62936; opacity: 0.14;
  mask: none;
  pointer-events: none;
}
.home-page .feedback > .section-shell { position: relative; z-index: 1; }
.home-page .event-photo figcaption,
.home-page .event-gallery-youth figcaption {
  left: 26px; right: 26px; bottom: 24px;
  padding: 0; border: 0; border-radius: 0;
  color: #fff; background: transparent; box-shadow: none;
  backdrop-filter: none; text-shadow: 0 1px 8px #000b;
}
.home-page .site-header { border-radius: 44px; }
.home-page .hero { background: #030303; }
.home-page .hero-art img { height: auto; animation: none; }
.home-page .hero-art { transform: none; will-change: auto; }
.home-page :is(.atlas, .articles, .knowledge-panel, .feedback-form, .sources, .project-materials) :is(a, button, input, textarea):focus-visible { outline-color: #ff7882; }
@media (max-width: 760px) {
  .home-page .site-header {
    border-radius: 36px;
    box-shadow: inset 0 1px 0 #ffffff17;
    background: #0b0b0bf5;
    backdrop-filter: none;
    filter: none;
  }
  .home-page .site-header::before,
  .home-page .site-header::after { display: none; }
  .home-page .statement-visual { min-height: 320px; }
  .home-page .statement-visual img { height: 275px; }
  .home-page .learn::after,
  .home-page .events::after { width: 56%; height: 52px; opacity: 0.16; }
  .home-page .feedback::before { display: none; }
  .home-page .event-photo figcaption,
  .home-page .event-gallery-youth figcaption { left: 20px; right: 20px; bottom: 20px; padding: 0; background: transparent; border: 0; box-shadow: none; }
}

/* Text-only mission, full-width divider and concise first acquaintance. */
.home-page .statement-grid { display: block; }
.home-page .statement-copy { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 24px 72px; align-items: start; }
.home-page .statement-copy .overline { grid-column: 1 / -1; margin: 0; }
.home-page .statement-copy h2 { grid-column: 1; grid-row: 2 / 4; max-width: 650px; }
.home-page .statement-copy p:not(.overline) { grid-column: 2; margin: 0; padding: 0; border: 0; }
.home-page .statement::before,
.home-page .learn::after,
.home-page .events::after,
.home-page .feedback::before { display: none; }
.home-page .culture-divider { width: 100%; margin: 0; overflow: clip; background: #000; }
.home-page .culture-divider img { display: block; width: 100%; height: clamp(210px, 35vw, 580px); object-fit: cover; object-position: center; }
.home-page .learn-grid { gap: 48px; }
.home-page .learn-aside h2 { font-size: clamp(36px, 4vw, 56px); }
.home-page .people-select-label { display: block; margin: 32px 0 12px; color: var(--text); font-size: 16px; font-weight: 700; }
.home-page .people-select { display: block; width: 100%; max-width: 480px; min-width: 0; min-height: 58px; padding: 14px 18px; color: var(--text); color-scheme: dark; background: #151516; border: 1px solid #ffffff40; border-radius: 18px; font: 18px/1.4 Arial, sans-serif; }
.home-page .learn-aside .learn-hint { font-size: 14px; color: var(--muted); max-width: 420px; }
.home-page .knowledge-panel .knowledge-step { margin: 0 0 18px; color: #ff6470; font-size: 12px; font-weight: 700; letter-spacing: .05em; }
.home-page .knowledge-panel .quiz-block .knowledge-step { margin-bottom: 12px; }
.home-page .materials-grid { grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr); }
.home-page .materials-grid > *,
.home-page .materials-details > div,
.home-page .materials-details > div > div { min-width: 0; max-width: 100%; }
.home-page .materials-details > div { grid-template-columns: 28px minmax(0, 1fr); }
.home-page .materials-copy { overflow-wrap: anywhere; }
.home-page .materials-copy h2 { overflow-wrap: normal; }
.home-page .materials-actions > a { min-width: 0; max-width: 100%; white-space: normal; }
.home-page .materials-primary { gap: 14px; padding: 14px 20px; line-height: 1.4; text-align: center; }
.home-page .materials-contact { display: block; line-height: 1.6; }
.home-page .materials-preview { width: 100%; max-width: 100%; }
@media (max-width: 1000px) {
  .home-page .materials-grid { grid-template-columns: minmax(0, 1fr); }
  .home-page .materials-preview { max-width: 620px; }
}
@media (max-width: 760px) {
  .home-page .statement-copy { display: block; }
  .home-page .statement-copy h2 { margin: 18px 0 26px; }
  .home-page .statement-copy p:not(.overline) { margin-top: 18px; }
  .home-page .culture-divider img { height: clamp(170px, 43vw, 310px); }
  .home-page .materials-copy h2 { font-size: clamp(28px, 7.8vw, 42px); line-height: 1.12; letter-spacing: -.035em; text-wrap: initial; }
  .home-page .materials-copy h2 br { display: none; }
  .home-page .materials-copy > .materials-lead { font-size: 19px; }
  .home-page .materials-actions { display: grid; grid-template-columns: minmax(0, 1fr); gap: 18px; }
  .home-page .materials-primary { width: 100%; }
  .home-page .materials-preview { margin-inline: 0; }
  .home-page .materials-preview figcaption { display: grid; grid-template-columns: minmax(0, 1fr); overflow-wrap: anywhere; }
}

/* Photographic cover and expandable event reports. */
.home-page .hero {
  min-height: 100svh; padding-top: 150px; padding-bottom: 80px;
  background: linear-gradient(90deg, #0008, #0001 70%), url("assets/hero-landscape.png") center / cover no-repeat, #030303;
}
.home-page .hero::before { display: none; }
.home-page .hero-copy { position: relative; z-index: 1; width: min(760px, 100%); }
.home-page .hero-links { gap: 14px; align-items: center; }
.home-page .hero-links .button-primary { color: #fff; background: #d01521; border: 1px solid #ff6370; box-shadow: inset 0 1px 0 #ffffff40, 0 8px 28px #d0152130; min-height: 54px; padding-inline: 26px; border-radius: 999px; }
.home-page .hero-links .button-primary:hover { background: #ed2030; }
.home-page .hero-links .button-article { color: #fff; background: #ffffff0b; border: 1px solid #ffffff50; box-shadow: none; }
.home-page .hero-links .button-article:hover { background: #ffffff18; }
.home-page .online-quiz-cta { background: linear-gradient(120deg, #d9232d, #9b0a14); color: #fff; border-color: #ef5963; }
.home-page .culture-divider { background: #030303; }
.home-page .culture-divider img { width: 100%; height: auto; max-height: none; object-fit: contain; }
.home-page .event-card { margin-top: 28px; overflow: clip; color: var(--text); background: #0c0c0d; border: 1px solid #ffffff26; border-radius: 36px; scroll-margin-top: 115px; }
.home-page .event-cover { position: relative; display: flex; align-items: flex-end; min-height: 600px; padding: 48px; cursor: pointer; isolation: isolate; list-style: none; overflow: hidden; }
.home-page .event-cover::-webkit-details-marker { display: none; }
.home-page .event-cover > img { position: absolute; inset: 0; z-index: 0; display: block; width: 100%; height: 100%; object-fit: cover; object-position: center 58%; }
.home-page .event-card:nth-of-type(2) .event-cover > img { object-position: center 30%; }
.home-page .event-cover::after { position: absolute; inset: 0; z-index: 1; pointer-events: none; content: ""; background: linear-gradient(180deg, #0001 20%, #0007 55%, #000e); }
.home-page .event-cover-copy { position: relative; z-index: 2; max-width: 840px; }
.home-page .event-cover-date { display: flex; flex-wrap: wrap; gap: 12px 24px; margin: 0 0 20px; color: #fff; font-size: 12px; line-height: 1.5; letter-spacing: .06em; text-transform: uppercase; }
.home-page .event-cover h3 { margin: 0; font-size: clamp(34px, 4vw, 58px); line-height: 1.08; letter-spacing: -.035em; text-wrap: balance; }
.home-page .event-cover-lead { margin: 20px 0 0; color: #e4dfd9; font-size: 18px; line-height: 1.6; }
.home-page .event-expand { display: inline-flex; align-items: center; gap: 24px; min-height: 50px; margin-top: 26px; padding: 0 24px; border: 1px solid #ffffff65; border-radius: 999px; background: #ffffff12; color: #fff; font-size: 15px; font-weight: 700; }
.home-page .event-cover:hover .event-expand { background: #bf1320; border-color: #ee5e68; }
.home-page .event-card .when-open { display: none; }
.home-page .event-card[open] .when-open { display: inline; }
.home-page .event-card[open] .when-closed { display: none; }
.home-page .event-expanded { padding: 40px; }
.home-page .event-expanded-intro { max-width: 840px; }
.home-page .event-expanded-intro > p:not(.overline) { margin: 0; color: var(--muted); font-size: 18px; line-height: 1.7; }
.home-page .event-expanded .event-program { margin: 32px 0; grid-template-columns: repeat(2, minmax(0, 1fr)); }
.home-page .event-expanded .event-gallery,
.home-page .event-expanded .event-gallery-youth { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); grid-template-rows: auto; gap: 20px; margin: 0; }
.home-page .event-expanded .event-gallery .event-photo { grid-column: auto; grid-row: auto; aspect-ratio: 1.35; }
.home-page .event-close { display: block; min-height: 48px; margin: 28px auto 0; padding: 12px 22px; border-radius: 999px; border: 1px solid #ffffff35; background: #ffffff08; color: var(--text); font: inherit; cursor: pointer; }
.home-page .event-cover:focus-visible,
.home-page .footer-disclosure > summary:focus-visible { outline: 2px solid #ff7882; outline-offset: -6px; }
.home-page main > .feedback,
.home-page main > .sources { padding: 12px clamp(20px, 4vw, 64px); }
.home-page .footer-disclosure { max-width: 1360px; margin-inline: auto; border: 1px solid #ffffff25; border-radius: 26px; background: #0b0b0c; overflow: clip; }
.home-page .footer-disclosure > summary { display: flex; justify-content: space-between; align-items: center; gap: 20px; padding: 26px 32px; cursor: pointer; list-style: none; font-size: 22px; font-weight: 600; }
.home-page .footer-disclosure > summary::-webkit-details-marker { display: none; }
.home-page .disclosure-plus { color: #ff5965; font-size: 28px; font-weight: 400; }
.home-page .footer-disclosure[open] .disclosure-plus { transform: rotate(45deg); }
.home-page .footer-disclosure-content { padding: 10px 32px 32px; }
.home-page .footer-disclosure-content .section-shell { width: 100%; }
.home-page .footer-disclosure-content .sources-layout { grid-template-columns: .8fr 1.2fr; }
.home-page .partners { padding-top: 70px; padding-bottom: 70px; }
.home-page .partners h2 { margin: 0; font-size: clamp(32px, 3.6vw, 50px); line-height: 1.1; letter-spacing: -.035em; }
.home-page .partners-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 32px; margin-top: 42px; }
.home-page .partner { display: grid; grid-template-columns: 74px minmax(0, 1fr); align-items: start; gap: 20px; }
.home-page .partner img { display: block; width: 74px; height: 74px; object-fit: contain; filter: invert(1); }
.home-page .partner h3 { margin: 0; font-size: 17px; line-height: 1.4; font-weight: 600; }
.home-page .partner p { margin: 12px 0 0; color: var(--muted); font-size: 14px; line-height: 1.55; }
@media (max-width: 1000px) {
  .home-page .partners-grid { grid-template-columns: 1fr; gap: 28px; }
  .home-page .partner { grid-template-columns: 70px minmax(0, 1fr); }
}
@media (max-width: 760px) {
  .home-page .hero { padding-top: 134px; background-position: 63% center; }
  .home-page .hero-copy { align-self: center; padding-bottom: 0; }
  .home-page .hero-copy p:not(.overline) { max-width: 100%; }
  .home-page .hero-links { display: grid; grid-template-columns: 1fr; }
  .home-page .culture-divider { height: clamp(200px, 54vw, 320px); }
  .home-page .culture-divider img { width: 160%; max-width: none; height: 100%; margin-left: -30%; object-fit: cover; }
  .home-page .event-card { border-radius: 28px; }
  .home-page .event-cover { min-height: 490px; padding: 28px 22px; }
  .home-page .event-cover h3 { font-size: clamp(30px, 8vw, 42px); }
  .home-page .event-cover-lead { font-size: 16px; }
  .home-page .event-expanded { padding: 24px 18px; }
  .home-page .event-expanded .event-program,
  .home-page .event-expanded .event-gallery { grid-template-columns: minmax(0, 1fr); }
  .home-page .event-expanded .event-gallery .event-photo { aspect-ratio: 1.1; }
  .home-page .footer-disclosure > summary { padding: 22px; font-size: 19px; }
  .home-page .footer-disclosure-content { padding: 0 18px 22px; }
  .home-page .footer-disclosure-content .sources-layout { grid-template-columns: minmax(0, 1fr); }
  .home-page .footer-disclosure-content .feedback-form { padding: 20px; }
}

/* Consistent section gutters */
.home-page main > section:not(.hero):not(.feedback):not(.sources) {
  padding: clamp(72px, 8vw, 128px) clamp(20px, 4vw, 64px);
  scroll-margin-top: 110px;
}
.home-page .materials-copy .overline { color: #ff6470; }
.home-page .materials-copy h2 { max-width: 100%; }
@media (max-width: 760px) {
  .home-page main > section:not(.hero):not(.feedback):not(.sources) { padding: 68px 20px; scroll-margin-top: 100px; }
}

/* A single learning card, with the full quiz directly below the atlas. */
.home-page .learn-card {
  padding: clamp(24px, 4vw, 52px); gap: 40px;
  border: 1px solid #ffffff26; border-radius: 36px;
  background: linear-gradient(130deg, #ffffff04, transparent 60%), #0c0c0d;
  box-shadow: inset 0 1px 0 #ffffff0c;
}
.home-page .learn-card .knowledge-panel {
  padding: 0 0 0 40px; border: 0; border-left: 1px solid #ffffff20;
  border-radius: 0; background: none; box-shadow: none; backdrop-filter: none;
}
.home-page .atlas-quiz-cta {
  display: flex; align-items: center; justify-content: flex-start; gap: 20px;
  margin-top: 36px; padding: 24px 30px; border-radius: 28px;
}
.home-page .atlas-quiz-cta span { font-size: clamp(22px, 2.4vw, 32px); line-height: 1.2; }
.home-page .atlas-quiz-cta strong { font-size: 16px; line-height: 1.4; font-weight: 400; }
.home-page .atlas-quiz-cta::after { position: static; margin-left: auto; font-size: 30px; }
@media (max-width: 1000px) {
  .home-page .learn-card { grid-template-columns: minmax(0, 1fr); }
  .home-page .learn-card .knowledge-panel { border-left: 0; border-top: 1px solid #ffffff20; padding: 30px 0 0; }
}
@media (max-width: 760px) {
  .home-page .learn-card { padding: 26px 20px; border-radius: 28px; gap: 28px; }
  .home-page .learn-card .learn-aside h2 { font-size: 30px; }
  .home-page .atlas-quiz-cta { display: grid; grid-template-columns: 1fr auto; gap: 8px 16px; padding: 24px; }
  .home-page .atlas-quiz-cta strong { grid-column: 1; font-size: 14px; }
  .home-page .atlas-quiz-cta::after { grid-column: 2; grid-row: 1 / 3; }
}

.home-page .hero-links .button { border-radius: 999px; min-height: 54px; padding-inline: 26px; }
.home-page .hero-portrait { display: none; }
@media (min-width: 1024px) {
  .home-page .hero { overflow: clip; padding-inline: max(64px, calc((100vw - 1280px) / 2)); }
  .home-page .hero-copy { width: 52%; max-width: 680px; margin-left: clamp(0px, 3vw, 48px); }
  .home-page .hero h1 { font-size: clamp(84px, 8.4vw, 128px); }
  .home-page .hero-copy p:not(.overline) { font-size: clamp(18px, 1.65vw, 22px); }
  .home-page .hero-portrait {
    display: block; position: absolute; z-index: 0; right: max(0px, calc((100vw - 1520px) / 2)); bottom: -30px;
    width: 48%; height: calc(100% - 90px); pointer-events: none;
    transform: translate3d(0, var(--portrait-shift, 0px), 0);
    mask-image: linear-gradient(#000 78%, transparent 100%);
  }
  .home-page .hero-portrait img { display: block; width: 100%; height: 100%; object-fit: contain; object-position: bottom center; }
}

/* Project artwork on the quiz link. */
.home-page .atlas-quiz-cta,
.home-page .atlas-quiz-cta:hover,
.home-page .atlas-quiz-cta:focus-visible {
  background: linear-gradient(90deg, #000b, #0005 65%, #0003), url("assets/quiz-landscape.png") center 40% / cover no-repeat, #300609;
  color: #fff;
  border-color: #f16b735c;
  text-shadow: 0 1px 8px #0009;
}
.home-page .atlas-quiz-cta:hover,
.home-page .atlas-quiz-cta:focus-visible { border-color: #ff828b; }
@media (max-width: 760px) {
  .home-page .atlas-quiz-cta { background-position: center, center 32%; }
}

/* Arrow artwork follows the same stroke weight as navigation icons. */
.icon-arrow { display: inline-block; width: 22px; height: 22px; flex: none; vertical-align: middle; }
.home-page .online-quiz-cta::after { content: none; }
.home-page .online-quiz-cta > .icon-arrow { position: absolute; right: 28px; top: 50%; transform: translateY(-50%); width: 32px; height: 32px; }
