/* --- Image Resizing Fix --- */
.team-photo {
    max-width: 100%;
    height: auto;
    border-radius: 8px; /* Optional: adds a nice soft edge to the photos */
}

/* Fixes the layout spacing for the team boxes */
.team-member {
    padding: 20px;
    box-sizing: border-box; /* Makes sure padding is inside the box */
}

.team-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 30px; /* Adds space between the team members */
}/* General Resets */
body {
font-family: 'Roboto', sans-serif;
margin: 0;
padding: 0;
color: #333;
line-height: 1.6;
background-color: #f4f4f9;
}

.container {
width: 85%;
max-width: 1200px;
margin: 0 auto;
padding: 20px 0;
}

h1, h2, h3 {
font-weight: 700;
margin-top: 0;
color: #004c8c; /* Dark Blue Primary Color */
}

/* Header/Navigation Styling */
header {
background: #004c8c; /* Dark Blue */
color: white;
padding: 10px 0;
box-shadow: 0 2px 5px rgba(0,0,0,0.1);
}

header h1 {
color: white;
font-size: 2em;
float: left;
margin: 0;
}

nav {
float: right;
}

nav ul {
list-style: none;
padding: 0;
margin: 0;
}

nav ul li {
display: inline;
margin-left: 20px;
}

nav ul li a {
color: white;
text-decoration: none;
font-weight: 400;
padding: 5px 10px;
transition: background-color 0.3s;
}

nav ul li a:hover {
background-color: #007bff; /* Brighter Blue on hover */
border-radius: 5px;
}

/* Clearfix for header floats */
header .container::after {
content: "";
display: table;
clear: both;
}

/* Hero/About Section */
.hero {
background: white;
padding: 80px 0;
text-align: center;
}

.hero h2 {
font-size: 2.5em;
margin-bottom: 20px;
color: #007bff; /* Brighter Blue */
}

.mission-statement {
font-size: 1.2em;
font-style: italic;
color: #555;
margin-bottom: 30px;
}

.vision {
background-color: #e6f0ff;
padding: 15px;
border-left: 5px solid #004c8c;
margin-top: 30px;
display: inline-block;
}

/* Team Section */
#team {
padding: 60px 0;
text-align: center;
}

.team-grid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
gap: 30px;
margin-top: 40px;
}

.team-member {
background: white;
padding: 20px;
border-radius: 8px;
box-shadow: 0 4px 8px rgba(0,0,0,0.05);
text-align: left;
transition: transform 0.3s;
}

.team-member:hover {
transform: translateY(-5px);
}

.team-member h3 {
color: #007bff;
margin-bottom: 5px;
}

.team-member .title {
color: #555;
font-weight: 700;
margin-bottom: 15px;
display: block;
}

/* Offerings Section */
.dark-bg {
background: #e6f0ff; /* Light Blue/Grey background */
padding: 60px 0;
}

.offerings-content {
display: flex;
justify-content: space-around;
gap: 40px;
margin: 40px 0;
}

.offerings-content h3 {
border-bottom: 2px solid #007bff;
padding-bottom: 10px;
margin-bottom: 20px;
}

.offerings-content ul {
list-style: none;
padding: 0;
}

.offerings-content ul li {
background: #ffffff;
padding: 10px;
margin-bottom: 8px;
border-left: 3px solid #004c8c;
box-shadow: 1px 1px 3px rgba(0,0,0,0.05);
}

.sub-note {
font-weight: 300;
font-size: 0.8em;
color: #777;
}

.faculty-offerings {
background-color: white;
padding: 20px;
border-radius: 8px;
border: 1px solid #ddd;
margin-top: 40px;
text-align: center;
}

/* Footer/Contact Section */
footer {
background: #333;
color: white;
padding: 40px 0;
text-align: center;
}

footer h3 {
color: white;
border-bottom: 2px solid #007bff;
padding-bottom: 10px;
margin-bottom: 20px;
display: inline-block;
}

footer a {
color: #007bff;
text-decoration: none;
}

footer a:hover {
text-decoration: underline;
}

/* Responsive adjustments */
@media (max-width: 768px) {
.offerings-content {
flex-direction: column;
}

header h1 {
float: none;
text-align: center;
margin-bottom: 10px;
}

nav {
float: none;
text-align: center;
}

nav ul li {
margin: 0 10px;
}
}