2026-05-12 16:30:36 +08:00
|
|
|
---
|
2026-05-13 13:46:21 +08:00
|
|
|
import type { Translations } from '../i18n/translations'
|
|
|
|
|
|
|
|
|
|
export interface Props {
|
|
|
|
|
t: Translations['hero']
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
const { t } = Astro.props
|
2026-05-12 17:14:50 +08:00
|
|
|
const heroBg = "/assets/hero-bg.png";
|
|
|
|
|
const phoneMockup = "/assets/hero-phone.png";
|
2026-05-12 16:30:36 +08:00
|
|
|
---
|
|
|
|
|
|
2026-05-13 13:46:21 +08:00
|
|
|
<section id="hero" class="hero">
|
|
|
|
|
<img alt="" class="hero__bg" src={heroBg} />
|
2026-05-12 16:30:36 +08:00
|
|
|
|
2026-05-13 13:46:21 +08:00
|
|
|
<div class="hero__inner">
|
|
|
|
|
<div class="hero__phone-column">
|
|
|
|
|
<div class="hero__phone-frame">
|
|
|
|
|
<div class="hero__phone-crop">
|
|
|
|
|
<img alt={t.phoneAlt} class="hero__phone" src={phoneMockup} />
|
2026-05-12 16:30:36 +08:00
|
|
|
</div>
|
|
|
|
|
</div>
|
2026-05-12 17:14:50 +08:00
|
|
|
</div>
|
2026-05-12 16:30:36 +08:00
|
|
|
|
2026-05-13 13:46:21 +08:00
|
|
|
<div class="hero__content">
|
|
|
|
|
<div class="hero__badge">
|
|
|
|
|
<p class="hero__badge-text">{t.badge}</p>
|
2026-05-12 16:30:36 +08:00
|
|
|
</div>
|
|
|
|
|
|
2026-05-13 13:46:21 +08:00
|
|
|
<div class="hero__copy">
|
|
|
|
|
<div class="hero__title">
|
|
|
|
|
<p class="hero__title-line">{t.titleLine1}</p>
|
|
|
|
|
<p class="hero__title-line">{t.titleLine2}</p>
|
2026-05-12 17:14:50 +08:00
|
|
|
</div>
|
2026-05-13 13:46:21 +08:00
|
|
|
<p class="hero__description">
|
|
|
|
|
{t.description}
|
2026-05-12 17:14:50 +08:00
|
|
|
</p>
|
2026-05-13 13:46:21 +08:00
|
|
|
<div class="hero__actions">
|
|
|
|
|
<a href="#download" class="hero__button hero__button--primary">
|
|
|
|
|
<span class="hero__button-label">{t.download}</span>
|
2026-05-12 17:14:50 +08:00
|
|
|
</a>
|
2026-05-13 13:46:21 +08:00
|
|
|
<a href="#features" class="hero__button hero__button--secondary">
|
|
|
|
|
<span class="hero__button-label">{t.explore}</span>
|
2026-05-12 17:14:50 +08:00
|
|
|
</a>
|
|
|
|
|
</div>
|
2026-05-12 16:30:36 +08:00
|
|
|
</div>
|
|
|
|
|
|
2026-05-13 13:46:21 +08:00
|
|
|
<div class="hero__tags">
|
|
|
|
|
{t.tags.map(tag => (
|
|
|
|
|
<div class="hero__tag">
|
|
|
|
|
<span class="hero__tag-text">{tag}</span>
|
|
|
|
|
</div>
|
|
|
|
|
))}
|
2026-05-12 17:14:50 +08:00
|
|
|
</div>
|
2026-05-12 16:30:36 +08:00
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
</section>
|