body {
  min-height: 100%;
  color: #123553;
  background: #f4f8fb;
  font-family: -apple-system, BlinkMacSystemFont, "PingFang SC", "Microsoft YaHei", sans-serif;
  font-size: calc(28 * var(--rpx));
}

view,
text,
button,
input,
checkbox {
  box-sizing: border-box;
}

button::after {
  border: 0;
}

button {
  max-width: 100%;
}

.page {
  min-height: 100vh;
  padding: calc(28 * var(--rpx)) calc(28 * var(--rpx)) calc(calc(180 * var(--rpx)) + env(safe-area-inset-bottom));
}

.eyebrow {
  display: block;
  margin-bottom: calc(12 * var(--rpx));
  color: #2f6fa6;
  font-size: calc(24 * var(--rpx));
  font-weight: 800;
  letter-spacing: calc(3 * var(--rpx));
}

.section {
  margin-top: calc(48 * var(--rpx));
}

.section-title {
  margin: 0;
  color: #103453;
  font-size: calc(44 * var(--rpx));
  font-weight: 800;
  line-height: 1.25;
}

.section-copy {
  display: block;
  margin-top: calc(12 * var(--rpx));
  color: #6c8293;
  font-size: calc(28 * var(--rpx));
  line-height: 1.65;
}

.primary-button,
.secondary-button,
.dark-button {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100% !important;
  min-width: 0;
  min-height: calc(92 * var(--rpx));
  margin: 0 !important;
  padding: 0 calc(28 * var(--rpx)) !important;
  border: 0;
  border-radius: calc(24 * var(--rpx));
  font-size: calc(30 * var(--rpx));
  font-weight: 750;
  line-height: 1.35;
  white-space: normal;
  overflow: hidden;
}

.primary-button {
  color: #113553;
  background: #ffcb05;
}

.secondary-button {
  color: #14466d;
  background: #eaf2f8;
}

.dark-button {
  color: #ffffff;
  background: #123a5b;
}

.button-arrow {
  margin-left: calc(14 * var(--rpx));
  font-size: calc(34 * var(--rpx));
}

.mini-footer {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: calc(14 * var(--rpx));
  margin-top: calc(54 * var(--rpx));
  color: #8a9aa7;
  font-size: calc(24 * var(--rpx));
}

.mini-footer .link {
  color: #2f6fa6;
}

.card {
  border: calc(1 * var(--rpx)) solid #d8e3eb;
  border-radius: calc(32 * var(--rpx));
  background: #ffffff;
  box-shadow: 0 calc(18 * var(--rpx)) calc(42 * var(--rpx)) rgba(33, 69, 94, 0.07);
}

:root { --rpx: .5px; --ink: #123553; --blue: #336699; --muted: #657d8f; --yellow: #ffcd0a; --line: #dce6ed; }
html { min-height: 100%; scroll-padding-top: 110px; }
body { margin: 0; min-height: 100vh; font-size: 15px; background: #f6f9fb; }
*, *::before, *::after { box-sizing: border-box; }
view, scroll-view, checkbox-group, rich-text { display: block; }
support-sheet { display: contents; }
text { white-space: pre-wrap; }
button, input { font: inherit; }
button { cursor: pointer; border: 0; padding: 0; color: inherit; line-height: 1.4; background: transparent; }
button:disabled { cursor: default; }
input { border: 0; background: transparent; outline-offset: 3px; }
input:not([type=checkbox]) { height: 32px; }
input[type=checkbox] { width: 19px; height: 19px; margin: 0; accent-color: #2f6fa6; }
img { max-width: 100%; vertical-align: middle; }
img[data-mode=aspectFit] { object-fit: contain; }
img[data-mode=aspectFill] { object-fit: cover; }
img[data-mode=widthFix] { height: auto; }
scroll-view[scroll-x] { overflow-x: auto; }
scroll-view[scroll-y] { overflow-y: auto; overscroll-behavior: contain; }
[role=button] { cursor: pointer; }
button:focus-visible, a:focus-visible, summary:focus-visible, [role=button]:focus-visible { outline: 3px solid #336699; outline-offset: 4px; }
[hidden] { display: none !important; }
a { color: inherit; text-decoration: none; }
h1, h2, h3, p { margin: 0; }
rich-text { overflow-wrap: anywhere; }
rich-text a { color: #2f6fa6; text-decoration: underline; }
body:has(.overlay), body:has(.document-overlay) { overflow: hidden; }
#toast { position: fixed; z-index: 2000; left: 50%; bottom: 36px; transform: translateX(-50%); max-width: 80vw; padding: 14px 24px; color: #fff; background: #123553ed; border-radius: 10px; font-size: 14px; }
.skip-link { position: fixed; top: -100px; left: 20px; z-index: 2001; padding: 12px; background: #fff; }
.skip-link:focus { top: 12px; }
@media (prefers-reduced-motion: no-preference) { button, a { transition: background-color .18s, color .18s, box-shadow .18s; } }
