:root {
    --primary-color: #0d6efd;
    --dark-color: #07152f;
    --hero-gradient: linear-gradient(135deg, rgba(7, 21, 47, .96), rgba(13, 110, 253, .88));
}

html { scroll-behavior: smooth; }
body { font-family: Arial, Helvetica, sans-serif; color: #1f2937; }

.navbar-custom { background: rgba(7, 21, 47, .95); backdrop-filter: blur(8px); }
.navbar-custom .nav-link { font-weight: 600; }

.hero-section {
    background: var(--hero-gradient), url('https://images.unsplash.com/photo-1516321318423-f06f85e504b3?auto=format&fit=crop&w=1600&q=80') center/cover no-repeat;
}

.hero-card {
    background: #fff;
    border-radius: 24px;
    padding: 32px;
}

.section-padding { padding: 90px 0; }
.section-label {
    color: var(--primary-color);
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .08em;
    font-size: .82rem;
    display: inline-block;
    margin-bottom: 10px;
}
.section-subtitle { max-width: 650px; }

.metric-box, .service-card, .contact-form {
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 20px;
    padding: 24px;
    box-shadow: 0 10px 30px rgba(15, 23, 42, .06);
}
.metric-box strong { display: block; font-size: 1.2rem; }
.metric-box span { color: #6b7280; }

.service-card { transition: .25s ease; }
.service-card:hover { transform: translateY(-6px); box-shadow: 0 18px 40px rgba(15, 23, 42, .12); }
.service-icon { font-size: 2.4rem; color: var(--primary-color); }

.timeline { display: grid; gap: 18px; }
.timeline-item {
    display: flex;
    gap: 18px;
    padding: 22px;
    border-radius: 20px;
    background: #f8fafc;
    border: 1px solid #e5e7eb;
}
.timeline-item span {
    width: 42px;
    height: 42px;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: var(--primary-color);
    color: #fff;
    font-weight: 700;
    flex-shrink: 0;
}
.timeline-item p { margin-bottom: 0; color: #6b7280; }

.cta-section { background: var(--hero-gradient); padding: 85px 0; }
.footer { background: var(--dark-color); }

@media (max-width: 991px) {
    .hero-section .min-vh-100 { min-height: auto !important; padding-top: 130px !important; }
    .section-padding { padding: 65px 0; }
}
