/* Desktop - nav visible by default */
#primaryMenu {
    flex: 1;
    display: flex !important;
    justify-content: center;
}

#primaryMenu .nav {
    justify-content: center;
    align-items: center;
}

/* Hide hamburger on desktop */
.navbar-toggler {
    display: none;
}

/* 1440px - Large Desktop */
@media (max-width: 1440px) {
 
}
 
/* 1366px - Standard Laptop */
@media (max-width: 1366px) {
 
}
 
/* 1280px - Small Laptop */
@media (max-width: 1280px) {
/*  contact_us_page */
	.wpcf7-list-item {
    margin: 0 0 5px 1em;
}
	.footer-bottom{
    flex-direction: column;
}
}
 
/* 1200px - Large Tablet Landscape / Small Desktop */
@media (max-width: 1200px) {
	.about {
    padding: 80px 12px;
}
	.experience-point:first-child {
    padding-left: 16px;
}
/* 	footer */
	@media (max-width: 1200px) {

    .footer-top {
        display: grid !important;
        grid-template-columns: repeat(4, 1fr) !important;
        gap: 25px !important;
        align-items: center !important;
        padding: 45px 0 !important;
    }

    /* LOGO + DESCRIPTION - TOP ROW */
    .footer-brand {
        grid-column: 1 / -1 !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        margin-bottom: 10px !important;
    }

    .footer-brand img {
        width: 120px !important;
        height: auto !important;
        margin-bottom: 8px !important;
    }

    .footer-brand p {
        margin: 0 !important;
        font-size: 12px !important;
    }

    /* ADDRESS, PHONE, EMAIL, FOLLOW US - SECOND ROW */

    .footer-contact {
        display: flex !important;
        align-items: flex-start !important;
        gap: 8px !important;
        margin: 0 !important;
    }

    .footer-contact p,
    .footer-contact span,
    .footer-contact a {
        margin: 0 !important;
        font-size: 12px !important;
        line-height: 1.4 !important;
    }

    .footer-social {
        display: flex !important;
        align-items: center !important;
        justify-content: flex-start !important;
        gap: 8px !important;
    }
}
}
 
/* 1024px - iPad Pro Landscape */
@media (max-width: 1024px) {
/*  header */
	.logo img {
    width: 130px;
}
}
 
/* 992px - Bootstrap LG */
@media (max-width: 992px) {
/*  header */
	.logo img {
    width: 120px;
}
	.call-btn div {
    display: none;
}
}
 
@media (max-width: 991px) {
	.experience-point span {
    font-size: 17px;
}
.experience-points {
    display: flex;
    align-content: space-between;
    justify-content: space-between;
}
.experience-point {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 0 42px;
    text-align: center;
	border-right:none !important;
}
}
/* 900px */
@media (max-width: 900px) {
	 .navbar-toggler {
        display: flex !important;
        align-items: center;
        justify-content: center;
        margin-left: auto;
        width: 42px;
        height: 42px;
        padding: 0;
        border: 1px solid #ddd;
        background: #fff;
    }

    /* RIGHT SIDEBAR */
    #primaryMenu {
        position: fixed !important;
        top: 0;
        right: 0;
        left: auto;

        width: 50% !important;
        height: 100vh;

        margin: 0 !important;
        padding: 25px 25px;

        background: #fff;

        z-index: 99999;

        overflow-y: auto;

        transform: translateX(100%);
        transition: transform 0.3s ease-in-out;

        display: block !important;
    }

    /* Sidebar opens */
    #primaryMenu.show {
        transform: translateX(0);
    }

    /* Sidebar header */
    .mobile-menu-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    margin-bottom: 30px;
    padding-top: 25px;
}

    /* Logo */
    .mobile-menu-logo img {
        width: 120px;
        height: auto;
    }

    /* X button */
    .mobile-menu-close {
        width: 40px;
        height: 40px;

        display: flex;
        align-items: center;
        justify-content: center;

        border: 1px solid #ddd;
        background: #fff;

        cursor: pointer;
    }

    .mobile-menu-close i {
        font-size: 22px;
        color: #222;
    }

    /* Menu links */
    #primaryMenu .nav {
        display: flex !important;
        flex-direction: column;
        align-items: flex-start;

        width: 100%;
        gap: 0 !important;
    }

    #primaryMenu .nav li {
        width: 100%;
    }

    #primaryMenu .nav li a {
        display: block;

        width: 100%;

        padding: 14px 0;

        color: #222;

        border-bottom: 1px solid #eee;
    }

    .call-btn {
        display: none;
    }

}
 
/* 820px - iPad Air */
@media (max-width: 820px) {
  .footer-top {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 20px !important;
        justify-items: start !important;
        text-align: left !important;
    }

    /* Logo + description */
    .footer-brand {
        grid-column: 1 !important;
        grid-row: auto !important;
        width: 100%;
        align-items: flex-start !important;
        text-align: left !important;
    }

    /* Address */
    .footer-top > .footer-contact {
        grid-column: 1 !important;
        grid-row: auto !important;
        width: 100%;
        justify-content: flex-start !important;
        align-items: flex-start !important;
        text-align: left !important;
    }

    /* Follow Us */
    .footer-social {
        display: flex !important;
        flex-direction: row !important;
        align-items: center !important;
        justify-content: flex-start !important;
        gap: 6px !important;
    }

    .footer-social span {
        width: auto !important;
        margin: 0 !important;
        flex: 0 0 auto !important;
    }

    .footer-social a {
        width: 28px !important;
        height: 28px !important;
        flex: 0 0 28px !important;
        margin: 0 !important;
    }


}
 
@media (max-width: 767px) {
	.cta {
    padding-bottom: 0px !important;
}
	.middle-image {
    margin: 34px 0px !important;
}
	.dg-gallery-item {
    height: auto;
}
}
/* 768px - iPad Portrait */
@media (max-width: 768px) {
 .footer-bottom {
        flex-direction: column;
        align-items: baseline;
    }
}
 
/* 640px - Large Mobile Landscape */


@media (max-width: 667px) {
	.experience-points {
    display: grid;
    grid-template-columns: 1fr 1fr;
}
}

@media (max-width: 640px) {
 
}
@media (max-width: 600px) {
.cta-box {
    min-height: 480px;
    border-radius: 0;
}
    .nav-flex {
        display: flex !important;
        flex-direction: row !important;
        align-items: center !important;
        justify-content: space-between !important;
        width: 100% !important;
        gap: 0 !important;
    }

    /* Logo stays on the LEFT */
    .nav-flex .logo {
        margin: 0 auto 0 0 !important;
        padding: 0 !important;
        flex: 0 0 auto !important;
        text-align: left !important;
    }

    .nav-flex .logo img {
        display: block !important;
        width: 120px !important;
        height: auto !important;
        margin: 0 !important;
    }

    /* Hamburger stays on the RIGHT */
    .nav-flex .navbar-toggler {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;

        margin: 0 0 0 auto !important;
        padding: 0 !important;

        width: 42px !important;
        height: 42px !important;

        flex: 0 0 42px !important;
    }

    /* Do NOT let the menu affect the header row */
    .nav-flex #primaryMenu {
        flex: none !important;
    }
	    .footer-menu {
        justify-content: left;
    }



}
/* 576px - Bootstrap SM */
@media (max-width: 576px) {
     .experience-point {
        padding: 0 0 0 16px !important;
    }
	    .mobile-menu-logo img {
        width: 85px !important;
        height: auto;
    }
}
 
/* 480px - Standard Mobile */
@media (max-width: 480px) {
 
}
 
/* 430px - iPhone 14 Pro Max */
@media (max-width: 430px) {
 
}
 
/* 414px - iPhone Plus Models */
@media (max-width: 414px) {
 
}
 
/* 390px - iPhone 14/15 */
@media (max-width: 390px) {
 
}
 
/* 375px - Most Common Mobile Width */
@media (max-width: 375px) {
 
}


/* FAQ width fix - 1280px and below */
@media (max-width: 1280px) {

    .dg-faq-section {
        width: 100% !important;
        max-width: 100% !important;
        overflow-x: hidden;
    }

    .dg-faq-section .container {
        width: 100% !important;
        max-width: 100% !important;
    }

    .dg-faq-section .row {
        width: 100%;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }

    .dg-faq-content,
    .dg-faq-image {
        max-width: 100%;
    }

    .dg-faq-accordion {
        width: 100%;
    }

    .dg-faq-accordion .accordion-item {
        max-width: 100%;
    }
}


/* Header logo - desktop/tablet */
.logo img {
    width: 140px !important;
    height: auto;
}

/* Keep mobile sidebar elements hidden outside mobile */
.mobile-menu-header {
    display: none;
}

@media (max-width: 900px) {

    .logo img {
        width: 150px !important;
        height: auto;
    }

    .mobile-menu-header {
        display: flex;
    }

/*     .mobile-menu-logo img {
        width: 120px !important;
        height: auto;
    } */
	
	 #primaryMenu {
        height: 100vh !important;
        max-height: 100vh !important;
        overflow-y: auto !important;
        transition: none !important;
    }
	#primaryMenu.show {
        transform: translateX(0);
    }

    #primaryMenu.collapsing {
        height: 100vh !important;
        max-height: 100vh !important;

        transition: transform 0.3s ease-in-out !important;
    }
}

