.home-page {
      color-scheme: dark;
      --bg: #000000;
      --surface: #0A0A0A;
      --surface-hover: #111111;
      --rule: #1A1A1A;
      --white: #F7F8FB;
      --body: #B8B9BC;
      --muted: #8F9092;
      --blue: #6E83B3;
      --font: "Helvetica Neue", Helvetica, Arial, sans-serif;
      --mono: "SFMono-Regular", Consolas, "Liberation Mono", monospace;
      --gutter: clamp(22px, 5.2vw, 88px);
      --section-space: clamp(40px, 4.3vw, 64px);
    }
.home-page *, .home-page *::before, .home-page *::after { box-sizing: border-box; }
.home-page {
      margin: 0;
      background: var(--bg);
      color: var(--white);
      font-family: var(--font);
      font-size: 17px;
      font-weight: 400;
      line-height: 1.65;
      -webkit-font-smoothing: antialiased;
      text-rendering: optimizeLegibility;
    }
.home-page ::selection { background: var(--blue); color: var(--bg); }
.home-page a { color: inherit; text-decoration-skip-ink: auto; }
.home-page a:focus-visible, .home-page [tabindex]:focus-visible {
      outline: 2px solid var(--blue);
      outline-offset: 6px;
    }
.home-page p, .home-page h1, .home-page h2, .home-page h3, .home-page ul { margin: 0; }
.home-page h1, .home-page h2, .home-page h3 { font-weight: 400; }
.home-page h2 {
      font-size: clamp(30px, 3.35vw, 46px);
      line-height: 1.12;
      letter-spacing: -.045em;
      text-wrap: balance;
    }
.home-page h3 {
      font-size: 23px;
      line-height: 1.35;
      letter-spacing: -.025em;
      text-wrap: balance;
    }
.home-page p { color: var(--body); }
.home-page svg { display: block; max-width: 100%; }
.home-page {
      width: min(100%, 1536px);
      margin-inline: auto;
      padding-inline: var(--gutter);
    }
.home-page .sr-only {
      position: absolute;
      width: 1px;
      height: 1px;
      padding: 0;
      margin: -1px;
      overflow: hidden;
      clip: rect(0, 0, 0, 0);
      white-space: nowrap;
      border: 0;
    }
.home-page .closing-motto em { font-style: normal; }
.home-page .hero {
      position: relative;
      display: grid;
      grid-template-columns: 1.16fr .84fr;
      column-gap: 14px;
      align-items: center;
      padding-block: clamp(48px, 5vw, 72px) 62px;
    }
.home-page .hero-copy { position: relative; z-index: 1; min-width: 0; }
.home-page h1 {
      margin-bottom: 29px;
      font-size: clamp(59px, 6.55vw, 101px);
      font-weight: 300;
      line-height: 1.015;
      letter-spacing: -.064em;
    }
.home-page .headline-line { display: block; }
.home-page .accent { color: var(--blue); }
.home-page .hero-definition {
      max-width: 490px;
      color: var(--white);
      font-size: 21px;
      line-height: 1.55;
      letter-spacing: -.015em;
    }
.home-page .hero-description {
      max-width: 580px;
      margin-top: 15px;
      font-size: 17px;
      line-height: 1.65;
    }
.home-page .text-link {
      min-height: 44px;
      width: fit-content;
      max-width: 100%;
      display: inline-flex;
      align-items: baseline;
      justify-content: space-between;
      gap: 24px;
      padding: 10px 0 9px;
      border-bottom: 1px solid var(--blue);
      color: var(--white);
      font-size: 16px;
      line-height: 1.5;
      text-decoration: none;
      transition: color 160ms ease, border-color 160ms ease;
    }
.home-page .text-link > span:first-child { min-width: 0; }
.home-page .link-arrow {
      flex-shrink: 0;
      color: var(--blue);
      font-size: 21px;
      font-weight: 300;
      line-height: 1;
      transition: transform 160ms ease;
    }
.home-page .text-link:hover { color: var(--blue); }
.home-page .text-link:hover .link-arrow { transform: translateX(4px); }
.home-page .hero .text-link { margin-top: 25px; }
.home-page .hero-map { min-width: 0; align-self: center; padding-top: 4px; }
.home-page .section {
      border-top: 1px solid var(--rule);
      padding-block: var(--section-space);
      scroll-margin-top: 24px;
    }
.home-page .editorial-grid {
      display: grid;
      grid-template-columns: 5fr 7fr;
      column-gap: clamp(44px, 7.2vw, 108px);
      align-items: start;
    }
.home-page .section-heading { max-width: 450px; }
.home-page .section-copy { min-width: 0; max-width: 660px; }
.home-page .section-copy > p { line-height: 1.65; }
.home-page .section-copy > .text-link { margin-top: 24px; }
.home-page .subsection { margin-top: 28px; padding-top: 25px; border-top: 1px solid var(--rule); }
.home-page .subsection h3 { margin-bottom: 13px; }
.home-page .subsection p { font-size: 17px; line-height: 1.65; }
.home-page .subsection .text-link { margin-top: 22px; }
.home-page .directory { margin-top: 52px; }
.home-page .directory-intro {
      display: flex;
      justify-content: space-between;
      align-items: baseline;
      gap: 24px;
      padding-bottom: 20px;
    }
.home-page .directory-intro h3 { font-size: 23px; }
.home-page .directory-intro p { font-size: 13px; color: var(--muted); }
.home-page .market-table {
      width: 100%;
      border-collapse: collapse;
      table-layout: fixed;
      font-size: 15.5px;
      line-height: 1.55;
    }
.home-page .market-table .country-col { width: 30%; }
.home-page .market-table .exchange-col { width: 55%; }
.home-page .market-table .currency-col { width: 15%; }
.home-page .market-table thead { border-block: 1px solid var(--rule); }
.home-page .market-table thead th {
      padding: 12px 18px;
      background: var(--surface);
      color: var(--muted);
      font-size: 13px;
      font-weight: 400;
      text-align: left;
    }
.home-page .market-table tbody tr { border-bottom: 1px solid var(--rule); }
.home-page .market-table tbody tr:hover, .home-page .market-table tbody tr:focus-within {
      background: var(--surface-hover);
    }
.home-page .market-table td, .home-page .market-table tbody th {
      padding: 11px 18px;
      font-weight: 400;
      text-align: left;
      vertical-align: middle;
      overflow-wrap: anywhere;
    }
.home-page .market-table td:first-child { padding-right: 44px; color: var(--body); }
.home-page .market-table th:first-child, .home-page .market-table td:first-child { padding-left: 16px; }
.home-page .market-table .currency, .home-page .market-table thead th:last-child {
      text-align: right;
      padding-right: 16px;
    }
.home-page .market-table .currency {
      color: var(--muted);
      font-family: var(--mono);
      font-size: 13px;
      letter-spacing: .04em;
      font-variant-numeric: tabular-nums;
      white-space: nowrap;
    }
.home-page .market-link {
      min-height: 24px;
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 16px;
      color: var(--white);
      text-decoration: none;
      text-underline-offset: 4px;
    }
.home-page .market-link:hover { color: var(--blue); }
.home-page .market-link:hover > span:first-child { text-decoration: underline; }
.home-page .market-arrow { flex-shrink: 0; font-size: 15px; color: var(--muted); }
.home-page .market-link:hover .market-arrow { color: var(--blue); }
.home-page .directory-action { display: flex; justify-content: flex-end; padding-top: 20px; }
.home-page .learning-heading { max-width: 510px; margin-bottom: 34px; }
.home-page .learning-grid { display: grid; grid-template-columns: 1fr 1fr; }
.home-page .learning-unit { padding-right: clamp(30px, 6vw, 90px); }
.home-page .learning-unit + .learning-unit {
      border-left: 1px solid var(--rule);
      padding-right: 0;
      padding-left: clamp(30px, 6vw, 90px);
    }
.home-page .learning-unit h3 { margin-bottom: 13px; font-size: 26px; }
.home-page .learning-unit p { max-width: 455px; font-size: 17px; line-height: 1.65; }
.home-page .learning-unit .text-link { margin-top: 22px; }
.home-page .closing {
      display: grid;
      grid-template-columns: 1fr auto;
      align-items: end;
      column-gap: 40px;
      border-top: 1px solid var(--rule);
      padding-block: 51px 58px;
    }
.home-page .closing-brand {
      color: var(--white);
      font-size: clamp(66px, 10vw, 146px);
      font-weight: 400;
      line-height: 1;
      letter-spacing: -.075em;
    }
.home-page .closing-motto { margin-top: 18px; color: var(--muted); font-size: 16px; letter-spacing: -.01em; }
.home-page .closing .text-link { margin-bottom: 5px; }
@media (min-width: 1500px){.home-page .hero { grid-template-columns: 1.13fr .87fr; }
.home-page .hero-map { padding-left: 22px; }
}
@media (max-width: 1100px){.home-page .hero { grid-template-columns: 1.2fr .8fr; }
.home-page h1 { font-size: clamp(61px, 6.7vw, 75px); }
.home-page .hero-description { max-width: 500px; font-size: 17px; }
.home-page .editorial-grid { grid-template-columns: 4.6fr 7.4fr; column-gap: 52px; }
.home-page .directory-intro p { max-width: 340px; text-align: right; }
.home-page .market-table { font-size: 14px; }
}
@media (max-width: 760px){.home-page { --gutter: 26px; --section-space: 43px; }
.home-page .hero { grid-template-columns: 1fr; padding-block: 39px 34px; }
.home-page h1 { font-size: clamp(57px, 10.5vw, 78px); line-height: 1.01; margin-bottom: 25px; }
.home-page .hero-definition { max-width: 455px; font-size: 20px; }
.home-page .hero-description { max-width: 560px; font-size: 16px; }
.home-page .hero .text-link { margin-top: 21px; }
.home-page .hero-map { width: min(80%, 370px); justify-self: end; margin-top: 10px; padding-top: 0; }
.home-page .editorial-grid { grid-template-columns: 1fr; gap: 22px; }
.home-page h2 { font-size: clamp(30px, 6vw, 40px); max-width: 500px; }
.home-page h3 { font-size: 22px; }
.home-page .section-copy { max-width: none; }
.home-page .section-copy > p { font-size: 16px; line-height: 1.65; }
.home-page .section-copy > .text-link { margin-top: 19px; }
.home-page .directory { margin-top: 34px; }
.home-page .directory-intro { display: block; padding-bottom: 18px; }
.home-page .directory-intro h3 { font-size: 21px; }
.home-page .directory-intro p { max-width: 420px; margin-top: 9px; text-align: left; font-size: 12px; }
.home-page .market-table .country-col { width: 37%; }
.home-page .market-table .exchange-col { width: 47%; }
.home-page .market-table .currency-col { width: 16%; }
.home-page .market-table { font-size: 14px; line-height: 1.55; }
.home-page .market-table thead th { font-size: 12px; padding: 11px 8px; }
.home-page .market-table td, .home-page .market-table tbody th { padding: 12px 8px; }
.home-page .market-table th:first-child, .home-page .market-table td:first-child { padding-left: 0; }
.home-page .market-table td:first-child { padding-right: 14px; }
.home-page .market-table .currency, .home-page .market-table thead th:last-child { padding-right: 0; }
.home-page .market-table .currency { font-size: 12px; letter-spacing: 0; }
.home-page .market-link { gap: 8px; }
.home-page .market-arrow { font-size: 12px; }
.home-page .directory-action { justify-content: flex-start; padding-top: 19px; }
.home-page .text-link { font-size: 15px; gap: 21px; }
.home-page .subsection { margin-top: 22px; padding-top: 21px; }
.home-page .subsection h3 { max-width: 460px; }
.home-page .subsection .text-link { margin-top: 17px; }
.home-page .learning-heading { margin-bottom: 27px; }
.home-page .learning-unit { padding-right: 27px; }
.home-page .learning-unit + .learning-unit { padding-left: 27px; }
.home-page .learning-unit h3 { font-size: 22px; }
.home-page .learning-unit .text-link { margin-top: 17px; }
.home-page .closing { grid-template-columns: 1fr; gap: 27px; padding-block: 36px 42px; }
.home-page .closing-brand { font-size: clamp(70px, 16vw, 113px); }
.home-page .closing-motto { font-size: 15px; margin-top: 12px; }
}
@media (max-width: 480px){.home-page { --gutter: 22px; }
.home-page .hero-map { width: 84%; max-width: 316px; margin-top: 16px; }
.home-page h1 { font-size: clamp(50px, 12.8vw, 62px); }
.home-page .hero-definition { font-size: 20px; }
.home-page .hero-description { font-size: 16px; line-height: 1.65; }
.home-page .market-arrow { display: none; }
.home-page .market-link { display: block; }
.home-page .market-table thead th { font-size: 12px; }
.home-page .learning-grid { grid-template-columns: 1fr; }
.home-page .learning-unit { padding-right: 0; }
.home-page .learning-unit + .learning-unit { margin-top: 27px; padding: 26px 0 0; border-left: 0; border-top: 1px solid var(--rule); }
}
@media (max-width: 360px){.home-page { --gutter: 18px; }
.home-page .hero-definition { font-size: 20px; }
.home-page .market-table { font-size: 14px; }
.home-page .market-table .country-col { width: 36%; }
.home-page .market-table .exchange-col { width: 46%; }
.home-page .market-table .currency-col { width: 18%; }
.home-page .market-table thead th { padding-inline: 5px; }
.home-page .market-table td, .home-page .market-table tbody th { padding-inline: 5px; }
.home-page .market-table td:first-child { padding-right: 10px; }
.home-page .text-link { gap: 15px; }
}
@media (prefers-reduced-motion: reduce){.home-page *, .home-page *::before, .home-page *::after { transition: none !important; }
}
@media (forced-colors: active){.home-page .text-link, .home-page .market-table tr, .home-page .section, .home-page .closing { border-color: CanvasText; }
.home-page .hero-map { display: none; }
}
@media print{.home-page { background: #F7F8FB; color: #000000; font-size: 17px; }
.home-page { --bg: #F7F8FB; --surface: #F7F8FB; --white: #000000; --body: #1A1A1A; --muted: #1A1A1A; --rule: #8F9092; --gutter: 0px; }
.home-page .hero-map { display: none; }
.home-page { width: 100%; }
.home-page .hero { display: block; padding-block: 30px; }
.home-page h1 { font-size: 38pt; }
.home-page h2 { font-size: 24pt; }
.home-page .section { padding-block: 26px; }
.home-page .editorial-grid { display: block; }
.home-page .section-heading { margin-bottom: 16px; }
.home-page .directory { margin-top: 26px; }
.home-page .market-table { font-size: 14px; }
.home-page .market-table thead { display: table-header-group; }
.home-page .market-table tr { break-inside: avoid; }
.home-page .market-table td, .home-page .market-table tbody th { padding-block: 7px; }
.home-page .text-link { color: #000000; }
.home-page .closing-brand { font-size: 50pt; }
.home-page .closing { padding-block: 26px; }
}

.home-page { width: min(100%, 1536px); margin-inline: auto; padding-inline: var(--gutter); }
.home-page .hero-map { position: relative; aspect-ratio: 1; }
.home-page .afex-map-host, .home-page .afex-map-host svg { width: 100%; height: 100%; }
@media(max-width:760px) { .home-page .hero-map { width:min(80%,340px); justify-self:center; margin:20px auto 0; } }
@media(max-width:480px) { .home-page .hero-map { width:84%; max-width:300px; } }

/* Exchange navigation shares the existing landing ticker controller. */
.home-page .rf-exchange-strip {
  overflow-x: auto;
  overflow-y: hidden;
  max-width: none;
  margin: 0 0 40px;
  padding: 0;
  scrollbar-width: none;
}
.home-page .rf-exchange-strip::-webkit-scrollbar { display: none; }
.home-page .rf-exchange-track {
  display: flex;
  width: max-content;
  min-width: max-content;
  animation: none;
  padding: 0;
  gap: 0;
}
.home-page .rf-exchange {
  display: flex;
  flex: 0 0 auto;
  flex-direction: column;
  justify-content: center;
  gap: 5px;
  width: clamp(220px, 16.7vw, 310px);
  min-height: 82px;
  padding: 12px 26px;
  border-right: 1px solid var(--rule);
  color: var(--muted);
  text-decoration: none;
}
.home-page .rf-exchange strong { font-size: 16px; letter-spacing: .08em; }
.home-page .rf-exchange span {
  width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  text-align: center;
  font-size: 13px;
}
.home-page .rf-exchange:hover, .home-page .rf-exchange:focus-visible { color: var(--white); opacity: 1; }
.home-page .home-exchanges .directory { margin-top: 0; }

.home-page .currency-note { font-size:12px; color:var(--muted); margin-top:12px; }
.home-page .market-table .currency { white-space:normal; }

@media screen and (max-width:760px) { .home-page .subsection p, .home-page .learning-unit p { font-size:16px; } }

.home-page .market-link > span:first-child { min-width:0; overflow-wrap:anywhere; }

/* Stack exchange details only on small screens. */
@media screen and (max-width: 760px) {
.home-page .market-table { display:block; table-layout:auto; }
.home-page .market-table colgroup { display:none; }
.home-page .market-table thead {
  position:absolute; width:1px; height:1px; padding:0; margin:-1px;
  overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0;
}
.home-page .market-table tbody { display:block; width:100%; }
.home-page .market-table tbody tr {
  display:grid; grid-template-columns:minmax(0,1fr); gap:5px;
  padding:18px 0; border-bottom:1px solid currentColor;
  border-bottom-color:var(--rule);
}
.home-page .market-table tbody th {
  grid-row:1; padding:0; font-size:17px; line-height:1.45;
}
.home-page .market-table tbody td:first-child {
  grid-row:2; padding:0; font-size:14px; line-height:1.6;
}
.home-page .market-table tbody .currency {
  grid-row:3; padding:0; text-align:left; font-size:13px;
}
.home-page .market-link { justify-content:flex-start; gap:12px; }
}

.home-page .market-directory > summary {
  cursor: pointer;
  list-style: none;
  align-items: center;
}
.home-page .market-directory > summary::-webkit-details-marker { display: none; }
.home-page .market-directory > summary::after {
  content: '+';
  flex: 0 0 auto;
  font-size: 23px;
  color: var(--muted);
}
.home-page .market-directory[open] > summary::after { content: '−'; }
.home-page .market-directory > summary:focus-visible {
  outline: 2px solid currentColor;
  outline-offset: 4px;
}
