/* SECTION SPACING */

section {
    position: relative;
}

.section-padding,
.py-5 {
    padding-top: 60px;
    padding-bottom: 60px;
}

@media (min-width: 992px) {
    .section-padding,
    .py-5 {
        padding-top: 80px;
        padding-bottom: 80px;
    }
}

/* HERO ALIGNMENT */

.hero-section .container {
    position: relative;
    z-index: 1;
}

/* PAGE-SPECIFIC LAYOUT HINTS */

/* Home: services section */
.home-services {
    padding-top: 60px;
    padding-bottom: 80px;
}

/* About: who we are + what sets us apart */
.about-section {
    padding-top: 60px;
    padding-bottom: 60px;
}

/* Services: grid */
.services-grid {
    padding-top: 60px;
    padding-bottom: 80px;
}

/* Contact / Track / Register forms */
.form-section {
    padding-top: 60px;
    padding-bottom: 80px;
}

/* RESPONSIVE TWEAKS */

@media (max-width: 991px) {
    h1 {
        font-size: 48px;
    }

    .hero-section {
        padding: 120px 0 80px;
    }

    .hero-section p {
        font-size: 18px;
    }

    .service-card,
    .info-card,
    .tracking-card,
    .register-card {
        padding: 28px;
    }
}

@media (max-width: 575px) {
    h1 {
        font-size: 40px;
    }

    .hero-section {
        padding: 110px 0 70px;
    }

    .navbar .nav-link {
        padding: 8px 12px;
    }
}