/* Reset and base styles */

*{
box-sizing: border-box;
margin: 0;
padding: 0;
font-family: Arial, sans-serif;
}

body {
line-height: 1.6;
background-color: #001F3F;
color: white;
}

/* Container */
.container {
width: 90%;
max-width: 1200px;
margin: auto;
}

/* ================= HEADER ================= */

header {
background-color: #001F3F;
padding: 15px 0;
}

.header-container {
display: flex;
justify-content: flex-end;
align-items: center;
}

.nav-links {
display: flex;
list-style: none;
flex-wrap: wrap;   /* ✅ allows wrapping if needed */
}

.nav-links li {
margin-left: 25px;
}

.nav-links li a {
color: white;
text-decoration: none;
font-weight: bold;
transition: 0.3s;
white-space: nowrap;   /* ✅ prevents text break */
}

.nav-links li a:hover {
color: #FBBF24;
}

/* ================= HERO ================= */

.hero {
padding: 160px 20px 100px;
text-align: center;
}

/* Logo */
.hero-logo {
display: block;
margin: 0 auto 30px auto;
height: 120px;
max-width: 100%;
}

/* Title Section */
.hero-title {
margin-bottom: 60px;
}

.title-text {
font-size: 8rem;
font-weight: bold;
position: relative;
display: inline-block;
padding-bottom: 25px;
}

/* Thick underline */
.title-text::after {
content: "";
position: absolute;
left: 0;
bottom: 0;
width: 100%;
height: 14px;
background: #FBBF24;
z-index: 1;
}

/* Subtitle container */
.title-underline {
position: relative;
margin-top: -10px;
}

/* Subtitle positioning */
.subtitle-text {
position: relative;
display: inline-block;
margin-top: -5px;
margin-left: 40px;
background: #001F3F;
padding: 0 18px;
font-size: 2.2rem;
font-weight: bold;
color: #FBBF24;
z-index: 2;
}

/* ================= BUTTONS ================= */

.hero-buttons {
margin-top: 40px;
}

.btn {
display: inline-block;
padding: 16px 30px;
margin: 15px 10px 0 0;
border-radius: 8px;
font-weight: bold;
border: 2px solid white;
background: white;
color: #001F3F;
text-decoration: none;
transition: 0.3s;
}

.btn:hover {
background: #FBBF24;
color: white;
}

/* ================= FACULTY ================= */

.faculty {
text-align: center;
padding: 60px 20px;
}

.faculty h2 {
font-size: 2.5rem;
color: #FBBF24;
margin-bottom: 20px;
}

.faculty-photo {
width: 200px;
border-radius: 50%;
margin-top: 20px;
border: 3px solid #FBBF24;
}

.faculty-info {
margin-top: 20px;
font-size: 1.2rem;
line-height: 1.8;
max-width: 700px;
margin-left: auto;
margin-right: auto;
}

/* ================= GALLERY ================= */

.gallery {
padding: 60px 20px;
text-align: center;
}

.gallery h2 {
font-size: 2rem;
color: #FBBF24;
margin-bottom: 30px;
}

.gallery-grid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
gap: 15px;
}

.gallery-grid img {
width: 100%;
border-radius: 10px;
object-fit: cover;
}

/* ================= FOOTER ================= */

footer {
padding: 20px;
text-align: center;
}

/* ================= RESPONSIVE ================= */

@media (max-width: 1024px) {

.title-text {
font-size: 5rem;
}

.subtitle-text {
font-size: 1.8rem;
margin-left: 25px;
}

}

@media (max-width: 768px) {

/* ✅ Keep header horizontal */
.nav-links {
flex-direction: row;     /* changed from column */
justify-content: flex-end;
flex-wrap: wrap;
}

.nav-links li {
margin: 8px 10px;
}

.hero {
padding: 120px 20px 80px;
}

.title-text {
font-size: 3rem;
}

.subtitle-text {
font-size: 1.2rem;
margin-left: 15px;
}

.btn {
display: block;
width: 90%;
margin: 10px auto;
}

.faculty-photo {
width: 150px;
}

}