/* Custom styles peste Tailwind */

html {
    scroll-behavior: smooth;
}

/* Hero gradient — radial glows STACKED over dark navy linear gradient.
   Must be ONE `background` declaration, otherwise the later class
   overrides the linear gradient and the section turns peach/white. */
.hero-gradient,
.hero-gradient.hero-pattern {
    background-color: #0f172a;
    background-image:
        radial-gradient(circle at 20% 50%, rgba(234, 88, 12, 0.18) 0%, transparent 55%),
        radial-gradient(circle at 80% 80%, rgba(251, 191, 36, 0.10) 0%, transparent 55%),
        linear-gradient(135deg, #0f172a 0%, #1e293b 50%, #1e3a8a 100%);
}

.hero-pattern {
    /* no-op kept for backward compatibility — see .hero-gradient above */
}

/* Service card hover */
.service-card {
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}
.service-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 20px 40px -10px rgba(0, 0, 0, 0.15);
}

/* Animated gradient text */
.gradient-text {
    background: linear-gradient(135deg, #ea580c 0%, #fbbf24 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

/* Form focus */
.form-input:focus {
    outline: none;
    border-color: #ea580c;
    box-shadow: 0 0 0 3px rgba(234, 88, 12, 0.1);
}

/* Section divider */
.section-divider {
    background: linear-gradient(90deg, transparent 0%, #ea580c 50%, transparent 100%);
    height: 2px;
    width: 80px;
    margin: 0 auto;
}

/* Stat number animation */
@keyframes countUp {
    from { opacity: 0; transform: translateY(20px); }
    to { opacity: 1; transform: translateY(0); }
}
.stat-number {
    animation: countUp 0.8s ease-out forwards;
}
