/* Home (index.html) */
.hero {
  min-height: 100svh;
  display: flex; flex-direction: column; justify-content: center;
  padding: 120px 56px 80px;
  position: relative; overflow: hidden;
}
.hero-circle {
  position: absolute; right: -120px; top: 50%; transform: translateY(-50%);
  opacity: 0.04; pointer-events: none;
}
.hero-eyebrow {
  font-family: var(--f-m); font-size: 0.6rem; letter-spacing: 0.16em;
  text-transform: uppercase; color: var(--muted);
  display: flex; align-items: center; gap: 12px; margin-bottom: 48px;
}
.hero-eyebrow::before { content:''; display:block; width:20px; height:1px; background:var(--muted); }
.hero h1 {
  max-width: 820px; margin-bottom: 24px;
  font-size: clamp(2.2rem, 4.5vw, 4.2rem);
}
.hero-serif {
  font-family: var(--f-d); font-size: clamp(1.1rem, 1.8vw, 1.4rem);
  color: color-mix(in srgb, var(--fg) 55%, transparent); line-height: 1.7;
  max-width: 560px; margin-bottom: 20px;
}
.hero-key {
  font-family: var(--f-d); font-style: italic;
  font-size: clamp(1.1rem, 1.8vw, 1.4rem);
  color: color-mix(in srgb, var(--fg) 85%, transparent); margin-bottom: 52px;
  padding: 18px 0; border-top: 1px solid var(--border); border-bottom: 1px solid var(--border);
  max-width: 420px;
}
.hero-meta {
  display: flex; gap: 40px; margin-top: 48px; flex-wrap: wrap;
  border-top: 1px solid var(--border); padding-top: 32px;
}
.hero-meta-item .ml { font-family:var(--f-m); font-size:0.58rem; letter-spacing:0.1em; text-transform:uppercase; color:var(--muted); margin-bottom:6px; }
.hero-meta-item .mv { font-family:var(--f-m); font-size:0.78rem; }

.announce { background: var(--alt-bg); border-top: 1px solid var(--border); }
.ann-inner { display:flex; justify-content:space-between; align-items:center; gap:32px; flex-wrap:wrap; }
.ann-text h3 { font-size: clamp(1.1rem,2vw,1.6rem); margin-bottom:10px; }
.ann-text p  { font-family:var(--f-d); color:var(--muted); font-size:1rem; }

@media(max-width:768px){
  .hero{padding:110px 24px 64px;}
}
