:root { color-scheme: dark; --page-bg: #020304; --page-paper: #e5eaf3; --page-muted: #a2afc2; --page-blue: #8ea8e6; --page-line: #2b374b; font-family: Arial,Helvetica,sans-serif; background: var(--page-bg); color: var(--page-paper); font-synthesis: none; -webkit-font-smoothing: antialiased; scrollbar-color: #425675 #06090f; scrollbar-width: thin; }
* { box-sizing: border-box; }
body { margin: 0; min-width: 280px; }
button,input,select { font: inherit; }
button,a { -webkit-tap-highlight-color: transparent; }
button { color: inherit; cursor: pointer; }
button:disabled { cursor: default; opacity: .4; }
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible,[tabindex="0"]:focus-visible { outline: 2px solid #bbd0fb; outline-offset: 5px; }
a { color: inherit; text-decoration: none; }
a:hover { color: #b8d0ff; }
[hidden] { display: none !important; }
::selection { color: #f0f5ff; background: #334f7a; }
::-webkit-scrollbar { width: 8px; height: 8px; }
::-webkit-scrollbar-track { background: #06090f; }
::-webkit-scrollbar-thumb { background: #425675; border-radius: 8px; }
::-webkit-scrollbar-thumb:hover { background: #6e87ad; }
.page-skip { position: fixed; z-index: 100; left: 20px; top: 15px; padding: 13px 20px; color: #000; background: #c8dcff; transform: translateY(-180%); }
.page-skip:focus { transform: none; color: #000; }
.page-header,.page-footer { width: min(1400px,88%); margin-inline: auto; display: flex; justify-content: space-between; gap: 20px; align-items: center; }
.page-header { padding: 28px 0; border-bottom: 1px solid var(--page-line); }
.page-header > a:last-child { font-size: 12px; color: #a0b1cd; min-height: 44px; display: flex; align-items: center; }
.page-header > a:last-child:hover { color: #d9e7ff; }
.page-brand { font-size: 32px; font-weight: 700; letter-spacing: -.06em; }
.page-brand > span { color: var(--page-blue); }
.page-footer { margin-top: 85px; border-top: 1px solid var(--page-line); padding: 25px 0 max(30px,env(safe-area-inset-bottom)); }
.page-footer a { min-height: 44px; display: flex; align-items: center; font-size: 12px; color: #a2b1c9; }
.page-footer a:hover { color: #d6e5ff; }
.page-eyebrow { margin: 0; font: 10px/1.6 'Courier New',monospace; text-transform: uppercase; letter-spacing: .12em; color: #8299c0; }
.page-intro { padding: 75px 0 48px; }
.page-title-row { display: flex; align-items: center; justify-content: space-between; gap: 30px; }
.page-intro h1 { font: 400 clamp(53px,7vw,96px)/1.1 Georgia,'Times New Roman',serif; margin: 20px 0 24px; letter-spacing: -.045em; }
.page-lede { font-size: 16px; line-height: 1.8; max-width: 720px; margin: 0; color: var(--page-muted); }
.page-seraphine { max-width: 250px; padding-left: 18px; border-left: 1px solid #3c5582; color: var(--page-blue); }
.page-seraphine > span { font: 9px/1.5 Arial,Helvetica,sans-serif; color: #819bc7; letter-spacing: .03em; }
.page-seraphine > p { margin: 7px 0 0; font: italic 17px/1.65 Georgia,'Times New Roman',serif; }
.page-button { display: inline-flex; align-items: center; justify-content: center; min-height: 45px; padding: 11px 18px; color: #c6d7f5; background: #101c31; border: 1px solid #4c6591; border-radius: 4px; font-size: 12px; line-height: 1.5; text-align: center; }
.page-button:hover:not(:disabled) { background: #233b62; border-color: #9ab5e5; }
.page-button.secondary { background: transparent; border-color: #344158; color: #a5b5cf; }
.page-button.secondary:hover:not(:disabled) { background: #111b2c; }
.page-actions { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; margin: 24px 0; }
.page-status { min-height: 25px; font-size: 12px; line-height: 1.7; color: #aabedf; }
.page-fineprint { font-size: 11px; line-height: 1.8; color: #8291a7; max-width: 850px; }
.page-fineprint a { color: #acbee0; text-decoration: underline; text-underline-offset: 3px; }
.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; }
@media(max-width:700px) {
  .page-header { padding: 16px 0; }
  .page-brand { font-size: 28px; }
  .page-header > a:last-child { font-size: 11px; }
  .page-intro { padding: 50px 0 32px; }
  .page-title-row { display: block; }
  .page-intro h1 { font-size: clamp(46px,11vw,75px); margin-bottom: 25px; }
  .page-title-row .page-seraphine { margin: 0 0 28px auto; }
  .page-seraphine > p { font-size: 15px; }
  .page-lede { font-size: 14px; }
  .page-footer { margin-top: 55px; }
  .page-footer a { font-size: 11px; }
}
@media(forced-colors:active) { button,a,input,select { forced-color-adjust: auto; } }
