.hero{position:relative;overflow:hidden;padding:76px 0 92px;background:var(--bg);}
@media(max-width:640px){.hero{padding:48px 0 64px;}}
.hero-gradient{display:none;}
.hero-inner{display:grid;grid-template-columns:1.05fr 0.95fr;gap:64px;align-items:center;}
@media(max-width:960px){.hero-inner{grid-template-columns:1fr;gap:44px;}}
.hero-headline{
  font-family:var(--font-display);font-weight:500;
  font-size:clamp(2.5rem,5vw,4rem);
  line-height:1.03;
  letter-spacing:var(--track-display);
  color:var(--ink);margin-bottom:22px;text-wrap:balance;
}
.hero-sub{font-size:1.06rem;line-height:1.6;color:var(--ink-soft);max-width:480px;margin-bottom:32px;}
.hero-ctas{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:16px;}
.microcopy{font-size:0.84rem;color:var(--ink-muted);}
.microcopy strong{font-weight:500;color:var(--ink-soft);}
.hero-visual{
  position:relative;width:100%;
  aspect-ratio:900/1012;
  border-radius:var(--radius-lg);
  border:1px solid var(--line);
  overflow:hidden;
  background:var(--surface-sunken);
}
.hero-visual img.hero-photo-img{width:100%;height:100%;object-fit:cover;display:block;}
.hero-visual .hero-phone-card{
  position:absolute;bottom:16px;right:16px;width:33%;
  border-radius:var(--radius-xs);overflow:hidden;
  border:1px solid var(--line);
  outline:4px solid var(--surface);
  background:var(--surface);
}
.hero-visual .hero-phone-card img{width:100%;height:auto;display:block;}
@media(max-width:960px){.hero-visual{max-width:400px;margin:0 auto;}}