/* Review version: bounded layouts and shared bilingual interaction rules. */
.overline,.block-head > .overline,.hero .overline,.golden-head .overline { font-size: 16px; font-weight: 900; line-height: 1.8; }
.about-strip .intro-stat::before { display: none; }
.about-strip .intro-stat { align-items: center; text-align: center; padding-top: 24px; }
.about-strip .intro-stat > small,.about-strip .intro-stat > span,.about-strip .intro-stat > b { text-align: center; text-align-last: auto; }
.about-strip .intro-stat > small { font-size: 14px; }
.about-strip .intro-stat .intro-stat-note { font-size: 12px; width: 100%; }
.intro-year-track { width: 100%; direction: rtl; }
html[lang="en"] .intro-year-track { direction: ltr; }
.intro-year-track i { font-size: 12px; }
.intro-kpi-main { display: flex; flex-wrap: wrap; justify-content: center; align-items: baseline; gap: 4px 10px; width: 100%; margin-block: 8px; }
.intro-kpi-main > span { color: var(--wine); font-size: 16px; font-weight: 700; line-height: 1.7; }
.intro-kpi-main .intro-kpi-number { margin: 0 !important; }
.intro-topics { display: grid; gap: 15px; padding: 0; margin: 22px 0; list-style: none; }
.intro-topics li { padding-inline-start: 16px; border-inline-start: 2px solid var(--gold); font-size: 15px; line-height: 2; }
.st-body .fact-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 24px 32px; margin-top: 0; }
.st-body .fact-grid article { min-width: 0; }
.carousel-arrow svg { width: 100%; height: 100%; stroke: currentColor; stroke-width: 2; fill: none; stroke-linecap: round; stroke-linejoin: round; }
.rail-node { text-decoration: none; }
.rail-story .story-node::before,.rail-story .story-node:hover::before { transform: none; display: none; }
.rail-story .story-node { transition: none; }
.page-home .findings,.page-home .profile { gap: 28px 48px; }
.page-home .findings > .block-head,.page-home .profile > .block-head { margin-bottom: 64px; }
.page-home .find-grid[data-carousel],.page-home .prof-grid[data-carousel] { display: grid; grid-template-columns: minmax(0,1fr); }
.page-home [data-carousel] > .find,.page-home [data-carousel] > .prof { grid-area: 1 / 1; visibility: hidden; pointer-events: none; height: 100%; }
.page-home [data-carousel] > .find:not(.is-active),.page-home [data-carousel] > .prof:not(.is-active) { display: flex !important; }
.page-home [data-carousel] > .is-active { visibility: visible; pointer-events: auto; }
.page-home .find-grid .find { padding: 24px; gap: 12px; }
.page-home .find-grid .find-question { font-size: 17px; line-height: 1.8; font-weight: 700; }
.page-home .find-grid .find-question { text-align: start; text-align-last: auto; }
.page-home .find-grid .find-explanation { font-size: 14px; line-height: 1.9; }
.page-home .find-grid .find-comparison { padding: 16px 12px; gap: 10px; align-items: start; }
.find-comparison > div { display: flex; flex-direction: column; align-items: center; text-align: center; min-width: 0; }
.find-answer { font-size: 12px; line-height: 1.8; max-width: 24ch; margin-top: 8px; color: #ffffffba; font-weight: 400; }
.find-connector { align-self: center; }
.page-home .find-grid .find-trend { margin-top: auto; }
.page-home .find-grid .find footer { justify-content: flex-end; }
.page-home .prof-grid .prof { padding: 24px; }
.page-home .prof-grid .prof h3 { font-size: 20px; line-height: 1.8; min-height: 36px; }
.page-home .prof-grid .stack { flex: 1; display: grid; align-content: center; gap: 18px; min-height: 282px; }
.page-home .prof-grid .prof-note { font-size: 12px; line-height: 1.9; }
.page-home .carousel-controls { display: flex; justify-content: center; gap: 12px; direction: ltr; margin-top: 18px; }
.carousel-controls .carousel-arrow { width: 44px; height: 44px; padding: 12px; border-radius: 50%; border: 1px solid #d6c6b4; color: var(--wine); background: transparent; cursor: pointer; }
.findings .carousel-controls .carousel-arrow { color: var(--gold); border-color: #f6b73c66; }
.carousel-controls .carousel-arrow:hover { background: var(--wine); border-color: var(--wine); color: #fff; }
.findings .carousel-controls .carousel-arrow:hover { color: var(--wine); background: var(--gold); border-color: var(--gold); }
.carousel-panel { position: relative; }
.prof-seg { cursor: default; }
.profile-tooltip { position: absolute; z-index: 15; width: max-content; max-width: calc(100% - 16px); padding: 9px 13px; border-radius: 9px; color: #fff; background: var(--wine); box-shadow: 0 5px 16px #0002; font-size: 13px; line-height: 1.7; pointer-events: none; }
.research-section-head { align-items: flex-end; gap: 24px; }
.research-section-head h2 { font-size: clamp(22px,2vw,30px); }
.research-section-head > p { max-width: none; white-space: nowrap; font-size: 13px; }
/* Row subgrids align each preview heading, even when summaries wrap differently. */
.research-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
.research-card { display: grid; grid-row: span 5; grid-template-rows: subgrid; row-gap: 16px; }
.research-card-top,.research-card h3,.research-card-summary,.research-question-preview,.research-card-foot { margin: 0; min-height: 0; }
.research-question-preview { padding-top: 16px; }
.opt-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
.opt { align-items: center; text-align: center; }
.opt-label { width: 100%; text-align: center; text-align-last: auto; }
.opt-num { justify-content: center; flex-wrap: wrap; }
.opt-delta { align-self: center; }
.ln-val { paint-order: stroke; stroke: #fff; stroke-width: 4px; stroke-linejoin: round; }
.ln-label-link { stroke-width: 1; opacity: .4; }
/* Container owns its margin; the page gutter must not be counted twice. */
.annual-wrap { width: calc(100% - 48px); max-width: 1320px; margin-inline: auto; padding: 64px 0; }
.annual-kpis { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 20px; }
.annual-kpi { padding: 28px; }
.annual-kpi h3 { font-size: 19px; }
.annual-kpi > p { font-size: 14px; }
.annual-kpi-top { font-size: 13px; }
.annual-kpi footer small,.annual-kpi footer a { font-size: 12px; }
@media (max-width:1100px) {
  .research-section-head { flex-wrap: wrap; }
  .page-home .findings,.page-home .profile { gap: 24px; }
  .annual-kpis { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width:900px) {
  .page-home .findings > .block-head,.page-home .profile > .block-head { margin-bottom: 0; }
}
@media (max-width:760px) {
  .research-grid,.opt-grid,.annual-kpis,.st-body .fact-grid { grid-template-columns: 1fr; }
  .research-card { grid-row: auto; grid-template-rows: auto; }
  .research-section-head > p { white-space: normal; }
  .annual-wrap { width: calc(100% - 32px); padding-block: 40px; }
  .annual-kpi { padding: 24px; }
  .page-home .find-grid .find,.page-home .prof-grid .prof { padding: 20px; }
  .page-home .find-grid .find-question { font-size: 16px; }
  .page-home .find-grid .find-explanation { font-size: 13px; }
  .page-home .prof-grid .stack { min-height: 285px; gap: 15px; }
  .overline,.block-head > .overline,.hero .overline,.golden-head .overline { font-size: 15px; }
  .intro-topics li { font-size: 14px; }
}
@media (max-width:480px) {
  .find-answer { font-size: 11px; }
  .about-strip .intro-stat > small { font-size: 12px; }
  .about-strip .intro-stat .intro-stat-note { font-size: 11px; }
}

/* Minimal home KPIs: a readable label and one primary value. */
.about-strip .intro-stat { min-height: 180px; padding: 28px 22px; justify-content: center; gap: 16px; }
.about-strip .intro-stat > .intro-kpi-label { font-size: clamp(16px,1.5vw,20px); line-height: 1.65; font-weight: 700; color: var(--wine); }
.about-strip .intro-people > .intro-kpi-label { color: #fff; }
.about-strip .intro-stat .intro-kpi-number { margin: 0; font-size: clamp(42px,4.2vw,62px); }
.about-strip .intro-kpi-number em { font-size: 20px; }
@media(max-width:600px) {
  .about-strip .intro-stat { min-height: 158px; padding: 22px 14px; gap: 12px; }
  .about-strip .intro-stat > .intro-kpi-label { font-size: 16px; }
  .about-strip .intro-stat .intro-kpi-number { font-size: 40px; }
  .about-strip .intro-kpi-number em { font-size: 18px; }
}
/* Actions start at the reading edge; the logo sits at the opposite edge. */
.masthead > .header-actions { margin-inline-start: 0; }
.masthead > .brand { margin-inline-start: auto; }
