/* ==========================================================================
   Homepage
   ========================================================================== */

.hero { overflow: hidden; background: var(--hero-bg); color: var(--hero-text); }
.hero__inner {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: var(--space-8);
    padding-block: 72px 80px;
}
.hero__copy { flex: 999 1 520px; min-width: 0; display: flex; flex-direction: column; gap: var(--space-6); }
.hero__eyebrow { margin: 0; color: var(--color-accent); }
.hero__title {
    margin: 0;
    color: var(--hero-text);
    font-size: var(--fs-h1);
    font-weight: 800;
    letter-spacing: -0.035em;
    line-height: 1.02;
}
.hero__text { max-width: 560px; margin: 0; color: var(--hero-text-soft); font-size: var(--fs-md); line-height: 1.5; }
.hero .search-suggest { color: var(--color-text); }

.hero__popular { display: flex; flex-wrap: wrap; align-items: center; gap: var(--space-2); font-size: var(--fs-sm); }
.hero__popular-label { color: var(--hero-text-muted); padding: 6px 0; }
.chip-list--on-primary .chip { background: var(--hero-chip); color: var(--hero-text); }
.chip-list--on-primary .chip:hover { background: var(--hero-chip-hover); color: var(--hero-text); }

/* Featured coupon "ticket" */
.hero__ticket-wrap { flex: 1 1 320px; min-width: 0; display: flex; justify-content: center; }
.hero-ticket {
    width: 100%;
    max-width: 380px;
    background: var(--color-surface);
    color: var(--color-text);
    border-radius: 24px;
    box-shadow: var(--shadow-lg);
    transform: rotate(-3deg);
    transition: transform var(--transition);
}
.hero-ticket:hover { transform: rotate(-1.5deg) translateY(-4px); }
@media (prefers-reduced-motion: reduce) { .hero-ticket, .hero-ticket:hover { transform: none; } }
.hero-ticket__top { display: flex; flex-direction: column; gap: 10px; padding: 24px 24px 18px; }
.hero-ticket__row { display: flex; align-items: center; justify-content: space-between; gap: var(--space-2); }
.hero-ticket__store { color: var(--color-text); font-weight: 700; text-decoration: none; }
.hero-ticket__store:hover { color: var(--color-primary); }
.hero-ticket__value {
    margin: 0;
    font-family: var(--font-display);
    font-weight: 800;
    font-stretch: 80%;
    font-size: clamp(3rem, 2.4rem + 2.4vw, 4rem);
    line-height: 1;
    letter-spacing: -0.03em;
    text-transform: uppercase;
    color: var(--color-sale);
    overflow-wrap: anywhere;
}
.hero-ticket__title { margin: 0; font-family: var(--font-body); font-size: var(--fs-15); font-weight: 400; letter-spacing: 0; line-height: 1.4; color: var(--color-muted); }
.hero-ticket__bottom {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--space-3);
    padding: 18px 24px 24px;
    border-top: 2px dashed var(--color-border-strong);
}
.hero-ticket__bottom::before,
.hero-ticket__bottom::after {
    content: "";
    position: absolute;
    top: -10px;
    width: 18px; height: 18px;
    border-radius: 50%;
    background: var(--hero-bg);
}
.hero-ticket__bottom::before { left: -9px; }
.hero-ticket__bottom::after { right: -9px; }
.hero-ticket__code { font-size: 1.25rem; }

@media (max-width: 640px) {
    .hero__inner { gap: var(--space-7); padding-block: 36px 48px; }
    .hero__text { font-size: var(--fs-base); }
    .hero-ticket { transform: rotate(-2deg); }
}

/* Section spacing on the homepage */
.home .page-block:last-child { padding-bottom: 0; }
