.hero[data-astro-cid-lcdefpme] {
  min-height: 100svh;
  overflow: visible;
  background: #050505;
  color: #f5f5f2;
  font-family: Inter Variable, Arial, sans-serif;
}

.hero-grid[data-astro-cid-lcdefpme] {
  width: min(100% - 32px, 1480px);
  margin: 0 auto;
  display: grid;
  grid-template-columns: minmax(0, 1fr) clamp(292px, 26.5vw, 350px);
  gap: 46px;
  align-items: start;
  padding-top: 170px;
  padding-bottom: 56px;
  transform: translateY(-105px);
}

.hero-copy[data-astro-cid-lcdefpme] {
  min-width: 0;
  position: relative;
  left: 0;
  transform: translateY(-3mm);
}

.eyebrow-mask[data-astro-cid-lcdefpme], .title-mask[data-astro-cid-lcdefpme], .description-mask[data-astro-cid-lcdefpme] {
  display: block;
  overflow: hidden;
}

.eyebrow-mask[data-astro-cid-lcdefpme] {
  overflow: visible;
}

.eyebrow[data-astro-cid-lcdefpme] {
  margin: 0 0 22px;
  color: #b7ff00;
  font-family: Maple Mono, monospace;
  font-size: .78rem;
  font-weight: 700;
  letter-spacing: .19em;
}

.hero-title[data-astro-cid-lcdefpme] {
  display: flex;
  flex-direction: column;
  gap: 2mm;
  width: 100%;
  margin: 0;
  font-family: Host Grotesk Variable, Arial, sans-serif;
  font-size: clamp(3.4rem, 5.4vw, 6.2rem);
  font-weight: 800;
  line-height: .92;
  letter-spacing: -.07em;
}

.title-mask[data-astro-cid-lcdefpme] {
  display: block;
  padding: .055em 0 .085em;
  overflow: visible;
}

.title-line[data-astro-cid-lcdefpme] {
  display: block;
  overflow: visible;
  white-space: nowrap;
}

.title-line[data-astro-cid-lcdefpme].motion-2 {
  color: #f3f3f3;
  -webkit-text-fill-color: currentColor;
}

.title-outline[data-astro-cid-lcdefpme] {
  color: #0000;
  -webkit-text-stroke: 1.6px #b7ff00;
}

.title-lime[data-astro-cid-lcdefpme] {
  color: #b7ff00;
}

.hero-description[data-astro-cid-lcdefpme] {
  max-width: 520px;
  margin: 30px 0 0;
  color: #92958f;
  font-family: Inter Variable, Arial, sans-serif;
  font-size: clamp(.95rem, 1.15vw, 1.1rem);
  font-weight: 400;
  line-height: 1.55;
  letter-spacing: -.02em;
}

.dot-visual[data-astro-cid-lcdefpme] {
  position: relative;
  top: -30px;
  left: 12mm;
  display: flex;
  align-items: flex-start;
  justify-content: flex-end;
  min-width: 0;
  width: 100%;
  max-width: 350px;
  justify-self: end;
}

.dot-stage[data-astro-cid-lcdefpme] {
  position: relative;
  width: 100%;
  max-width: 350px;
  aspect-ratio: .96;
  overflow: hidden;
  border: 1.5px solid #ff5c2047;
  border-radius: 20px;
  background: radial-gradient(circle at 50% 48%, #b7ff000e, #0000 52%), #070807;
  box-shadow: 0 0 5px #ff5c2021, 0 0 12px #ff5c200d;
}

.matrix-heading[data-astro-cid-lcdefpme] {
  position: absolute;
  top: 25px;
  left: 27px;
  z-index: 5;
  display: flex;
  flex-direction: column;
  gap: 5px;
  font-family: Maple Mono, monospace;
}

.matrix-kicker[data-astro-cid-lcdefpme] {
  color: #b7ff00;
  font-size: .96rem;
  font-weight: 700;
  letter-spacing: .17em;
}

.matrix-subtitle[data-astro-cid-lcdefpme] {
  color: #8f948c;
  font-size: .8rem;
  font-weight: 500;
  letter-spacing: .14em;
}

.dot-grid[data-astro-cid-lcdefpme], .dot-links[data-astro-cid-lcdefpme] {
  position: absolute;
  inset: 120px 38px 68px;
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  grid-template-rows: repeat(7, 1fr);
  grid-auto-flow: column;
  place-items: center;
  gap: clamp(8px, 1vw, 13px);
  align-content: center;
}

.dot-grid[data-astro-cid-lcdefpme] {
  opacity: .72;
}

.grid-dot[data-astro-cid-lcdefpme] {
  display: block;
  width: 5px;
  height: 5px;
  justify-self: center;
  border-radius: 50%;
  background: #b7ff005c;
  box-shadow: 0 0 5px #b7ff001a;
  position: relative;
}

.grid-dot[data-astro-cid-lcdefpme].bright {
  width: 10px;
  height: 10px;
  border: 1px solid #b7ff00;
  background: #050505;
  box-shadow: 0 0 8px #b7ff0085, 0 0 18px #b7ff002e;
}

.grid-dot[data-astro-cid-lcdefpme].orange {
  background: #ff4d00;
  box-shadow: 0 0 8px #ff4d00b3, 0 0 20px #ff4d0040;
}

.grid-dot[data-astro-cid-lcdefpme].both:not(.vibe):not(.media) {
  background: #f5f5f2;
  box-shadow: 0 0 8px #f5f5f2b8, 0 0 20px #b7ff004d, 0 0 24px #ff4d002e;
}

.dot-links[data-astro-cid-lcdefpme] {
  pointer-events: none;
}

.dot-link[data-astro-cid-lcdefpme] {
  position: relative;
  display: block;
  width: 10px;
  height: 10px;
  color: #f5f5f2;
  font-family: Maple Mono, monospace;
  text-decoration: none;
  pointer-events: auto;
}

.nav-dot[data-astro-cid-lcdefpme] {
  display: block;
  width: 10px;
  height: 10px;
  border: 1px solid #b7ff00;
  border-radius: 50%;
  background: #050505;
  transition: background .3s, transform .35s cubic-bezier(.16, 1, .3, 1), box-shadow .3s;
}

.dot-blog[data-astro-cid-lcdefpme] {
  display: none;
  grid-column: 1;
  grid-row: 1;
}

.dot-portfolio[data-astro-cid-lcdefpme] {
  grid-column: 8;
  grid-row: 3;
}

.dot-vibe[data-astro-cid-lcdefpme] {
  grid-column: 9;
  grid-row: 7;
}

.dot-media[data-astro-cid-lcdefpme] {
  grid-column: 2;
  grid-row: 7;
}

.dot-link-copy[data-astro-cid-lcdefpme] {
  position: absolute;
  top: 50%;
  left: 22px;
  display: grid;
  width: max-content;
  gap: 3px;
  opacity: 0;
  transform: translate(-8px, -50%);
  transition: opacity .25s, transform .35s cubic-bezier(.16, 1, .3, 1);
}

.dot-link-copy[data-astro-cid-lcdefpme] strong[data-astro-cid-lcdefpme] {
  font-size: .8rem;
  font-weight: 600;
  letter-spacing: .1em;
}

.dot-link-copy[data-astro-cid-lcdefpme] small[data-astro-cid-lcdefpme] {
  color: #777b74;
  font-size: .64rem;
  letter-spacing: .12em;
}

.dot-link[data-astro-cid-lcdefpme]:hover .nav-dot[data-astro-cid-lcdefpme] {
  background: #b7ff00;
  transform: scale(1.35);
  box-shadow: 0 0 10px #b7ff00d9, 0 0 28px #b7ff004d;
}

.dot-link[data-astro-cid-lcdefpme]:hover .dot-link-copy[data-astro-cid-lcdefpme] {
  opacity: 1;
  transform: translate(0, -50%);
}

.dot-link[data-astro-cid-lcdefpme]:nth-child(2) .nav-dot[data-astro-cid-lcdefpme] {
  border-color: #ff4d00;
}

.dot-link[data-astro-cid-lcdefpme]:nth-child(2):hover .nav-dot[data-astro-cid-lcdefpme] {
  background: #ff4d00;
  box-shadow: 0 0 10px #ff4d00cc, 0 0 28px #ff4d004d;
}

.dot-vibe[data-astro-cid-lcdefpme] .nav-dot[data-astro-cid-lcdefpme] {
  border-color: #f5f5f2d1;
  background: #050505;
  box-shadow: 0 0 5px #f5f5f21a;
}

.dot-vibe[data-astro-cid-lcdefpme]:hover .nav-dot[data-astro-cid-lcdefpme] {
  background: #050505;
  border-color: #f5f5f2;
  transform: scale(1.35);
  box-shadow: 0 0 8px #f5f5f28c, 0 0 18px #f5f5f22e;
}

.dot-media[data-astro-cid-lcdefpme] .nav-dot[data-astro-cid-lcdefpme] {
  width: 4px;
  height: 4px;
  margin: 3px;
  border: 0;
  background: #f5f5f2;
  box-shadow: 0 0 5px #f5f5f28c;
}

.dot-media[data-astro-cid-lcdefpme]:hover .nav-dot[data-astro-cid-lcdefpme] {
  background: #f5f5f2;
  transform: scale(1.55);
  box-shadow: 0 0 7px #f5f5f2d9, 0 0 16px #f5f5f23d;
}

.signal[data-astro-cid-lcdefpme] {
  position: absolute;
  right: 24px;
  bottom: 16px;
  display: flex;
  align-items: center;
  gap: 7px;
  color: #8f948c;
  font-family: Maple Mono, monospace;
  font-size: .8rem;
  letter-spacing: .14em;
}

.signal-light[data-astro-cid-lcdefpme] {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #b7ff00;
  box-shadow: 0 0 8px #b7ff00b8, 0 0 16px #b7ff0038;
  animation: 1.8s ease-in-out infinite signal-pulse;
}

.hero-motion[data-astro-cid-lcdefpme] {
  opacity: 0;
  transform: translateY(105%);
  will-change: transform, opacity;
  animation: 2.8s cubic-bezier(.16, 1, .3, 1) forwards hero-line-up;
}

.motion-1[data-astro-cid-lcdefpme] {
  animation-delay: 50ms;
}

.motion-2[data-astro-cid-lcdefpme] {
  animation-delay: .15s;
}

.motion-3[data-astro-cid-lcdefpme] {
  animation-delay: .25s;
}

.motion-4[data-astro-cid-lcdefpme] {
  animation-delay: .4s;
}

.motion-5[data-astro-cid-lcdefpme] {
  animation-delay: 1.05s;
}

@keyframes hero-line-up {
  from {
    opacity: 0;
    transform: translateY(105%);
  }

  to {
    opacity: 1;
    transform: translateY(-3mm);
  }
}

@keyframes signal-pulse {
  0%, 100% {
    opacity: .4;
  }

  50% {
    opacity: 1;
  }
}

@media (width <= 1100px) and (width >= 821px) {
  .hero-grid[data-astro-cid-lcdefpme] {
    grid-template-columns: minmax(0, 1.2fr) minmax(320px, .8fr);
    gap: 40px;
  }

  .hero-title[data-astro-cid-lcdefpme] {
    font-size: clamp(3.1rem, 5.1vw, 5.4rem);
  }
}

@media (width <= 820px) {
  .hero[data-astro-cid-lcdefpme] {
    overflow: visible;
  }

  .hero-grid[data-astro-cid-lcdefpme] {
    width: calc(100% - 32px);
    grid-template-columns: 1fr;
    gap: 54px;
    padding-top: 120px;
    padding-bottom: 54px;
    transform: translateY(-88px);
  }

  .hero-copy[data-astro-cid-lcdefpme] {
    left: 0;
  }

  .hero-title[data-astro-cid-lcdefpme] {
    font-size: clamp(2.7rem, 9.7vw, 4.8rem);
    line-height: .88;
  }

  .dot-visual[data-astro-cid-lcdefpme] {
    left: 0;
    width: 100%;
    justify-self: center;
    justify-content: center;
  }

  .dot-stage[data-astro-cid-lcdefpme] {
    width: min(100%, 460px);
    max-width: 460px;
    margin: 0 auto;
  }

  .dot-links[data-astro-cid-lcdefpme] {
    pointer-events: auto;
  }
}

@media (width <= 520px) {
  .hero-grid[data-astro-cid-lcdefpme] {
    width: calc(100% - 28px);
  }

  .eyebrow[data-astro-cid-lcdefpme] {
    margin-bottom: 18px;
    font-size: .6rem;
  }

  .hero-title[data-astro-cid-lcdefpme] {
    font-size: clamp(2rem, 9.2vw, 3.2rem);
    line-height: .9;
    letter-spacing: -.05em;
  }

  .title-outline[data-astro-cid-lcdefpme] {
    -webkit-text-stroke-width: 1.2px;
  }

  .hero-description[data-astro-cid-lcdefpme] {
    margin-top: 25px;
    font-size: .95rem;
  }

  .dot-stage[data-astro-cid-lcdefpme] {
    border-radius: 14px;
  }

  .dot-grid[data-astro-cid-lcdefpme], .dot-links[data-astro-cid-lcdefpme] {
    inset: 96px 28px 78px;
    gap: 8px;
  }

  .dot-link-copy[data-astro-cid-lcdefpme] {
    opacity: 1;
    transform: translate(0, -50%);
  }

  .matrix-heading[data-astro-cid-lcdefpme] {
    top: 21px;
    left: 22px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .jp-ghost-title[data-astro-cid-lcdefpme].jp-run .jp-ghost-text[data-astro-cid-lcdefpme]:before {
    animation: none;
    opacity: 0;
  }
}
.jp-ghost-title[data-astro-cid-lcdefpme] {
  position: fixed;
  top: 108px;
  left: 50%;
  z-index: 20;
  width: max-content;
  pointer-events: none;
  transform: translateX(-50%);
}

.jp-ghost-text[data-astro-cid-lcdefpme] {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #f5f5f2;
  font-family: BIZ UDPMincho, Yu Mincho, YuMincho, serif;
  font-size: clamp(1.4rem, 1.95vw, 2.1rem);
  font-weight: 600;
  line-height: 1;
  letter-spacing: .38em;
  white-space: nowrap;
}

.jp-ghost-text[data-astro-cid-lcdefpme] > span[data-astro-cid-lcdefpme] {
  display: inline-block;
  opacity: 0;
  filter: blur(7px);
  transform: translate(var(--x), var(--y))
      rotate(var(--r));
  animation: 1.4s cubic-bezier(.16, 1, .3, 1) forwards jp-character-lock, .65s cubic-bezier(.4, 0, 1, 1) forwards jp-character-vanish;
  animation-delay: calc(.45s + (var(--i) * .18s)),
      3.35s;
}

.jp-ghost-title[data-astro-cid-lcdefpme].jp-run .jp-ghost-line[data-astro-cid-lcdefpme] {
  position: absolute;
  left: 50%;
  bottom: -13px;
  width: calc(100% - 4px);
  height: 1px;
  opacity: 0;
  background: linear-gradient(90deg, #0000 0%, #ff5c200d 15%, #ff5c206b 50%, #ff5c200d 85%, #0000 100%);
  box-shadow: 0 0 4px #ff5c2047, 0 0 9px #ff5c201a;
  transform: translateX(-50%) scaleX(0);
  transform-origin: center;
  animation: 1.1s cubic-bezier(.16, 1, .3, 1) .28s forwards jp-line-open, .9s cubic-bezier(.45, 0, .35, 1) 4.8s forwards jp-line-close;
}

@keyframes jp-character-lock {
  0% {
    opacity: 0;
    filter: blur(4px);
    clip-path: inset(48%);
    transform: translate(var(--x), var(--y))
        rotate(var(--r))
        scaleX(.16);
  }

  22% {
    opacity: .38;
    filter: blur(2px);
    clip-path: inset(34% 36%);
    transform: translate(calc(var(--x) * .55), calc(var(--y) * .55))
        rotate(calc(var(--r) * .5))
        scaleX(.32);
  }

  58% {
    opacity: .78;
    filter: blur(.8px);
    clip-path: inset(12% 10%);
    transform: translate(0) rotate(0) scaleX(.78);
  }

  100% {
    opacity: 1;
    filter: blur();
    clip-path: inset(0);
    transform: translate(0) rotate(0) scaleX(1);
  }
}

@keyframes jp-line-open {
  0% {
    opacity: 0;
    transform: translateX(-50%) scaleX(0);
  }

  12% {
    opacity: 1;
  }

  100% {
    opacity: 1;
    transform: translateX(-50%) scaleX(1);
  }
}

@keyframes jp-line-close {
  0% {
    opacity: 1;
    transform: translateX(-50%) scaleX(1);
  }

  78% {
    opacity: 1;
    transform: translateX(-50%) scaleX(.18);
  }

  100% {
    opacity: 0;
    transform: translateX(-50%) scaleX(0);
  }
}

@keyframes jp-character-vanish {
  0% {
    opacity: 1;
    filter: blur();
    transform: translateY(-3mm);
  }

  100% {
    opacity: 0;
    filter: blur(6px);
    transform: translateY(-3px);
  }
}

@media (width <= 820px) {
  .jp-ghost-title[data-astro-cid-lcdefpme] {
    position: absolute;
    top: 92px;
  }

  .jp-ghost-text[data-astro-cid-lcdefpme] {
    font-size: clamp(1.4rem, 1.95vw, 2.1rem);
    letter-spacing: .38em;
  }

  .jp-ghost-line[data-astro-cid-lcdefpme] {
    bottom: -9px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .jp-ghost-title[data-astro-cid-lcdefpme].jp-run .jp-ghost-text[data-astro-cid-lcdefpme]:before {
    animation: none;
    opacity: 0;
  }
}
.matrix-days[data-astro-cid-lcdefpme] {
  position: absolute;
  top: 120px;
  bottom: 68px;
  left: 12px;
  z-index: 4;
  display: grid;
  grid-template-rows: repeat(7, 1fr);
  gap: clamp(8px, 1vw, 13px);
  align-content: center;
  color: #f5f5f26b;
  font-family: BIZ UDPMincho, Yu Mincho, YuMincho, serif;
  font-size: .46rem;
  font-weight: 500;
  line-height: 1;
  letter-spacing: .05em;
  pointer-events: none;
  user-select: none;
}

.matrix-days[data-astro-cid-lcdefpme] span[data-astro-cid-lcdefpme] {
  display: flex;
  align-items: center;
  height: 100%;
}

@media (width <= 520px) {
  .matrix-days[data-astro-cid-lcdefpme] {
    position: absolute;
    top: 120px;
    bottom: 68px;
    left: 12px;
    z-index: 4;
    display: grid;
    grid-template-rows: repeat(7, 1fr);
    gap: clamp(8px, 1vw, 13px);
    align-content: center;
    color: #f5f5f26b;
    font-family: Maple Mono, monospace;
    font-size: .46rem;
    font-weight: 500;
    line-height: 1;
    letter-spacing: .05em;
    pointer-events: none;
    user-select: none;
  }
}
.jp-ghost-text[data-astro-cid-lcdefpme] {
  isolation: isolate;
}

.jp-ghost-title[data-astro-cid-lcdefpme].jp-run .jp-ghost-text[data-astro-cid-lcdefpme]:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: -1;
  width: 110%;
  height: 120%;
  pointer-events: none;
  opacity: 0;
  background: radial-gradient(#b7ff00b3 0%, #b7ff0075 18%, #b7ff0042 38%, #b7ff001c 62%, #0000 82%);
  filter: blur(9px);
  transform: translate(-50%, -50%) scaleX(.03) scaleY(.55);
  transform-origin: center;
  animation: 6s linear forwards jp-lime-cloud-cycle;
}

.jp-ghost-title[data-astro-cid-lcdefpme].jp-run .jp-ghost-text[data-astro-cid-lcdefpme] > span[data-astro-cid-lcdefpme] {
  display: inline-block;
  opacity: 0;
  animation: 1.4s cubic-bezier(.16, 1, .3, 1) forwards jp-character-lock, .26s linear forwards jp-character-blink, .7s cubic-bezier(.4, 0, 1, 1) forwards jp-character-vanish;
  animation-delay: calc(0s + (var(--i) * .18s)),
      4.5s,
      4.82s;
}

@keyframes jp-center-flash {
  0% {
    opacity: 0;
    transform: translate(-50%, -50%) scaleX(.2);
  }

  28% {
    opacity: 1;
  }

  72% {
    opacity: .48;
    transform: translate(-50%, -50%) scaleX(3.8);
  }

  100% {
    opacity: 0;
    transform: translate(-50%, -50%) scaleX(5.2);
  }
}

@keyframes jp-ghost-shadow {
  0% {
    text-shadow: 3px 0 #b7ff0057, -2px 0 6px #b7ff0026;
  }

  55% {
    text-shadow: 1px 0 #b7ff002e, 0 0 5px #b7ff0014;
  }

  100% {
    text-shadow: 0 0 #b7ff0000, 0 0 #b7ff0000;
  }
}

@media (prefers-reduced-motion: reduce) {
  .jp-ghost-title[data-astro-cid-lcdefpme].jp-run .jp-ghost-text[data-astro-cid-lcdefpme]:before {
    animation: none;
    opacity: 0;
  }
}
@keyframes jp-lime-cloud-cycle {
  0% {
    opacity: 0;
    transform: translate(-50%, -50%) scaleX(.03) scaleY(.55);
  }

  8% {
    opacity: .62;
  }

  20% {
    opacity: .88;
    transform: translate(-50%, -50%) scaleX(.58) scaleY(.94);
  }

  30% {
    opacity: .82;
    transform: translate(-50%, -50%) scaleX(1) scaleY(1);
  }

  80% {
    opacity: .82;
    transform: translate(-50%, -50%) scaleX(1) scaleY(1);
  }

  87% {
    opacity: .84;
    transform: translate(-50%, -50%) scaleX(.68) scaleY(.97);
  }

  93% {
    opacity: .86;
    transform: translate(-50%, -50%) scaleX(.34) scaleY(.92);
  }

  97% {
    opacity: .72;
    transform: translate(-50%, -50%) scaleX(.12) scaleY(.88);
  }

  100% {
    opacity: 0;
    transform: translate(-50%, -50%) scaleX(.025) scaleY(.86);
  }
}
.grid-dot[data-astro-cid-lcdefpme].vibe:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 9px;
  height: 9px;
  border: 1px solid #f5f5f2d1;
  border-radius: 50%;
  background: #070807;
  box-shadow: 0 0 5px #f5f5f233;
  transform: translate(-50%, -50%);
  pointer-events: none;
}

.grid-dot[data-astro-cid-lcdefpme].media:after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 3px;
  height: 3px;
  border-radius: 50%;
  background: #f5f5f2;
  box-shadow: 0 0 5px #f5f5f2ad;
  transform: translate(-50%, -50%);
  pointer-events: none;
}
.grid-dot[data-astro-cid-lcdefpme].vibe:not(.bright):not(.orange):not(.both) {
  background: none;
  box-shadow: none;
}

.grid-dot[data-astro-cid-lcdefpme].media:not(.vibe):not(.bright):not(.orange):not(.both) {
  background: none;
  box-shadow: none;
}
@keyframes jp-character-blink {
  0% {
    opacity: 1;
  }

  42% {
    opacity: .16;
  }

  72% {
    opacity: 1;
  }

  100% {
    opacity: 1;
  }
}
.jp-ghost-title[data-astro-cid-lcdefpme] .jp-ghost-text[data-astro-cid-lcdefpme]:before, .jp-ghost-title[data-astro-cid-lcdefpme].jp-run .jp-ghost-text[data-astro-cid-lcdefpme]:before {
  content: none !important;
  display: none !important;
  animation: none !important;
}

.jp-ghost-title[data-astro-cid-lcdefpme] .jp-ghost-text[data-astro-cid-lcdefpme] > span[data-astro-cid-lcdefpme], .jp-ghost-title[data-astro-cid-lcdefpme].jp-run .jp-ghost-text[data-astro-cid-lcdefpme] > span[data-astro-cid-lcdefpme] {
  animation: none !important;
}

.jp-ghost-title[data-astro-cid-lcdefpme] .jp-ghost-line[data-astro-cid-lcdefpme], .jp-ghost-title[data-astro-cid-lcdefpme].jp-run .jp-ghost-line[data-astro-cid-lcdefpme] {
  animation: none !important;
}

.jp-lime-cloud[data-astro-cid-lcdefpme] {
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: -1;
  width: 110%;
  height: 120%;
  opacity: 0;
  pointer-events: none;
  background: radial-gradient(#b7ff00c7 0%, #b7ff0085 18%, #b7ff004d 38%, #b7ff0024 62%, #0000 82%);
  filter: blur(9px);
  transform: translate(-50%, -50%) scaleX(.03) scaleY(.72);
  transform-origin: center;
}

.jp-ghost-text[data-astro-cid-lcdefpme] > span[data-astro-cid-lcdefpme] {
  opacity: 0;
}

.jp-ghost-line[data-astro-cid-lcdefpme] {
  opacity: 0;
  transform: translateX(-50%) scaleX(0);
  transform-origin: center;
}

@media (prefers-reduced-motion: reduce) {
  .jp-lime-cloud[data-astro-cid-lcdefpme] {
    display: none;
  }
}
.matrix-hover-info[data-astro-cid-lcdefpme] {
  position: absolute;
  left: 27px;
  bottom: 16px;
  z-index: 7;
  display: grid;
  gap: 3px;
  opacity: 0;
  font-family: Maple Mono, monospace;
  pointer-events: none;
  transform: translateY(4px);
  transition: opacity .22s, transform .32s cubic-bezier(.16, 1, .3, 1);
}

.matrix-hover-info[data-astro-cid-lcdefpme].is-visible {
  opacity: 1;
  transform: translateY(0);
}

.matrix-hover-date[data-astro-cid-lcdefpme] {
  color: #f5f5f270;
  font-size: .5rem;
  letter-spacing: .08em;
}

.matrix-hover-kind[data-astro-cid-lcdefpme] {
  color: #f5f5f2;
  font-size: .58rem;
  font-weight: 600;
  letter-spacing: .1em;
}
.matrix-date-axis[data-astro-cid-lcdefpme] {
  position: absolute;
  top: 103px;
  left: calc(38px - clamp(4px, .5vw, 6.5px));
  right: calc(38px - clamp(4px, .5vw, 6.5px));
  z-index: 4;
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  color: #f5f5f26b;
  font-family: Maple Mono, monospace;
  font-size: .52rem;
  font-weight: 500;
  line-height: 1;
  letter-spacing: .02em;
  pointer-events: none;
  user-select: none;
}

.matrix-date-axis[data-astro-cid-lcdefpme] span[data-astro-cid-lcdefpme] {
  justify-self: center;
}

.matrix-date-axis[data-astro-cid-lcdefpme] .month-start[data-astro-cid-lcdefpme] {
  color: #f5f5f2b8;
  font-weight: 600;
}

@media (width <= 520px) {
  .matrix-date-axis[data-astro-cid-lcdefpme] {
    top: 80px;
    left: 28px;
    right: 28px;
    font-size: .36rem;
  }
}
.dot-links[data-astro-cid-lcdefpme] {
  display: none !important;
}

.grid-dot[data-astro-cid-lcdefpme] {
  position: relative;
  display: block;
  cursor: default;
  text-decoration: none;
}

.grid-dot[data-astro-cid-lcdefpme].has-content {
  cursor: pointer;
}

.grid-dot[data-astro-cid-lcdefpme].orange:not(.both) {
  width: 10px;
  height: 10px;
  border: 1px solid #ff4d00;
  background: #050505;
  box-shadow: 0 0 8px #ff4d0085, 0 0 18px #ff4d002e;
}

.grid-dot-copy[data-astro-cid-lcdefpme] {
  position: absolute;
  top: 50%;
  left: 19px;
  z-index: 30;
  display: grid;
  gap: 4px;
  width: max-content;
  opacity: 0;
  visibility: hidden;
  color: #f5f5f2;
  font-family: Maple Mono, monospace;
  pointer-events: auto;
  padding-left: 14px;
  transform: translate(-7px, -50%);
  transition: opacity .18s, transform .26s cubic-bezier(.16, 1, .3, 1), visibility 0s linear .18s;
}

.grid-dot[data-astro-cid-lcdefpme].copy-left .grid-dot-copy[data-astro-cid-lcdefpme] {
  right: 19px;
  left: auto;
  justify-items: end;
  text-align: right;
  padding-right: 14px;
  padding-left: 0;
  transform: translate(7px, -50%);
}

.grid-dot-copy[data-astro-cid-lcdefpme] strong[data-astro-cid-lcdefpme] {
  font-size: .66rem;
  font-weight: 700;
  letter-spacing: .08em;
  white-space: nowrap;
}

.grid-dot-actions[data-astro-cid-lcdefpme] {
  display: flex;
  gap: 6px;
  align-items: center;
  white-space: nowrap;
  pointer-events: auto;
}

.grid-dot[data-astro-cid-lcdefpme].copy-left .grid-dot-actions[data-astro-cid-lcdefpme] {
  justify-content: flex-end;
}

.grid-dot-actions a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 20px;
  padding: 3px 8px 4px;
  border: 1px solid #f5f5f21a;
  border-radius: 4px;
  background: #969a9424;
  color: #f5f5f2bd;
  font-size: .64rem;
  font-weight: 600;
  line-height: 1;
  letter-spacing: .06em;
  box-shadow: none;
  text-decoration: none !important;
}

.grid-dot-actions a:hover, .grid-dot-actions a:focus-visible {
  background: #969a9433;
  border-color: #f5f5f22e;
  color: #f5f5f2;
  text-decoration: none !important;
}

.grid-dot-actions a:before, .grid-dot-actions a:after {
  content: none !important;
  display: none !important;
}

.grid-dot[data-astro-cid-lcdefpme].has-content:hover .grid-dot-copy[data-astro-cid-lcdefpme], .grid-dot[data-astro-cid-lcdefpme].has-content:focus-within .grid-dot-copy[data-astro-cid-lcdefpme], .grid-dot[data-astro-cid-lcdefpme].is-popup-open .grid-dot-copy[data-astro-cid-lcdefpme] {
  opacity: 1;
  visibility: visible;
  transform: translate(0, -50%);
  transition-delay: 0s;
}

.grid-dot[data-astro-cid-lcdefpme].has-content:hover {
  z-index: 25;
}

.grid-dot[data-astro-cid-lcdefpme].has-content:hover.bright {
  transform: scale(1.18);
}

.grid-dot[data-astro-cid-lcdefpme].has-content:hover.orange {
  transform: scale(1.18);
}

.grid-dot[data-astro-cid-lcdefpme].has-content:hover.vibe:before {
  transform: translate(-50%, -50%) scale(1.18);
}

.grid-dot[data-astro-cid-lcdefpme].has-content:hover.media:after {
  transform: translate(-50%, -50%) scale(1.45);
}

.matrix-hover-info[data-astro-cid-lcdefpme] {
  left: 27px;
  bottom: 16px;
  gap: 4px;
}

.matrix-hover-date[data-astro-cid-lcdefpme] {
  font-size: .7rem;
  font-weight: 600;
  letter-spacing: .08em;
  transform: translateY(6px);
}

.matrix-hover-kind[data-astro-cid-lcdefpme] {
  font-size: .8rem;
  font-weight: 700;
  letter-spacing: .1em;
}

@media (width <= 520px) {
  .grid-dot-copy[data-astro-cid-lcdefpme] strong[data-astro-cid-lcdefpme] {
    font-size: .58rem;
  }

  .grid-dot-actions a {
    font-size: .6rem;
  }

  .matrix-hover-date[data-astro-cid-lcdefpme] {
    font-size: .64rem;
  }

  .matrix-hover-kind[data-astro-cid-lcdefpme] {
    font-size: .74rem;
  }
}
.grid-dot[data-astro-cid-lcdefpme].media:after {
  background: #b46cff !important;
  box-shadow: 0 0 6px #8b4de8b8, 0 0 14px #8b4de857, 0 0 24px #8b4de81f !important;
}
.grid-dot[data-astro-cid-lcdefpme].media:not(.vibe):not(.bright):not(.orange):not(.both):after {
  width: 9px !important;
  height: 9px !important;
  background: #070807 !important;
  border: 1px solid #b46cff !important;
  border-radius: 50% !important;
  box-shadow: 0 0 5px #b46cffeb, 0 0 10px #b46cff9e, 0 0 18px #b46cff47, inset 0 0 5px #b46cff2e !important;
}

.grid-dot[data-astro-cid-lcdefpme].media:is(.vibe, .bright, .orange, .both):after {
  width: 3px !important;
  height: 3px !important;
  border: 0 !important;
  background: #b46cff !important;
  box-shadow: 0 0 6px #8b4de8b8, 0 0 14px #8b4de857, 0 0 24px #8b4de81f !important;
}
.grid-dot[data-astro-cid-lcdefpme].bright.orange {
  width: 10px !important;
  height: 10px !important;
  border: 1px solid #b7ff00 !important;
  border-radius: 50% !important;
  background: #050505 !important;
  box-shadow: 0 0 8px #b7ff0085, 0 0 18px #b7ff002e !important;
}

.grid-dot[data-astro-cid-lcdefpme].bright.orange:after {
  content: "" !important;
  position: absolute !important;
  top: 50% !important;
  left: 50% !important;
  width: 3px !important;
  height: 3px !important;
  border: 0 !important;
  border-radius: 50% !important;
  background: #ff4d00 !important;
  box-shadow: 0 0 6px #ff4d00b8, 0 0 12px #ff4d004d !important;
  transform: translate(-50%, -50%) !important;
}

.grid-dot[data-astro-cid-lcdefpme].bright.vibe:not(.orange):before {
  width: 3px !important;
  height: 3px !important;
  border: 0 !important;
  background: #f5f5f2 !important;
  box-shadow: 0 0 6px #f5f5f2b8, 0 0 12px #f5f5f242 !important;
}

.grid-dot[data-astro-cid-lcdefpme].orange.vibe:not(.bright):before {
  width: 3px !important;
  height: 3px !important;
  border: 0 !important;
  background: #f5f5f2 !important;
  box-shadow: 0 0 6px #f5f5f2b8, 0 0 12px #f5f5f242 !important;
}

.grid-dot[data-astro-cid-lcdefpme].bright.media:not(.orange):not(.vibe):after {
  width: 3px !important;
  height: 3px !important;
  border: 0 !important;
  background: #b46cff !important;
  box-shadow: 0 0 6px #8b4de8b8, 0 0 12px #8b4de84d !important;
  transform: translate(-50%, -50%) !important;
}

.grid-dot[data-astro-cid-lcdefpme].orange.media:not(.bright):not(.vibe):after {
  width: 3px !important;
  height: 3px !important;
  border: 0 !important;
  background: #b46cff !important;
  box-shadow: 0 0 6px #8b4de8b8, 0 0 12px #8b4de84d !important;
  transform: translate(-50%, -50%) !important;
}

.grid-dot[data-astro-cid-lcdefpme].vibe.media:not(.bright):not(.orange) {
  width: 10px !important;
  height: 10px !important;
  background: none !important;
  box-shadow: none !important;
}

.grid-dot[data-astro-cid-lcdefpme].vibe.media:not(.bright):not(.orange):before {
  width: 9px !important;
  height: 9px !important;
  border: 1px solid #f5f5f2 !important;
  border-radius: 50% !important;
  background: #050505 !important;
  box-shadow: 0 0 8px #f5f5f285, 0 0 18px #f5f5f229 !important;
}

.grid-dot[data-astro-cid-lcdefpme].vibe.media:not(.bright):not(.orange):after {
  width: 3px !important;
  height: 3px !important;
  border: 0 !important;
  background: #b46cff !important;
  box-shadow: 0 0 6px #8b4de8b8, 0 0 12px #8b4de84d !important;
  transform: translate(-50%, -50%) !important;
}
.grid-dot[data-astro-cid-lcdefpme].bright.orange.vibe:not(.media) {
  width: 10px !important;
  height: 10px !important;
  border: 1px solid #b7ff00 !important;
  border-radius: 50% !important;
  background: #ff4d00 !important;
  box-shadow: 0 0 8px #b7ff0085, 0 0 18px #b7ff002e !important;
}

.grid-dot[data-astro-cid-lcdefpme].bright.orange.vibe:not(.media):before {
  content: none !important;
  display: none !important;
}

.grid-dot[data-astro-cid-lcdefpme].bright.orange.vibe:not(.media):after {
  content: "" !important;
  position: absolute !important;
  top: 50% !important;
  left: 50% !important;
  right: auto !important;
  width: 3px !important;
  height: 3px !important;
  border: 0 !important;
  border-radius: 50% !important;
  background: #f5f5f2 !important;
  box-shadow: 0 0 5px #f5f5f2b8 !important;
  transform: translate(-50%, -50%) !important;
}

.grid-dot[data-astro-cid-lcdefpme].bright.orange.media:not(.vibe) {
  width: 10px !important;
  height: 10px !important;
  border: 1px solid #b7ff00 !important;
  border-radius: 50% !important;
  background: #ff4d00 !important;
  box-shadow: 0 0 8px #b7ff0085, 0 0 18px #b7ff002e !important;
}

.grid-dot[data-astro-cid-lcdefpme].bright.orange.media:not(.vibe):before {
  content: none !important;
  display: none !important;
}

.grid-dot[data-astro-cid-lcdefpme].bright.orange.media:not(.vibe):after {
  content: "" !important;
  position: absolute !important;
  top: 50% !important;
  left: 50% !important;
  right: auto !important;
  width: 3px !important;
  height: 3px !important;
  border: 0 !important;
  border-radius: 50% !important;
  background: #b46cff !important;
  box-shadow: 0 0 5px #8b4de8d1 !important;
  transform: translate(-50%, -50%) !important;
}

.grid-dot[data-astro-cid-lcdefpme].bright.vibe.media:not(.orange) {
  width: 10px !important;
  height: 10px !important;
  border: 1px solid #b7ff00 !important;
  border-radius: 50% !important;
  background: #f5f5f2 !important;
  box-shadow: 0 0 8px #b7ff0094, 0 0 18px #b7ff0033 !important;
}

.grid-dot[data-astro-cid-lcdefpme].bright.vibe.media:not(.orange):before {
  content: none !important;
  display: none !important;
}

.grid-dot[data-astro-cid-lcdefpme].bright.vibe.media:not(.orange):after {
  content: "" !important;
  position: absolute !important;
  top: 50% !important;
  left: 50% !important;
  right: auto !important;
  width: 3px !important;
  height: 3px !important;
  border: 0 !important;
  border-radius: 50% !important;
  background: #b46cff !important;
  box-shadow: 0 0 5px #8b4de8d1 !important;
  transform: translate(-50%, -50%) !important;
}

.grid-dot[data-astro-cid-lcdefpme].orange.vibe.media:not(.bright) {
  width: 10px !important;
  height: 10px !important;
  border: 1px solid #ff4d00 !important;
  border-radius: 50% !important;
  background: #f5f5f2 !important;
  box-shadow: 0 0 8px #ff4d0085, 0 0 18px #ff4d002e !important;
}

.grid-dot[data-astro-cid-lcdefpme].orange.vibe.media:not(.bright):before {
  content: none !important;
  display: none !important;
}

.grid-dot[data-astro-cid-lcdefpme].orange.vibe.media:not(.bright):after {
  content: "" !important;
  position: absolute !important;
  top: 50% !important;
  left: 50% !important;
  right: auto !important;
  width: 3px !important;
  height: 3px !important;
  border: 0 !important;
  border-radius: 50% !important;
  background: #b46cff !important;
  box-shadow: 0 0 5px #8b4de8d1 !important;
  transform: translate(-50%, -50%) !important;
}
.grid-dot[data-astro-cid-lcdefpme].has-content:hover.bright, .grid-dot[data-astro-cid-lcdefpme].has-content:hover.orange {
  transform: none !important;
}

.grid-dot[data-astro-cid-lcdefpme].has-content:hover.bright {
  box-shadow: 0 0 10px #b7ff00ad, 0 0 22px #b7ff003d !important;
}

.grid-dot[data-astro-cid-lcdefpme].has-content:hover.orange:not(.bright) {
  box-shadow: 0 0 10px #ff4d00ad, 0 0 22px #ff4d003d !important;
}

.catch-me-stage[data-astro-cid-lcdefpme] {
  position: absolute;
  left: 50%;
  top: 115%;
  width: min(86vw, 1180px);
  transform: translate(-50%, -50%);
  display: flex;
  justify-content: center;
  z-index: 5;
}

.catch-me-text[data-astro-cid-lcdefpme] {
  position: relative;
  display: inline-block;
  color: #202220;
  font-family: Host Grotesk Variable, Arial, sans-serif;
  font-size: clamp(3rem, 6.2vw, 6.8rem);
  font-weight: 800;
  line-height: .95;
  letter-spacing: -.055em;
  white-space: nowrap;
  cursor: default;
  transition: color .65s cubic-bezier(.22, 1, .36, 1);
}

.catch-me-text[data-astro-cid-lcdefpme]:after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: -22px;
  width: 0;
  height: 2px;
  background: #b7ff00;
  transform: translateX(-50%);
  transition: width .36s cubic-bezier(.22, 1, .36, 1);
}

.catch-me-text[data-astro-cid-lcdefpme]:hover {
  color: #b7ff00;
}

.catch-me-text[data-astro-cid-lcdefpme]:hover:after {
  width: 72%;
}

@media (width <= 760px) {
  .catch-me-stage[data-astro-cid-lcdefpme] {
    top: 60%;
    width: calc(100% - 32px);
  }

  .catch-me-text[data-astro-cid-lcdefpme] {
    font-size: clamp(2.2rem, 10vw, 4.2rem);
  }

  .catch-me-text[data-astro-cid-lcdefpme]:after {
    bottom: -14px;
  }
}

.hero[data-astro-cid-lcdefpme] {
  position: relative;
}

a[data-astro-cid-lcdefpme].catch-me-text {
  text-decoration: none;
}
@media (max-width: 820px) {
    [data-mobile-pour-en-finir="true"] {
      color: #f3f3f3 !important;
      opacity: 1 !important;
      -webkit-text-fill-color: currentColor !important;
      text-shadow: none !important;
    }

    [data-mobile-hidden-page-title="true"] {
    /* MOBILE CATCHME POSITION FINAL */
    position: relative !important;
    top: 0 !important;
      position: static !important;
      display: block !important;
      width: 100% !important;
      margin: 2.2rem 0 4.6rem !important;
      color: rgba(255, 255, 255, 0.14) !important;
      opacity: 1 !important;
      line-height: 0.9 !important;
      letter-spacing: -0.03em !important;
      pointer-events: none !important;
      z-index: 0 !important;
      text-align: left !important;
      -webkit-text-fill-color: currentColor !important;
      text-shadow: none !important;
    }
  }/* MOBILE MATRIX CATCHME FIX V1 */
@media (max-width: 820px) {

  /* -----------------------------------------
     YOU CAN'T CATCH ME
     remove old absolute-stage behaviour
     ----------------------------------------- */

  .catch-me-stage {
    position: static !important;

    left: auto !important;
    top: auto !important;

    width: 100% !important;
    max-width: none !important;

    margin: 42px 0 54px !important;
    padding: 0 !important;

    transform: none !important;

    display: flex !important;
    justify-content: center !important;
    align-items: center !important;

    min-height: 0 !important;
    height: auto !important;

    overflow: visible !important;
  }

  [data-mobile-hidden-page-title="true"] {
    /* MOBILE CATCHME POSITION FINAL */
    position: relative !important;
    top: 0 !important;
    position: static !important;

    width: auto !important;
    max-width: calc(100% - 32px) !important;

    margin: 0 auto !important;

    transform: none !important;

    text-align: center !important;

    color: rgba(255, 255, 255, 0.08) !important;
    opacity: 1 !important;

    pointer-events: auto !important;
  }

  /* -----------------------------------------
     MATRIX DAY LABELS
     align with dot-grid rows
     ----------------------------------------- */

  .matrix-days {
    top: 96px !important;
    bottom: 78px !important;

    grid-template-rows: repeat(7, 1fr) !important;

    gap: 8px !important;

    align-content: stretch !important;
  }

  .matrix-days span {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;

    height: auto !important;
  }
}/* MOBILE FINAL SPACING SIGNAL V2 */

@media (max-width: 820px) {

  /* Hero内部の自動row-gapを止めて個別に管理 */
  .hero-grid {
    row-gap: 0 !important;
    padding-bottom: 0 !important;
  }

  /* Hero本文 → Matrix は今の間隔感を維持 */
  .hero-copy {
    margin-bottom: 54px !important;
  }


  .catch-me-stage {
    margin: 0 !important;
    padding: 0 !important;
  }
  /* Matrix → You can't catch me */
  .dot-visual {
    margin-bottom: 22px !important;
  }

  /* You can't catch me → Footer */
  [data-mobile-hidden-page-title="true"] {
    /* MOBILE CATCHME POSITION FINAL */
    position: relative !important;
    top: 0 !important;
    margin:
      0
      auto
      32px
      !important;

    width: auto !important;
    max-width: calc(100% - 32px) !important;

    line-height: 1 !important;
  }

  .hero {
    min-height: 0 !important;
    height: auto !important;
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
  }

  /* Matrix LIVE SIGNAL */
  .signal-light {
    animation:
      nexus-mobile-signal-pulse
      2.4s
      ease-in-out
      infinite !important;
  }
}

@keyframes nexus-mobile-signal-pulse {
  0%,
  100% {
    opacity: 0.38;
  }

  50% {
    opacity: 1;
  }
}/* MOBILE CATCHME NORMAL FLOW FINAL */

@media (max-width: 820px) {

  html body main.hero {
    min-height: 0 !important;
    height: auto !important;
    max-height: none !important;

    padding-bottom: 0 !important;
    margin-bottom: 0 !important;
  }

  .hero-grid {
    row-gap: 0 !important;
    padding-top: 32px !important;
    padding-bottom: 0 !important;
    transform: none !important;
  }

  .hero-copy {
    margin-bottom: 24px !important;
  }

  .dot-visual {
    top: auto !important;
    margin-bottom: 34px !important;
  }

  .catch-me-stage:empty {
    display: none !important;
  }

  [data-mobile-hidden-page-title="true"] {
    position: relative !important;
    top: auto !important;

    display: block !important;

    width: calc(100% - 32px) !important;
    max-width: none !important;

    margin:
      0
      auto
      34px
      !important;

    transform: none !important;

    text-align: center !important;

    color: rgba(255,255,255,0.08) !important;
    opacity: 1 !important;

    line-height: 0.9 !important;

    pointer-events: auto !important;
  }

  [data-mobile-hidden-page-title="true"]::after {
    position: absolute !important;
    left: 14% !important;
    right: auto !important;
    bottom: -18px !important;

    width: 72% !important;
  }
}/* MATRIX PC FLYOUT TEST START */

@media (min-width: 821px) {

  /*
    Matrix外への表示を許可
  */
  .dot-visual,
  .dot-stage,
  .dot-grid,
  .grid-dot {
    overflow: visible !important;
  }

  /*
    選択ドットの情報ラベル。
    ドットの左側へ展開する。
  */
  .grid-dot-copy {
    left: auto !important;
    right: 24px !important;

    top: 50% !important;
    transform: translateY(-50%) !important;

    width: max-content !important;
    max-width: 320px !important;

    text-align: right !important;
    white-space: normal !important;

    line-height: 1.2 !important;

    z-index: 80 !important;

    pointer-events: none !important;
  }

  /*
    BLOG / PULSE / MEDIA 等のタイトル。
    3件でも自然に折り返す。
  */
  .grid-dot-copy > * {
    max-width: 320px !important;
  }

  /*
    リンクボタン群。
    一列に無理やり詰めず、必要なら折り返す。
  */
  :global(.grid-dot-actions) {
    display: flex !important;
    justify-content: flex-end !important;
    align-items: center !important;

    flex-wrap: wrap !important;

    width: max-content !important;
    max-width: 300px !important;

    margin-left: auto !important;
    margin-top: 7px !important;

    gap: 5px !important;

    pointer-events: auto !important;
  }

  :global(.grid-dot-actions a) {
    flex: 0 0 auto !important;
    white-space: nowrap !important;
  }
}

/* MATRIX PC FLYOUT TEST END *//* MATRIX MOBILE FLYOUT TEST START */

@media (max-width: 820px) {

  /*
    Matrix外への表示を許可
  */
  .dot-visual,
  .dot-stage,
  .dot-grid,
  .grid-dot {
    overflow: visible !important;
  }

  /*
    選択したドットの真下に情報を展開
  */
  .grid-dot-copy {
    left: 50% !important;
    right: auto !important;

    top: 26px !important;

    transform: translateX(-50%) !important;

    width: max-content !important;
    max-width: min(78vw, 300px) !important;

    text-align: center !important;
    white-space: normal !important;

    line-height: 1.25 !important;

    z-index: 100 !important;

    pointer-events: none !important;
  }

  /*
    BLOG / PULSE / MEDIA
    必要なら複数行へ
  */
  .grid-dot-copy > * {
    max-width: min(78vw, 300px) !important;
  }

  /*
    ボタン群は中央揃え＋折り返し
  */
  :global(.grid-dot-actions) {
    display: flex !important;

    justify-content: center !important;
    align-items: center !important;

    flex-wrap: wrap !important;

    width: max-content !important;
    max-width: min(76vw, 290px) !important;

    margin:
      7px
      auto
      0
      !important;

    gap: 5px !important;

    pointer-events: auto !important;
  }

  :global(.grid-dot-actions a) {
    flex: 0 0 auto !important;
    white-space: nowrap !important;
  }
}

/* MATRIX MOBILE FLYOUT TEST END *//* MATRIX MOBILE GRID DOWN START */

@media (max-width: 520px) {

  /*
    Actual dot matrix:
    same height, shifted 14px downward
  */
  .dot-grid,
  .dot-links {
    inset:
      110px
      28px
      64px
      !important;
  }

  /*
    Weekday labels follow the exact same rows
  */
  .matrix-days {
    top: 110px !important;
    bottom: 64px !important;
  }

  /*
    Date labels move with the matrix
  */
  .matrix-date-axis {
    top: 94px !important;
  }
}

/* MATRIX MOBILE GRID DOWN END */