.home-page {
  overflow: clip;
}

.home-page .section {
  padding-block: var(--space-10);
}

.home-hero {
  padding-block: var(--space-7) var(--space-9);
}

.home-hero__shell {
  display: grid;
  grid-template-columns: minmax(0, 6fr) minmax(0, 5fr);
  gap: var(--space-7);
  align-items: stretch;
  padding: var(--space-8);
  border-radius: var(--radius-hero);
  background: var(--color-navy-surface);
  color: var(--color-on-dark);
  position: relative;
  isolation: isolate;
}

.home-hero__shell::before {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 0;
  opacity: 0.08;
  background-image: radial-gradient(circle at 12% 18%, #fff 0 1px, transparent 2px), radial-gradient(circle at 85% 16%, #fff 0 1px, transparent 2px), radial-gradient(circle at 66% 74%, #fff 0 1px, transparent 2px);
  background-size: 74px 74px, 96px 96px, 120px 120px;
  border-radius: inherit;
}

.home-hero__copy,
.home-hero__media,
.home-story__copy,
.home-mission,
.home-orb__explanation,
.home-orb__figure,
.home-routes__lower > *,
.home-modes__grid > *,
.home-skins__copy,
.home-skins__ownership,
.home-fit__columns > *,
.home-verdict__copy,
.home-verdict__cta > * {
  min-width: 0;
}

.home-hero__copy {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-5);
  width: 100%;
}

.home-hero__copy > * { margin: 0; }
.home-hero__eyebrow {
  color: var(--color-on-dark-muted);
  font-family: var(--font-heading);
  font-size: var(--text-12);
  font-weight: var(--weight-bold);
  letter-spacing: .09em;
}
.home-hero h1 { color: var(--color-on-dark); max-width: 54ch; }
.home-hero__lead { max-width: 54ch; font-size: var(--text-18); line-height: 1.61; }
.home-hero__independence { max-width: 54ch; color: var(--color-on-dark-muted); font-size: var(--text-14); line-height: 1.5; }
.home-hero__actions { display: flex; width: 100%; min-width: 0; gap: var(--space-3); }
.home-hero__media { width: 100%; align-self: center; margin: 0; }
.home-hero__media img { width: 100%; border: 1px solid rgb(255 253 248 / .28); border-radius: var(--radius-panel); aspect-ratio: 16 / 10; object-fit: cover; }
.home-hero__media figcaption { color: var(--color-on-dark-muted); }

.home-facts__header { width: min(100%, 58ch); }
.home-facts__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--space-3); margin: var(--space-6) 0 0; }
.home-fact-card { min-width: 0; padding: var(--space-4); border: var(--border-default); border-radius: var(--radius-card); background: var(--color-surface-white); }
.home-fact-card dt { color: var(--color-ink-muted); font-family: var(--font-heading); font-size: var(--text-12); letter-spacing: .06em; text-transform: uppercase; }
.home-fact-card dd { margin: var(--space-1) 0 0; font-weight: var(--weight-bold); }
.home-fact-card--mint { border-color: var(--color-mint); background: var(--color-mint-soft); }
.home-fact-card--violet { border-color: var(--color-relic-violet); background: var(--color-violet-soft); }
.home-fact-card--gold { border-color: var(--color-legendary-gold); background: var(--color-gold-soft); }
.home-fact-card--coral { border-color: var(--color-combat-coral); background: var(--color-coral-soft); }
.home-facts__store-note { max-width: 70ch; margin-top: var(--space-5); padding: var(--space-4) var(--space-5); border-inline-start: 4px solid var(--color-combat-coral); background: var(--color-coral-soft); }
.home-facts__store-note p { margin: 0; }

.home-story__layout { display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 3fr); gap: var(--space-7); align-items: start; }
.home-story__copy { width: 100%; max-width: 45rem; }
.home-story__block { padding: var(--space-5); margin-top: var(--space-5); }
.home-story__block > :last-child { margin-bottom: 0; }
.home-story__guide-note { display: flex; flex-direction: column; gap: var(--space-2); max-width: 68ch; margin-top: var(--space-5); padding: var(--space-4) var(--space-5); border: 1px solid var(--color-mint); border-radius: var(--radius-card); background: var(--color-mint-soft); }
.home-story__guide-note > * { margin: 0; }
.home-mission { width: 100%; padding: var(--space-5); border: var(--border-default); border-radius: var(--radius-panel); background: var(--color-surface-white); }
.home-mission__track { display: flex; align-items: center; width: 100%; }
.home-mission__track span { display: grid; flex: 0 0 2rem; width: 2rem; min-width: 0; height: 2rem; place-items: center; border-radius: 50%; background: var(--color-moon-blue); color: #fff; font-weight: var(--weight-bold); }
.home-mission__track i { height: 1px; flex: 1 1 auto; min-width: 0; background: var(--color-moon-blue); }
.home-mission__list { display: flex; flex-direction: column; gap: var(--space-3); margin: var(--space-5) 0 0; padding: 0; list-style: none; }
.home-mission__list li { display: flex; flex-direction: column; gap: var(--space-1); }
.home-mission__list span { color: var(--color-ink-muted); font-size: var(--text-14); line-height: 1.43; }

.home-orb { background: var(--color-moon-blue-soft); }
.home-orb__top { display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); gap: var(--space-7); align-items: start; }
.home-orb__explanation { width: 100%; max-width: 66ch; }
.home-orb__figure { margin: 0; padding: var(--space-4); border: var(--border-default); border-radius: var(--radius-panel); background: var(--color-surface-white); overflow: hidden; }
.home-orb__zoom-controls { display: flex; gap: var(--space-2); margin-bottom: var(--space-3); }
.home-orb__zoom-controls button { min-width: 2.75rem; min-height: 2.75rem; padding: .5rem .75rem; border: 1px solid var(--color-ink-night); border-radius: var(--radius-technical); font-size: var(--text-14); font-weight: var(--weight-semibold); }
.home-orb__zoom-area { width: 100%; overflow: auto; }
.home-orb__zoom-area img { width: 100%; min-width: 0; border-radius: var(--radius-card); aspect-ratio: 4 / 3; object-fit: cover; transform-origin: center; transition: transform var(--transition-fast); }
.home-orb__zoom-area[data-zoom="large"] img { transform: scale(1.25); }
.home-orb__flow { display: flex; align-items: center; justify-content: center; gap: var(--space-2); margin-top: var(--space-3); color: var(--color-ink-night); font-size: var(--text-12); font-weight: var(--weight-bold); text-align: center; }
.home-orb__flow span { min-width: 0; padding: .3rem .45rem; border-radius: var(--radius-pill); background: var(--color-violet-soft); }
.home-orb__transcript { margin: var(--space-3) 0 0; color: var(--color-ink-muted); font-size: var(--text-14); line-height: 1.43; }
.home-orb__cards { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-5); margin-top: var(--space-6); }
.home-orb__gear-card, .home-orb__recommendation { min-width: 0; padding: var(--space-5); border-radius: var(--radius-panel); }
.home-orb__gear-card { border: 1px solid var(--color-legendary-gold); background: var(--color-gold-soft); }
.home-orb__recommendation { border: 1px solid var(--color-mint); background: var(--color-mint-soft); }
.home-orb__cards p { max-width: 42ch; }
.home-orb__cards > article > :last-child { margin-bottom: 0; }

.home-builds__header { width: min(100%, 62ch); }
.home-build-formula { margin: var(--space-6) 0; padding: var(--space-5); border: 1px solid var(--color-border-soft); border-radius: var(--radius-panel); background: var(--color-surface-white); }
.home-build-formula__items { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: var(--space-2); }
.home-build-formula__items > * { min-width: 0; }
.home-build-formula__items span { padding: .5rem .75rem; border: 1px solid currentColor; border-radius: var(--radius-card); font-size: var(--text-14); font-weight: var(--weight-bold); text-align: center; }
.home-build-formula__skill { color: var(--color-moon-blue); background: var(--color-moon-blue-soft); }.home-build-formula__tag { color: var(--color-mint); background: var(--color-mint-soft); }.home-build-formula__types { color: var(--color-combat-coral); background: var(--color-coral-soft); }.home-build-formula__relic { color: var(--color-relic-violet); background: var(--color-violet-soft); }.home-build-formula__gear { color: var(--color-legendary-gold); background: var(--color-gold-soft); }.home-build-formula__knight { color: var(--color-ink-night); background: var(--color-surface-white); }
.home-build-formula figcaption { max-width: 68ch; margin-inline: auto; text-align: left; }
.home-builds__cards { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-5); }
.home-build-card { min-width: 0; padding: var(--space-5); border: var(--border-default); border-radius: var(--radius-card); }
.home-build-card p { max-width: 62ch; }.home-build-card > :last-child { margin-bottom: 0; }
.home-build-card--moon { border-color: var(--color-moon-blue); background: var(--color-moon-blue-soft); }.home-build-card--violet { border-color: var(--color-relic-violet); background: var(--color-violet-soft); }.home-build-card--gold { border-color: var(--color-legendary-gold); background: var(--color-gold-soft); }.home-build-card--plain { background: var(--color-surface-white); }

.home-routes { background: #f0eee7; }
.home-routes__header { width: min(100%, 60ch); }.home-dungeons { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--space-4); margin-top: var(--space-6); }
.home-dungeons article { min-width: 0; padding: var(--space-4); border: var(--border-default); border-radius: var(--radius-card); background: var(--color-surface-white); }.home-dungeons h3 { font-size: var(--text-22); }.home-dungeons p { max-width: 42ch; }.home-dungeons article > :last-child { margin-bottom: 0; }
.home-routes__lower { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: var(--space-5); margin-top: var(--space-5); }
.home-trial, .home-fish { min-width: 0; padding: var(--space-5); border-radius: var(--radius-panel); }.home-trial { border: 1px solid var(--color-combat-coral); background: var(--color-coral-soft); }.home-fish { border: 1px solid var(--color-mint); background: var(--color-mint-soft); }.home-trial > :last-child, .home-fish > :last-child { margin-bottom: 0; }.home-fish__flow { padding: var(--space-3); border-radius: var(--radius-technical); background: rgb(255 253 248 / .75); font-weight: var(--weight-bold); }

.home-modes__grid { display: grid; grid-template-columns: minmax(0, 4fr) minmax(0, 5fr) minmax(0, 3fr); gap: var(--space-4); }.home-modes__grid article { min-width: 0; padding: var(--space-5); border-radius: var(--radius-panel); }.home-arena { border: 1px solid var(--color-combat-coral); background: var(--color-coral-soft); }.home-boss { border: 1px solid var(--color-navy-surface); background: var(--color-navy-surface); color: var(--color-on-dark); }.home-boss :is(h3, p) { color: inherit; }.home-guild { border: 1px solid var(--color-mint); background: var(--color-mint-soft); }.home-modes__grid p { max-width: 55ch; }.home-modes details { margin-top: var(--space-4); border-top: 1px solid var(--color-combat-coral); padding-top: var(--space-3); }.home-modes summary { cursor: pointer; font-weight: var(--weight-bold); }.home-modes details p { margin: var(--space-3) 0 0; font-size: var(--text-14); }

.home-skins__layout { display: grid; grid-template-columns: minmax(0, 8fr) minmax(0, 4fr); gap: var(--space-7); align-items: start; }.home-skins__copy { max-width: 64ch; }.home-skins__copy aside { display: flex; flex-direction: column; gap: var(--space-2); margin-top: var(--space-5); padding: var(--space-4) var(--space-5); border: 1px solid var(--color-mint); border-radius: var(--radius-card); background: var(--color-mint-soft); }.home-skins__copy aside > * { margin: 0; }.home-skins__ownership { padding: var(--space-5); border: 1px solid var(--color-legendary-gold); border-radius: var(--radius-panel); background: var(--color-gold-soft); }.home-skins__ownership p { max-width: 48ch; }.home-skins__ownership > div { display: flex; flex-wrap: wrap; align-items: center; gap: var(--space-2); padding-top: var(--space-3); border-top: 1px solid var(--color-legendary-gold); font-weight: var(--weight-bold); }.home-skins__ownership > div span { padding: .35rem .55rem; border-radius: var(--radius-pill); background: var(--color-surface-white); }

.home-steps { background: var(--color-moon-blue-soft); }.home-steps__header { width: min(100%, 68ch); }.home-steps__path { position: relative; display: flex; flex-direction: column; gap: var(--space-5); width: min(100%, 47.5rem); margin: var(--space-6) auto 0; }.home-steps__path::before { content: ""; position: absolute; top: 3rem; bottom: 2rem; left: 1rem; width: 1px; background: var(--color-moon-blue); }.home-steps__label { position: relative; width: fit-content; padding: .25rem .625rem; border: 1px solid var(--color-mint); border-radius: var(--radius-pill); background: var(--color-mint-soft); font-size: var(--text-12); font-weight: var(--weight-bold); }.home-steps__path article { position: relative; display: grid; grid-template-columns: 2rem minmax(0, 1fr); gap: var(--space-4); align-items: start; }.home-steps__path article > span { display: grid; z-index: 1; width: 2rem; height: 2rem; place-items: center; border-radius: 50%; background: var(--color-moon-blue); color: #fff; font-family: var(--font-heading); font-weight: var(--weight-bold); font-variant-numeric: tabular-nums; }.home-steps__path article > div { min-width: 0; }.home-steps__path h3 { margin-bottom: var(--space-2); }.home-steps__path p { max-width: 52ch; margin-bottom: 0; }.home-steps__cta { margin-top: var(--space-5); }

.home-mistakes__header { width: min(100%, 58ch); }.home-mistakes__grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--space-4); margin-top: var(--space-6); }.home-mistakes__grid article { display: flex; min-width: 0; flex-direction: column; gap: var(--space-3); padding: var(--space-4); border: 1px solid var(--color-combat-coral); border-radius: var(--radius-card); background: var(--color-coral-soft); }.home-mistakes__grid article > * { margin: 0; }.home-mistakes__grid h3 { font-size: var(--text-22); }.home-mistakes__grid p { max-width: 40ch; }.home-mistakes__grid div { margin-top: auto; padding-top: var(--space-3); border-top: 1px solid rgb(217 101 91 / .45); color: var(--color-ink-night); font-size: var(--text-14); line-height: 1.43; }

.home-fit__columns { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-5); margin-top: var(--space-5); }.home-fit__columns article { min-width: 0; padding: var(--space-5); border-radius: var(--radius-panel); }.home-fit__yes { border: 1px solid var(--color-mint); background: var(--color-mint-soft); }.home-fit__no { border: 1px solid var(--color-combat-coral); background: var(--color-coral-soft); }.home-fit__columns ul { max-width: 46ch; }.home-fit__columns p { max-width: 46ch; }.home-data-note { max-width: min(100%, 67.5rem); margin: var(--space-6) auto 0; padding: var(--space-5); border: 1px solid var(--color-combat-coral); border-radius: var(--radius-panel); background: var(--color-surface-white); }.home-data-note p { max-width: 72ch; }

.home-verdict { padding-top: var(--space-8) !important; }.home-verdict__panel { position: relative; display: flex; flex-direction: column; gap: var(--space-7); padding: var(--space-8); border: 1px solid var(--color-navy-surface); border-radius: var(--radius-hero); background: var(--color-navy-surface); color: var(--color-on-dark); overflow: hidden; }.home-verdict__panel::before { content: ""; position: absolute; inset: auto -5% -35% auto; width: 30rem; height: 30rem; border-radius: 50%; background: var(--color-moon-blue); opacity: .22; }.home-verdict__copy { position: relative; width: min(100%, 70ch); margin-inline: auto; }.home-verdict__copy :is(h2, h3) { color: var(--color-on-dark); }.home-verdict__copy p { color: var(--color-on-dark); }.home-verdict__points { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-5); margin-top: var(--space-5); }.home-verdict__points > div { min-width: 0; padding: var(--space-4); border: 1px solid rgb(255 253 248 / .3); border-radius: var(--radius-card); background: rgb(23 38 61 / .35); }.home-verdict__points > div > :last-child { margin-bottom: 0; }.home-verdict__cta { position: relative; display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: var(--space-5); align-items: center; width: min(100%, 68.75rem); margin-inline: auto; padding: var(--space-5); border-radius: var(--radius-panel); background: var(--color-moon-blue-soft); color: var(--color-ink-night); }.home-verdict__cta h2 { color: var(--color-ink-night); }.home-verdict__cta p { max-width: 55ch; margin-bottom: 0; }.home-verdict__cta .button { white-space: nowrap; }.home-verdict__image { position: relative; width: min(100%, 60rem); margin: 0 auto; }.home-verdict__image img { width: 100%; border: 1px solid rgb(255 253 248 / .25); border-radius: var(--radius-panel); aspect-ratio: 16 / 10; object-fit: cover; }

@media (max-width: 64rem) {
  .home-hero__shell { grid-template-columns: minmax(0, 1fr); gap: var(--space-6); }.home-hero__media { max-width: 48rem; }.home-facts__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }.home-orb__top { grid-template-columns: minmax(0, 1fr); }.home-orb__figure { max-width: 45rem; }.home-dungeons { grid-template-columns: repeat(2, minmax(0, 1fr)); }.home-modes__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }.home-boss { grid-column: 1 / -1; }.home-mistakes__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 56.25rem) {
  .home-page .section { padding-block: var(--space-8); }.home-story__layout, .home-skins__layout { grid-template-columns: minmax(0, 1fr); }.home-story__copy { max-width: 100%; }.home-mission { max-width: 45rem; }.home-routes__lower { grid-template-columns: minmax(0, 1fr); }.home-build-formula__items { justify-content: flex-start; }.home-verdict__panel { padding: var(--space-6); }
}

@media (max-width: 48.75rem) {
  .home-verdict__cta { grid-template-columns: minmax(0, 1fr); }.home-verdict__cta .button { width: 100%; }.home-verdict__points { grid-template-columns: minmax(0, 1fr); }
}

@media (max-width: 47.5rem) {
  .home-builds__cards, .home-fit__columns { grid-template-columns: minmax(0, 1fr); }.home-modes__grid { grid-template-columns: minmax(0, 1fr); }.home-boss { grid-column: auto; }
}

@media (max-width: 43.75rem) {
  .home-orb__cards { grid-template-columns: minmax(0, 1fr); }.home-dungeons { grid-template-columns: minmax(0, 1fr); }
}

@media (max-width: 38.75rem) {
  .home-facts__grid, .home-mistakes__grid { grid-template-columns: minmax(0, 1fr); }
}

@media (max-width: 48rem) {
  .home-hero { padding-block: var(--space-5) var(--space-8); }.home-hero__shell { padding: var(--space-4); border-radius: var(--radius-panel); }.home-hero__shell::before { display: none; }.home-hero h1 { font-size: 2.375rem; line-height: 1.1; }.home-hero__lead { font-size: var(--text-18); line-height: 1.61; }.home-hero__media { margin-top: var(--space-2); }.home-facts__store-note, .home-story__block, .home-story__guide-note, .home-orb__gear-card, .home-orb__recommendation, .home-build-card, .home-trial, .home-fish, .home-modes__grid article, .home-skins__ownership, .home-data-note { padding: var(--space-4); }.home-mission { padding: var(--space-4); }.home-orb__flow { align-items: stretch; flex-direction: column; }.home-orb__flow b { display: none; }.home-build-formula { padding: var(--space-4); }.home-build-formula__items { flex-direction: column; align-items: stretch; }.home-build-formula__items b { text-align: center; }.home-build-formula__items span { width: 100%; }.home-steps__path { gap: var(--space-5); }.home-verdict__panel { padding: var(--space-4); border-radius: var(--radius-panel); }.home-verdict__panel::before { display: none; }.home-verdict__cta { padding: var(--space-4); }.home-verdict__cta h2 { font-size: 2rem; }.home-verdict__image { display: none; }
}

@media (max-width: 22.5rem) {
  .home-steps__path::before { display: none; }.home-steps__path article { grid-template-columns: minmax(0, 1fr); gap: var(--space-2); }.home-steps__path article > span { width: 2rem; }.home-steps__label { margin-bottom: var(--space-2); }
}

@media (prefers-reduced-motion: reduce) {
  .home-orb__zoom-area img { transition: none; }
}
