/* The approved Launcher TitaniumRefined arrival, adapted without baked UI. */
html { background: #050709; scrollbar-gutter: stable; }
html.welcome-pending .site-header,
html.welcome-pending main,
html.welcome-pending .site-footer,
html.welcome-pending .skip-link { visibility: hidden; }
body.welcome-open { overflow: hidden; }
#welcome-dialog:not([open]) { display: none; }
#welcome-dialog {
  position: fixed; inset: 0; margin: 0; padding: 0;
  width: 100%; max-width: none; height: 100%; height: 100svh; max-height: none;
  border: 0; border-radius: 0; overflow: hidden; background: #050709; color: #c2cdd3;
  opacity: 1; transition: opacity 420ms cubic-bezier(.42,0,.58,1);
}
#welcome-dialog::backdrop { background: #050709; transition: opacity 420ms cubic-bezier(.42,0,.58,1); }
#welcome-dialog.is-leaving, #welcome-dialog.is-leaving::backdrop { opacity: 0; pointer-events: none; }
#welcome-dialog .welcome-background { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center bottom; pointer-events: none; }
#welcome-dialog .welcome-dimming {
  position: absolute; inset: 0; pointer-events: none;
  background: linear-gradient(to bottom, transparent 0%, transparent 79%, rgba(0,0,0,.85) 87%, #000 100%);
  opacity: .08; animation: welcome-breath 5s cubic-bezier(.42,0,.58,1) infinite alternate;
}
#welcome-dialog .welcome-logo {
  position: absolute; top: 33.5%; left: 50%; transform: translate(-50%,-50%);
  width: clamp(210px,17.2vw,330px); height: auto; max-width: calc(100% - 72px);
}
#welcome-dialog .welcome-brand-fallback {
  position: absolute; top: 33.5%; left: 50%; transform: translate(-50%,-50%);
  white-space: nowrap; font-size: 20px; letter-spacing: .2em; color: #c2cdd3;
}
#welcome-dialog .welcome-title {
  position: absolute; top: 47.8%; left: 50%; transform: translate(-50%,-50%);
  width: calc(100% - 48px); margin: 0; text-align: center; white-space: nowrap;
  font-family: "Helvetica Neue", "Segoe UI", Arial, sans-serif;
  font-size: clamp(32px,3.47vw,64px); font-weight: 300; line-height: 1.25;
  letter-spacing: .07em; color: #b8c5cf;
}
#welcome-dialog .welcome-enter {
  position: absolute; top: 60.8%; left: 50%; transform: translate(-50%,-50%);
  min-height: 72px; width: clamp(220px,26vw,360px); max-width: calc(100% - 48px);
  padding: 20px; background: transparent; border: 1px solid transparent; border-radius: 2px;
  color: #b9c7d1; font-size: 17px; font-weight: 400; line-height: 1.5; letter-spacing: .1em;
  transition: color 180ms, border-color 180ms; touch-action: manipulation;
}
#welcome-dialog .welcome-enter > span { animation: welcome-prompt 5s ease-in-out infinite alternate; }
#welcome-dialog .welcome-enter:hover { color: #edf2f5; }
#welcome-dialog .welcome-enter:hover > span, #welcome-dialog .welcome-enter:focus-visible > span { animation-play-state: paused; opacity: 1; }
#welcome-dialog .welcome-enter:focus-visible { outline: 1px solid #a8bbc8; outline-offset: -8px; }
#welcome-dialog .welcome-enter:active { color: #fff; }
#welcome-dialog .welcome-enter:disabled { cursor: default; }
#welcome-dialog .welcome-enter .touch-label { display: none; }
#welcome-dialog.is-leaving * { animation-play-state: paused; }
#welcome-dialog .welcome-footnote {
  position: absolute; bottom: max(22px,env(safe-area-inset-bottom)); left: 24px; right: 24px;
  text-align: center; font-size: 10px; letter-spacing: .12em; color: #a2aeb8;
}
.replay-welcome { padding: 0; min-height: 32px; background: none; color: #a2b0bc; font-size: 11px; }
.replay-welcome:hover { color: #c2cdd3; }



#intro-title:focus { outline: none; }
/* Keep the first content view tonally continuous with the arrival. */



@keyframes welcome-breath { from { opacity: .08; } to { opacity: .34; } }
@keyframes welcome-prompt { from { opacity: .72; } to { opacity: 1; } }
@media (pointer: coarse) {
  #welcome-dialog .welcome-enter .touch-label { display: inline; }
  #welcome-dialog .welcome-enter .click-label { display: none; }
}
@media (max-width: 760px) {
  #welcome-dialog .welcome-logo { width: 208px; top: 32.5%; }
  #welcome-dialog .welcome-title { top: 46.5%; font-size: clamp(26px,6.65vw,44px); letter-spacing: .065em; }
  #welcome-dialog .welcome-enter { top: 60.5%; min-height: 76px; font-size: 15px; width: 240px; }
  #welcome-dialog .welcome-enter .touch-label { display: inline; }
  #welcome-dialog .welcome-enter .click-label { display: none; }
  #welcome-dialog .welcome-footnote { font-size: 9px; bottom: max(24px,env(safe-area-inset-bottom)); }


  .replay-welcome { font-size: 10px; }
}
@media (max-height: 520px) and (orientation: landscape) {
  #welcome-dialog .welcome-logo { top: 25%; width: 180px; }
  #welcome-dialog .welcome-title { top: 47%; font-size: 34px; }
  #welcome-dialog .welcome-enter { top: 70%; min-height: 56px; padding: 10px; font-size: 15px; }
  #welcome-dialog .welcome-footnote { bottom: max(12px,env(safe-area-inset-bottom)); }
}
@media (prefers-reduced-motion: reduce) {
  #welcome-dialog .welcome-dimming { opacity: .2; animation: none; }
  #welcome-dialog .welcome-enter > span { animation: none; opacity: 1; }
  #welcome-dialog, #welcome-dialog::backdrop, #welcome-dialog .welcome-enter { transition: none; }
}

#welcome-dialog {font-family:"Helvetica Neue","PingFang SC","Microsoft YaHei UI","Microsoft YaHei",Arial,sans-serif;font-synthesis:none;-webkit-font-smoothing:antialiased;}
#welcome-dialog, #welcome-dialog * {box-sizing:border-box;}
#welcome-dialog img {height:auto;}
#welcome-dialog .welcome-background {height:100%;}
#welcome-dialog h2 {max-width:none; font-weight:300;}
#welcome-dialog button {font-family:inherit;cursor:pointer;}
#welcome-dialog p {margin:0;}
