/* Base Styles */
html { 
    font-size: 18px; 
} 

body { 
    font-family: Arial, sans-serif;
    background: #2E5370;
}

h1 { font-size: 2.5em; } 
h2 { font-size: 2em; } 
h3 { font-size: 1.75em; } 
h4 { font-size: 1.5em; }

* {
    box-sizing: border-box;
}

#container {
    position: relative;
    width: 90%;
    max-width: 1380px; /* Ensure the container doesn't exceed 1380px */
    margin: 0 auto;
	border: 1px solid gray;
    border-radius: 3em;
    background: #fff;
}

.flex-container {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    margin: 0 auto;
    padding: 2em;

}

/* Base Styles for the Logo */
.div-left {
    flex: 1 1 25%;
    max-width: 25%;
    display: flex;
    justify-content: center;
    align-items: center;
}

.responsive {
    width: 100%;
    max-width: 400px; /* Ensure the logo doesn't exceed 400px */
    height: auto;
}

.div-right {
    flex: 1 1 75%;
    max-width: 75%;
    padding: 10px;
}

a {
    color: maroon;
    text-decoration: none;
}

a:hover {
    color: gray;
}



.button {
    padding: 5px 10px;
    background-color: #2E5370;
    color: white;
    border: 1px solid gray;
    border-radius: 5px;
    cursor: pointer;
    font-size: 16px;
}

.button:hover { 
    background-color: #33b5e5;
}

    #notes {
        width: 100%;
        min-height: 100px; /* Sets the initial height */
        overflow-y: hidden; /* Hides vertical scrollbar */
        resize: none; /* Prevents manual resizing */
    }


.footer {
    display: flex;
    flex-direction: row;
    text-align: center;
	 justify-content: center; /* Add this line */
  	position:relative;
	padding:.5em;
	margin:20px auto;
	background:black;
	color:white;
}

.footer-item {
  width:350px;
  margin: 0 10px;

}

    select {
        font-size: 14px;
        padding: 3px 5px;
    }

.radio-container {
    display: flex;
    align-items: center;
}

.radio-label {
    margin-right: 20px; /* Adjust this value to control spacing */
}

.radio-inline {
    margin-left: 15px;
    display: inline;
}

.close{
	margin-top:20px;
	color:teal;
	cursor:pointer;

}
	    .close:hover {
        font-weight: bold;
    }
	
	
	.email-link {
    display: inline-block;
    padding: 5px 10px;
	margin-right:20px;
    background-color: #2E5370; /* Background color */
    color: white; /* Text color */
    text-decoration: none; /* Remove underline */
    border-radius: 5px; /* Rounded corners */
    font-size: 14px; /* Font size */
    transition: background-color 0.3s ease; /* Smooth transition */
	cursor:pointer;
}

.email-link:hover {
    background-color: #33b5e5; /* Hover background color */
}

.error-box {
    position: absolute;
    width: 300px;
    left: 50%;
    transform: translate(-50%, 0);
    border: 1px solid gray;
    background-color: #f8d7da;
    color: #721c24;
    padding: 10px;
    margin-top: 5%;
    border-radius: 5px;
    z-index: 2000;
}

.req_success{
	position: absolute;
    padding:20px 30px;
    left: 50%;
	text-align:center;
    transform: translate(-50%, 0);
    border: 1px solid gray;
   background-color: #d4edda;
    color: #155724;
    margin-top: 5%;
    border-radius: 5px;
    z-index: 2000;
}



.close-button {
    position: absolute;
    top: 5px;
    right: 10px;
    color: #721c24;
    font-size: 40px;
    cursor: pointer;
}

    .schedule {
        width: 100%;
        margin: 0 auto;
        border: 1px solid gray;
        border-radius: 2em;
        padding: 1em;
    }
	
	   #about, #contact {
        width: 400px;
        margin: 0 auto;
        border: 1px solid gray;
        border-radius: 2em;
        padding: 1em;
    }


/* Media Query for 706px and above */
@media screen and (min-width: 721px) {
    .flex-container {
        flex-direction: row;
        justify-content: space-between;
        align-items: flex-start;
    }

    .div-left {
        flex: 1;
        max-width: calc(25% + 25 * ((100vw - 721px) / (1380 - 721))); /* Grow proportionally */
        display: flex;
        justify-content: center;
        align-items: center;
    }

    .responsive {
        width: 100%;
        max-width: calc(200px + (400px - 200px) * ((100vw - 721px) / (1380 - 721))); /* Grow proportionally */
        height: auto;
    }

    .div-right {
        flex: 1;
        max-width: calc(75% + 75 * ((100vw - 721px) / (1380 - 721))); /* Grow proportionally */
    }

    .button {
        width: calc(100px + (200px - 100px) * ((100vw - 721px) / (1380 - 721)));
        max-width: 300px;
        min-width: 100px;
        padding: 5px 10px;
        font-size: 14px;
        margin: 0.5em;
    }
}



@media screen and (min-width: 360px) and (max-width: 720px) {
	

html {
    font-size: 16px; /* Slightly smaller base font size for smaller screens */
}

body {
    font-family: Arial, sans-serif;
    background: #2E5370;
    margin: 0;
    padding: 0;
}

h1 { font-size: 1.5em; }
h2 { font-size: 1.2em; }
h3 { font-size: 1em; }
h4 { font-size: 0.9em; }

#container {
    position: relative;
    width: 100%;
    margin: 0 auto;
}

    .flex-container {
        padding: 2em;
        flex-direction: column;
        align-items: center;
        text-align: center;
    }


    .div-right {
        flex: 100%;
        padding: 1em;
        margin: 0 auto;
    }
	
	    .div-left {
        flex: 1;
        max-width: 100%; /* Allow more space on smaller screens */
        display: flex;
        justify-content: center;
        align-items: center;
    }

    .responsive {
        width: 80%;
        max-width: 300px; /* Adjust max-width for smaller screens */
        height: auto;
    }

    .button {
        width: 85%;
        padding: 5px;
        font-size: 16px;
        margin: .5em auto;
    }

    h2 {
        font-size: 1.5em;
    }

    p {
        font-size: 1em;
    }

    ul {
        padding-left: 20px;
    }

    .hiddens, 
    .schedule {
        width: 100%;
        margin: 0 auto;
        border: 1px solid gray;
        border-radius: 2em;
        padding: 1em;
    }

    .close {
        cursor: pointer;
        color: teal;
        text-decoration: underline;
    }

    .close:hover {
        font-weight: bold;
    }

    .mailto {
        position: relative;
        height: 28px;
        width: auto;
        top: 6px;
        left: 0;
        cursor: pointer;
        display: inline-block;
    }

    .mailto:hover {
        left: 10px;
    }

    #notes {
        width: 100%;
        min-height: 100px; /* Sets the initial height */
        overflow-y: hidden; /* Hides vertical scrollbar */
        resize: none; /* Prevents manual resizing */
    }

    select {
        font-size: 14px;
        padding: 3px 5px;
    }

    input,
    select,
    textarea {
        width: 85%;
        margin: 0.5em auto;
        display: block;
    }
	
  .footer {
    flex-direction: column;
    align-items: center;
  }

  .footer-item {
    margin: 5px 0;
  }
}


@media screen and (max-width: 360px) {
	#container{
		width:100%;
	}
	
  /* CSS for 330px width page */

html {
    font-size: 16px; /* Slightly smaller base font size for smaller screens */
}

body {
    font-family: Arial, sans-serif;
    background: #2E5370;
    margin: 0;
    padding: 0;
}

h1 { font-size: 1.5em; }
h2 { font-size: 1.2em; }
h3 { font-size: 1em; }
h4 { font-size: 0.9em; }

#container {
    position: relative;
    width: 100%;
    margin: 0 auto;
}

.flex-container {
    width: 100%;
    display: flex;
    flex-direction: column;
    margin: 0px auto;
    padding: 1em;

    text-align: center;
}

	    .div-left {
        flex: 1;
        max-width: 100%; /* Allow more space on smaller screens */
        display: flex;
        justify-content: center;
        align-items: center;
    }

    .responsive {
        width: 80%;
        max-width: 300px; /* Adjust max-width for smaller screens */
        height: auto;
    }
.div-right {
    width: 100%;
    margin: 0 auto;
    padding: 0.5em;
}

a {
    color: maroon;
    text-decoration: none;
}

a:hover {
    color: gray;
}

.responsive {
    width: 100%;
    height: auto;
}

.button {
    width: 90%;
    padding:3px 10px;
    background-color: #2E5370;
    color: white;
    border: 1px solid gray;
    border-radius: 5px;
    cursor: pointer;
    font-size: 14px;
    margin: 0.5em auto;
}

.button:hover {
    background-color: #33b5e5;
}

.hiddens,
.schedule {
    width: 100%;
    margin: 0 auto;
    border: 1px solid gray;
    border-radius: 2em;
    padding: 1em;
}

.close {
    cursor: pointer;
    color: teal;
    text-decoration: underline;
}

.close:hover {
    font-weight: bold;
}

  .footer {
    flex-direction: column;
    align-items: center;
  }

  .footer-item {
    margin: 5px 0;
  }

	

.mailto {
    position: relative;
    height: 28px;
    width: auto;
    top: 6px;
    left: 0;
    cursor: pointer;
    display: inline-block;
}

.mailto:hover {
    left: 10px;
}

#notes {
    width: 100%;
    min-height: 100px; /* Sets the initial height */
    overflow-y: hidden; /* Hides vertical scrollbar */
    resize: none; /* Prevents manual resizing */
}

select {
    font-size: 14px;
    padding: 3px 5px;
}

ul {
    padding-left: 15px;
    text-align: left;
}

input,
select,
textarea {
    width: 90%;
    margin: 0.5em auto;
    display: block;
}


	
	.radio-container {
    display: flex;
    justify-content: space-between;  /* Or use other alignment properties as needed */
    align-items: center;  /* Align items vertically in the center */
	margin:.6em;
}

.radio-inline {
    margin-left: 5px;  /* Adjust this value as needed */
    margin-right: 10px; /* Adjust this value as needed */
    display: inline;  /* Ensure display is inline */
}


	   #about, #contact {
        width: 95% !IMPORTANT;
        margin: 0 auto;
        border: 1px solid gray;
        border-radius: 2em;
        padding: 1em;
    }

}


