/* Homepage review: readable type and touch controls without changing other pages.
   Load after the shared compact typography and responsive component rules. */
@media (max-width: 1024px) {
  body.home-page {
    --s2e-body: 18px;
    --s2e-label: 16px;
    --s2e-caption: 13px;
    --s2e-button-height: 48px;
    --s2e-button-text: 16px;
    --s2e-button-padding: 18px;
  }
  .home-page .shell { width: calc(100% - 40px); max-width: 720px; }
  .home-page .standard-header .standard-header-inner {
    width: calc(100% - 40px); padding-inline: 0; gap: 16px;
  }
  .home-page .standard-header .standard-logo { width: 200px; max-width: 100%; }
  .home-page .standard-header .standard-header-inner > a { min-width: 0; }
  .home-page .standard-menu {
    min-width: 64px !important; min-height: 48px !important;
    height: auto !important; padding: 10px 14px !important;
    font-size: 16px !important; line-height: 24px !important;
  }
  .home-page .hero {
    display: grid; min-height: 0; align-items: stretch;
    overflow: visible; background: #071a2e;
  }
  .home-page .hero > img {
    position: static; order: 2; display: block; width: 100%;
    height: 360px; object-fit: cover; object-position: 68% 45%;
  }
  .home-page .hero-shade { display: none; }
  .home-page .hero-content { order: 1; padding-block: 48px 40px; }
  body.home-page .hero h1 {
    max-width: 22ch; margin: 0 0 24px;
    font-size: clamp(36px, 6vw, 48px) !important;
    line-height: 1.12 !important; font-weight: 600 !important;
    letter-spacing: -.035em !important;
  }
  body.home-page .hero-content > p:not(.eyebrow) {
    max-width: 58ch; color: #e0e9f0; margin-bottom: 0;
    font-size: 18px !important; line-height: 1.65 !important;
  }
  body.home-page .eyebrow {
    color: #87e9d1; font-size: 13px !important;
    line-height: 1.6 !important; letter-spacing: .1em;
    margin-bottom: 16px;
  }
  body.home-page .eyebrow.dark { color: #08745e; }
  .home-page .hero-actions {
    display: grid; grid-template-columns: repeat(3, minmax(0, 1fr));
    width: 100%; max-width: 720px; gap: 12px; margin-top: 28px;
    justify-items: stretch; align-items: stretch;
  }
  body.home-page :is(.hero-actions, .path-card) .button {
    width: 100% !important; height: auto !important; min-height: 48px !important;
    padding: 12px 18px !important; font-size: 16px !important;
    line-height: 24px !important; white-space: normal; text-align: center;
  }
  .home-page .hero-actions .glass {
    background: #18374c; color: #fff; border: 1px solid #8bafbf;
  }
  .home-page .store-downloads {
    display: flex; flex-wrap: wrap; gap: 12px; width: 100%; max-width: none;
    margin-top: 24px; padding-top: 24px; border-top: 1px solid #426074;
  }
  .home-page .store-badge { flex: 0 0 140px; width: 140px; height: 48px; }
  .home-page .store-badge img { width: 161px; max-width: none; left: -10.5px; }
  .home-page .app-store-badge img { top: -9.2px; }
  .home-page .play-store-badge img { top: -61.7px; }
  .home-page :is(.intro, .vision-inner) {
    display: grid; grid-template-columns: minmax(0, 1fr); gap: 20px;
  }
  .home-page :is(.intro, .audiences) { padding-block: 56px; }
  .home-page :is(.workflow, .vision) { padding-block: 56px; }
  body.home-page h2 {
    font-size: clamp(28px, 4vw, 34px) !important;
    line-height: 1.25 !important; margin-bottom: 18px;
  }
  body.home-page h3 { font-size: 24px !important; line-height: 1.3 !important; }
  .home-page .intro > p { color: #435767; margin: 0; }
  .home-page .steps {
    grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px;
    background: transparent; margin-top: 28px;
  }
  .home-page .steps article {
    min-height: 0; padding: 24px; background: #102c42;
    border: 1px solid #36556b; border-radius: 12px;
  }
  .home-page .steps b { font-size: 14px; }
  .home-page .steps h3 { margin: 20px 0 12px; }
  .home-page .steps p { color: #d0dde7; margin-bottom: 0; }
  .home-page .path-grid {
    grid-template-columns: minmax(0, 1fr); gap: 20px; margin-top: 28px;
  }
  .home-page .path-card { min-height: 0; padding: 28px; }
  .home-page .path-card > span { font-size: 13px; line-height: 1.6; }
  .home-page .path-card h3 { margin-top: 24px; }
  .home-page .path-card.trade p { color: #d0dde7; }
  .home-page .path-card.investor p { color: #435767; }
  .home-page .path-card p { margin-bottom: 24px; }
  .home-page .vision-inner > p { margin: 0; color: #e0edf2; }
  .home-page :is(a, button, summary):focus-visible {
    outline: 3px solid #168a73; outline-offset: 4px;
  }
  .home-page .hero :is(a, button):focus-visible {
    outline-color: #87e9d1;
  }
}
@media (max-width: 960px) {
  .home-page .standard-header .standard-nav { padding: 20px; gap: 8px; }
  .home-page .standard-header .standard-nav > a,
  body.home-page .public-nav-dropdown > summary,
  body.home-page .public-nav-dropdown-links a {
    width: 100% !important; min-height: 48px !important; height: auto !important;
    padding: 12px !important; font-size: 16px !important; line-height: 24px !important;
  }
  body.home-page .public-nav-dropdown-links { font-size: 16px !important; }
  .home-page .standard-header .standard-nav { max-height: calc(100dvh - 82px); }
}
@media (max-width: 600px) {
  .home-page .hero-content { padding-block: 36px 32px; }
  .home-page .hero > img { height: 280px; object-position: 70% 45%; }
  .home-page .hero-actions { grid-template-columns: minmax(0, 1fr); gap: 12px; }
  .home-page .steps { grid-template-columns: minmax(0, 1fr); }
  .home-page .steps article { padding: 24px; }
  .home-page .path-card { padding: 24px; }
}
@media (max-width: 640px) {
  .home-page .standard-header .standard-nav { max-height: calc(100dvh - 70px); }
}
@media (max-width: 360px) {
  .home-page .shell,
  .home-page .standard-header .standard-header-inner { width: calc(100% - 32px); }
  .home-page .standard-header .standard-logo { width: 172px; }
  body.home-page .hero h1 { font-size: 34px !important; }
}
