/* Shared desktop navigation used by the content pages. */
@media (min-width: 801px) {
  .story-nav.kinetic-nav,
  .content-kinetic-nav {
    position: relative !important;
    inset: auto !important;
    min-height: 76px;
    padding: 12px max(28px, calc((100vw - 1400px) / 2));
    border-bottom: 1px solid rgba(16, 36, 42, .12);
    background: rgba(248, 255, 252, .92);
    box-shadow: 0 8px 24px rgba(41, 117, 122, .08);
  }
  .story-nav.kinetic-nav .kinetic-logo,
  .content-kinetic-nav .kinetic-logo { color: #10242a; }
  .story-nav.kinetic-nav .kinetic-logo small,
  .content-kinetic-nav .kinetic-logo small { color: #6b8589; }
  .story-nav.kinetic-nav .kinetic-nav-links,
  .content-kinetic-nav .kinetic-nav-links { gap: 4px; }
  .story-nav.kinetic-nav .kinetic-nav-links a,
  .content-kinetic-nav .kinetic-nav-links a { color: #31545a !important; text-shadow: none; }
  .story-nav.kinetic-nav .kinetic-nav-links a:hover,
  .story-nav.kinetic-nav .kinetic-nav-links a.active,
  .content-kinetic-nav .kinetic-nav-links a:hover,
  .content-kinetic-nav .kinetic-nav-links a.active { color: #0d8589 !important; }
  .story-nav.kinetic-nav .kinetic-nav-links a.active::after,
  .content-kinetic-nav .kinetic-nav-links a.active::after { background: #0d8589; }
  .story-nav.kinetic-nav .kinetic-download-trigger,
  .content-kinetic-nav .kinetic-download-trigger { color: #10242a; background: #c9fb4c; }
}

/* Desktop nav contract baseline; final page-specific override appears at EOF. */
@media (min-width: 801px) {
  .kinetic-nav,
  .kinetic-nav * {
    box-sizing: border-box;
  }

  .kinetic-nav {
    position: relative !important;
    inset: auto !important;
    width: 100%;
    height: 76px;
    min-height: 76px;
    display: flex;
    align-items: center;
    gap: 34px;
    padding: 12px max(28px, calc((100vw - 1400px) / 2));
    border-bottom: 1px solid rgba(17, 25, 27, .16);
    background: rgba(229, 250, 247, .92);
    box-shadow: none;
    color: #10242a;
    font-family: "Kinetic OPPO", "OPPO Sans 4.0", -apple-system, BlinkMacSystemFont, "PingFang SC", sans-serif;
  }

  .kinetic-nav .kinetic-logo {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    flex: 0 0 auto;
    color: #11191b;
    line-height: normal;
  }

  .kinetic-nav .kinetic-logo img {
    width: 42px;
    height: 42px;
    border-radius: 10px;
    object-fit: contain;
  }

  .kinetic-nav .kinetic-logo span {
    color: #11191b;
    font-size: 19px;
    font-weight: 750;
    letter-spacing: .03em;
    line-height: normal;
  }

  .kinetic-nav .kinetic-logo small {
    display: block;
    margin-top: 2px;
    color: #11191b;
    font-size: 9px;
    font-weight: 750;
    letter-spacing: .16em;
    line-height: normal;
    text-transform: uppercase;
  }

  .kinetic-nav .kinetic-nav-links {
    display: flex;
    align-items: center;
    gap: 4px;
    margin-left: auto;
  }

  .kinetic-nav .kinetic-nav-links a,
  .kinetic-nav .kinetic-download-trigger {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 0;
    border-radius: 999px;
    padding: 10px 14px;
    color: #087f80 !important;
    background: transparent;
    font: inherit;
    font-size: 13px;
    font-weight: 400;
    line-height: normal;
    text-decoration: none;
    text-shadow: none;
  }

  .kinetic-nav .kinetic-nav-links a {
    position: relative;
  }

  .kinetic-nav .kinetic-nav-links a:hover,
  .kinetic-nav .kinetic-nav-links a.active,
  .kinetic-nav .kinetic-nav-links a.is-current {
    color: #087f80 !important;
    background: transparent;
  }

  .kinetic-nav .kinetic-nav-links a.active::after,
  .kinetic-nav .kinetic-nav-links a.is-current::after {
    content: "";
    position: absolute;
    right: 0;
    bottom: 5px;
    left: 0;
    height: 2px;
    background: #ff756d;
  }

  .kinetic-nav .kinetic-download-trigger {
    border: 1px solid #11191b;
    color: #11191b !important;
    background: #c9fb4c;
    font-size: 16px;
  }
}

@media (min-width: 801px) {
  .desktop-unified-footer,
  body.contact-page footer.story-footer.home-footer,
  body.partner-page footer.story-footer.home-footer,
  body.join-page-shell footer.story-footer.home-footer {
    max-width: none;
    width: 100%;
    box-sizing: border-box;
    min-height: 116px;
    padding: 20px max(24px, calc((100vw - 1280px) / 2));
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 12px;
    border-top: 1px solid rgba(16,36,42,.08);
    color: #6e8588;
    font-size: 12px;
  }
  .desktop-unified-footer .home-footer-top,
  .desktop-unified-footer .home-footer-bottom,
  body.contact-page footer.story-footer.home-footer .home-footer-top,
  body.contact-page footer.story-footer.home-footer .home-footer-bottom,
  body.partner-page footer.story-footer.home-footer .home-footer-top,
  body.partner-page footer.story-footer.home-footer .home-footer-bottom,
  body.join-page-shell footer.story-footer.home-footer .home-footer-top,
  body.join-page-shell footer.story-footer.home-footer .home-footer-bottom { width: min(1280px, 100%); margin: 0 auto; display: flex; align-items: center; justify-content: space-between; gap: 20px; }
  .desktop-unified-footer .home-footer-company,
  body.contact-page footer.story-footer.home-footer .home-footer-company,
  body.partner-page footer.story-footer.home-footer .home-footer-company,
  body.join-page-shell footer.story-footer.home-footer .home-footer-company { white-space: nowrap; }
  .desktop-unified-footer .home-footer-filings,
  body.contact-page footer.story-footer.home-footer .home-footer-filings,
  body.partner-page footer.story-footer.home-footer .home-footer-filings,
  body.join-page-shell footer.story-footer.home-footer .home-footer-filings { display: flex; align-items: center; gap: 20px; flex-wrap: wrap; }
  .desktop-unified-footer .home-footer-filings a,
  .desktop-unified-footer .home-footer-bottom nav,
  body.contact-page footer.story-footer.home-footer .home-footer-filings a,
  body.contact-page footer.story-footer.home-footer .home-footer-bottom nav,
  body.partner-page footer.story-footer.home-footer .home-footer-filings a,
  body.partner-page footer.story-footer.home-footer .home-footer-bottom nav,
  body.join-page-shell footer.story-footer.home-footer .home-footer-filings a,
  body.join-page-shell footer.story-footer.home-footer .home-footer-bottom nav { display: flex; align-items: center; gap: 7px; }
  .desktop-unified-footer .home-footer-filings a,
  body.contact-page footer.story-footer.home-footer .home-footer-filings a,
  body.partner-page footer.story-footer.home-footer .home-footer-filings a,
  body.join-page-shell footer.story-footer.home-footer .home-footer-filings a { white-space: nowrap; color: #557276; }
  .desktop-unified-footer .home-footer-filings svg,
  body.contact-page footer.story-footer.home-footer .home-footer-filings svg,
  body.partner-page footer.story-footer.home-footer .home-footer-filings svg,
  body.join-page-shell footer.story-footer.home-footer .home-footer-filings svg { width: 17px; height: 17px; fill: none; stroke: #0d9297; stroke-width: 1.5; stroke-linecap: round; stroke-linejoin: round; flex: none; }
  .desktop-unified-footer .home-filing-police-icon,
  body.contact-page footer.story-footer.home-footer .home-filing-police-icon,
  body.partner-page footer.story-footer.home-footer .home-filing-police-icon,
  body.join-page-shell footer.story-footer.home-footer .home-filing-police-icon { width: 18px; height: 18px; display: block; object-fit: contain; flex: none; }
  .desktop-unified-footer .home-footer-bottom,
  body.contact-page footer.story-footer.home-footer .home-footer-bottom,
  body.partner-page footer.story-footer.home-footer .home-footer-bottom,
  body.join-page-shell footer.story-footer.home-footer .home-footer-bottom { padding-top: 10px; border-top: 1px solid rgba(16,36,42,.06); color: #809294; }
  .desktop-unified-footer .home-footer-bottom nav,
  body.contact-page footer.story-footer.home-footer .home-footer-bottom nav,
  body.partner-page footer.story-footer.home-footer .home-footer-bottom nav,
  body.join-page-shell footer.story-footer.home-footer .home-footer-bottom nav { gap: 18px; }
  .desktop-unified-footer .home-footer-bottom nav a,
  body.contact-page footer.story-footer.home-footer .home-footer-bottom nav a,
  body.partner-page footer.story-footer.home-footer .home-footer-bottom nav a,
  body.join-page-shell footer.story-footer.home-footer .home-footer-bottom nav a { color: #557276; }
}

@media (min-width: 801px) {
  body.contact-page *, body.partner-page *, body.join-page-shell * { box-sizing: border-box; }
  body.contact-page .kinetic-nav,
  body.partner-page .kinetic-nav,
  body.join-page-shell .kinetic-nav {
    position: relative !important;
    inset: auto !important;
    min-height: 76px;
    height: 76px;
    padding: 12px max(28px, calc((100vw - 1400px) / 2));
    border-bottom: 1px solid rgba(16, 36, 42, .12);
    background: rgba(248, 255, 252, .92);
    box-shadow: 0 8px 24px rgba(41, 117, 122, .08);
  }
  body.contact-page .kinetic-nav .kinetic-logo,
  body.partner-page .kinetic-nav .kinetic-logo,
  body.join-page-shell .kinetic-nav .kinetic-logo { color: #10242a; }
  body.contact-page .kinetic-nav .kinetic-logo img,
  body.partner-page .kinetic-nav .kinetic-logo img,
  body.join-page-shell .kinetic-nav .kinetic-logo img { width: 42px; height: 42px; }
  body.contact-page .kinetic-nav .kinetic-nav-links,
  body.partner-page .kinetic-nav .kinetic-nav-links,
  body.join-page-shell .kinetic-nav .kinetic-nav-links { gap: 4px; }
  body.contact-page .kinetic-nav .kinetic-nav-links a,
  body.partner-page .kinetic-nav .kinetic-nav-links a,
  body.join-page-shell .kinetic-nav .kinetic-nav-links a { color: #31545a !important; text-shadow: none; }
  body.contact-page .kinetic-nav .kinetic-nav-links a:hover,
  body.contact-page .kinetic-nav .kinetic-nav-links a.active,
  body.partner-page .kinetic-nav .kinetic-nav-links a:hover,
  body.partner-page .kinetic-nav .kinetic-nav-links a.active,
  body.join-page-shell .kinetic-nav .kinetic-nav-links a:hover,
  body.join-page-shell .kinetic-nav .kinetic-nav-links a.active { color: #0d8589 !important; }
  body.contact-page .kinetic-nav .kinetic-nav-links a.active::after,
  body.partner-page .kinetic-nav .kinetic-nav-links a.active::after,
  body.join-page-shell .kinetic-nav .kinetic-nav-links a.active::after { background: #0d8589; }
  body.contact-page .kinetic-nav .kinetic-download-trigger,
  body.partner-page .kinetic-nav .kinetic-download-trigger,
  body.join-page-shell .kinetic-nav .kinetic-download-trigger { color: #10242a; background: #c9fb4c; }
}
@media (min-width: 801px) {
  body.contact-page > .story-nav.home-nav,
  body.partner-page > .story-nav.home-nav,
  body > .story-nav.home-nav {
    width: 100%;
    max-width: none;
    height: 80px;
    margin: 0;
    padding: 0 max(24px, calc((100vw - 1280px) / 2));
    background: #e5faf7;
    border-bottom: 1px solid #c9e7e3;
    box-sizing: border-box;
  }

  body.contact-page > .story-nav .story-logo,
  body.partner-page > .story-nav .story-logo,
  body > .story-nav .story-logo {
    gap: 10px;
    font-size: 20px;
    color: #10242a;
  }

  body.contact-page > .story-nav .story-logo img,
  body.partner-page > .story-nav .story-logo img,
  body > .story-nav .story-logo img { width: 42px; height: 42px; }

  body.contact-page > .story-nav .story-logo span::after,
  body.partner-page > .story-nav .story-logo span::after,
  body > .story-nav .story-logo span::after {
    content: "PUPU.TOP";
    display: block;
    margin-top: 2px;
    color: #6b8589;
    font-size: 9px;
    font-weight: 700;
    letter-spacing: .16em;
    line-height: 1;
  }

  body.contact-page > .story-nav .story-nav-links,
  body.partner-page > .story-nav .story-nav-links,
  body > .story-nav .story-nav-links { gap: 24px; }

  body.contact-page > .story-nav .story-nav-links a,
  body.partner-page > .story-nav .story-nav-links a,
  body > .story-nav .story-nav-links a {
    position: relative;
    padding: 8px 0 10px;
    border-radius: 0;
    color: #10242a;
    background: transparent;
    font-size: 14px;
    font-weight: 600;
  }

  body.contact-page > .story-nav .story-nav-links a:hover,
  body.contact-page > .story-nav .story-nav-links a.active,
  body.partner-page > .story-nav .story-nav-links a:hover,
  body.partner-page > .story-nav .story-nav-links a.active,
  body > .story-nav .story-nav-links a:hover,
  body > .story-nav .story-nav-links a.active { color: #0d9297; background: transparent; }

  body.contact-page > .story-nav .story-nav-links a.active::after,
  body.partner-page > .story-nav .story-nav-links a.active::after,
  body > .story-nav .story-nav-links a.active::after {
    content: "";
    position: absolute;
    right: 0;
    bottom: 3px;
    left: 0;
    height: 2px;
    background: #0d9297;
  }

  body.contact-page > .story-nav .story-download.home-download-hover,
  body.partner-page > .story-nav .story-download.home-download-hover,
  body > .story-nav .story-download.home-download-hover {
    padding: 11px 18px !important;
    border: 1px solid #10242a;
    border-radius: 999px;
    color: #10242a !important;
    background: #c9fb4c !important;
    font-size: 16px;
    font-weight: 700;
  }
}

/* Keep the shared desktop header as the final cascade winner. */
@media (min-width: 801px) {
  body.kinetic-page .kinetic-nav,
  body.story-home-page .kinetic-nav,
  body.contact-page .kinetic-nav,
  body.partner-page .kinetic-nav,
  body.join-page-shell .kinetic-nav {
    height: 76px !important;
    min-height: 76px !important;
    padding: 12px max(28px, calc((100vw - 1400px) / 2)) !important;
    border-bottom: 1px solid rgba(17, 25, 27, .16) !important;
    background: rgba(229, 250, 247, .92) !important;
    box-shadow: none !important;
    font-family: "Kinetic OPPO", "OPPO Sans 4.0", -apple-system, BlinkMacSystemFont, "PingFang SC", sans-serif !important;
  }

  body.kinetic-page .kinetic-nav .kinetic-logo span,
  body.story-home-page .kinetic-nav .kinetic-logo span,
  body.contact-page .kinetic-nav .kinetic-logo span,
  body.partner-page .kinetic-nav .kinetic-logo span,
  body.join-page-shell .kinetic-nav .kinetic-logo span,
  body.kinetic-page .kinetic-nav .kinetic-logo small,
  body.story-home-page .kinetic-nav .kinetic-logo small,
  body.contact-page .kinetic-nav .kinetic-logo small,
  body.partner-page .kinetic-nav .kinetic-logo small,
  body.join-page-shell .kinetic-nav .kinetic-logo small {
    line-height: normal !important;
  }

  body.kinetic-page .kinetic-nav .kinetic-nav-links a,
  body.story-home-page .kinetic-nav .kinetic-nav-links a,
  body.contact-page .kinetic-nav .kinetic-nav-links a,
  body.partner-page .kinetic-nav .kinetic-nav-links a,
  body.join-page-shell .kinetic-nav .kinetic-nav-links a {
    color: #087f80 !important;
    font-family: inherit !important;
    font-size: 13px !important;
    font-weight: 400 !important;
    line-height: normal !important;
    text-shadow: none !important;
  }

  body.kinetic-page .kinetic-nav .kinetic-nav-links a.active::after,
  body.story-home-page .kinetic-nav .kinetic-nav-links a.active::after,
  body.contact-page .kinetic-nav .kinetic-nav-links a.active::after,
  body.partner-page .kinetic-nav .kinetic-nav-links a.active::after,
  body.join-page-shell .kinetic-nav .kinetic-nav-links a.active::after {
    background: #ff756d !important;
  }

  body.kinetic-page .kinetic-nav .kinetic-download-trigger,
  body.story-home-page .kinetic-nav .kinetic-download-trigger,
  body.contact-page .kinetic-nav .kinetic-download-trigger,
  body.partner-page .kinetic-nav .kinetic-download-trigger,
  body.join-page-shell .kinetic-nav .kinetic-download-trigger {
    color: #11191b !important;
    font-family: inherit !important;
    font-size: 16px !important;
    font-weight: 400 !important;
    line-height: normal !important;
  }

  body.kinetic-page .kinetic-nav,
  body.story-home-page .kinetic-nav,
  body.contact-page .kinetic-nav,
  body.partner-page .kinetic-nav,
  body.join-page-shell .kinetic-nav,
  body.kinetic-page .kinetic-nav .kinetic-logo,
  body.story-home-page .kinetic-nav .kinetic-logo,
  body.contact-page .kinetic-nav .kinetic-logo,
  body.partner-page .kinetic-nav .kinetic-logo,
  body.join-page-shell .kinetic-nav .kinetic-logo {
    line-height: normal !important;
    color: #11191b !important;
  }
}
