/* ============================================= */
/*              ABOUT PAGE STYLES               */
/* ============================================= */

/* ==================== */
/*      HERO SECTION    */
/* ==================== */
.about-hero {
 background: linear-gradient(rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0.6)), 
             url('https://images.unsplash.com/photo-1450101499163-c8848c66ca85?ixlib=rb-4.0.3&ixid=M3wxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8fA%3D%3D&auto=format&fit=crop&w=1470&q=80');
 background-size: cover;
 background-position: center;
 height: 60vh;
 min-height: 400px;
 display: flex;
 align-items: center;
 color: white;
 text-align: center;
 padding-top: 80px;
}

/* ==================== */
/*    CONTENT SECTION   */
/* ==================== */
.about-content {
 padding: 80px 0;
 text-align: center;
}

.about-section {
 margin-bottom: 60px;
 max-width: 900px;
 margin-left: auto;
 margin-right: auto;
 text-align: left;
}

.about-section h2 {
 text-align: center;
 margin-bottom: 30px;
}

.mission-vision {
 display: grid;
 grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
 gap: 30px;
 margin-top: 40px;
}

.mission-card, .vision-card {
 background: white;
 padding: 30px;
 border-radius: 10px;
 box-shadow: 0 5px 15px rgba(0, 0, 0, 0.05);
 border-top: 4px solid var(--primary-color);
 text-align: left;
}

.mission-card h3, .vision-card h3 {
 color: var(--primary-color);
 margin-bottom: 15px;
 font-size: 1.5rem;
 text-align: center;
}

/* ==================== */
/*      TEAM SECTION    */
/* ==================== */
.team-section {
 background-color: var(--accent-color);
 padding: 80px 0;
 text-align: center;
}

.team-grid {
 display: grid;
 grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
 gap: 30px;
 margin-top: 50px;
 justify-items: center;
}

.team-member {
 background: white;
 border-radius: 10px;
 overflow: hidden;
 box-shadow: 0 5px 15px rgba(0, 0, 0, 0.05);
 transition: all 0.3s;
 max-width: 350px;
 width: 100%;
}

.team-member:hover {
 transform: translateY(-10px);
 box-shadow: 0 15px 30px rgba(0, 0, 0, 0.1);
}

.member-image {
 height: 300px;
 overflow: hidden;
}

.member-image img {
 width: 100%;
 height: 100%;
 object-fit: cover;
 transition: transform 0.5s;
}

.team-member:hover .member-image img {
 transform: scale(1.05);
}

.member-info {
 padding: 25px;
 text-align: center;
}

.member-info h3 {
 margin-bottom: 5px;
 font-size: 1.3rem;
}

.member-title {
 color: var(--primary-color);
 font-weight: 600;
 margin-bottom: 10px;
 font-size: 0.9rem;
}

.member-qualifications {
 color: var(--secondary-color);
 font-size: 0.85rem;
 margin-bottom: 15px;
 font-weight: 500;
}

.member-bio {
 margin-bottom: 15px;
 font-size: 0.95rem;
 text-align: left;
}

.member-expertise {
 font-size: 0.85rem;
 color: var(--light-text);
 border-top: 1px solid #eee;
 padding-top: 15px;
 text-align: left;
}

.member-expertise strong {
 color: var(--secondary-color);
}

/* ==================== */
/*   AFFILIATIONS SECTION */
/* ==================== */
.affiliations {
 padding: 60px 0;
 text-align: center;
}

.affiliation-logos {
 display: flex;
 justify-content: center;
 flex-wrap: wrap;
 gap: 30px;
 margin-top: 40px;
}

.affiliation-logo {
 height: 80px;
 opacity: 0.7;
 transition: opacity 0.3s;
}

.affiliation-logo:hover {
 opacity: 1;
}

.affiliation-logo img {
 height: 100%;
 width: auto;
 object-fit: contain;
}

/* ============================================= */
/*            RESPONSIVE ADJUSTMENTS             */
/* ============================================= */
@media (max-width: 992px) {
 .section-title h2 {
     font-size: 2rem;
 }
}

@media (max-width: 768px) {
 .about-hero {
     height: 50vh;
     min-height: 350px;
 }
 
 .member-image {
     height: 250px;
 }
}

@media (max-width: 576px) {
 .about-hero {
     height: 40vh;
 }
 
 .mission-vision {
     grid-template-columns: 1fr;
 }
 
 .team-member {
     max-width: 100%;
 }
}