:root {
  --cosmic-ink: #03113b;
  --cosmic-deep: #061a57;
  --cosmic-blue: #075ce3;
  --cosmic-cyan: #46d8ff;
  --cosmic-ice: #d8efff;
  --cosmic-paper: #edf7ff;
}

html {
  background: #020a25;
}

body {
  background: #ddecfa;
}

.page-shell {
  background: linear-gradient(180deg, #06184f 0%, #102f76 12%, #d5eaff 25%, #0a2869 42%, #e0f0fc 62%, #08245e 80%, #d7ecfb 100%);
  box-shadow: 0 0 72px rgba(1, 21, 78, 0.3);
}

body.splash-pending {
  overflow: hidden;
  background: #01061b;
}

body.splash-pending .site-header,
body.splash-pending .sticky-cta {
  opacity: 0;
  pointer-events: none;
}

.site-header,
.sticky-cta {
  transition: opacity 0.5s ease, transform 0.5s ease;
}

/* Full-screen poster opening: image is the supplied client-approved slice. */
.opening-splash {
  position: fixed;
  z-index: 3000;
  top: 0;
  left: 50%;
  width: min(100%, 520px);
  height: 100dvh;
  overflow: hidden;
  background:
    radial-gradient(circle at 50% 66%, rgba(6, 63, 174, 0.3), transparent 42%),
    linear-gradient(180deg, #010724, #020d35 64%, #01061c);
  isolation: isolate;
  transform: translateX(-50%);
  transform-origin: 50% 69%;
}

.opening-splash[hidden] {
  display: none;
}

.opening-splash::before {
  position: absolute;
  z-index: 2;
  inset: 0;
  background: radial-gradient(circle at 50% 70%, transparent 38%, rgba(0, 4, 23, 0.08) 70%, rgba(0, 4, 23, 0.26) 100%);
  content: "";
  pointer-events: none;
}

.opening-splash::after {
  position: absolute;
  z-index: 4;
  inset: -15%;
  background: radial-gradient(circle, rgba(136, 226, 255, 0.52), rgba(25, 103, 255, 0.12) 24%, transparent 56%);
  content: "";
  opacity: 0;
  pointer-events: none;
  transform: scale(0.35);
}

.opening-splash__poster {
  position: absolute;
  z-index: 1;
  top: 50%;
  left: 50%;
  width: min(100%, calc(100dvh * 0.5628));
  aspect-ratio: 941 / 1672;
  transform: translate(-50%, -50%);
}

.opening-splash__poster > img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  filter: saturate(1.04) contrast(1.03);
  transform: scale(1.002);
  transform-origin: 50% 69%;
  transition: transform 1.05s cubic-bezier(0.3, 0.02, 0.25, 1), filter 0.95s ease, opacity 0.95s ease;
}

.opening-splash__button {
  position: absolute;
  z-index: 6;
  left: 22.7%;
  bottom: max(8.55%, env(safe-area-inset-bottom));
  display: grid;
  width: 54.8%;
  height: 7.6%;
  padding: 0 9% 0 4%;
  border: 0;
  background: transparent;
  color: #fff;
  cursor: pointer;
  font-family: "Microsoft YaHei", "PingFang SC", sans-serif;
  font-size: clamp(22px, 7vw, 38px);
  font-weight: 750;
  letter-spacing: 0.11em;
  line-height: 1;
  place-items: center;
  text-shadow: 0 3px 12px rgba(0, 18, 67, 0.95), 0 0 18px rgba(117, 224, 255, 0.7);
}

.opening-splash__button:focus-visible {
  border-radius: 999px;
  outline: 2px solid #c6f5ff;
  outline-offset: -7px;
}

.opening-splash__flash {
  position: absolute;
  z-index: 5;
  top: 70%;
  left: 50%;
  width: 90px;
  height: 90px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(255, 255, 255, 0.92) 0 5%, rgba(124, 231, 255, 0.66) 18%, rgba(44, 112, 255, 0.27) 44%, transparent 72%);
  filter: blur(13px);
  opacity: 0;
  pointer-events: none;
  transform: translate(-50%, -50%) scale(0.12);
}

.opening-splash.is-exiting {
  animation: splash-shell-exit 1.05s cubic-bezier(0.36, 0, 0.18, 1) forwards;
  pointer-events: none;
}

.opening-splash.is-exiting .opening-splash__poster > img {
  filter: saturate(1.22) contrast(1.08) blur(15px) brightness(1.18);
  opacity: 0;
  transform: scale(1.24);
}

.opening-splash.is-exiting::after {
  animation: splash-energy 0.95s ease-out forwards;
}

.opening-splash.is-exiting .opening-splash__button {
  animation: splash-button-exit 0.38s ease forwards;
}

.opening-splash.is-exiting .opening-splash__flash {
  animation: splash-flash 0.82s 0.12s ease-out forwards;
}

@keyframes splash-shell-exit {
  0% { opacity: 1; transform: translateX(-50%) scale(1); }
  58% { opacity: 1; }
  100% { opacity: 0; transform: translateX(-50%) scale(1.08); }
}

@keyframes splash-energy {
  0% { opacity: 0; transform: scale(0.3); }
  44% { opacity: 0.8; }
  100% { opacity: 0; transform: scale(1.5); }
}

@keyframes splash-flash {
  0% { opacity: 0; transform: translate(-50%, -50%) scale(0.12); }
  34% { opacity: 0.78; }
  100% { opacity: 0; transform: translate(-50%, -50%) scale(7.5); }
}

@keyframes splash-button-exit {
  to { opacity: 0; filter: blur(7px); transform: translateY(-16px) scale(1.06); }
}

/* Replace the former bright hero with a compact deep-blue summit dashboard. */
.summit-dashboard {
  padding-top: max(92px, calc(env(safe-area-inset-top) + 72px));
  border-bottom: 1px solid rgba(92, 208, 255, 0.24);
  background:
    radial-gradient(circle at 50% -10%, rgba(26, 118, 255, 0.72), transparent 23rem),
    radial-gradient(circle at 96% 50%, rgba(68, 212, 255, 0.18), transparent 17rem),
    linear-gradient(180deg, #061849 0%, #09296a 46%, #071d51 100%);
}

.summit-dashboard::before {
  opacity: 0.45;
}

.summit-highlight {
  border-color: rgba(128, 219, 255, 0.28);
  background: linear-gradient(145deg, rgba(21, 70, 148, 0.8), rgba(5, 26, 79, 0.78));
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.14), 0 14px 32px rgba(0, 6, 37, 0.28);
}

.summit-highlight h3 { color: #fff; }
.summit-highlight p { color: #c9e9ff; }
.summit-highlight__icon {
  border-color: rgba(111, 223, 255, 0.48);
  background: rgba(14, 93, 206, 0.38);
  box-shadow: 0 0 18px rgba(44, 183, 255, 0.2);
}
.summit-highlight__icon svg { stroke: #bff4ff; }

.summit-global {
  border-color: rgba(99, 211, 255, 0.42);
  box-shadow: 0 19px 45px rgba(0, 4, 30, 0.3), inset 0 0 42px rgba(31, 141, 255, 0.1);
}

/* Client-extracted brand ecosystem artwork with animated real logo layers. */
.ecosystem.ecosystem-poster {
  position: relative;
  min-height: 0;
  overflow: hidden;
  padding: 0;
  border: 0;
  background: #031241;
  isolation: isolate;
}

.ecosystem-poster::before,
.ecosystem-poster::after,
.ecosystem-poster .ecosystem__field {
  display: none;
}

.ecosystem-poster__background {
  position: relative;
  z-index: 1;
  display: block;
  width: 100%;
  height: auto;
  margin: 0;
  filter: saturate(1.04) contrast(1.02);
}

.ecosystem-logo {
  position: absolute;
  z-index: 3;
  left: 50%;
  display: grid;
  place-items: center;
  opacity: 0;
  pointer-events: none;
  transform: translate(-50%, 14px) scale(0.72);
  transform-origin: center;
  filter: blur(13px) drop-shadow(0 0 22px rgba(64, 201, 255, 0.45));
}

.ecosystem-logo--group {
  top: 26.4%;
  width: 54%;
  height: 10.2%;
  --logo-delay: 0.05s;
}

.ecosystem-logo--company {
  top: 51.4%;
  width: 54%;
  height: 10.2%;
  --logo-delay: 0.5s;
}

.ecosystem-logo--alliance {
  top: 77.4%;
  width: 24%;
  height: 10.5%;
  --logo-delay: 0.95s;
}

.ecosystem-logo > img {
  position: relative;
  z-index: 3;
  display: block;
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
}

.ecosystem-logo--group > img,
.ecosystem-logo--company > img {
  filter: drop-shadow(0 0 10px rgba(99, 210, 255, 0.45));
}

.ecosystem-logo--group::after,
.ecosystem-logo--company::after {
  position: absolute;
  z-index: 4;
  inset: 0;
  background: #fff;
  content: "";
  pointer-events: none;
  -webkit-mask-position: center;
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-size: contain;
  mask-position: center;
  mask-repeat: no-repeat;
  mask-size: contain;
  filter: drop-shadow(0 0 8px rgba(101, 220, 255, 0.5));
}

.ecosystem-logo--group::after {
  -webkit-mask-image: url("assets/brand-gooddoctor.png");
  mask-image: url("assets/brand-gooddoctor.png");
  clip-path: inset(0 0 0 30%);
}

.ecosystem-logo--company::after {
  -webkit-mask-image: url("assets/brand-fny.png");
  mask-image: url("assets/brand-fny.png");
  clip-path: inset(0 0 0 30%);
}

.ecosystem-logo--alliance > img {
  filter: none;
}

.artwork-section {
  position: relative;
  z-index: 1;
  min-height: 0;
  overflow: visible;
  padding: 0;
  border: 0;
  background: #03194f;
}

.artwork-section::before {
  display: none;
}

.artwork-section::after,
.ecosystem-poster::after {
  position: absolute;
  right: 0;
  bottom: -13px;
  left: 0;
  z-index: 6;
  display: block;
  height: 26px;
  pointer-events: none;
  background:
    radial-gradient(ellipse 38px 9px at 50% 50%, rgba(194, 247, 255, 0.96) 0%, rgba(56, 201, 255, 0.54) 34%, transparent 75%),
    radial-gradient(ellipse 72% 17px at 50% 50%, rgba(34, 137, 255, 0.34), transparent 70%),
    linear-gradient(90deg, transparent 3%, rgba(53, 183, 255, 0.12) 18%, rgba(128, 229, 255, 0.76) 48%, rgba(128, 229, 255, 0.76) 52%, rgba(53, 183, 255, 0.12) 82%, transparent 97%);
  background-repeat: no-repeat;
  background-position: center, center, center;
  background-size: 90px 100%, 100% 100%, 100% 1px;
  content: "";
  filter: drop-shadow(0 0 8px rgba(53, 199, 255, 0.46));
  opacity: 0.92;
}

.ecosystem.ecosystem-poster {
  overflow: visible;
  z-index: 1;
}

.artwork-section > img {
  display: block;
  width: 100%;
  height: auto;
  margin: 0;
  filter: saturate(1.03) contrast(1.015);
}

.ecosystem-logo__orbit {
  position: absolute;
  z-index: 1;
  width: 132%;
  height: 76%;
  border: 1px solid rgba(78, 209, 255, 0.46);
  border-radius: 50%;
  box-shadow: 0 0 20px rgba(57, 176, 255, 0.14), inset 0 0 16px rgba(64, 181, 255, 0.1);
  opacity: 0;
  transform: rotate(-10deg) scaleX(0.68);
}

.ecosystem-logo__orbit::before {
  position: absolute;
  top: 13%;
  right: 6%;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #9ff1ff;
  box-shadow: 0 0 12px #4ed8ff;
  content: "";
}

.ecosystem-logo__particles {
  position: absolute;
  z-index: 2;
  top: 50%;
  left: 50%;
  width: 1px;
  height: 1px;
}

.ecosystem-logo__spark {
  position: absolute;
  width: var(--spark-size);
  height: var(--spark-size);
  border-radius: 50%;
  background: #a7f3ff;
  box-shadow: 0 0 8px #2dcfff;
  opacity: 0;
  transform: translate(var(--spark-x), var(--spark-y)) scale(0.2);
}

.ecosystem-poster.is-active .ecosystem-logo {
  animation: ecosystem-logo-form 1.15s var(--logo-delay) cubic-bezier(0.18, 0.9, 0.24, 1.06) forwards;
}

.ecosystem-poster.is-active .ecosystem-logo__orbit {
  animation: ecosystem-orbit-form 1.4s calc(var(--logo-delay) + 0.08s) ease-out forwards, ecosystem-orbit-drift 8s calc(var(--logo-delay) + 1.45s) linear infinite;
}

.ecosystem-poster.is-active .ecosystem-logo__spark {
  animation: ecosystem-spark-gather 0.9s calc(var(--logo-delay) + var(--spark-delay)) cubic-bezier(0.22, 1, 0.36, 1) forwards;
}

@keyframes ecosystem-logo-form {
  0% { opacity: 0; transform: translate(-50%, 14px) scale(0.72); filter: blur(13px) drop-shadow(0 0 28px rgba(64, 201, 255, 0.7)); }
  58% { opacity: 1; transform: translate(-50%, 0) scale(1.055); filter: blur(1.5px) drop-shadow(0 0 24px rgba(64, 201, 255, 0.55)); }
  100% { opacity: 1; transform: translate(-50%, 0) scale(1); filter: blur(0) drop-shadow(0 0 12px rgba(64, 201, 255, 0.2)); }
}

@keyframes ecosystem-orbit-form {
  0% { opacity: 0; transform: rotate(-18deg) scaleX(0.35); }
  100% { opacity: 0.72; transform: rotate(-10deg) scaleX(1); }
}

@keyframes ecosystem-orbit-drift {
  from { transform: rotate(-10deg) scaleX(1); }
  to { transform: rotate(350deg) scaleX(1); }
}

@keyframes ecosystem-spark-gather {
  0% { opacity: 0; transform: translate(var(--spark-x), var(--spark-y)) scale(0.2); }
  45% { opacity: 0.9; }
  100% { opacity: 0; transform: translate(0, 0) scale(1.8); }
}

/* Alternating dark/light blue-white rhythm through the rest of the H5. */
.ecosystem,
.meaning,
.details {
  border-color: rgba(88, 206, 255, 0.2);
  background:
    radial-gradient(circle at 95% 10%, rgba(40, 148, 255, 0.25), transparent 19rem),
    radial-gradient(circle at -8% 78%, rgba(49, 211, 255, 0.14), transparent 19rem),
    linear-gradient(180deg, #06194c, #0a2c6e 60%, #071c50);
}

.ecosystem .section-kicker,
.meaning .section-kicker,
.details .section-kicker,
.ecosystem__lead,
.meaning .overline,
.details .rally-invite,
.details .fine-print {
  color: #9fdfff;
}

.ecosystem .section-title,
.meaning .section-title,
.details .section-title,
.meaning .statement,
.details .rally h3,
.details .rally-invite b {
  color: #fff;
}

.ecosystem .section-title em,
.meaning .statement span,
.details .section-title span {
  color: #62d5ff;
}

.opening,
.vision,
.package,
.venue {
  border-color: rgba(118, 219, 255, 0.22);
  background:
    radial-gradient(circle at 96% 9%, rgba(76, 205, 255, 0.3), transparent 20rem),
    radial-gradient(circle at -8% 72%, rgba(107, 127, 255, 0.3), transparent 20rem),
    linear-gradient(180deg, #174f9c 0%, #2d74bd 46%, #123f87 100%);
}

.opening .section-kicker,
.vision .section-kicker,
.package .section-kicker,
.venue .section-kicker,
.vision__lead,
.venue-copy,
.package__heading p {
  color: #c4edff;
}

.opening .section-title,
.vision .section-title,
.venue .section-title,
.package__heading h2 {
  color: #fff;
  background: none;
  -webkit-text-fill-color: currentColor;
  text-shadow: 0 4px 18px rgba(1, 25, 80, 0.4);
}

.opening .section-title em,
.vision .section-title em,
.venue .section-title em {
  color: #77e2ff;
  background: none;
  -webkit-text-fill-color: currentColor;
}

.opening .heritage-intro,
.opening .launch-card,
.package .package-item,
.package .package__promise,
.venue .room-card,
.venue .hall-panel,
.venue .venue-address {
  border-color: rgba(174, 228, 255, 0.6);
  background-color: rgba(236, 247, 255, 0.93);
  box-shadow: 0 15px 36px rgba(1, 22, 72, 0.22), inset 0 1px 0 #fff;
}

.vision {
  background:
    linear-gradient(180deg, rgba(24, 88, 166, 0.48), rgba(39, 108, 183, 0.42)),
    url("assets/generated/four-values-energy-bg.webp") center top / cover no-repeat,
    #1d5ba5;
}

.vision::after { border-color: rgba(184, 233, 255, 0.22); }
.vision .values-slogan { color: #d4f3ff; }

.opening .legacy-lines,
.opening .body-copy {
  color: #e5f5ff;
}

.opening .legacy-lines strong,
.opening .body-copy strong {
  color: #fff;
}

.opening .legacy-lines {
  border-left-color: #5ee1ff;
}

.package .package__heading > span,
.venue .room-heading > span,
.venue .hall-heading > span {
  color: #c5eaff;
}

/* Unified tail background supplied by the client. Text and cards are rebuilt
   above it so the blue image remains purely atmospheric. */
.tail-background {
  position: relative;
  z-index: 0;
  isolation: isolate;
  background-color: #0b42b2;
  background-image:
    linear-gradient(180deg, rgba(2, 21, 82, 0.14), rgba(3, 20, 83, 0.05) 42%, rgba(2, 18, 69, 0.28)),
    url("image/背景色.jpg");
  background-position: center top;
  background-size: 100% auto;
  background-repeat: repeat-y;
}

.tail-background::after {
  position: absolute;
  top: -20px;
  right: 0;
  left: 0;
  z-index: 2;
  height: 44px;
  pointer-events: none;
  background: linear-gradient(180deg, rgba(4, 22, 81, 0.72), rgba(15, 88, 210, 0.16) 52%, transparent);
  content: "";
}

.tail-background::before {
  position: absolute;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  background:
    linear-gradient(90deg, rgba(1, 16, 65, 0.18), transparent 18%, transparent 82%, rgba(1, 16, 65, 0.14)),
    radial-gradient(circle at 86% 18%, rgba(104, 224, 255, 0.19), transparent 19rem);
  content: "";
}

.tail-background .venue,
.tail-background .details {
  border-color: rgba(183, 229, 255, 0.24);
  background: transparent;
}

.tail-background .section-kicker,
.tail-background .section-kicker span,
.tail-background .room-heading small,
.tail-background .hall-heading small {
  color: #bdefff;
  text-shadow: 0 2px 10px rgba(0, 23, 88, 0.62);
}

.tail-background .section-kicker::after {
  background: linear-gradient(90deg, #8feaff, transparent);
}

.tail-background .section-title,
.tail-background .room-heading h3,
.tail-background .hall-heading h3 {
  color: #fff;
  text-shadow: 0 4px 18px rgba(0, 23, 91, 0.62);
}

.tail-background .section-title em {
  color: #8eebff;
  text-shadow: 0 3px 18px rgba(0, 35, 105, 0.64);
}

.tail-background .venue-copy {
  color: #f1f9ff;
  font-weight: 500;
  text-shadow: 0 2px 9px rgba(0, 25, 84, 0.58);
}

.tail-background .hotel-highlights {
  overflow: hidden;
  border: 1px solid rgba(184, 230, 255, 0.42);
  border-radius: 16px;
  background: linear-gradient(135deg, rgba(2, 30, 105, 0.66), rgba(14, 92, 188, 0.46));
  box-shadow: 0 14px 32px rgba(0, 28, 101, 0.22), inset 0 1px 0 rgba(255, 255, 255, 0.12);
  backdrop-filter: blur(9px);
}

.tail-background .hotel-highlights span {
  border-color: rgba(181, 230, 255, 0.2);
  color: #fff;
  font-weight: 600;
  text-shadow: 0 2px 8px rgba(0, 24, 80, 0.5);
}

.tail-background .hotel-highlights span::before {
  border-color: #7ce9ff;
  box-shadow: 0 0 12px rgba(91, 229, 255, 0.72);
}

.tail-background .room-heading > span,
.tail-background .hall-heading > span {
  color: #e5f7ff;
  text-shadow: 0 2px 8px rgba(0, 23, 80, 0.62);
}

.tail-background .room-card {
  border-color: rgba(179, 228, 255, 0.58);
  background: rgba(3, 31, 101, 0.76);
  box-shadow: 0 13px 30px rgba(0, 25, 92, 0.26), inset 0 1px 0 rgba(255, 255, 255, 0.14);
}

.tail-background .room-card figcaption {
  background: linear-gradient(180deg, rgba(2, 18, 68, 0.08), rgba(2, 21, 77, 0.94));
}

.tail-background .room-card h4,
.tail-background .room-card figcaption > span {
  color: #fff;
  text-shadow: 0 2px 10px rgba(0, 20, 72, 0.72);
}

.tail-background .room-card p {
  color: #cfeeff;
}

.tail-background .hall-tabs button {
  border-color: rgba(187, 231, 255, 0.5);
  color: #e7f8ff;
  background: rgba(3, 35, 112, 0.72);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

.tail-background .hall-tabs button.is-active {
  border-color: #91edff;
  color: #06255c;
  background: linear-gradient(110deg, #dff8ff, #8eeaff 58%, #8fbaff);
  box-shadow: 0 8px 20px rgba(0, 38, 115, 0.3), 0 0 16px rgba(105, 231, 255, 0.22);
}

.tail-background .hall-panel {
  overflow: hidden;
  border-color: rgba(190, 233, 255, 0.74);
  background: rgba(245, 251, 255, 0.96);
  box-shadow: 0 18px 38px rgba(0, 27, 102, 0.28), inset 0 1px 0 #fff;
}

.tail-background .hall-panel__body {
  background: rgba(247, 252, 255, 0.97);
}

.tail-background .hall-panel__title,
.tail-background .hall-panel dl div {
  border-color: rgba(21, 93, 174, 0.2);
}

.tail-background .hall-panel__title h3,
.tail-background .hall-panel__title > strong {
  color: #0b479c;
}

.tail-background .hall-panel__title small,
.tail-background .hall-panel dt {
  color: #55789b;
}

.tail-background .hall-panel dd {
  color: #274f74;
}

.tail-background .venue-address,
.tail-background .date-card {
  border-color: rgba(195, 236, 255, 0.58);
  background: linear-gradient(135deg, rgba(3, 27, 99, 0.82), rgba(14, 85, 179, 0.58));
  box-shadow: 0 16px 36px rgba(0, 26, 97, 0.25), inset 0 1px 0 rgba(255, 255, 255, 0.15);
  backdrop-filter: blur(12px);
}

.tail-background .venue-address small,
.tail-background .date-card small,
.tail-background .date-card__day span {
  color: #bee8fa;
}

.tail-background .venue-address strong,
.tail-background .date-card__place strong,
.tail-background .date-card__day strong {
  color: #fff;
  text-shadow: 0 2px 10px rgba(0, 25, 82, 0.6);
}

.tail-background .venue-address__icon {
  border-color: #8cecff;
  background: rgba(0, 27, 99, 0.4);
}

.tail-background .venue-address__icon svg,
.tail-background .date-card__place svg {
  stroke: #91edff;
}

.tail-background .venue-address > a {
  border-color: rgba(183, 229, 255, 0.28);
  color: #c8f2ff;
}

.tail-background .date-card > i {
  background: rgba(188, 232, 255, 0.3);
}

.tail-background .date-card__place {
  border-color: rgba(184, 230, 255, 0.26);
}

.tail-background .rally p {
  color: #8feaff;
  text-shadow: 0 2px 10px rgba(0, 24, 84, 0.7);
}

.tail-background .rally h3,
.tail-background .rally-invite b {
  color: #fff;
  text-shadow: 0 3px 14px rgba(0, 22, 78, 0.72);
}

.tail-background .rally-brand {
  border-color: rgba(177, 229, 255, 0.25);
  background: linear-gradient(90deg, transparent, rgba(0, 34, 120, 0.45), transparent);
}

.tail-background .rally-brand strong {
  color: #a8efff;
}

.tail-background .rally .rally-invite span,
.tail-background .fine-print {
  color: #d8f2ff;
  text-shadow: 0 2px 8px rgba(0, 23, 82, 0.6);
}

footer {
  border-color: rgba(176, 228, 255, 0.24);
  background:
    linear-gradient(180deg, rgba(2, 19, 71, 0.32), rgba(2, 13, 55, 0.58)),
    url("image/背景色.jpg") center bottom / 100% auto no-repeat,
    #082c91;
}

footer p {
  color: #fff;
  text-shadow: 0 2px 10px rgba(0, 22, 78, 0.7);
}

footer small {
  color: #bcecff;
}

.site-header .brand img {
  filter: brightness(0) invert(1) drop-shadow(0 0 9px rgba(94, 214, 255, 0.34));
  opacity: 0.94;
}

.site-header {
  border-bottom-color: rgba(113, 212, 255, 0.16);
  background: linear-gradient(180deg, rgba(2, 11, 42, 0.88), rgba(2, 11, 42, 0.28), transparent);
  backdrop-filter: none;
}

.menu-button span { background: #d7f5ff; }

@media (min-width: 521px) {
  body { background: #081a45; }
}

@media (prefers-reduced-motion: reduce) {
  .opening-splash.is-exiting,
  .opening-splash.is-exiting .opening-splash__poster > img,
  .opening-splash.is-exiting::after,
  .opening-splash.is-exiting .opening-splash__button,
  .opening-splash.is-exiting .opening-splash__flash {
    animation: none;
    transition: none;
  }
}
