.lewdity-hero {
  position: relative;
  padding: clamp(60px, 8vh, 120px) var(--page-edge);
  text-align: center;
}

.lewdity-content {
  max-width: 48ch;
  margin: 0 auto;
}

.lewdity-title {
  font-size: clamp(38px, 5.6vw, 72px);
  font-weight: 700;
  letter-spacing: -.032em;
  line-height: .98;
  margin-bottom: var(--s4);
}

.cta-group {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--s3);
  margin-top: var(--s4);
}

.cta-group.primary { margin-top: var(--s6); }

.cta-desc {
  font-size: 14.5px;
  color: var(--dim);
  line-height: 1.65;
}

.lewdity-streams {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: clamp(18px, 3vw, 30px);
  padding: clamp(30px, 5vh, 60px) var(--page-edge);
  border-top: 1px solid var(--hairline);
}

.stream-card {
  padding: clamp(22px, 3.4vw, 40px);
  border-radius: var(--r-1);
  background: var(--glass);
  border: 1px solid var(--hairline);
  display: flex;
  flex-direction: column;
  gap: var(--s4);
}

.stream-card h3 {
  font-size: 18px;
  font-weight: 700;
  letter-spacing: -.016em;
}

.stream-card p {
  font-size: 14.5px;
  color: var(--dim);
  line-height: 1.65;
}

.lw-hero {
  position: relative;
  display: flex;
  align-items: flex-end;
  overflow: hidden;

  min-height: min(calc(88svh - var(--nav-space)), 780px);
  padding-block: clamp(28px, 5vh, 64px) clamp(64px, 12vh, 128px);
  border-bottom: 1px solid var(--hairline);
}

.lw-field {
  position: absolute;
  inset: 0;
  z-index: 0;
  display: grid;
  place-items: center;
  pointer-events: none;
}

.lw-spiral,
.lw-moire {
  grid-area: 1 / 1;
  width: min(154vh, 132vw);
  aspect-ratio: 1;
  transform: translate(19%, -13%);
}

.lw-spiral {
  max-width: none;
  height: auto;
  color: var(--accent);
  opacity: .26;
  -webkit-mask-image: radial-gradient(closest-side at 50% 50%,
              rgba(0,0,0,1), rgba(0,0,0,.78) 40%, rgba(0,0,0,.26) 70%, rgba(0,0,0,0) 92%);
          mask-image: radial-gradient(closest-side at 50% 50%,
              rgba(0,0,0,1), rgba(0,0,0,.78) 40%, rgba(0,0,0,.26) 70%, rgba(0,0,0,0) 92%);
}

.lw-moire {
  background:
    repeating-conic-gradient(from 9deg at 50% 50%,
      var(--stroke) 0deg .55deg, transparent .55deg 3.2deg),
    repeating-radial-gradient(circle at 50% 50%,
      var(--stroke) 0 1px, transparent 1px 17px);
  opacity: .8;
  -webkit-mask-image: radial-gradient(closest-side at 50% 50%,
              rgba(0,0,0,.9), rgba(0,0,0,.34) 44%, rgba(0,0,0,0) 76%);
          mask-image: radial-gradient(closest-side at 50% 50%,
              rgba(0,0,0,.9), rgba(0,0,0,.34) 44%, rgba(0,0,0,0) 76%);
}

.lw-hero-inner {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: clamp(18px, 2.6vw, 30px);
}

.lw-hero-inner::before {
  content: "";
  position: absolute;
  inset: -14% -18% -22% -22%;
  z-index: -1;
  pointer-events: none;
  background: radial-gradient(112% 88% at 24% 62%, var(--glass-well), transparent 74%);
}

.lw-h1 { max-width: 13ch; }
.lw-h1 .soft { color: var(--dim); }

.lw-hero .lede { max-width: 48ch; }

.lw-hero .btns { margin-top: var(--s2); }

.lw-hint {
  display: flex;
  align-items: center;
  gap: var(--s3);
  margin-top: clamp(20px, 4vh, 44px);
  font-family: var(--mono);
  font-size: 10px;
  letter-spacing: .1em;
  color: var(--faint);
}
.lw-hint .go { color: var(--faint-deco); }

.lw-panels {
  display: flex;
  flex-direction: column;
  gap: clamp(18px, 2.6vw, 30px);
}

.lw-panel {
  --lw-pad: clamp(22px, 3.4vw, 46px);
  padding: var(--lw-pad);
}

.lw-panel-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(0, .92fr);
  gap: clamp(26px, 4.4vw, 60px);
  align-items: start;
}

.lw-panel-head {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--s5);
  min-width: 0;
}

.lw-name {
  font-weight: 700;
  letter-spacing: -.032em;
  line-height: .98;
  font-size: clamp(38px, 5.6vw, 72px);
  color: var(--fg);
}

.lw-panel .copy { max-width: 44ch; }

.lw-panel .btns { margin-top: var(--s2); }

.lw-fine {
  font-family: var(--mono);
  font-size: 10px;
  letter-spacing: .05em;
  line-height: 1.8;
  color: var(--faint);
  max-width: 46ch;
}

.lw-panel-side {
  display: flex;
  flex-direction: column;
  gap: var(--s5);
  min-width: 0;
}
.lw-list {
  display: flex;
  flex-direction: column;
  gap: var(--s4);
}
.lw-list li {
  position: relative;
  padding-left: var(--s5);
  color: var(--dim);
  font-size: 14.5px;
  line-height: 1.65;
}
.lw-list li::before {
  content: "\25AA";
  position: absolute;
  left: 2px;
  top: 0;
  font-size: 8px;
  line-height: 2.9;
  color: var(--faint-deco);
}
.lw-list b { color: var(--fg); font-weight: 600; }

.lw-strip {
  display: flex;
  align-items: center;
  gap: clamp(16px, 3vw, 36px);
  margin: var(--lw-pad) calc(-1 * var(--lw-pad)) calc(-1 * var(--lw-pad));
  padding: var(--s5) var(--lw-pad);
  border-top: 1px solid var(--hairline);
  background: var(--glass-row);
}
.lw-strip-cap {
  flex: 1 1 auto;
  min-width: 0;
  font-family: var(--mono);
  font-size: 9.5px;
  letter-spacing: .08em;
  color: var(--faint);
}

.lw-strip-cap .dot { color: var(--faint-deco); }

.lw-strata {
  flex: none;
  display: flex;
  flex-direction: column;
  gap: 4px;
  width: min(46%, 260px);
}
.lw-strata i {
  display: block;
  height: 1px;
  background: var(--stroke);
  border-radius: 1px;
}
.lw-strata i:nth-child(1)  { width: 100%; }
.lw-strata i:nth-child(2)  { width: 82%;  }
.lw-strata i:nth-child(3)  { width: 93%;  }
.lw-strata i:nth-child(4)  { width: 61%;  }
.lw-strata i:nth-child(5)  { width: 100%; background: var(--stroke-2); }
.lw-strata i:nth-child(6)  { width: 74%;  }
.lw-strata i:nth-child(7)  { width: 88%;  }
.lw-strata i:nth-child(8)  { width: 52%;  }
.lw-strata i:nth-child(9)  { width: 96%;  }
.lw-strata i:nth-child(10) { width: 68%;  }
.lw-strata i:nth-child(11) { width: 40%;  }

.lw-wave {
  flex: none;
  display: flex;
  align-items: flex-end;
  gap: 3px;
  height: 34px;
  width: min(46%, 260px);
}
.lw-wave i {
  display: block;
  flex: 1 1 0;
  min-width: 2px;
  background: var(--stroke);
  border-radius: 1px;
}
.lw-wave i:nth-child(3n)   { background: var(--stroke-2); }
.lw-wave i:nth-child(1)  { height: 22%; }
.lw-wave i:nth-child(2)  { height: 54%; }
.lw-wave i:nth-child(3)  { height: 34%; }
.lw-wave i:nth-child(4)  { height: 78%; }
.lw-wave i:nth-child(5)  { height: 46%; }
.lw-wave i:nth-child(6)  { height: 92%; }
.lw-wave i:nth-child(7)  { height: 38%; }
.lw-wave i:nth-child(8)  { height: 66%; }
.lw-wave i:nth-child(9)  { height: 28%; }
.lw-wave i:nth-child(10) { height: 84%; }
.lw-wave i:nth-child(11) { height: 44%; }
.lw-wave i:nth-child(12) { height: 70%; }
.lw-wave i:nth-child(13) { height: 30%; }
.lw-wave i:nth-child(14) { height: 58%; }
.lw-wave i:nth-child(15) { height: 40%; }
.lw-wave i:nth-child(16) { height: 74%; }
.lw-wave i:nth-child(17) { height: 24%; }
.lw-wave i:nth-child(18) { height: 50%; }

.lw-live {
  display: inline-flex;
  align-items: center;
  gap: var(--s2);
  height: 22px;
  padding: 0 var(--s2) 0 7px;
  border-radius: var(--r-1);
  font-family: var(--mono);
  font-size: 10px;
  letter-spacing: .12em;
  color: var(--accent);
  background: var(--accent-soft);
  box-shadow: inset 0 0 0 1px var(--accent-line), 0 0 12px var(--accent-glow);
}
.lw-live .dot {
  width: 6px;
  height: 6px;
  flex: none;
  border-radius: 50%;
  background: var(--accent);
  box-shadow: 0 0 8px var(--accent-line);
}

.lw-panel-tag {
  display: flex;
  align-items: center;
  gap: var(--s4);
  width: 100%;
}
.lw-panel-tag .kick { flex: 1 1 auto; min-width: 0; }

.lw-head {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--s5);
  margin-bottom: clamp(30px, 5vh, 58px);
}

.lw-index-head {
  display: flex;
  align-items: center;
  gap: var(--s4);
  padding: 0 var(--s2) var(--s3);
  font-family: var(--mono);
  font-size: 9.5px;
  letter-spacing: .1em;
  color: var(--faint);
}
.lw-index-head .grow { flex: 1; }

.lw-note {
  margin-top: var(--s6);
  font-family: var(--mono);
  font-size: 10px;
  letter-spacing: .05em;
  line-height: 1.9;
  color: var(--faint);
  max-width: 74ch;
}

.lw-rule-card {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--s4);
  height: 100%;
}
.lw-rule-card .copy { font-size: 14.5px; }

.lw-close .lines { border-top-color: var(--stroke); }
.lw-close-note {
  margin-top: var(--s6);
  font-family: var(--mono);
  font-size: 10px;
  letter-spacing: .05em;
  color: var(--faint);
}

@media (max-width: 980px) {
  .lw-panel-grid { grid-template-columns: minmax(0, 1fr); gap: clamp(24px, 5vw, 40px); }
}

@media (max-width: 820px) {
  .lw-hero { min-height: min(76svh, 660px); }
  .lw-h1 { max-width: 16ch; }
  .lw-strip { flex-wrap: wrap; row-gap: var(--s4); }

  .lw-strata { width: min(100%, 280px); }
  .lw-wave { width: 100%; }
}

@media (max-width: 560px) {
  .lw-hero { min-height: 0; padding-bottom: clamp(48px, 9vh, 88px); }
  .lw-name { font-size: clamp(34px, 11vw, 52px); }
  .lw-spiral, .lw-moire { width: min(140vh, 188vw); transform: translate(14%, -8%); }
  .lw-strip { padding-inline: var(--lw-pad); }
  .lw-index-head { display: none; }
}

.btn .btn-logo { height: 15px; width: auto; flex: none; }
.btn-lg .btn-logo { height: 18px; }
