body {
    font-family: ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
}

.font-display {
    font-family: ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
}

.brand-gradient {
    background: linear-gradient(120deg, #FF6B2C 0%, #E9A23B 50%, #0E7A5F 100%);
}

.accent-underline {
    background-image: linear-gradient(120deg, rgba(255, 107, 44, 0.35), rgba(14, 122, 95, 0.35));
    background-repeat: no-repeat;
    background-position: 0 88%;
    background-size: 100% 0.32em;
}

.hero-motif {
    background-image:
        radial-gradient(circle at 20% 20%, rgba(255, 107, 44, 0.10), transparent 40%),
        radial-gradient(circle at 80% 70%, rgba(14, 122, 95, 0.12), transparent 45%);
}

.ticker-track {
    display: flex;
    width: max-content;
    animation: ticker 32s linear infinite;
}

.ticker-track:hover {
    animation-play-state: paused;
}

.card-lift {
    transition: transform .35s cubic-bezier(.4, 0, .2, 1), box-shadow .35s cubic-bezier(.4, 0, .2, 1), border-color .35s;
}

.card-lift:hover {
    transform: translateY(-6px);
    box-shadow: 0 24px 48px -20px rgba(15, 27, 51, 0.25);
    border-color: rgba(255, 107, 44, 0.5);
}

.cta-primary {
    background: linear-gradient(135deg, #FF6B2C 0%, #E6531A 100%);
    box-shadow: 0 12px 28px rgba(230, 83, 26, 0.28);
    transition: transform .3s ease, box-shadow .3s ease, background .3s ease;
}

.cta-primary:hover {
    transform: translateY(-2px);
    background: linear-gradient(135deg, #E6531A 0%, #C74312 100%);
    box-shadow: 0 16px 34px rgba(230, 83, 26, 0.36);
}

.cta-secondary {
    border: 1.5px solid #0F1B33;
    transition: transform .3s ease, background .3s ease, color .3s ease;
}

.cta-secondary:hover {
    background: #0F1B33;
    color: #fff;
    transform: translateY(-2px);
}

.step-num {
    color: rgba(15, 27, 51, 0.12);
}

.floating-whatsapp {
    background: linear-gradient(135deg, #25d366 0%, #0E7A5F 100%);
    box-shadow: 0 10px 32px rgba(37, 211, 102, 0.4);
}

.risk-box {
    background: linear-gradient(145deg, #FFF7EF 0%, #FFF1E6 100%);
    border: 1.5px solid #F2C89A;
}

.reveal {
    opacity: 0;
    transform: translateY(24px);
    transition: opacity .6s ease, transform .6s ease;
}

.reveal.is-visible {
    opacity: 1;
    transform: translateY(0);
}
