@charset "utf-8";
/* CSS Document */

/******************************

[Table of Contents]

1. 1600px
2. 1440px
3. 1280px
4. 1199px
5. 1024px
6. 991px
7. 959px
8. 880px
9. 768px
10. 767px
11. 539px
12. 479px
13. 400px

******************************/

/************
1. 1600px
************/

@media only screen and (max-width: 1600px)
{
	
}

/************
2. 1440px
************/

@media only screen and (max-width: 1440px)
{
	
}

/************
3. 1380px
************/

@media only screen and (max-width: 1380px)
{
	.header
	{
		/* Forces the header to stay full width instead of 1200px */
		width: 100% !important;
	}
	.header_content
	{
		/* Replaces calc with simple padding for better alignment */
		width: 100% !important;
		padding: 0 30px;
	}
	.main_nav_container
	{
		/* Reduces spacing between menu items to fit the screen */
		padding-right: 30px;
	}
	.main_nav_item
	{
		margin-right: 25px;
	}
	.header_side
	{
		/* Removes fixed width to let the login button dictate size */
		width: auto;
	}
	.login_btn
	{
		padding: 8px 18px; /* Slightly smaller button for laptops */
	}
	.login_btn span
	{
		font-size: 13px !important;
	}
}

/************
3. 1280px
************/

@media only screen and (max-width: 1280px)
{
	.header
	{
		width: 90%;
	}
	.header_content
	{
		width: 100%;
	}
	.header_side
	{
		display: none !important;
	}
	.main_nav_container
	{
		padding-right: 53px;
	}
}

/************
4. 1199px
************/

@media only screen and (max-width: 1199px)
{
	
}

/************
4. 1100px
************/

@media only screen and (max-width: 1100px)
{
	
}

/************
5. 1024px
************/

@media only screen and (max-width: 1024px)
{
	.main_nav_item
	{
		margin-right: 33px;
	}
}

/************
6. 991px
************/

@media only screen and (max-width: 991px)
{
	.main_nav_container
	{
		display: none; /* Hide desktop nav */
	}
	.logo_container
	{
		padding-left: 20px;
		max-width: 55%; /* Ensure logos don't push the button off-screen */
	}
    /* Force 4 logos into a small professional row */
    .multi_logo {
        height: 35px !important;
        max-width: 65px;
    }
    .header_side {
        display: flex !important; /* Keep Login button visible */
        margin-left: auto;
        padding-right: 50px; /* Room for the hamburger icon */
    }
    .login_btn {
        padding: 8px 15px;
    }
    .login_btn span {
        font-size: 12px !important;
    }
	.hamburger_container
	{
		display: flex !important; /* Switch to flex for perfect centering */
		right: 15px;
	}

    /* Footer Professional Adjustments */
    .footer_logo_row {
        justify-content: center;
        flex-wrap: nowrap !important;
        margin-bottom: 25px;
    }
    .multi_logo_footer {
        height: 30px !important;
    }
    .footer_col
	{
		margin-bottom: 40px;
        text-align: center; /* Center-align sections on tablets/mobile */
	}
    .footer_contact_item {
        justify-content: center;
    }
    .footer_bar .container {
        flex-direction: column; /* Stack Copyright and Social Icons */
        gap: 15px;
    }

    /* Page Elements */
	.elements_accordions
	{
		margin-top: 50px;
	}
	.milestone_col
	{
		margin-bottom: 50px;
	}
	.icon_box
	{
		margin-bottom: 40px;
	}
}

/************
7. 959px
************/

@media only screen and (max-width: 959px)
{
	
}

/************
8. 880px
************/

@media only screen and (max-width: 880px)
{
	
}

/************
9. 768px
************/

@media only screen and (max-width: 768px)
{
	
}

/************
10. 767px
************/

@media only screen and (max-width: 767px)
{
	.menu_container
	{
		right: -100vw;
		width: 100vw;
		height: 100vh;
	}
	.newsletter_email
	{
		width: 100%;
	}
	.newsletter_submit_btn
	{
		margin-top: 15px;
	}
}

/************
11. 575px
************/

@media only screen and (max-width: 575px)
{
	h1{font-size: 24px;}
	p{font-size:13px;}
	.header
	{
		height: 74px;
	}
	.logo_container
	{
		padding-left: 15px;
	}
	.logo img
	{
		width: 30px;
	}
	.logo span
	{
		font-size: 16px;
	}
	.hamburger_container
	{
		right: 5px;
	}
	.menu
	{
		top: 70px;
	}
	.menu_item
	{
		margin-bottom: 0px;
	}
	.menu_item a
	{
		font-size: 24px;
	}
	.menu_copyright
	{
		display: none;
	}
	.menu_social_container
	{
		margin-top: 50px;
	}
	.menu_close_container
	{
		right: 30px;
		top: 34px;
	}
	.home
	{
		height: 372px;
	}
	.home_content
	{
		padding-top: 17px;
	    padding-bottom: 11px;
	    padding-left: 22px;
	    padding-right: 24px;
	}
	.home_content h1
	{
		font-size: 30px;
	}
	.pbar_container
	{
		padding-left: 25px;
		padding-right: 25px;
	}
	.loader_col
	{
		margin-bottom: 60px;
	}
	.loader_col:last-child
	{
		margin-bottom: 0px;
	}
	.loader
	{
		width: 120px;
		height: 120px;
	}
	.pb_item h4
	{
		margin-bottom: 7px;
	}
	.progressbar-text
	{
		top: -27px !important;
		font-size: 14px !important;
	}
	.accordion
	{
		font-size: 13px;
		padding-left: 20px;
		padding-right: 50px;
	}
	.loader_text
	{
		font-size: 14px;
		margin-top: 15px;
	}
	.loader_sub
	{
		font-size: 13px;
		margin-top: 2px;
	}
	.milestone_col
	{
		margin-bottom: 60px;
	}
	.milestone_icon
	{
		width: 50px;
		height: 50px;
	}
	.milestone_counter
	{
		font-size: 30px;
		margin-top: 25px;
	}
	.milestone_text
	{
		font-size: 16px;
	}
	.icon_box p
	{
		font-size: 13px;
	}
	.icon_box h3
	{
		font-size: 20px;
	}
	.footer_bar
	{
		padding-top: 49px;
		padding-bottom: 52px;
	}
	.footer_social
	{
		margin-top: 20px;
	}
	.footer_copyright span
	{
		font-size: 13px;
	}
}

/************
11. 539px
************/

@media only screen and (max-width: 539px)
{
	
}

/************
12. 480px
************/

@media only screen and (max-width: 480px)
{
	
}

/************
13. 479px
************/

@media only screen and (max-width: 479px)
{
	.header
	{
		height: 60px;
		top: 15px;
	}
}

/************
14. 400px
************/

@media only screen and (max-width: 400px)
{
	
}