@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
    {
        width: 100% !important; /* Changed from 1200px for full responsiveness */
        left: 0 !important;
        transform: none !important;
        height: auto;
    }
    .header_content
    {
        width: 100% !important; /* Calculated width removed to prevent overflow */
        padding: 0 30px;
        display: flex;
        justify-content: space-between;
    }
    .main_nav_container
    {
        padding-right: 20px;
    }
    .header_side
    {
        width: auto;
        display: flex !important;
        align-items: center;
    }
    /* Ensures the login icon and text stay proper */
    .header_side img
    {
        width: 40px !important;
        height: 40px !important;
        margin-right: 10px;
    }
}

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

@media only screen and (max-width: 1280px)
{
    .header
    {
        width: 100% !important;
    }
    .header_content
    {
        width: 100% !important;
        padding: 0 20px;
    }
    .header_side
    {
        display: flex !important; /* Keep login visible instead of display:none */
        width: auto;
    }
    .main_nav_container
    {
        padding-right: 15px;
    }
    .hero_slide_content h1
    {
        font-size: 42px; /* Adjusted for smaller screens */
    }
    .register_content,
    .search_content
    {
        width: 90%; /* Changed from 442px for fluid design */
    }
}

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

@media only screen and (max-width: 1199px)
{
	.hero_box
	{
		padding-left: 20px;
	}
}

/************
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 !important; /* Hide desktop menu immediately when space gets tight */
    }

    .header_content {
        justify-content: space-between;
    }

    .logo_container {
        margin-right: 0;
    }

    .multi_logo {
        height: 30px !important; /* Shrink logos to fit mobile width */
    }

    .hamburger_container {
        display: block !important;
        position: relative;
        right: 0;
        margin-left: 15px;
    }
}

/************
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) {
    .footer_bar {
        padding: 40px 0; /* Extra padding for mobile touch targets */
    }
    .footer_bar .container {
        flex-direction: column;
        text-align: center;
    }
    .footer_social_icons {
        margin-left: 0;
        margin-top: 20px; /* Space between text and icons when stacked */
    }
}

/************
11. 575px
************/
@media only screen and (max-width: 575px) {
    .logo {
        display: flex !important;
        flex-wrap: wrap; /* Allows logos to wrap into 2x2 grid if very narrow */
        width: 120px;
        gap: 5px;
    }
    
    .header_side img {
        display: none; /* Removes login icon to save space for text */
    }
}
/************
12. 539px
************/

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

/************
13. 480px
************/

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

/************
14. 479px
************/

@media only screen and (max-width: 479px)
{
	.header
	{
		height: auto !important; /* Prevents logos from being cut off */
		top: 0 !important; /* Fixed from 15px to 0 for professional look */
	}
	.hero_slide_content h1
	{
		font-size: 28px;
	}
	.hero_boxes
	{
		padding-top: 60px;
	}
	.hero_box
	{
		padding-left: 15px;
		height: auto;
		padding-bottom: 15px;
	}
}

/************
15. 400px
************/

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