/*
Theme Name: Lnest.Alow NEO SIGNAL
Theme URI: https://lnestalow.ramsit-pro.com/
Description: Lnest.Alow公式サイトのアーティスティック／デジタル全面刷新版。
Author: RAMSith / Lnest.Alow
Template: lnestalow
Version: 2.5.5
Text Domain: lnestalow-refined
*/

:root {
  --neo-ink: #030608;
  --neo-ink-2: #071014;
  --neo-panel: rgba(10, 20, 24, .76);
  --neo-line: rgba(180, 242, 239, .17);
  --neo-white: #eef8f6;
  --neo-mute: #87a4a6;
  --neo-cyan: #6df7ff;
  --neo-teal: #19e3b1;
  --neo-orange: #ff6b3d;
  --neo-lime: #ceff75;
  --neo-display: "Barlow Condensed", sans-serif;
  --neo-sans: "Space Grotesk", "Noto Sans JP", sans-serif;
  --neo-jp: "Noto Sans JP", sans-serif;
  --neo-brush: "Yuji Boku", "Yu Mincho", serif;
  --neo-pad: clamp(20px, 5vw, 78px);
  --neo-max: 1540px;
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
  background: var(--neo-ink);
}

body.lnestalow-neo-page {
  margin: 0;
  overflow-x: hidden;
  color: var(--neo-white);
  background:
    radial-gradient(circle at 82% 8%, rgba(25, 227, 177, .09), transparent 28rem),
    radial-gradient(circle at 10% 38%, rgba(255, 107, 61, .08), transparent 25rem),
    var(--neo-ink);
  font-family: var(--neo-sans);
  font-weight: 300;
  font-size: 16px;
  line-height: 1.7;
  -webkit-font-smoothing: antialiased;
}

body.lnestalow-neo-page.admin-bar .neo-header {
  top: 32px;
}

body.lnestalow-neo-page img {
  max-width: 100%;
}

body.lnestalow-neo-page a {
  color: inherit;
}

body.lnestalow-neo-page ::selection {
  color: #000;
  background: var(--neo-cyan);
}

.neo-skip {
  position: fixed;
  z-index: 10000;
  top: 10px;
  left: 10px;
  padding: 8px 14px;
  color: #000;
  background: var(--neo-cyan);
  transform: translateY(-160%);
}

.neo-skip:focus {
  transform: none;
}

.neo-noise {
  position: fixed;
  z-index: 90;
  inset: 0;
  pointer-events: none;
  opacity: .055;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.82' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.7'/%3E%3C/svg%3E");
  mix-blend-mode: soft-light;
}

.neo-progress {
  position: fixed;
  z-index: 1000;
  top: 0;
  left: 0;
  width: 100%;
  height: 2px;
  background: rgba(255, 255, 255, .05);
}

.neo-progress i {
  display: block;
  width: 100%;
  height: 100%;
  background: linear-gradient(90deg, var(--neo-orange), var(--neo-cyan), var(--neo-lime));
  transform: scaleX(0);
  transform-origin: left;
  box-shadow: 0 0 18px var(--neo-cyan);
}

.neo-site {
  position: relative;
  overflow: clip;
}

.neo-header {
  position: fixed;
  z-index: 900;
  top: 0;
  left: 0;
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  width: 100%;
  min-height: 76px;
  padding: 0 var(--neo-pad);
  border-bottom: 1px solid rgba(109, 247, 255, .15);
  background: rgba(3, 6, 8, .72);
  backdrop-filter: blur(20px) saturate(140%);
}

.neo-brand {
  display: grid;
  grid-template-columns: 10px auto;
  align-items: center;
  gap: 0 12px;
  text-decoration: none;
  letter-spacing: .04em;
}

.neo-brand__pulse {
  grid-row: 1 / 3;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--neo-teal);
  box-shadow: 0 0 0 0 rgba(25, 227, 177, .6);
  animation: neo-pulse 1.8s infinite;
}

.neo-brand strong {
  font: 300 1rem/1 var(--neo-sans);
}

.neo-brand small {
  color: var(--neo-mute);
  font: 300 .52rem/1.5 var(--neo-sans);
  letter-spacing: .2em;
}

.neo-nav {
  justify-self: end;
  display: flex;
  align-items: center;
  gap: clamp(20px, 3vw, 48px);
}

.neo-nav a {
  position: relative;
  color: #b7cbcb;
  font: 300 .65rem/1 var(--neo-sans);
  letter-spacing: .17em;
  text-decoration: none;
}

.neo-nav a::after {
  position: absolute;
  right: 0;
  bottom: -10px;
  left: 0;
  height: 1px;
  content: "";
  background: var(--neo-cyan);
  transform: scaleX(0);
  transform-origin: right;
  transition: transform .3s ease;
}

.neo-nav a:hover::after,
.neo-nav a:focus-visible::after {
  transform: scaleX(1);
  transform-origin: left;
}

.neo-nav__feature {
  display: grid;
  min-width: 98px;
  padding: 9px 13px;
  border: 1px solid rgba(109, 247, 255, .32);
  background: rgba(109, 247, 255, .035);
}

.neo-nav__feature small {
  color: var(--neo-orange);
  font-size: .42rem;
  letter-spacing: .2em;
}

.neo-nav__feature strong {
  margin-top: 3px;
  color: var(--neo-white);
  font: 300 1rem/1 var(--neo-display);
  letter-spacing: .12em;
}

.neo-nav__feature:hover,
.neo-nav__feature:focus-visible {
  border-color: var(--neo-cyan);
  background: rgba(109, 247, 255, .09);
}

.neo-nav__feature::after {
  display: none;
}

.neo-menu-toggle {
  display: none;
}

.neo-loader {
  position: fixed;
  z-index: 9999;
  inset: 0;
  display: grid;
  place-content: center;
  color: var(--neo-white);
  background:
    linear-gradient(rgba(109, 247, 255, .04) 1px, transparent 1px),
    linear-gradient(90deg, rgba(109, 247, 255, .04) 1px, transparent 1px),
    #020405;
  background-size: 34px 34px;
  transition: visibility .7s, opacity .7s, transform .7s cubic-bezier(.76, 0, .24, 1);
}

.neo-loader.is-off {
  visibility: hidden;
  opacity: 0;
  transform: translateY(-100%);
}

.neo-loader__kanji {
  display: flex;
  justify-content: center;
  gap: clamp(4px, 2vw, 34px);
  font: 400 clamp(4rem, 13vw, 10rem)/1 var(--neo-brush);
}

.neo-loader__kanji span {
  opacity: 0;
  filter: blur(18px);
  transform: translateY(24px) skewX(-8deg);
  animation: neo-kanji-in .42s forwards;
}

.neo-loader__kanji span:nth-child(2) { animation-delay: .3s; }
.neo-loader__kanji span:nth-child(3) { animation-delay: .6s; }
.neo-loader__kanji span:nth-child(4) { animation-delay: .9s; }

.neo-loader__line {
  width: min(520px, 75vw);
  height: 1px;
  margin: 30px auto 16px;
  overflow: hidden;
  background: rgba(255,255,255,.12);
}

.neo-loader__line i {
  display: block;
  width: 100%;
  height: 100%;
  background: linear-gradient(90deg, var(--neo-orange), var(--neo-cyan));
  transform: translateX(-100%);
  animation: neo-load 1.7s .2s ease forwards;
}

.neo-loader p {
  margin: 0;
  color: var(--neo-mute);
  font-size: .55rem;
  letter-spacing: .28em;
  text-align: center;
}

.neo-icons {
  position: relative;
  min-height: 100svh;
  padding: clamp(122px, 14vh, 170px) 0 56px;
  overflow: hidden;
  border-bottom: 1px solid var(--neo-line);
  background:
    radial-gradient(circle at 14% 22%, rgba(255, 107, 61, .1), transparent 24rem),
    radial-gradient(circle at 84% 70%, rgba(109, 247, 255, .09), transparent 26rem),
    linear-gradient(180deg, #020304, #060b0d 78%, #030608);
  isolation: isolate;
}

.neo-icons::before {
  position: absolute;
  z-index: -1;
  inset: 0;
  content: "";
  opacity: .45;
  background:
    linear-gradient(rgba(109, 247, 255, .04) 1px, transparent 1px),
    linear-gradient(90deg, rgba(109, 247, 255, .04) 1px, transparent 1px);
  background-size: 54px 54px;
  mask-image: linear-gradient(to bottom, black, transparent 85%);
}

.neo-icons__head {
  display: grid;
  grid-template-columns: minmax(180px, .45fr) 1fr;
  align-items: end;
  gap: clamp(28px, 6vw, 110px);
  width: min(100%, var(--neo-max));
  margin: 0 auto clamp(38px, 6vh, 70px);
  padding: 0 var(--neo-pad);
}

.neo-icons__head p {
  margin: 0 0 8px;
  color: var(--neo-orange);
  font: 300 .58rem/1.4 var(--neo-sans);
  letter-spacing: .22em;
}

.neo-icons__head h2 {
  margin: 0;
  font: 200 clamp(4.6rem, 10vw, 10.5rem)/.74 var(--neo-display);
  letter-spacing: -.025em;
  text-transform: uppercase;
}

.neo-icons__head h2 span {
  color: transparent;
  -webkit-text-stroke: 1px rgba(238, 248, 246, .42);
}

.neo-icons__viewport {
  width: 100%;
  overflow: hidden;
  mask-image: linear-gradient(90deg, transparent, #000 5%, #000 95%, transparent);
}

.neo-icon-sequence {
  position: relative;
  min-height: clamp(420px, 46vw, 690px);
}

.neo-icon-sequence > .neo-icons__viewport,
.neo-globe-stage,
.neo-icons-finale {
  position: absolute;
  inset: 0;
}

.neo-icon-sequence > .neo-icons__viewport {
  display: flex;
  align-items: center;
}

.neo-globe-stage,
.neo-icons-finale {
  visibility: hidden;
  opacity: 0;
}

.neo-icon-sequence.is-live > .neo-icons__viewport {
  animation: neo-stage-portraits 20s ease forwards;
}

.neo-icon-sequence.is-live .neo-globe-stage {
  animation: neo-stage-globe 20s ease forwards;
}

.neo-icon-sequence.is-live .neo-icons-finale {
  animation: neo-stage-finale 20s ease forwards;
}

.neo-globe-stage {
  display: grid;
  grid-template-columns: .36fr 1fr;
  align-items: center;
  width: min(100%, var(--neo-max));
  margin: 0 auto;
  padding: 0 var(--neo-pad);
}

.neo-globe-stage__copy {
  position: relative;
  z-index: 4;
  display: grid;
  gap: 14px;
}

.neo-globe-stage__copy small {
  color: var(--neo-orange);
  font-size: .52rem;
  letter-spacing: .24em;
}

.neo-globe-stage__copy strong {
  font: 200 clamp(3.2rem, 6vw, 7.2rem)/.82 var(--neo-display);
  letter-spacing: -.02em;
}

.neo-globe {
  position: relative;
  justify-self: stretch;
  aspect-ratio: 800 / 420;
  min-width: 0;
}

.neo-globe__sphere {
  position: absolute;
  top: 14%;
  left: 31.25%;
  width: 37.5%;
  aspect-ratio: 1;
  overflow: hidden;
  border: 1px solid rgba(109, 247, 255, .55);
  border-radius: 50%;
  background:
    repeating-radial-gradient(ellipse at center, transparent 0 13%, rgba(109, 247, 255, .14) 13.5% 14%, transparent 14.5% 27%),
    repeating-linear-gradient(90deg, transparent 0 34px, rgba(109, 247, 255, .14) 35px 36px),
    radial-gradient(circle at 35% 28%, rgba(109, 247, 255, .16), rgba(3, 8, 10, .6) 58%, #030608 72%);
  box-shadow: inset -32px -16px 70px rgba(0,0,0,.85), 0 0 70px rgba(109,247,255,.12);
  animation: neo-globe-roll 9s linear infinite;
}

.neo-globe__sphere::before,
.neo-globe__sphere::after {
  position: absolute;
  content: "";
  border: 1px solid rgba(109, 247, 255, .22);
  border-radius: 50%;
}

.neo-globe__sphere::before {
  inset: 8% 29%;
}

.neo-globe__sphere::after {
  inset: 8% 43%;
}

.neo-globe svg {
  position: absolute;
  z-index: 2;
  inset: 0;
  width: 100%;
  height: 100%;
  overflow: visible;
}

.neo-globe__routes line {
  stroke: rgba(255, 107, 61, .66);
  stroke-width: 1;
  stroke-dasharray: 420;
  stroke-dashoffset: 420;
}

.is-live .neo-globe__routes line {
  animation: neo-draw-route 4.8s 6.4s ease forwards;
}

.neo-globe__points circle {
  fill: var(--neo-cyan);
  filter: drop-shadow(0 0 7px var(--neo-cyan));
}

.neo-globe__points .neo-globe__home {
  fill: var(--neo-orange);
  filter: drop-shadow(0 0 12px var(--neo-orange));
}

.neo-origin-list {
  position: absolute;
  right: var(--neo-pad);
  bottom: 4%;
  left: var(--neo-pad);
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 6px 13px;
  color: #688184;
  font-size: .44rem;
  letter-spacing: .12em;
}

.neo-origin-list strong {
  color: var(--neo-cyan);
  font-weight: 300;
}

.neo-icons-finale {
  display: grid;
  place-items: center;
}

.neo-icons-finale__image {
  position: absolute;
  width: min(1050px, 92vw);
  aspect-ratio: 16 / 8.2;
  overflow: hidden;
  border: 1px solid rgba(238, 248, 246, .11);
  background: #020304;
  box-shadow: 0 40px 100px rgba(0,0,0,.72);
}

.neo-icons-finale__image::after {
  position: absolute;
  z-index: 20;
  inset: 0;
  content: "";
  background:
    linear-gradient(90deg, rgba(3,6,8,.78), transparent 18% 82%, rgba(3,6,8,.78)),
    linear-gradient(180deg, rgba(3,6,8,.12), transparent 42%, rgba(3,6,8,.9)),
    repeating-linear-gradient(0deg, transparent 0 3px, rgba(255,255,255,.025) 3px 4px);
}

.neo-icons-finale__image img {
  position: absolute;
  inset: -8%;
  width: 116%;
  height: 116%;
  object-fit: cover;
  opacity: .58;
  filter: grayscale(1) contrast(1.35) brightness(.7);
  mix-blend-mode: screen;
  transform: scale(1.04);
}

.neo-icons-finale__image img:nth-child(1) { clip-path: inset(0 86% 0 0); }
.neo-icons-finale__image img:nth-child(2) { clip-path: inset(0 76% 0 8%); }
.neo-icons-finale__image img:nth-child(3) { clip-path: inset(0 66% 0 18%); }
.neo-icons-finale__image img:nth-child(4) { clip-path: inset(0 56% 0 28%); }
.neo-icons-finale__image img:nth-child(5) { clip-path: inset(0 46% 0 38%); }
.neo-icons-finale__image img:nth-child(6) { clip-path: inset(0 36% 0 48%); }
.neo-icons-finale__image img:nth-child(7) { clip-path: inset(0 26% 0 58%); }
.neo-icons-finale__image img:nth-child(8) { clip-path: inset(0 16% 0 68%); }
.neo-icons-finale__image img:nth-child(9) { clip-path: inset(0 6% 0 78%); }
.neo-icons-finale__image img:nth-child(10) { clip-path: inset(0 0 0 88%); }

.neo-icons-finale__words {
  position: relative;
  z-index: 30;
  display: grid;
  grid-template-columns: repeat(4, auto);
  align-items: center;
  justify-content: center;
  gap: clamp(4px, 2vw, 28px);
  color: rgba(238, 248, 246, .93);
  text-shadow: 0 3px 24px #000, 0 0 55px rgba(109,247,255,.2);
}

.neo-icons-finale__words > span {
  opacity: 0;
  font: 400 clamp(5rem, 13vw, 13rem)/1 var(--neo-brush);
  filter: blur(12px);
  transform: translateY(18px);
}

.is-live .neo-icons-finale__words > span {
  animation: neo-final-word .65s ease forwards;
}

.is-live .neo-icons-finale__words > span:nth-child(1) { animation-delay: 15.2s; }
.is-live .neo-icons-finale__words > span:nth-child(2) { animation-delay: 15.55s; }
.is-live .neo-icons-finale__words > span:nth-child(3) { animation-delay: 15.9s; }
.is-live .neo-icons-finale__words > span:nth-child(4) { animation-delay: 16.25s; }

.neo-icons-finale__words small {
  grid-column: 1 / -1;
  margin-top: 16px;
  color: rgba(238, 248, 246, .66);
  font: 300 .52rem/1.5 var(--neo-sans);
  letter-spacing: .24em;
  text-align: center;
}

.neo-icons__track {
  --icon-gap: 18px;
  display: flex;
  gap: var(--icon-gap);
  width: max-content;
  padding: 0 0 4px;
  animation: neo-icons-loop 56s linear infinite;
  will-change: transform;
}

.neo-icons__track:hover {
  animation-play-state: paused;
}

.neo-icon {
  position: relative;
  flex: 0 0 clamp(158px, 16vw, 248px);
  aspect-ratio: .72;
  overflow: hidden;
  border: 1px solid rgba(238, 248, 246, .15);
  background: #0a0c0d;
}

.neo-icon:nth-child(3n + 2) {
  transform: translateY(18px);
}

.neo-icon:nth-child(4n) {
  transform: translateY(-14px);
}

.neo-icon::before,
.neo-icon::after {
  position: absolute;
  z-index: 2;
  inset: 0;
  content: "";
  pointer-events: none;
}

.neo-icon::before {
  background:
    linear-gradient(180deg, transparent 38%, rgba(1, 3, 4, .94)),
    repeating-linear-gradient(0deg, transparent 0 3px, rgba(255, 255, 255, .035) 3px 4px);
}

.neo-icon::after {
  opacity: 0;
  background: linear-gradient(135deg, rgba(109, 247, 255, .23), transparent 48%, rgba(255, 107, 61, .22));
  mix-blend-mode: screen;
  transition: opacity .45s;
}

.neo-icon:hover::after {
  opacity: 1;
}

.neo-icon img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: grayscale(1) contrast(1.24) brightness(.76);
  transform: scale(1.02);
  transition: filter .5s, transform .8s cubic-bezier(.2,.8,.2,1);
}

.neo-icon:hover img {
  filter: grayscale(.15) contrast(1.12) brightness(.86);
  transform: scale(1.075);
}

.neo-icon > div {
  position: absolute;
  z-index: 3;
  right: 14px;
  bottom: 14px;
  left: 14px;
  display: grid;
  gap: 5px;
}

.neo-icon small {
  color: var(--neo-cyan);
  font: 300 .48rem/1 var(--neo-sans);
  letter-spacing: .25em;
}

.neo-icon strong {
  font: 200 clamp(1.35rem, 2.2vw, 2.4rem)/.9 var(--neo-display);
  letter-spacing: .035em;
}

.neo-icons__line {
  margin: 42px var(--neo-pad) 0;
  color: rgba(238, 248, 246, .74);
  font: 200 clamp(1.25rem, 2.2vw, 2rem)/1 var(--neo-display);
  letter-spacing: .18em;
  text-align: center;
}

.neo-icons__sources {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 6px 12px;
  margin: 18px auto 0;
  padding: 0 var(--neo-pad);
  color: #52686a;
  font-size: .42rem;
  letter-spacing: .1em;
}

.neo-icons__sources a {
  text-decoration: none;
}

.neo-icons__sources a:hover,
.neo-icons__sources a:focus-visible {
  color: var(--neo-cyan);
}

.neo-icons__license {
  flex-basis: 100%;
  margin-top: 3px;
  text-align: center;
}

.neo-hero {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, .86fr) minmax(380px, 1.14fr);
  align-items: center;
  min-height: 100svh;
  padding: clamp(120px, 13vh, 180px) var(--neo-pad) 96px;
  border-bottom: 1px solid var(--neo-line);
  isolation: isolate;
}

.neo-hero__grid {
  position: absolute;
  z-index: -2;
  inset: 0;
  background:
    linear-gradient(rgba(109, 247, 255, .055) 1px, transparent 1px),
    linear-gradient(90deg, rgba(109, 247, 255, .055) 1px, transparent 1px);
  background-size: 5vw 5vw;
  mask-image: linear-gradient(to bottom, black 20%, transparent 92%);
  perspective: 500px;
  transform: skewY(-4deg) scale(1.1);
}

.neo-hero::before {
  position: absolute;
  z-index: -1;
  top: 3%;
  left: 52%;
  width: 42vw;
  height: 42vw;
  border: 1px solid rgba(109, 247, 255, .12);
  border-radius: 50%;
  content: "";
  box-shadow:
    0 0 0 4vw rgba(109,247,255,.018),
    0 0 0 9vw rgba(109,247,255,.012);
}

.neo-eyebrow,
.neo-kicker {
  color: var(--neo-mute);
  font: 300 .64rem/1.4 var(--neo-sans);
  letter-spacing: .2em;
  text-transform: uppercase;
}

.neo-eyebrow span {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-right: 16px;
  color: var(--neo-teal);
}

.neo-eyebrow span::before {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  content: "";
  background: currentColor;
  box-shadow: 0 0 14px currentColor;
}

.neo-hero h1 {
  margin: 24px 0 2px;
  font: 200 clamp(7.5rem, 16.5vw, 18rem)/.68 var(--neo-display);
  letter-spacing: -.035em;
  text-transform: uppercase;
}

.neo-hero h1 > span {
  display: block;
}

.neo-hero__small {
  color: transparent;
  font-size: .47em;
  letter-spacing: .06em;
  -webkit-text-stroke: 1px rgba(238, 248, 246, .62);
}

.neo-hero__lead {
  margin: 44px 0 22px;
  font: 200 clamp(2rem, 4vw, 4.5rem)/1.2 var(--neo-jp);
  letter-spacing: -.035em;
}

.neo-hero__lead em {
  color: var(--neo-cyan);
  font-style: normal;
  text-shadow: 0 0 38px rgba(109, 247, 255, .32);
}

.neo-hero__text {
  max-width: 630px;
  margin: 0;
  color: #afc1c1;
  font-family: var(--neo-jp);
  font-size: clamp(.9rem, 1.1vw, 1.05rem);
}

.neo-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 40px;
}

.neo-button {
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  min-width: 190px;
  padding: 17px 18px;
  border: 1px solid rgba(238, 248, 246, .25);
  font: 300 .66rem/1 var(--neo-sans);
  letter-spacing: .14em;
  text-decoration: none;
  transition: border-color .25s, color .25s, background .25s, transform .25s;
}

.neo-button:hover,
.neo-button:focus-visible {
  border-color: var(--neo-cyan);
  color: var(--neo-cyan);
  transform: translateY(-3px);
}

.neo-button--primary {
  border-color: var(--neo-cyan);
  color: #001416 !important;
  background: var(--neo-cyan);
  box-shadow: 0 0 30px rgba(109, 247, 255, .15);
}

.neo-button--primary:hover,
.neo-button--primary:focus-visible {
  color: #001416 !important;
  background: var(--neo-lime);
}

.neo-hero__visual {
  position: relative;
  justify-self: end;
  width: min(47vw, 760px);
  transform: perspective(1000px) rotateY(calc(var(--mx, 0) * 2deg)) rotateX(calc(var(--my, 0) * -2deg));
  transition: transform .3s ease-out;
}

.neo-hero__visual figure {
  position: relative;
  margin: 0;
  overflow: hidden;
  border: 1px solid rgba(109, 247, 255, .24);
  clip-path: polygon(0 8%, 8% 0, 100% 0, 100% 92%, 92% 100%, 0 100%);
  background: #091216;
}

.neo-hero__visual figure::before,
.neo-hero__visual figure::after {
  position: absolute;
  z-index: 2;
  content: "";
  pointer-events: none;
}

.neo-hero__visual figure::before {
  inset: 0;
  background:
    linear-gradient(90deg, rgba(25,227,177,.2), transparent 35%, rgba(255,107,61,.18)),
    repeating-linear-gradient(0deg, rgba(255,255,255,.028) 0 1px, transparent 1px 4px);
  mix-blend-mode: screen;
}

.neo-hero__visual figure::after {
  top: 0;
  left: 0;
  width: 100%;
  height: 8%;
  background: linear-gradient(180deg, transparent, rgba(109,247,255,.14), transparent);
  animation: neo-scan 5s linear infinite;
}

.neo-hero__visual img {
  display: block;
  width: 100%;
  aspect-ratio: 4 / 5;
  object-fit: cover;
  filter: grayscale(.34) contrast(1.18) saturate(.7);
}

.neo-hero__visual figcaption {
  position: absolute;
  z-index: 3;
  right: 18px;
  bottom: 14px;
  color: var(--neo-cyan);
  font-size: .55rem;
  letter-spacing: .18em;
}

.neo-hero__orbit {
  position: absolute;
  z-index: 3;
  top: -7%;
  right: -8%;
  width: 34%;
  aspect-ratio: 1;
  border: 1px dashed rgba(206, 255, 117, .48);
  border-radius: 50%;
  pointer-events: none;
  animation: neo-spin 18s linear infinite;
}

.neo-hero__orbit::before,
.neo-hero__orbit::after {
  position: absolute;
  border-radius: 50%;
  content: "";
}

.neo-hero__orbit::before {
  inset: 17%;
  border: 1px solid rgba(109,247,255,.35);
}

.neo-hero__orbit::after {
  top: -4px;
  left: 50%;
  width: 8px;
  height: 8px;
  background: var(--neo-orange);
  box-shadow: 0 0 20px var(--neo-orange);
}

.neo-hero__telemetry {
  position: absolute;
  z-index: 4;
  top: 8%;
  left: -8%;
  display: grid;
  gap: 3px;
  padding: 12px 15px;
  border-left: 2px solid var(--neo-orange);
  background: rgba(3, 6, 8, .72);
  backdrop-filter: blur(10px);
}

.neo-hero__telemetry span {
  color: #bed0d0;
  font-size: .5rem;
  letter-spacing: .16em;
}

.neo-hero__ticker {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  overflow: hidden;
  padding: 10px 0;
  border-top: 1px solid rgba(109,247,255,.14);
  color: var(--neo-cyan);
  font-size: .55rem;
  letter-spacing: .24em;
  white-space: nowrap;
}

.neo-hero__ticker div {
  width: max-content;
  animation: neo-ticker 24s linear infinite;
}

.neo-section {
  position: relative;
  width: min(100%, var(--neo-max));
  margin: 0 auto;
  padding: clamp(90px, 11vw, 180px) var(--neo-pad);
}

.neo-section__index {
  margin-bottom: 18px;
  color: var(--neo-teal);
  font: 300 .58rem/1 var(--neo-sans);
  letter-spacing: .2em;
}

.neo-section__head {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 40px;
  margin-bottom: clamp(36px, 5vw, 72px);
}

.neo-section__head h2 {
  margin: 0;
  font: 200 clamp(3.8rem, 8vw, 8rem)/.86 var(--neo-display);
  letter-spacing: -.02em;
}

.neo-section__head h2 span,
.neo-music h2 span {
  color: transparent;
  -webkit-text-stroke: 1px rgba(109, 247, 255, .65);
}

.neo-section__head > p {
  max-width: 360px;
  margin: 0;
  color: var(--neo-mute);
  font-family: var(--neo-jp);
  font-size: .8rem;
  text-align: right;
}

.neo-manifesto {
  display: grid;
  grid-template-columns: .15fr 1fr .85fr;
  align-items: center;
  gap: clamp(30px, 5vw, 86px);
  min-height: 100svh;
}

.neo-manifesto::before {
  position: absolute;
  z-index: -1;
  inset: 8% var(--neo-pad);
  border: 1px solid rgba(109,247,255,.08);
  content: "";
  transform: skewX(-5deg);
}

.neo-manifesto__kanji {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  align-items: center;
  gap: clamp(4px, 1vw, 18px);
  writing-mode: vertical-rl;
}

.neo-manifesto__kanji span {
  position: relative;
  font: 400 clamp(7rem, 13vw, 14rem)/.8 var(--neo-brush);
  text-shadow: 12px 18px 0 rgba(109,247,255,.045);
}

.neo-manifesto__kanji span:nth-child(2) { color: var(--neo-cyan); transform: translateY(9%); }
.neo-manifesto__kanji span:nth-child(3) { color: transparent; -webkit-text-stroke: 1px var(--neo-white); transform: translateY(-7%); }
.neo-manifesto__kanji span:nth-child(4) { color: var(--neo-orange); transform: translateY(4%); }

.neo-manifesto__copy h2 {
  margin: 26px 0 36px;
  font: 200 clamp(3.2rem, 6.4vw, 7.4rem)/.9 var(--neo-display);
  letter-spacing: -.025em;
}

.neo-manifesto__copy > p:not(.neo-kicker) {
  color: #a8baba;
  font-family: var(--neo-jp);
}

.neo-manifesto__strong {
  padding-left: 18px;
  border-left: 2px solid var(--neo-orange);
  color: var(--neo-white) !important;
  font-weight: 300;
}

.neo-latest {
  border-top: 1px solid var(--neo-line);
}

.neo-latest__grid {
  display: grid;
  grid-template-columns: 1.15fr .85fr .85fr;
  gap: clamp(12px, 2vw, 28px);
}

.neo-drop {
  position: relative;
  display: grid;
  align-content: start;
  min-width: 0;
  border: 1px solid var(--neo-line);
  text-decoration: none;
  background: rgba(255,255,255,.018);
  transition: border-color .35s, transform .35s, background .35s;
}

.neo-drop:hover,
.neo-drop:focus-visible {
  border-color: var(--neo-cyan);
  background: rgba(109,247,255,.035);
  transform: translateY(-8px);
}

.neo-drop__art {
  position: relative;
  aspect-ratio: 1;
  overflow: hidden;
}

.neo-drop--main .neo-drop__art {
  aspect-ratio: 1.15 / 1;
}

.neo-drop__art::after {
  position: absolute;
  inset: 0;
  content: "";
  background: linear-gradient(135deg, rgba(25,227,177,.15), transparent 38%, rgba(255,107,61,.17));
  mix-blend-mode: screen;
}

.neo-drop__art img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: saturate(.75) contrast(1.12);
  transition: transform .8s cubic-bezier(.2,.8,.2,1), filter .5s;
}

.neo-drop:hover img,
.neo-drop:focus-visible img {
  filter: saturate(1.05) contrast(1.08);
  transform: scale(1.05);
}

.neo-drop__play {
  position: absolute;
  z-index: 2;
  right: 0;
  bottom: 0;
  padding: 10px 14px;
  color: #00100d;
  background: var(--neo-teal);
  font-size: .55rem;
  font-weight: 300;
  letter-spacing: .12em;
}

.neo-drop__meta {
  padding: 20px;
}

.neo-drop__meta > span {
  color: var(--neo-orange);
  font-size: .52rem;
  letter-spacing: .15em;
}

.neo-drop__meta h3 {
  margin: 12px 0 4px;
  font: 200 clamp(2rem, 3vw, 4rem)/.95 var(--neo-display);
  letter-spacing: .02em;
}

.neo-drop__meta p {
  margin: 0;
  overflow: hidden;
  color: var(--neo-mute);
  font-size: .7rem;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.neo-videos {
  border-top: 1px solid var(--neo-line);
}

.neo-inline-link {
  padding-bottom: 4px;
  border-bottom: 1px solid var(--neo-cyan);
  color: var(--neo-cyan) !important;
  font-size: .64rem;
  letter-spacing: .15em;
  text-decoration: none;
}

.neo-writing {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1.6fr) minmax(260px, 1fr);
  min-height: 320px;
  margin: 0 0 clamp(28px, 4vw, 64px);
  overflow: hidden;
  border: 1px solid var(--neo-line);
  background: #0c1014;
}
.neo-writing__film { min-width: 0; overflow: hidden; }
.neo-writing video { display: block; width: 100%; height: 100%; min-height: 320px; object-fit: cover; }
.neo-writing__caption { display: flex; flex-direction: column; justify-content: center; gap: 14px; padding: clamp(24px, 4vw, 64px); }
.neo-writing__caption small { color: var(--neo-cyan); letter-spacing: .16em; font-size: .8rem; }
.neo-writing__caption strong { font-size: clamp(1.7rem, 3vw, 3rem); line-height: 1.35; color: #fff; }
.neo-writing__caption span { color: #b8c1c6; font-size: 1rem; line-height: 1.7; }
@media (max-width: 700px) {
  .neo-writing { grid-template-columns: 1fr; }
  .neo-writing video { min-height: 0; aspect-ratio: 16 / 10; }
  .neo-writing__caption { padding: 24px; }
}
@media (prefers-reduced-motion: reduce) {
  .neo-writing video { display: none; }
  .neo-writing__film { min-height: 220px; background: #171b1e; }
}

.neo-video-grid {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  grid-auto-flow: dense;
  gap: clamp(10px, 1.4vw, 22px);
}

.neo-video-card {
  position: relative;
  grid-column: span 4;
  min-width: 0;
  aspect-ratio: 16 / 10;
  overflow: hidden;
  border: 1px solid var(--neo-line);
  text-decoration: none;
  background: radial-gradient(circle at 70% 28%, rgba(43, 153, 156, .2), transparent 45%), linear-gradient(145deg, #182126, #080d11 72%);
}
.neo-video-card img[hidden] { display: none !important; }

.neo-video-card--legend {
  grid-column: span 4;
  aspect-ratio: 16 / 11.4;
}

.neo-video-card:nth-child(4),
.neo-video-card:nth-child(9) {
  grid-column: span 6;
}

.neo-video-card img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: grayscale(.36) brightness(.7) contrast(1.18);
  transition: filter .45s, transform .7s cubic-bezier(.2,.8,.2,1);
}

.neo-video-card::after {
  position: absolute;
  inset: 0;
  content: "";
  background:
    linear-gradient(180deg, transparent 35%, rgba(2,5,7,.94)),
    linear-gradient(135deg, rgba(25,227,177,.16), transparent 45%, rgba(255,107,61,.14));
}

.neo-video-card:hover img,
.neo-video-card:focus-visible img {
  filter: grayscale(0) brightness(.9) contrast(1.05);
  transform: scale(1.045);
}

.neo-video-card__scan {
  position: absolute;
  z-index: 2;
  inset: 0;
  opacity: .34;
  background: repeating-linear-gradient(0deg, transparent 0 4px, rgba(109,247,255,.06) 4px 5px);
  pointer-events: none;
}

.neo-video-card__number,
.neo-video-card__duration,
.neo-video-card__play,
.neo-video-card__copy {
  position: absolute;
  z-index: 3;
}

.neo-video-card__number {
  top: 14px;
  left: 14px;
  color: var(--neo-cyan);
  font-size: .55rem;
  letter-spacing: .15em;
}

.neo-video-card__duration {
  top: 14px;
  right: 14px;
  padding: 4px 7px;
  background: rgba(0,0,0,.62);
  font-size: .55rem;
}

.neo-video-card__play {
  top: 50%;
  left: 50%;
  display: grid;
  width: 54px;
  height: 54px;
  place-content: center;
  border: 1px solid rgba(109,247,255,.7);
  border-radius: 50%;
  color: var(--neo-cyan);
  background: rgba(3,6,8,.65);
  box-shadow: 0 0 0 0 rgba(109,247,255,.25);
  transform: translate(-50%, -50%);
  transition: color .3s, background .3s, box-shadow .3s;
}

.neo-video-card:hover .neo-video-card__play,
.neo-video-card:focus-visible .neo-video-card__play {
  color: #00110e;
  background: var(--neo-cyan);
  box-shadow: 0 0 0 14px rgba(109,247,255,.09);
}

.neo-video-card__copy {
  right: 16px;
  bottom: 14px;
  left: 16px;
  display: grid;
}

.neo-video-card__copy small {
  color: var(--neo-orange);
  font-size: .5rem;
  letter-spacing: .17em;
}

.neo-video-card__copy strong {
  overflow: hidden;
  font: 200 clamp(1.45rem, 2.6vw, 2.6rem)/1 var(--neo-display);
  letter-spacing: .03em;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.neo-channel {
  display: grid;
  grid-template-columns: .7fr 2fr auto;
  align-items: center;
  gap: 20px;
  margin-top: 18px;
  padding: 24px;
  border: 1px solid var(--neo-line);
  text-decoration: none;
  transition: color .3s, border-color .3s, background .3s;
}

.neo-channel:hover,
.neo-channel:focus-visible {
  border-color: var(--neo-orange);
  background: rgba(255,107,61,.045);
}

.neo-channel span {
  color: var(--neo-orange);
  font-size: .55rem;
  letter-spacing: .16em;
}

.neo-channel strong {
  font-family: var(--neo-jp);
}

.neo-channel i {
  color: var(--neo-cyan);
  font-size: 1.3rem;
  font-style: normal;
}

.neo-art {
  border-top: 1px solid var(--neo-line);
}

.neo-art-matrix {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  grid-auto-rows: clamp(70px, 6vw, 104px);
  grid-auto-flow: dense;
  gap: clamp(8px, 1vw, 16px);
}

.neo-art-card {
  position: relative;
  grid-column: span 3;
  grid-row: span 3;
  min-width: 0;
  padding: 0;
  overflow: hidden;
  border: 1px solid var(--neo-line);
  color: var(--neo-white);
  background: #081015;
  cursor: zoom-in;
  transform: perspective(800px) rotateX(var(--art-rx, 0deg)) rotateY(var(--art-ry, 0deg));
  transition: border-color .25s, transform .25s;
}

.neo-art-card:nth-child(1),
.neo-art-card:nth-child(8) {
  grid-column: span 6;
  grid-row: span 5;
}

.neo-art-card:nth-child(3),
.neo-art-card:nth-child(7) {
  grid-column: span 3;
  grid-row: span 4;
}

.neo-art-card:nth-child(5),
.neo-art-card:nth-child(10) {
  grid-column: span 4;
}

.neo-art-card:nth-child(6),
.neo-art-card:nth-child(11) {
  grid-column: span 5;
}

.neo-art-card:hover,
.neo-art-card:focus-visible {
  z-index: 3;
  border-color: var(--neo-cyan);
}

.neo-art-card img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: grayscale(.28) saturate(.72) contrast(1.13);
  transition: filter .45s, transform .7s;
}

.neo-art-card:hover img,
.neo-art-card:focus-visible img {
  filter: grayscale(0) saturate(1.06) contrast(1.06);
  transform: scale(1.035);
}

.neo-art-card::after {
  position: absolute;
  inset: 0;
  content: "";
  background: linear-gradient(180deg, transparent 58%, rgba(2,5,7,.94));
}

.neo-art-card > span {
  position: absolute;
  z-index: 2;
  right: 14px;
  bottom: 11px;
  left: 14px;
  overflow: hidden;
  font: 200 clamp(1.1rem, 1.8vw, 2rem)/1 var(--neo-display);
  letter-spacing: .03em;
  text-align: left;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.neo-art-card b {
  margin-right: 10px;
  color: var(--neo-orange);
  font: 300 .5rem/1 var(--neo-sans);
}

.neo-youtube-sounds {
  border-top: 1px solid var(--neo-line);
}

.neo-audio-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(10px, 1.5vw, 22px);
}

.neo-audio-card {
  min-width: 0;
  overflow: hidden;
  border: 1px solid var(--neo-line);
  background:
    linear-gradient(145deg, rgba(109,247,255,.035), transparent 48%),
    rgba(5, 10, 13, .86);
}

.neo-audio-card.has-audio {
  border-color: rgba(109,247,255,.27);
}

.neo-audio-card__visual {
  position: relative;
  overflow: hidden;
  aspect-ratio: 16 / 9;
  background: #071015;
}

.neo-audio-card__visual::after {
  position: absolute;
  inset: 0;
  content: "";
  background:
    linear-gradient(180deg, rgba(2,5,7,.05) 35%, rgba(2,5,7,.9)),
    linear-gradient(90deg, rgba(109,247,255,.09), transparent 45%);
  pointer-events: none;
}

.neo-audio-card__visual img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: grayscale(.72) saturate(.55) contrast(1.17);
  transition: filter .45s, transform .7s;
}

.neo-audio-card:hover .neo-audio-card__visual img {
  filter: grayscale(.16) saturate(.88) contrast(1.08);
  transform: scale(1.025);
}

.neo-audio-card__visual span,
.neo-audio-card__visual small {
  position: absolute;
  z-index: 2;
  top: 12px;
  font: 300 .5rem/1 var(--neo-sans);
  letter-spacing: .14em;
}

.neo-audio-card__visual span {
  left: 14px;
  color: var(--neo-cyan);
}

.neo-audio-card__visual small {
  right: 14px;
  color: var(--neo-white);
}

.neo-audio-card__body {
  display: grid;
  align-content: start;
  gap: 17px;
  padding: 19px;
}

.neo-audio-card__body > div > small {
  display: block;
  margin-bottom: 9px;
  color: var(--neo-teal);
  font: 300 .48rem/1.2 var(--neo-sans);
  letter-spacing: .14em;
}

.neo-audio-card.is-youtube-only .neo-audio-card__body > div > small {
  color: var(--neo-orange);
}

.neo-audio-card__body h3 {
  margin: 0;
  color: var(--neo-white);
  font: 200 clamp(1.35rem, 2.2vw, 2.15rem)/1.04 var(--neo-display);
  letter-spacing: .015em;
}

.neo-audio-card audio {
  width: 100%;
  height: 38px;
  accent-color: var(--neo-cyan);
}

.neo-audio-card__body > a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 42px;
  padding: 0 13px;
  border: 1px solid var(--neo-line);
  color: var(--neo-mute);
  font-size: .5rem;
  letter-spacing: .14em;
  text-decoration: none;
  transition: border-color .25s, color .25s, background .25s;
}

.neo-audio-card__body > a:hover,
.neo-audio-card__body > a:focus-visible {
  border-color: var(--neo-cyan);
  color: var(--neo-cyan);
  background: rgba(109,247,255,.045);
}

.neo-music {
  border-top: 1px solid var(--neo-line);
}

.neo-platforms {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 10px;
}

.neo-platforms a {
  padding: 10px 12px;
  border: 1px solid var(--neo-line);
  color: #b9caca;
  font-size: .55rem;
  letter-spacing: .12em;
  text-decoration: none;
}

.neo-platforms a:hover,
.neo-platforms a:focus-visible {
  border-color: var(--neo-cyan);
  color: var(--neo-cyan);
}

.neo-database {
  border: 1px solid var(--neo-line);
  background:
    linear-gradient(rgba(109,247,255,.025) 1px, transparent 1px),
    rgba(6, 12, 15, .78);
  background-size: 100% 42px;
}

.neo-search {
  display: grid;
  grid-template-columns: auto 1fr 24px;
  align-items: center;
  gap: 20px;
  padding: 18px 22px;
  border-bottom: 1px solid var(--neo-line);
}

.neo-search > span {
  color: var(--neo-teal);
  font-size: .55rem;
  letter-spacing: .17em;
}

.neo-search input {
  width: 100%;
  border: 0;
  outline: 0;
  color: var(--neo-white);
  background: transparent;
  font: 300 .86rem/1 var(--neo-jp);
}

.neo-search input::placeholder {
  color: #567073;
}

.neo-search i {
  position: relative;
  width: 16px;
  height: 16px;
  border: 1px solid var(--neo-cyan);
  border-radius: 50%;
}

.neo-search i::after {
  position: absolute;
  right: -5px;
  bottom: -3px;
  width: 7px;
  height: 1px;
  content: "";
  background: var(--neo-cyan);
  transform: rotate(45deg);
}

.neo-database__status {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 10px 22px;
  border-bottom: 1px solid var(--neo-line);
  color: var(--neo-mute);
  font-size: .5rem;
  letter-spacing: .16em;
}

.neo-database__status span::before {
  display: inline-block;
  width: 6px;
  height: 6px;
  margin-right: 9px;
  border-radius: 50%;
  content: "";
  background: var(--neo-teal);
  box-shadow: 0 0 10px var(--neo-teal);
}

.neo-database__status strong {
  color: var(--neo-cyan);
}

.neo-track {
  display: grid;
  grid-template-columns: 46px 58px minmax(0, 1fr) 110px 92px;
  align-items: center;
  gap: 16px;
  min-height: 78px;
  padding: 10px 22px;
  border-bottom: 1px solid rgba(180,242,239,.1);
  text-decoration: none;
  transition: color .25s, background .25s, padding .25s;
}

.neo-track:last-child {
  border-bottom: 0;
}

.neo-track:hover,
.neo-track:focus-visible {
  color: var(--neo-cyan);
  background: linear-gradient(90deg, rgba(109,247,255,.075), transparent);
  padding-left: 30px;
}

.neo-track[hidden] {
  display: none;
}

.neo-track__no {
  color: var(--neo-orange);
  font-size: .55rem;
  letter-spacing: .12em;
}

.neo-track img {
  width: 58px;
  height: 58px;
  object-fit: cover;
  filter: saturate(.72);
}

.neo-track__name {
  display: grid;
  min-width: 0;
}

.neo-track__name strong {
  overflow: hidden;
  font: 200 clamp(1.25rem, 2vw, 1.85rem)/1 var(--neo-display);
  letter-spacing: .025em;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.neo-track__name small {
  overflow: hidden;
  margin-top: 6px;
  color: var(--neo-mute);
  font-size: .58rem;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.neo-track time,
.neo-track__listen {
  color: #82999b;
  font-size: .54rem;
  letter-spacing: .1em;
}

.neo-track__listen {
  color: var(--neo-cyan);
  text-align: right;
}

.neo-empty {
  padding: 34px;
  color: var(--neo-mute);
  text-align: center;
}

.neo-profile {
  display: grid;
  grid-template-columns: minmax(320px, .86fr) minmax(0, 1.14fr);
  align-items: center;
  gap: clamp(50px, 8vw, 130px);
  border-top: 1px solid var(--neo-line);
}

.neo-profile--top {
  min-height: 100svh;
  padding-top: clamp(128px, 14vh, 176px);
  border-top: 0;
  border-bottom: 1px solid var(--neo-line);
  background:
    radial-gradient(circle at 16% 34%, rgba(255, 107, 61, .08), transparent 26rem),
    linear-gradient(120deg, rgba(255,255,255,.018), transparent 45%);
}

.neo-profile__visual {
  position: relative;
  padding: 5%;
  border: 1px solid var(--neo-line);
  background:
    linear-gradient(rgba(109,247,255,.05) 1px, transparent 1px),
    linear-gradient(90deg, rgba(109,247,255,.05) 1px, transparent 1px);
  background-size: 28px 28px;
}

.neo-profile__visual::before {
  position: absolute;
  z-index: 0;
  top: -2%;
  right: -2%;
  width: 36%;
  aspect-ratio: 1;
  border-top: 2px solid var(--neo-orange);
  border-right: 2px solid var(--neo-orange);
  content: "";
}

.neo-profile__visual img {
  position: relative;
  z-index: 1;
  display: block;
  width: 100%;
  aspect-ratio: 4 / 5;
  object-fit: cover;
  filter: grayscale(.28) contrast(1.12) saturate(.7);
}

.neo-profile-mad {
  isolation: isolate;
  overflow: visible;
  transform: rotate(-1.2deg);
  box-shadow: 28px 34px 0 rgba(255,255,255,.018);
}

.neo-profile-mad::after {
  position: absolute;
  z-index: 8;
  inset: -1px;
  content: "";
  pointer-events: none;
  opacity: .42;
  background:
    linear-gradient(112deg, transparent 0 38%, rgba(238,248,246,.12) 38.2% 38.35%, transparent 38.6%),
    repeating-linear-gradient(174deg, transparent 0 21px, rgba(255,255,255,.055) 22px 23px, transparent 24px 48px);
  mix-blend-mode: screen;
}

.neo-profile-mad .neo-mad__main {
  position: relative;
  z-index: 1;
  filter: grayscale(1) contrast(1.35) brightness(.7);
}

.neo-profile-mad .neo-mad__fragment {
  position: absolute;
  z-index: 3;
  width: 34%;
  height: auto;
  aspect-ratio: 1;
  border: 1px solid rgba(238,248,246,.16);
  object-fit: cover;
  opacity: .66;
  filter: grayscale(1) contrast(1.42) brightness(.65);
  mix-blend-mode: screen;
  box-shadow: 10px 14px 34px rgba(0,0,0,.68);
}

.neo-profile-mad .neo-mad__fragment--01 {
  top: -7%;
  right: -8%;
  transform: rotate(6deg);
}

.neo-profile-mad .neo-mad__fragment--02 {
  right: -12%;
  bottom: 8%;
  width: 39%;
  transform: rotate(-5deg);
}

.neo-profile-mad .neo-mad__fragment--03 {
  bottom: -8%;
  left: -7%;
  width: 31%;
  transform: rotate(4deg);
}

.neo-profile-mad .neo-mad__fragment--04 {
  top: 18%;
  left: -10%;
  width: 27%;
  transform: rotate(-8deg);
}

.neo-mad__stamp {
  position: absolute;
  z-index: 10;
  top: 10%;
  left: -6%;
  padding: 7px 10px;
  border: 1px solid var(--neo-orange);
  color: var(--neo-orange);
  background: rgba(3,6,8,.82);
  font-size: .46rem;
  letter-spacing: .18em;
  transform: rotate(-7deg);
}

.neo-profile__code {
  position: absolute;
  z-index: 2;
  right: -4%;
  bottom: 10%;
  display: grid;
  min-width: 220px;
  padding: 14px 17px;
  border-left: 2px solid var(--neo-cyan);
  background: rgba(3,6,8,.85);
  backdrop-filter: blur(12px);
}

.neo-profile__code span {
  color: var(--neo-mute);
  font-size: .48rem;
  letter-spacing: .15em;
}

.neo-profile__code strong {
  margin: 3px 0;
  font: 200 1.7rem/1 var(--neo-display);
  letter-spacing: .05em;
}

.neo-profile__copy h1,
.neo-profile__copy h2 {
  margin: 24px 0 38px;
  font: 200 clamp(3.3rem, 6vw, 7rem)/.9 var(--neo-display);
  letter-spacing: -.025em;
}

.neo-profile__copy h1 span,
.neo-profile__copy h2 span {
  color: var(--neo-cyan);
}

.neo-profile__copy p {
  max-width: 780px;
  color: #aec0c0;
  font-family: var(--neo-jp);
  font-size: clamp(.88rem, 1vw, 1rem);
}

.neo-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 34px;
}

.neo-profile-access {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  margin-top: 34px;
}

.neo-profile-access a {
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: end;
  min-width: 0;
  padding: 14px 15px;
  border: 1px solid var(--neo-line);
  text-decoration: none;
  background: rgba(255,255,255,.018);
  transition: border-color .25s, color .25s, transform .25s, background .25s;
}

.neo-profile-access a:hover,
.neo-profile-access a:focus-visible {
  border-color: var(--neo-cyan);
  color: var(--neo-cyan);
  background: rgba(109,247,255,.045);
  transform: translateY(-3px);
}

.neo-profile-access small {
  grid-column: 1 / -1;
  margin-bottom: 5px;
  color: var(--neo-orange);
  font-size: .42rem;
  letter-spacing: .18em;
}

.neo-profile-access strong {
  overflow: hidden;
  font: 200 clamp(1.2rem, 2vw, 1.85rem)/1 var(--neo-display);
  letter-spacing: .05em;
  text-overflow: ellipsis;
}

.neo-profile-access span {
  color: var(--neo-cyan);
  font-size: .85rem;
}

.neo-tags span {
  padding: 8px 10px;
  border: 1px solid var(--neo-line);
  color: var(--neo-teal);
  font-size: .5rem;
  letter-spacing: .14em;
}

.neo-connect {
  display: grid;
  grid-template-columns: .9fr 1.1fr;
  gap: clamp(40px, 7vw, 120px);
  border-top: 1px solid var(--neo-line);
}

.neo-connect__copy h2 {
  margin: 24px 0 0;
  font: 200 clamp(3.3rem, 6vw, 7rem)/.9 var(--neo-display);
  letter-spacing: -.025em;
}

.neo-connect__copy h2 span {
  color: var(--neo-orange);
}

.neo-connect__links {
  border-top: 1px solid var(--neo-line);
}

.neo-connect__links a {
  display: grid;
  grid-template-columns: 90px 1fr auto;
  align-items: center;
  gap: 20px;
  padding: 26px 10px;
  border-bottom: 1px solid var(--neo-line);
  text-decoration: none;
  transition: color .25s, padding .25s, background .25s;
}

.neo-connect__links a:hover,
.neo-connect__links a:focus-visible {
  padding-right: 18px;
  padding-left: 18px;
  color: var(--neo-cyan);
  background: rgba(109,247,255,.04);
}

.neo-connect__links small,
.neo-connect__links span {
  color: var(--neo-mute);
  font-size: .52rem;
  letter-spacing: .12em;
}

.neo-connect__links strong {
  font: 200 clamp(1.7rem, 3vw, 3rem)/1 var(--neo-display);
  letter-spacing: .03em;
}

.neo-footer {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: end;
  gap: 30px;
  padding: 50px var(--neo-pad);
  border-top: 1px solid var(--neo-line);
}

.neo-footer strong {
  font: 200 clamp(2.4rem, 5vw, 5rem)/.8 var(--neo-display);
  letter-spacing: .03em;
}

.neo-footer p,
.neo-footer a {
  color: var(--neo-mute);
  font-size: .52rem;
  letter-spacing: .1em;
}

.neo-footer p {
  margin: 0;
  text-align: center;
}

.neo-footer a {
  justify-self: end;
  text-decoration: none;
}

.neo-lightbox {
  width: min(90vw, 1050px);
  max-width: none;
  padding: 0;
  border: 1px solid rgba(109,247,255,.4);
  color: var(--neo-white);
  background: rgba(3,6,8,.96);
  box-shadow: 0 20px 90px rgba(0,0,0,.8);
}

.neo-lightbox::backdrop {
  background: rgba(0,4,5,.88);
  backdrop-filter: blur(12px);
}

.neo-lightbox figure {
  margin: 0;
  padding: clamp(18px, 3vw, 40px);
}

.neo-lightbox img {
  display: block;
  width: 100%;
  max-height: 76vh;
  object-fit: contain;
}

.neo-lightbox figcaption {
  margin-top: 14px;
  font: 200 clamp(1.8rem, 4vw, 4rem)/1 var(--neo-display);
  letter-spacing: .04em;
}

.neo-lightbox__close {
  position: absolute;
  z-index: 2;
  top: 10px;
  right: 10px;
  padding: 10px 12px;
  border: 1px solid var(--neo-line);
  color: var(--neo-white);
  background: rgba(0,0,0,.72);
  font: 300 .55rem/1 var(--neo-sans);
  letter-spacing: .12em;
  cursor: pointer;
}

.neo-lightbox__close:hover,
.neo-lightbox__close:focus-visible {
  color: #000;
  background: var(--neo-cyan);
}

@keyframes neo-pulse {
  70% { box-shadow: 0 0 0 9px rgba(25, 227, 177, 0); }
  100% { box-shadow: 0 0 0 0 rgba(25, 227, 177, 0); }
}

@keyframes neo-kanji-in {
  to { opacity: 1; filter: blur(0); transform: none; }
}

@keyframes neo-load {
  to { transform: translateX(0); }
}

@keyframes neo-scan {
  from { transform: translateY(-100%); }
  to { transform: translateY(1300%); }
}

@keyframes neo-spin {
  to { transform: rotate(360deg); }
}

@keyframes neo-ticker {
  to { transform: translateX(-50%); }
}

@keyframes neo-icons-loop {
  to { transform: translateX(calc(-50% - (var(--icon-gap) / 2))); }
}

@keyframes neo-stage-portraits {
  0%, 34% { visibility: visible; opacity: 1; filter: blur(0); }
  47%, 100% { visibility: hidden; opacity: 0; filter: blur(10px); }
}

@keyframes neo-stage-globe {
  0%, 27% { visibility: hidden; opacity: 0; transform: scale(.92); }
  38%, 67% { visibility: visible; opacity: 1; transform: scale(1); }
  76%, 100% { visibility: hidden; opacity: 0; transform: scale(1.04); }
}

@keyframes neo-stage-finale {
  0%, 68% { visibility: hidden; opacity: 0; filter: blur(16px); transform: scale(1.035); }
  80%, 100% { visibility: visible; opacity: 1; filter: blur(0); transform: scale(1); }
}

@keyframes neo-globe-roll {
  to { background-position: 0 0, 108px 0, 0 0; }
}

@keyframes neo-draw-route {
  to { stroke-dashoffset: 0; }
}

@keyframes neo-final-word {
  to { opacity: 1; filter: blur(0); transform: none; }
}

@media (max-width: 1100px) {
  .neo-hero {
    grid-template-columns: minmax(0, 1fr) minmax(330px, .9fr);
  }

  .neo-hero__visual {
    width: min(45vw, 600px);
  }

  .neo-manifesto {
    grid-template-columns: 1fr 1fr;
  }

  .neo-manifesto > .neo-section__index {
    grid-column: 1 / -1;
  }

  .neo-art-card {
    grid-column: span 4;
  }

  .neo-art-card:nth-child(1),
  .neo-art-card:nth-child(8) {
    grid-column: span 8;
  }

  .neo-art-card:nth-child(5),
  .neo-art-card:nth-child(6),
  .neo-art-card:nth-child(10),
  .neo-art-card:nth-child(11) {
    grid-column: span 4;
  }

  .neo-audio-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 782px) {
  body.lnestalow-neo-page.admin-bar .neo-header {
    top: 46px;
  }

  .neo-header {
    min-height: 68px;
    grid-template-columns: auto auto;
    justify-content: space-between;
  }

  .neo-menu-toggle {
    display: grid;
    grid-template-columns: auto 22px;
    align-items: center;
    gap: 3px 10px;
    padding: 9px 0 9px 12px;
    border: 0;
    color: var(--neo-white);
    background: transparent;
    font: 300 .56rem/1 var(--neo-sans);
    letter-spacing: .15em;
  }

  .neo-menu-toggle span {
    grid-row: 1 / 3;
  }

  .neo-menu-toggle i {
    display: block;
    width: 22px;
    height: 1px;
    background: currentColor;
    transition: transform .25s;
  }

  .neo-menu-toggle[aria-expanded="true"] i:first-of-type {
    transform: translateY(2px) rotate(45deg);
  }

  .neo-menu-toggle[aria-expanded="true"] i:last-of-type {
    transform: translateY(-2px) rotate(-45deg);
  }

  .neo-nav {
    position: absolute;
    top: 100%;
    right: 0;
    left: 0;
    display: grid;
    gap: 0;
    padding: 10px var(--neo-pad) 22px;
    visibility: hidden;
    opacity: 0;
    border-bottom: 1px solid var(--neo-line);
    background: rgba(3,6,8,.96);
    transform: translateY(-12px);
    transition: opacity .25s, visibility .25s, transform .25s;
  }

  .neo-nav.is-open {
    visibility: visible;
    opacity: 1;
    transform: none;
  }

  .neo-nav a {
    padding: 16px 0;
    border-bottom: 1px solid rgba(180,242,239,.1);
  }

  .neo-nav__feature {
    grid-template-columns: auto 1fr;
    align-items: end;
    gap: 10px;
    margin: 5px 0;
    padding: 13px 14px !important;
    border: 1px solid rgba(109,247,255,.28) !important;
  }

  .neo-nav__feature strong {
    font-size: 1.35rem;
  }

  .neo-hero {
    grid-template-columns: 1fr;
    padding-top: 118px;
  }

  .neo-icons__head {
    grid-template-columns: 1fr;
    gap: 16px;
  }

  .neo-globe-stage {
    grid-template-columns: 1fr;
    align-content: center;
  }

  .neo-globe-stage__copy {
    position: absolute;
    z-index: 5;
    top: 12%;
    left: var(--neo-pad);
  }

  .neo-globe-stage__copy strong {
    font-size: clamp(2.8rem, 10vw, 5rem);
  }

  .neo-globe {
    width: 100%;
    margin-top: 60px;
  }

  .neo-origin-list {
    justify-content: flex-start;
  }

  .neo-hero__copy {
    position: relative;
    z-index: 3;
  }

  .neo-hero h1 {
    font-size: clamp(7rem, 28vw, 12rem);
  }

  .neo-hero__visual {
    width: min(90vw, 650px);
    margin: 64px auto 30px;
  }

  .neo-hero::before {
    top: 48%;
    left: 40%;
    width: 80vw;
    height: 80vw;
  }

  .neo-manifesto,
  .neo-profile,
  .neo-connect {
    grid-template-columns: 1fr;
  }

  .neo-manifesto {
    gap: 50px;
  }

  .neo-manifesto__kanji {
    order: 2;
  }

  .neo-manifesto__copy {
    order: 3;
  }

  .neo-latest__grid {
    grid-template-columns: 1fr 1fr;
  }

  .neo-drop--main {
    grid-column: 1 / -1;
  }

  .neo-video-card,
  .neo-video-card--legend {
    grid-column: span 6;
  }

  .neo-video-card:nth-child(4),
  .neo-video-card:nth-child(9) {
    grid-column: span 6;
  }

  .neo-art-card,
  .neo-art-card:nth-child(1),
  .neo-art-card:nth-child(3),
  .neo-art-card:nth-child(5),
  .neo-art-card:nth-child(6),
  .neo-art-card:nth-child(7),
  .neo-art-card:nth-child(8),
  .neo-art-card:nth-child(10),
  .neo-art-card:nth-child(11) {
    grid-column: span 6;
    grid-row: span 3;
  }

  .neo-art-card:nth-child(1),
  .neo-art-card:nth-child(8) {
    grid-row: span 5;
  }

  .neo-profile__visual {
    max-width: 620px;
  }

  .neo-profile--top {
    padding-top: 126px;
  }

  .neo-footer {
    grid-template-columns: 1fr auto;
  }

  .neo-footer p {
    grid-column: 1 / -1;
    grid-row: 2;
    text-align: left;
  }
}

@media (max-width: 600px) {

  .neo-audio-grid {
    grid-template-columns: 1fr;
  }

  .neo-audio-card__body {
    padding: 16px;
  }
  :root {
    --neo-pad: 18px;
  }

  .neo-progress {
    z-index: 10001;
  }

  .neo-section {
    padding-top: 92px;
    padding-bottom: 92px;
  }

  .neo-icons {
    min-height: auto;
    padding-top: 112px;
    padding-bottom: 48px;
  }

  .neo-icons__head h2 {
    font-size: clamp(4rem, 19vw, 6.8rem);
  }

  .neo-icon {
    flex-basis: min(58vw, 218px);
  }

  .neo-icon-sequence {
    min-height: 470px;
  }

  .neo-icons-finale__image {
    width: 96vw;
    aspect-ratio: 4 / 5;
  }

  .neo-icons-finale__image img {
    object-position: center;
  }

  .neo-icons-finale__words > span {
    font-size: clamp(4.4rem, 21vw, 7rem);
  }

  .neo-origin-list {
    bottom: 6%;
  }

  .neo-icons__line {
    margin-top: 36px;
    font-size: 1rem;
    line-height: 1.5;
  }

  .neo-icons__sources {
    justify-content: flex-start;
    max-height: 44px;
    overflow: auto;
  }

  .neo-icons__license {
    text-align: left;
  }

  .neo-section__head {
    display: grid;
    gap: 22px;
  }

  .neo-section__head h2 {
    font-size: clamp(3.6rem, 18vw, 6rem);
  }

  .neo-section__head > p {
    text-align: left;
  }

  .neo-hero {
    min-height: auto;
    padding-bottom: 70px;
  }

  .neo-hero__grid {
    background-size: 42px 42px;
  }

  .neo-hero h1 {
    margin-top: 20px;
    font-size: clamp(6.5rem, 34vw, 10rem);
  }

  .neo-hero__lead {
    margin-top: 38px;
    font-size: clamp(2.2rem, 12vw, 3.8rem);
  }

  .neo-actions {
    display: grid;
  }

  .neo-button {
    width: 100%;
  }

  .neo-hero__visual {
    width: 100%;
  }

  .neo-hero__telemetry {
    left: 8px;
  }

  .neo-manifesto__kanji {
    grid-template-columns: repeat(4, 1fr);
    writing-mode: horizontal-tb;
  }

  .neo-manifesto__kanji span {
    font-size: clamp(4.8rem, 23vw, 7rem);
  }

  .neo-manifesto__copy h2,
  .neo-profile__copy h2,
  .neo-connect__copy h2 {
    font-size: clamp(2.45rem, 12.5vw, 4rem);
  }

  .neo-latest__grid {
    grid-template-columns: 1fr;
  }

  .neo-drop--main {
    grid-column: auto;
  }

  .neo-drop__art,
  .neo-drop--main .neo-drop__art {
    aspect-ratio: 1;
  }

  .neo-video-card,
  .neo-video-card--legend,
  .neo-video-card:nth-child(4),
  .neo-video-card:nth-child(9) {
    grid-column: 1 / -1;
    aspect-ratio: 16 / 10;
  }

  .neo-channel {
    grid-template-columns: 1fr auto;
  }

  .neo-channel span {
    grid-column: 1 / -1;
  }

  .neo-art-matrix {
    grid-template-columns: 1fr 1fr;
    grid-auto-rows: 100px;
  }

  .neo-art-card,
  .neo-art-card:nth-child(1),
  .neo-art-card:nth-child(3),
  .neo-art-card:nth-child(5),
  .neo-art-card:nth-child(6),
  .neo-art-card:nth-child(7),
  .neo-art-card:nth-child(8),
  .neo-art-card:nth-child(10),
  .neo-art-card:nth-child(11) {
    grid-column: span 1;
    grid-row: span 2;
  }

  .neo-art-card:nth-child(1),
  .neo-art-card:nth-child(5),
  .neo-art-card:nth-child(8) {
    grid-column: 1 / -1;
    grid-row: span 3;
  }

  .neo-art-card > span {
    font-size: 1rem;
  }

  .neo-platforms {
    justify-content: flex-start;
  }

  .neo-search {
    grid-template-columns: 1fr 22px;
    gap: 10px;
  }

  .neo-search > span {
    grid-column: 1 / -1;
  }

  .neo-track {
    grid-template-columns: 28px 50px minmax(0, 1fr) 24px;
    gap: 10px;
    min-height: 72px;
    padding: 10px 12px;
  }

  .neo-track:hover,
  .neo-track:focus-visible {
    padding-left: 16px;
  }

  .neo-track img {
    width: 50px;
    height: 50px;
  }

  .neo-track__name strong {
    font-size: 1.24rem;
  }

  .neo-track time {
    display: none;
  }

  .neo-track__listen {
    overflow: hidden;
    width: 24px;
    font-size: 0;
  }

  .neo-track__listen::after {
    content: "↗";
    font-size: .9rem;
  }

  .neo-profile {
    gap: 58px;
  }

  .neo-profile__copy h1 {
    font-size: clamp(2.45rem, 12.5vw, 4rem);
  }

  .neo-profile-mad {
    width: 86%;
    margin-left: 6%;
  }

  .neo-profile-access {
    grid-template-columns: 1fr;
  }

  .neo-profile__code {
    right: 0;
    bottom: 5%;
    min-width: 190px;
  }

  .neo-connect__links a {
    grid-template-columns: 60px 1fr auto;
    gap: 10px;
  }

  .neo-connect__links span {
    font-size: 0;
  }

  .neo-connect__links span::after {
    content: "↗";
    font-size: .8rem;
  }

  .neo-footer {
    grid-template-columns: 1fr;
    align-items: start;
  }

  .neo-footer a {
    justify-self: start;
  }

  .neo-footer p {
    grid-column: auto;
    grid-row: auto;
  }
}

@media (max-width: 360px) {
  .neo-brand small {
    display: none;
  }

  .neo-brand strong {
    font-size: .88rem;
  }

  .neo-hero h1 {
    font-size: 6rem;
  }
}

@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }

  *,
  *::before,
  *::after {
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    scroll-behavior: auto !important;
    transition-duration: .01ms !important;
  }

  .neo-loader {
    display: none;
  }

  .neo-icons__viewport {
    overflow-x: auto;
  }

  .neo-icons__track {
    transform: none !important;
  }

  .neo-icon[aria-hidden="true"] {
    display: none;
  }

  .neo-icon-sequence > .neo-icons__viewport,
  .neo-globe-stage {
    display: none;
  }

  .neo-icons-finale {
    visibility: visible;
    opacity: 1;
    filter: none;
    transform: none;
  }

  .neo-icons-finale__words > span {
    opacity: 1;
    filter: none;
    transform: none;
  }
}
