/* ── HERO ── */
.hero {
  min-height:100vh;
  padding:8rem 4rem 5rem;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:4rem;
  align-items:center;
  position:relative;
  overflow:hidden;
}

/* Ruled rice paper lines */
.hero::before {
  content:'';
  position:absolute; inset:0;
  background-image: repeating-linear-gradient(
    180deg, transparent, transparent 59px,
    rgba(26,20,16,0.04) 60px
  );
  pointer-events:none;
}

.hero-left { position:relative; z-index:2; }

.hero-eyebrow {
  display:inline-flex; align-items:center; gap:0.6rem;
  font-size:0.6rem; letter-spacing:0.25em;
  color:var(--signal); text-transform:uppercase;
  margin-bottom:2.5rem;
  animation: revealRight 0.7s ease both;
}
.hero-eyebrow::before {
  content:''; width:24px; height:1px; background:var(--signal);
}

.hero-title { animation: revealRight 0.7s 0.1s ease both; }
.hero-title-zh {
  font-family:'Noto Serif SC', serif;
  font-size:5.5rem; font-weight:200;
  line-height:1.05; letter-spacing:0.02em; color:var(--ink);
}
.hero-title-zh strong { font-weight:700; color:var(--signal); }
.hero-title-en {
  font-family:'Playfair Display', serif;
  font-size:1.4rem; font-style:italic;
  color:var(--muted); margin-top:0.5rem; letter-spacing:0.02em;
}

.hero-divider {
  width:60px; height:1px;
  background: linear-gradient(90deg, var(--signal), transparent);
  margin:2.5rem 0;
  animation: expandWidth 0.8s 0.3s ease both;
}

.hero-desc {
  font-family:'Noto Sans SC', sans-serif;
  font-size:0.92rem; line-height:1.85;
  color:var(--ink3); max-width:440px;
  animation: revealRight 0.7s 0.3s ease both;
}

.hero-metrics {
  display:flex; gap:3rem; margin-top:3rem;
  animation: revealRight 0.7s 0.4s ease both;
}
.metric { display:flex; flex-direction:column; gap:0.3rem; }
.metric-val {
  font-family:'Playfair Display', serif;
  font-size:2.8rem; color:var(--ink); line-height:1;
}
.metric-val span { color:var(--signal); }
.metric-label {
  font-size:0.58rem; letter-spacing:0.18em;
  color:var(--muted); text-transform:uppercase;
}

.hero-actions {
  display:flex; gap:1.2rem; margin-top:3rem;
  animation: revealRight 0.7s 0.5s ease both;
}

/* ── HERO RIGHT: brain + wave ── */
.hero-right {
  position:relative; z-index:2;
  display:flex; flex-direction:column;
  align-items:center;
  animation: revealLeft 0.9s 0.2s ease both;
}

.brain-frame {
  position:relative; width:520px; height:520px;
}

/* Glowing halo behind head */
.brain-frame::before {
  content:''; position:absolute;
  top:50%; left:50%; transform:translate(-50%,-50%);
  width:420px; height:420px;
  background: radial-gradient(ellipse,
    rgba(0,109,107,0.18) 0%,
    rgba(0,109,107,0.09) 40%,
    rgba(0,109,107,0.03) 65%,
    transparent 75%
  );
  border-radius:50%; filter:blur(8px);
}
.brain-frame::after {
  content:''; position:absolute;
  top:50%; left:50%; transform:translate(-50%,-50%);
  width:500px; height:500px;
  border-radius:50%;
  border:1px solid rgba(0,109,107,0.12);
}
.brain-svg-wrap { width:100%; height:100%; }

/* EEG wave strip */
.eeg-wave-wrap {
  width:520px; margin-top:0.5rem;
  position:relative;
  background: linear-gradient(180deg, rgba(0,109,107,0.03), transparent);
  border-radius:2px; padding:0.4rem 0;
}
.eeg-wave-label {
  font-size:0.58rem; letter-spacing:0.2em;
  color:var(--signal); text-transform:uppercase;
  margin-bottom:0.4rem; padding-left:0.5rem;
  display:flex; align-items:center; gap:0.5rem;
  font-weight:500;
}
.eeg-wave-label::before {
  content:''; width:20px; height:1.5px; background:var(--signal);
}
#hero-eeg { opacity:1; display:block; }

/* Brain pulse animations */
@keyframes pulse  { 0%,100%{r:16;opacity:0.5} 50%{r:28;opacity:0} }
@keyframes pulseB { 0%,100%{r:16;opacity:0.4} 50%{r:30;opacity:0} }

@media(max-width:900px) {
  .hero { grid-template-columns:1fr; padding:7rem 2rem 4rem; }
  .hero-right { display:none; }
}
