body {
    font-family: 'Montserrat', sans-serif;
    color: #111827;
}

.hero-text {
    animation: fadeUp 0.6s ease both;
}

.hero-img {
    animation: fadeUp 0.6s ease 0.15s both;
}

.cards {
    animation: fadeUp 0.6s ease 0.3s both;
}

@keyframes fadeUp {
    from {
        opacity: 0;
        transform: translateY(24px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.card-hover {
    transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease, background-color 0.25s ease;
}

.card-hover:hover {
    transform: translateY(-6px);
    box-shadow: 0 18px 40px rgba(17, 24, 39, 0.12);
    border-color: #D1A15A;
}

.hero-glow {
    background:
        radial-gradient(circle at top left, rgba(184,106,0,0.12), transparent 30%),
        radial-gradient(circle at bottom right, rgba(255,255,255,0.7), transparent 35%);
}

.metrics-panel {
    background: linear-gradient(180deg, #ffffff 0%, #fcfaf7 100%);
}

.metrics-illustration-shell {
    background:
        radial-gradient(circle at top right, rgba(255,255,255,0.18), transparent 30%),
        linear-gradient(180deg, #C4B7A4 0%, #B4A38C 100%);
}

.section-soft {
    background: linear-gradient(180deg, #fff 0%, #fcfaf7 100%);
}

.step-badge {
    width: 3rem;
    height: 3rem;
    border-radius: 9999px;
    background: #C97A16;
    color: white;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 800;
    font-size: 1.125rem;
    box-shadow: 0 12px 24px rgba(201, 122, 22, 0.22);
}

.trust-check li::before {
    content: "✔";
    color: #C97A16;
    font-weight: 700;
    margin-right: 0.6rem;
}

.promo-track {
    width: max-content;
    will-change: transform;
}

@keyframes promo-scroll {
    0% { transform: translateX(0); }
    100% { transform: translateX(-50%); }
}

.promo-scroll-mobile {
    animation: promo-scroll 40s linear infinite;
}

.promo-scroll-mobile:hover {
    animation-play-state: paused;
}

@media (min-width: 768px) {
    .promo-scroll-mobile {
        animation: none;
    }

    .promo-scroll-desktop {
        animation: promo-scroll 40s linear infinite;
    }

    .promo-scroll-desktop:hover {
        animation-play-state: paused;
    }
}