
.eosx-h, .eosx-f, .eosx-s {
  --eosx-night: #0B0E16;
  --eosx-ink: #DCE6F0;
  --eosx-ink-hi: #EAF6FF;
  --eosx-ink-2: #AEB8CB;
  --eosx-cyan: #7ADCEC;
  --eosx-rule: rgba(220, 230, 240, .16);
  --eosx-serif: "Iowan Old Style", "Palatino Linotype", Palatino, "Book Antiqua", "URW Palladio L", P052, Georgia, serif;
  --eosx-sans: inherit;
  --eosx-gutter: clamp(16px, 4vw, 48px);
  --eosx-max: 1280px;
  --eosx-ease: cubic-bezier(.2, .6, .2, 1);
  box-sizing: border-box;
}
.eosx-h *, .eosx-h *::before, .eosx-h *::after,
.eosx-f *, .eosx-f *::before, .eosx-f *::after,
.eosx-s *, .eosx-s *::before, .eosx-s *::after { box-sizing: inherit; }
.eosx-vh { position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; }
.eosx-h a, .eosx-f a { text-decoration: none; }
.eosx-h ul, .eosx-f ul { list-style: none; margin: 0; padding: 0; }
.eosx-h :focus-visible, .eosx-f :focus-visible, .eosx-s :focus-visible { outline: 2px solid var(--eosx-cyan); outline-offset: 3px; border-radius: 2px; }


.eosx-h {
  position: sticky; top: 0; z-index: 950;
  font-family: var(--eosx-sans); color: var(--eosx-ink);
  -webkit-font-smoothing: antialiased;
}
.eosx-h::before {
  content: ""; position: absolute; inset: 0; z-index: -1;
  background: rgba(11, 14, 22, .58);
  -webkit-backdrop-filter: blur(16px) saturate(1.15); backdrop-filter: blur(16px) saturate(1.15);
  border-bottom: 1px solid transparent;
  transition: background-color .32s var(--eosx-ease), border-color .32s var(--eosx-ease);
}
.eosx-h--scrolled::before { background: rgba(11, 14, 22, .84); border-bottom-color: var(--eosx-rule); }
.eosx-h__bar {
  display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 16px;
  max-width: var(--eosx-max); margin: 0 auto; height: 64px;
  padding: 0 max(var(--eosx-gutter), env(safe-area-inset-right)) 0 max(var(--eosx-gutter), env(safe-area-inset-left));
}
.eosx-brand { display: inline-flex; align-items: center; min-width: 0; max-width: 100%; overflow: hidden; justify-self: start; }
.eosx-brand > a { display: inline-flex; align-items: center; min-height: 44px; color: inherit; }
.eosx-lockup { gap: 12px; white-space: nowrap; }

.eosx-brand > a:not(.eosx-lockup) { gap: 10px; white-space: nowrap; font-weight: 600; letter-spacing: .02em; }
.eosx-brand svg, .eosx-brand img { height: 34px; width: auto; max-width: 168px; flex: 0 0 auto; }
.eosx-brand svg:empty { display: none; }
.eosx-lockup__mark {
  font-family: var(--eosx-serif); font-weight: 400; font-size: 21px; line-height: 1;
  letter-spacing: .24em; margin-right: -.24em; color: var(--eosx-ink-hi);
}
.eosx-lockup__by {
  font-size: 12.5px; letter-spacing: .02em; color: var(--eosx-ink-2);
  padding-left: 12px; border-left: 1px solid var(--eosx-rule); line-height: 18px;
}
.eosx-h__nav { display: none; }
.eosx-h__act { display: flex; align-items: center; gap: 8px; justify-self: end; }
.eosx-h__signin { display: none; }

.eosx-btn {
  display: inline-flex; align-items: center; justify-content: center;
  min-height: 44px; padding: 0 16px;
  font: inherit; font-size: 14px; font-weight: 500; letter-spacing: .012em; line-height: 1.2; white-space: nowrap;
  color: var(--eosx-ink-hi);
  background: rgba(122, 220, 236, .07);
  border: 1px solid rgba(122, 220, 236, .5); border-radius: 2px;
  transition: background-color .2s var(--eosx-ease), border-color .2s var(--eosx-ease);
}
.eosx-btn:hover { background: rgba(122, 220, 236, .15); border-color: var(--eosx-cyan); }
.eosx-btn:active { background: rgba(122, 220, 236, .22); }

.eosx-h__menu {
  display: inline-flex; align-items: center; justify-content: center;
  width: 44px; height: 44px; margin-right: -10px; padding: 0;
  background: none; border: 0; color: var(--eosx-ink-hi); cursor: pointer;
}
.eosx-h__menu-l, .eosx-h__menu-l::after { display: block; width: 20px; height: 1px; background: currentColor; }
.eosx-h__menu-l { position: relative; transform: translateY(-3.5px); }
.eosx-h__menu-l::after { content: ""; position: absolute; left: 0; top: 7px; }

@media (min-width: 1120px) {
  .eosx-h__bar { grid-template-columns: 1fr auto 1fr; height: 76px; gap: 32px; }
  .eosx-h__nav { display: block; }
  .eosx-h__list { display: flex; gap: 6px; }
  .eosx-h__link {
    position: relative; display: inline-flex; align-items: center; min-height: 44px; padding: 0 14px;
    font-size: 14.5px; letter-spacing: .01em; color: var(--eosx-ink-2);
    transition: color .2s var(--eosx-ease);
  }
  .eosx-h__link::after {
    content: ""; position: absolute; left: 14px; right: 14px; bottom: 6px; height: 1px;
    background: var(--eosx-cyan); transform: scaleX(0); transform-origin: left center;
    transition: transform .28s var(--eosx-ease);
  }
  .eosx-h__link:hover { color: var(--eosx-ink-hi); }
  .eosx-h__link[aria-current="page"] { color: var(--eosx-ink-hi); }
  .eosx-h__link[aria-current="page"]::after { transform: scaleX(1); }
  .eosx-h__act { gap: 20px; }
  .eosx-h__signin {
    display: inline-flex; align-items: center; min-height: 44px; padding: 0 4px;
    font-size: 14px; color: var(--eosx-ink-2); transition: color .2s var(--eosx-ease);
  }
  .eosx-h__signin:hover { color: var(--eosx-ink-hi); }
  .eosx-btn { padding: 0 20px; }
  .eosx-h__menu { display: none; }
}
@media (max-width: 639px) {
  .eosx-brand > .eosx-lockup { flex-direction: column; align-items: flex-start; justify-content: center; gap: 5px; }
  .eosx-lockup__mark { font-size: 19px; }
  .eosx-lockup__by { font-size: 11.5px; line-height: 1; padding-left: 0; border-left: 0; }
  .eosx-h__act > .eosx-btn { padding: 0 14px; font-size: 13.5px; }
}
@media (max-width: 359px) {
  .eosx-h__act > .eosx-btn { padding: 0 10px; font-size: 12.5px; }
}


.eosx-sheet {
  position: fixed; inset: 0; z-index: 1000;
  display: flex; flex-direction: column;
  background: var(--eosx-night); color: var(--eosx-ink);
  padding: 0 max(var(--eosx-gutter), env(safe-area-inset-right)) max(24px, env(safe-area-inset-bottom)) max(var(--eosx-gutter), env(safe-area-inset-left));
  overflow-y: auto; overscroll-behavior: contain;
  opacity: 0; transform: translateY(-6px);
  transition: opacity .24s var(--eosx-ease), transform .24s var(--eosx-ease);
}
.eosx-sheet[hidden] { display: none; }
.eosx-sheet.is-open { opacity: 1; transform: none; }
.eosx-sheet__top { display: flex; justify-content: flex-end; align-items: center; height: 64px; flex: none; padding-top: env(safe-area-inset-top); box-sizing: content-box; }
.eosx-sheet__close {
  display: inline-flex; align-items: center; justify-content: center;
  width: 44px; height: 44px; margin-right: -10px; padding: 0;
  background: none; border: 0; color: var(--eosx-ink-hi); cursor: pointer;
}
.eosx-sheet__nav { margin-top: clamp(8px, 4vh, 40px); }
.eosx-sheet__list { border-top: 1px solid var(--eosx-rule); }
.eosx-sheet__list li { border-bottom: 1px solid var(--eosx-rule); }
.eosx-sheet__link {
  display: flex; align-items: center; min-height: 64px;
  font-family: var(--eosx-serif); font-size: 28px; line-height: 1.15; letter-spacing: .005em;
  color: var(--eosx-ink);
}
.eosx-sheet__link[aria-current="page"] { color: var(--eosx-ink-hi); }
.eosx-sheet__link[aria-current="page"]::after { content: ""; width: 24px; height: 1px; margin-left: 16px; background: var(--eosx-cyan); }
.eosx-sheet__act { margin-top: auto; padding-top: 40px; display: flex; flex-direction: column; align-items: stretch; gap: 8px; }
.eosx-btn--block { width: 100%; min-height: 52px; font-size: 15px; }
.eosx-sheet__signin { display: flex; align-items: center; justify-content: center; min-height: 44px; font-size: 14px; color: var(--eosx-ink-2); }
.eosx-sheet__signin:hover { color: var(--eosx-ink-hi); }
@media (min-width: 640px) {
  .eosx-sheet__link { font-size: 34px; min-height: 76px; }
  .eosx-sheet__act { flex-direction: row; align-items: center; gap: 24px; }
  .eosx-btn--block { width: auto; padding: 0 28px; }
}
html.eosx-lock, html.eosx-lock body { overflow: hidden; }
html.eosx-lock body { touch-action: none; }
html.eosx-lock .eosx-sheet { touch-action: pan-y; }


.eosx-f {
  font-family: var(--eosx-sans); color: var(--eosx-ink);
  -webkit-font-smoothing: antialiased;
  border-top: 1px solid var(--eosx-rule);
}
.eosx-f__in {
  max-width: var(--eosx-max); margin: 0 auto;
  
  padding: clamp(72px, 11vw, 144px) max(var(--eosx-gutter), env(safe-area-inset-right)) calc(76px + env(safe-area-inset-bottom)) max(var(--eosx-gutter), env(safe-area-inset-left));
}
.eosx-f__motto {
  margin: 0;
  font-family: var(--eosx-serif); font-weight: 400;
  font-size: clamp(34px, 5.6vw, 72px); line-height: 1.08; letter-spacing: -.004em;
  color: var(--eosx-ink); text-wrap: balance;
}
.eosx-f__motto::before { content: ""; display: block; width: 56px; height: 1px; margin-bottom: clamp(28px, 3.4vw, 44px); background: var(--eosx-cyan); opacity: .7; }
.eosx-f__line { display: block; }
@media (min-width: 640px) { .eosx-f__line { white-space: nowrap; } }
.eosx-f__line + .eosx-f__line { color: var(--eosx-ink-2); }
.eosx-f__base {
  display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px 32px;
  margin-top: clamp(64px, 9vw, 120px); padding-top: 20px; border-top: 1px solid var(--eosx-rule);
}
.eosx-f__list { display: flex; flex-wrap: wrap; gap: 0 28px; margin-left: -2px; }
.eosx-f__link {
  display: inline-flex; align-items: center; min-height: 44px; padding: 0 2px;
  font-size: 14px; letter-spacing: .01em; color: var(--eosx-ink-2); transition: color .2s var(--eosx-ease);
}
.eosx-f__link:hover { color: var(--eosx-ink-hi); }
.eosx-f__legal { margin: 0; font-size: 13px; letter-spacing: .01em; color: var(--eosx-ink-2); line-height: 44px; }
@media (max-width: 639px) {
  .eosx-f__base { flex-direction: column; align-items: flex-start; gap: 4px; }
  .eosx-f__list { gap: 0 24px; }
  .eosx-f__legal { line-height: 1.5; padding: 8px 0 4px; }
}


.eosx-s {
  position: fixed; z-index: 900;
  left: max(16px, calc(env(safe-area-inset-left) + 12px));
  bottom: calc(max(16px, calc(env(safe-area-inset-bottom) + 12px)) + var(--eosx-lift, 0px));
  transition: bottom .2s ease;
  display: flex; align-items: center; gap: 2px; padding: 2px;
  background: rgba(11, 14, 22, .72); border: 1px solid var(--eosx-rule); border-radius: 24px;
  -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px);
  color: var(--eosx-ink-hi);
  opacity: .55; transition: opacity .25s var(--eosx-ease), padding .25s var(--eosx-ease), border-color .25s var(--eosx-ease);
}
.eosx-s:hover, .eosx-s:focus-within { opacity: 1; }
.eosx-s[hidden] { display: none; }
.eosx-s__b, .eosx-s__dot {
  display: inline-flex; align-items: center; justify-content: center;
  width: 44px; height: 44px; padding: 0; border: 0; border-radius: 50%;
  background: none; color: inherit; cursor: pointer;
}
.eosx-s__b:hover { background: rgba(220, 230, 240, .08); }
.eosx-s__b svg { width: 18px; height: 18px; }
.eosx-s__x svg { width: 14px; height: 14px; }
.eosx-s__off { display: none; }
.eosx-s.is-muted .eosx-s__on { display: none; }
.eosx-s.is-muted .eosx-s__off { display: block; }
.eosx-s__dot { display: none; }
.eosx-s__dot span { width: 6px; height: 6px; border-radius: 50%; background: var(--eosx-cyan); }
.eosx-s.is-muted .eosx-s__dot span { background: var(--eosx-ink-2); }
.eosx-s.is-min { padding: 0; border-color: transparent; background: rgba(11, 14, 22, .5); }
.eosx-s.is-min .eosx-s__b { display: none; }
.eosx-s.is-min .eosx-s__dot { display: inline-flex; }

@media (prefers-reduced-motion: reduce) {
  .eosx-h::before, .eosx-sheet, .eosx-btn, .eosx-h__link, .eosx-h__link::after, .eosx-s { transition: none; }
}
@media (forced-colors: active) {
  .eosx-btn { border-color: ButtonText; }
  .eosx-h__link[aria-current="page"]::after, .eosx-sheet__link[aria-current="page"]::after { background: Highlight; }
}


main { padding-bottom: 72px; }
