/* ==================== RESPONSIVE STYLES ==================== */

/* Large devices (desktops, less than 1200px) */
@media (max-width: 1400px) {
    .hero-section h1 {
        font-size: 50px;
    }
    
    .navigation-bar .navbar-nav .nav-link {
        font-size: 16px;
        padding: 0 10px;
    }
}


/* Large devices (desktops, less than 1200px) */
@media (max-width: 1199.98px) {
    .hero-section h1 {
        font-size: 48px;
    }

    .section-title-red {
        font-size: 32px;
    }

    .footer-section .footer-emergency-title {
        font-size: 22px;
    }
}


/* Medium devices (tablets, less than 992px) */
@media (max-width: 991.98px) {
    
    .navigation-bar{
        background-color: #101B2D;
    }
    .navigation-bar .header-logo {
        width: 150px;
    }
    .navigation-bar .navbar-nav .nav-link{
        padding: 5px 0;
    }

    .navigation-bar .nav-item.dropdown {
        display: block;
    }

    .navigation-bar .dropdown-toggle-btn {
        position: absolute;
        right: 0;
        top: 20px;
        transform: translateY(-50%);
        -webkit-transform: translateY(-50%);
        -moz-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
        -o-transform: translateY(-50%);
        font-size: 16px;
        padding: 5px 10px;
    }
    .navigation-bar .dropdown-toggle-btn.show {
        top: 0;
        transform: rotate(180deg);
        -webkit-transform: rotate(180deg);
        -moz-transform: rotate(180deg);
        -ms-transform: rotate(180deg);
        -o-transform: rotate(180deg);
    }

    .hero-section h1{
        font-size: 45px;
    }

    .hero-section.title-area {
        padding: 120px 0 60px;
    }

    .home-services-section .service-card-hover{
        font-size: 16px;
        line-height: 30px;
    }

    /* Section spacing */
    section {
        padding-top: 60px;
    }

    .py-8 {
        padding: 60px 0;
    }

    .pb-8 {
        padding-bottom: 60px;
    }

    /* Section title */
    .section-title-red {
        font-size: 28px;
    }

    /* Blog cards */
    .blog-card-title {
        font-size: 18px;
    }

    /* Contact page */
    .contact-info-box {
        margin-bottom: 15px;
    }

    .contact-map {
        min-height: 300px;
        margin-top: 30px;
    }

    .contact-map iframe {
        min-height: 300px;
    }

    /* Safety page */
    .certification-card {
        margin-bottom: 20px;
    }

    .safety-cta-section {
        padding: 60px 0;
    }

    /* Clients page */
    .client-logo-box {
        margin-bottom: 15px;
    }

    /* Footer */
    .footer-section .footer-emergency-title {
        font-size: 20px;
        text-align: center;
        margin-bottom: 15px;
    }

    .footer-section .footer-badges {
        justify-content: center !important;
        margin-bottom: 20px;
    }

    .footer-section .footer-logo {
        margin: 0 auto 15px;
    }

    .footer-section .footer-bottom .d-flex {
        flex-direction: column;
        text-align: center;
        gap: 10px;
    }

    .footer-section .footer-bottom-links {
        justify-content: center;
    }

    .footer-section .footer-powered {
        justify-content: center;
    }
}

/* Small devices (landscape phones, less than 768px) */
@media (max-width: 767.98px) {

    body {
        font-size: 16px;
        line-height: 30px;
    }

    .hero-section{
        background-image: url('../images/home/mbl-banner.png');
    }
    
    .hero-section h1{
        font-size: 40px;
        line-height: 1.2;
    }

    .hero-section.title-area {
        padding: 110px 0 50px;
    }

    /* Section spacing */
    section {
        padding-top: 50px;
    }

    .py-8 {
        padding: 50px 0;
    }

    .pb-8 {
        padding-bottom: 50px;
    }

    /* Section title */
    .section-title-red {
        font-size: 26px;
    }

    /* Blog listing */
    .blog-card-image {
        height: 180px;
    }

    /* Contact page */
    .contact-info-details strong {
        font-size: 18px;
    }

    /* Safety page */
    .certification-logos img {
        height: 45px;
    }

    .safety-list li {
        font-size: 15px;
    }

    /* Policy pages */
    .policy-content h3 {
        margin-top: 20px;
        font-size: 20px;
    }

    /* Employment */
    .employment-cta {
        padding: 25px 20px;
    }

    /* Footer */
    .footer-section .social-links {
        justify-content: center;
        margin-bottom: 20px;
    }

    .footer-section .footer-description {
        text-align: center;
    }

    .footer-section h6 {
        margin-top: 25px;
    }

    .footer-section .footer-contact li {
        font-size: 14px;
    }

    /* Services listing */
    .services-listing-section .service-listing-image {
        height: 200px;
    }

    /* Gallery */
    .gallery-item img {
        height: 200px;
    }

    /* Latest projects */
    .latest-projects-section {
        margin-top: 50px;
        padding: 60px 0;
    }

    .latest-projects-section .project-slide img {
        height: 250px;
    }
}

/* Extra small devices (portrait phones, less than 576px) */
@media (max-width: 575.98px) {

    .hero-section h1 {
        font-size: 32px;
    }

    .hero-section.title-area {
        padding: 100px 0 40px;
    }

    /* Section spacing */
    section {
        padding-top: 40px;
    }

    .py-8 {
        padding: 40px 0;
    }

    .pb-8 {
        padding-bottom: 40px;
    }

    .section-title-red {
        font-size: 24px;
    }

    /* Buttons */
    .btn-primary-custom,
    .btn-white-custom {
        font-size: 16px;
        padding: 10px 24px;
    }

    /* Blog */
    .blog-card-title {
        font-size: 16px;
    }

    .blog-card-content p {
        font-size: 14px;
    }

    .blog-detail-article {
        padding: 20px;
    }

    /* Contact */
    .contact-info-box {
        flex-direction: column;
        text-align: center;
        padding: 15px;
    }

    .contact-info-details {
        padding-left: 0;
        align-items: center;
    }

    .contact-input {
        font-size: 14px;
    }

    /* Safety */
    .certification-card {
        padding: 15px 20px;
    }

    .certification-card-line {
        width: 100px;
    }

    .certification-logos img {
        height: 35px;
    }

    /* Clients */
    .client-logo-box img {
        max-height: 60px;
    }

    /* About */
    .about-value-card {
        padding: 20px 18px;
    }

    .about-safety-section {
        padding: 50px 0;
    }

    /* Employment */
    .employment-card {
        padding: 15px 18px;
    }

    /* Services */
    .home-services-section .service-title {
        font-size: 16px;
        line-height: 28px;
        height: auto;
    }

    /* Gallery */
    .gallery-filter-btn {
        padding: 8px 18px;
        font-size: 14px;
    }

    .gallery-item img {
        height: 180px;
    }

    /* Footer */
    .footer-section .footer-badges img {
        width: 55px;
    }

    .footer-section .social-link {
        width: 38px;
        height: 38px;
    }

    /* Quote section */
    .quote-section .form-control {
        padding: 10px 15px;
    }

    /* PM CTA */
    .pm-cta-section {
        padding: 50px 0;
    }
}


/* Hover dropdown on desktop */
@media (min-width: 992px) {
    .navigation-bar .nav-item.dropdown:hover > .dropdown-menu {
        display: block;
        opacity: 1;
    }
    .navbar-expand-lg .navbar-nav .dropdown-menu {
        top: 30px;
    }
   

}
