/* Members 카드 레이아웃 */
.members-list {
  margin-top: 20px;
}

.members-list h2 {
  font-size: 2rem;
  color: #ffffff;
  margin-bottom: 24px;
  margin-top: 32px;
  text-align: left;
  text-shadow: 2px 2px 4px rgba(0,0,0,0.3);
  padding: 0;
  background: transparent;
  border: none;
}

.members-list h2:first-child {
  margin-top: 0;
}

/* Principal Investigator는 1열 레이아웃 유지 */
.members-list .member-card:first-of-type {
  display: flex;
  gap: 20px;
  align-items: flex-start;
  padding: 20px;
  border-radius: 12px;
  background: rgba(0,0,0,0.05);
  margin-bottom: 16px;
  width: 100%;
}

/* Members 섹션의 카드들을 2열 그리드로 배치 */
.members-list .member-card:not(:first-of-type) {
  display: flex;
  gap: 20px;
  align-items: flex-start;
  padding: 20px;
  border-radius: 12px;
  background: rgba(0,0,0,0.05);
  margin-bottom: 20px;
}

/* 2열 그리드 컨테이너 설정 */
.members-list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
}

/* Principal Investigator는 전체 너비 사용 */
.members-list .member-card:first-of-type {
  grid-column: 1 / -1;
}

/* Members 제목을 중앙 정렬 */
.members-list h2 {
  text-align: center;
  grid-column: 1 / -1;
}

/* PI 카드용 사진 컨테이너 (기존 스타일 유지) */
.members-list .member-card:first-of-type .member-photo {
  flex: 0 0 140px;
}

/* 2열 레이아웃용 사진 컨테이너 */
.members-list .member-card:not(:first-of-type) .member-photo {
  flex: 0 0 140px;
}

.member-img {
  width: 160px;
  height: 160px;
  object-fit: contain; /* 사진 전체가 보이도록 */
  background: #ffffff; /* 여백 배경 흰색 */
  border: 1px solid rgba(0,0,0,0.08);
  border-radius: 8px; /* 사각형 형태 유지, 약간 라운드 */
  box-shadow: 0 6px 12px rgba(0,0,0,0.08);
}

.member-info h3 {
  margin: 0 0 6px 0;
  font-size: 1.1rem;
}

.member-info h4 {
  margin: 10px 0 6px 0;
  font-size: 1rem;
}

.member-info p {
  margin: 2px 0;
  line-height: 1.5;
}

.member-info .email {
  font-weight: 400;
  font-size: 0.95em;
}

/* 더 구체적인 선택자로 우선순위 높임 */
.members-list .member-card .member-info .project,
.member-info .project {
  margin-left: 20px !important;
  padding-left: 15px !important;
  border-left: 3px solid rgba(255, 255, 255, 0.3) !important;
  font-style: italic !important;
  color: #e0e0e0 !important;
}
/* 페이지 헤더 간격 축소 버전 */
.compact-header {
  padding-top: 8px !important;
  padding-bottom: 8px !important;
  margin-top: 2px !important;
}
/* ========================================
   서브페이지 전용 스타일
   ======================================== */

/* ========================================
   서브페이지 헤더 표시 (로딩 없이 즉시 표시)
   ======================================== */
.site-header {
  opacity: 1 !important;                    /* 헤더 즉시 표시 */
  visibility: visible !important;           /* 헤더 보이기 */
  transition: none !important;              /* 전환 효과 제거 */
}

/* ========================================
   페이지 헤더
   ======================================== */
.page-header {
  background: transparent !important;          /* 배경 투명 강제 */
  color: white;
  text-align: center;
  padding: 8rem 0 4rem;                        /* 상단 여백 (헤더 높이 고려) */
  margin-top: 80px;                            /* 헤더 높이만큼 여백 */
  max-width: 80%;                              /* 메인 페이지와 동일한 너비 */
  margin-left: auto;                           /* 중앙 정렬 */
  margin-right: auto;                          /* 중앙 정렬 */
  border-radius: 20px;                         /* 모서리 둥글게 */
  box-shadow: none !important;                 /* 그림자 제거 강제 */
  border: none !important;                     /* 테두리 제거 강제 */
}

.page-header h1 {
  font-size: 3rem;                            /* 페이지 제목 크기 */
  font-weight: 700;
  margin-bottom: 1rem;
  text-shadow: 2px 2px 4px rgba(0,0,0,0.3);  /* 그림자 효과 */
}

.page-header p {
  font-size: 1.3rem;                          /* 부제목 크기 */
  opacity: 0.9;
}

/* ========================================
   서브페이지 콘텐츠
   ======================================== */
.subpage-content {
  max-width: 80%;                             /* 메인 페이지와 동일한 너비 */
  margin: 2rem auto;                          /* 중앙 정렬 */
}

.subpage-content .container {
  max-width: none;                            /* 컨테이너 제한 해제 */
  padding: 0;                                 /* 패딩 제거 */
}

.subpage-content section {
  background: transparent;                     /* 배경 투명 */
  backdrop-filter: none;                       /* 블러 제거 */
  border: none;                                /* 테두리 제거 */
  border-radius: 20px;                         /* 모서리 둥글게 유지 */
  padding: 3rem;                               /* 내부 여백 */
  margin-bottom: 2rem;                         /* 섹션 간 여백 */
}

.subpage-content h2 {
  font-size: 2.5rem;                          /* 섹션 제목 크기 */
  font-weight: 700;
  text-align: center;
  margin-bottom: 3rem;
  color: #ffffff;
  position: relative;
}

.subpage-content h2::after {
  content: '';
  position: absolute;
  bottom: -10px;
  left: 50%;
  transform: translateX(-50%);
  width: 80px;                                /* 선 길이 */
  height: 4px;                                /* 선 두께 */
  background: linear-gradient(90deg, rgba(120, 120, 120, 0.8), rgba(160, 160, 160, 0.8)); /* 회색 그라데이션 선 */
  border-radius: 2px;
}

/* ========================================
   비전 섹션
   ======================================== */
.vision-content {
  display: grid;
  grid-template-columns: 1fr 1fr;            /* 2열 그리드 */
  gap: 4rem;                                 /* 열 간격 */
  align-items: center;
}

.vision-text p {
  font-size: 1.2rem;                          /* 텍스트 크기 */
  margin-bottom: 1.5rem;
  color: #ffffff;
  line-height: 1.8;
}

.vision-image {
  text-align: center;
}

.vision-img {
  width: 100%;
  height: 400px;                              /* 이미지 높이 */
  object-fit: cover;                          /* 이미지 비율 유지 */
  border-radius: 15px;                        /* 모서리 둥글게 */
  transition: transform 0.3s ease;            /* 부드러운 전환 */
}

.vision-img:hover {
  transform: scale(1.05);                     /* 호버 시 5% 확대 */
}

/* ========================================
   미션 섹션
   ======================================== */
.mission-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); /* 반응형 그리드 */
  gap: 2rem;
}

.mission-item {
  text-align: center;
  padding: 2rem;
  background: rgba(255, 255, 255, 0.1);      /* 반투명 배경 */
  border-radius: 15px;                        /* 모서리 둥글게 */
  border: 1px solid rgba(255, 255, 255, 0.1);
  transition: transform 0.3s ease;            /* 부드러운 전환 */
}

.mission-item:hover {
  transform: translateY(-10px);               /* 호버 시 위로 이동 */
  background: rgba(255, 255, 255, 0.15);     /* 호버 시 배경색 변경 */
}

.mission-icon {
  font-size: 3rem;                            /* 아이콘 크기 */
  margin-bottom: 1rem;
}

.mission-item h3 {
  font-size: 1.5rem;                          /* 제목 크기 */
  color: #ffffff;
  margin-bottom: 1rem;
}

.mission-item p {
  color: #e0e0e0;
  line-height: 1.6;
}

/* ========================================
   팀 소개 섹션
   ======================================== */
.team-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); /* 반응형 그리드 */
  gap: 2rem;
}

.team-member {
  text-align: center;
  background: rgba(255, 255, 255, 0.1);      /* 반투명 배경 */
  border-radius: 15px;                        /* 모서리 둥글게 */
  padding: 2rem;
  border: 1px solid rgba(255, 255, 255, 0.1);
  transition: transform 0.3s ease;            /* 부드러운 전환 */
}

.team-member:hover {
  transform: translateY(-10px);               /* 호버 시 위로 이동 */
}

.member-image {
  margin-bottom: 1.5rem;
}

.member-img {
  width: 200px;                               /* 이미지 크기 */
  height: 240px;                              /* 이미지 크기 */
  object-fit: cover;                          /* 이미지가 컨테이너를 채우도록 */
  border-radius: 8px;                         /* 사각형 형태 */
  border: 1px solid rgba(0, 0, 0, 0.08);    /* 테두리 */
  background: transparent;                    /* 배경 투명 */
  transition: transform 0.3s ease;            /* 부드러운 전환 */
}

.member-img.pi-img {
  width: 220px;                               /* PI 이미지 가로는 좁게 */
  height: 320px;                              /* PI 이미지 세로는 더 크게 */
  object-fit: cover;                          /* 이미지가 컨테이너를 채우도록 */
  border-radius: 12px;                        /* 약간 더 둥글게 */
}

.team-member:hover .member-img {
  transform: scale(1.1);                      /* 호버 시 10% 확대 */
}

.team-member h3 {
  font-size: 1.5rem;                          /* 이름 크기 */
  color: #ffffff;
  margin-bottom: 0.5rem;
}

.member-title {
  color: rgba(180, 180, 180, 0.9);           /* 직책 색상 */
  font-weight: 600;
  margin-bottom: 1rem;
  font-size: 1.1rem;
}

.member-description {
  color: #e0e0e0;
  line-height: 1.6;
  font-size: 0.95rem;
}

/* ========================================
   활성 메뉴 스타일
   ======================================== */
.main-nav a.active,
.mobile-menu a.active {
  background-color: rgba(255, 255, 255, 0.2); /* 활성 메뉴 배경색 */
  color: #ff6b6b;                             /* 활성 메뉴 글자색 */
  border-radius: 5px;
}

/* ========================================
   Contact 페이지 지도 스타일
   ======================================== */
.contact-grid {
  display: grid;
  grid-template-columns: 1fr 1fr; /* 지도 쪽을 더 크게 */
  gap: 3rem;
  align-items: start;
}

.contact-details h3,
.contact-map h3 {
  font-size: 1.8rem;
  color: #ffffff;
  margin-bottom: 2rem;
  text-align: center;
}

.contact-item {
  display: flex;
  align-items: flex-start;
  margin-bottom: 2rem;
  padding: 1.5rem;
  background: rgba(255, 255, 255, 0.1);
  border-radius: 15px;
  border: 1px solid rgba(255, 255, 255, 0.1);
}

.contact-icon {
  font-size: 2rem;
  margin-right: 1rem;
  margin-top: 0.5rem;
}

.contact-item h4 {
  font-size: 1.2rem;
  color: #ffffff;
  margin-bottom: 0.5rem;
}

.contact-item p {
  color: #e0e0e0;
  line-height: 1.6;
}

/* 구글 지도 컨테이너 스타일 */
.map-container {
  background: rgba(255, 255, 255, 0.1);
  border-radius: 15px;
  padding: 1.5rem;
  border: 1px solid rgba(255, 255, 255, 0.1);
  height: 420px; /* 적당한 높이로 조정 */
}

/* 구글 지도 iframe 스타일 */
.google-map {
  width: 100%;
  height: 350px; /* 적당한 지도 높이로 조정 */
  border: none;
  border-radius: 10px;
  margin-bottom: 1rem;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);
  transition: transform 0.3s ease;
}

.google-map:hover {
  box-shadow: 0 6px 20px rgba(0, 0, 0, 0.3); /* 호버 시 그림자 강화 */
}

/* 지도 상호작용 개선 */
.google-map {
  cursor: pointer; /* 마우스 커서 변경 */
}

/* 지도 링크 버튼 스타일 */
.map-link {
  display: inline-block;
  padding: 0.8rem 1.5rem;
  background: #4285f4; /* 구글 지도 색상으로 변경 */
  color: white;
  text-decoration: none;
  border-radius: 25px;
  transition: all 0.3s ease;
  font-weight: 500;
}

.map-link:hover {
  background: #3367d6; /* 구글 지도 호버 색상 */
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(66, 133, 244, 0.3);
}

/* 지도 폴백 스타일 (필요시 사용) */
.map-placeholder {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 350px;
  background: rgba(255, 255, 255, 0.1);
  border-radius: 10px;
  border: 2px dashed rgba(255, 255, 255, 0.3);
}

.map-fallback {
  text-align: center;
  color: #ffffff;
}

.map-fallback h4 {
  margin-bottom: 1rem;
  font-size: 1.3rem;
}

.map-fallback p {
  margin-bottom: 1.5rem;
  opacity: 0.8;
}

/* ========================================
   Lab Life 사진첩 스타일
   ======================================== */
.photo-gallery {
  display: grid;
  grid-template-columns: repeat(3, 1fr); /* 한 줄에 3개 사진 */
  gap: 2rem;
  margin-bottom: 2rem;
}

.photo-item {
  background: rgba(255, 255, 255, 0.1);
  border-radius: 15px;
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, 0.1);
  transition: transform 0.3s ease;
}

.photo-item:hover {
  transform: translateY(-10px);
  background: rgba(255, 255, 255, 0.15);
}

.gallery-img {
  width: 100%;
  height: 250px;
  object-fit: cover;
  transition: transform 0.3s ease;
}

.photo-item:hover .gallery-img {
  transform: scale(1.05);
}

.photo-caption {
  padding: 1.5rem;
  text-align: center;
}

.photo-caption h3 {
  font-size: 1.3rem;
  color: #ffffff;
  margin-bottom: 0.5rem;
}

.photo-caption p {
  color: #e0e0e0;
  line-height: 1.6;
  font-size: 0.95rem;
}

/* ========================================
   반응형 디자인
   ======================================== */

/* 큰 화면에서 지도 적당히 크게 */
@media (min-width: 1200px) {
  .map-container {
    height: 480px; /* 큰 화면에서 적당한 높이 */
  }
  
  .google-map {
    height: 410px; /* 큰 화면에서 적당한 지도 높이 */
  }
  
  /* 큰 화면에서 뉴스 더 넓게 */
  .latest-news {
    max-width: 1600px; /* 큰 화면에서 더욱 넓게 */
    gap: 4rem; /* 간격도 더 크게 */
  }
}

/* 태블릿 크기에서 중간 크기 */
@media (max-width: 1024px) and (min-width: 769px) {
  .map-container {
    height: 450px; /* 태블릿에서 적당한 높이 */
  }
  
  .google-map {
    height: 380px; /* 태블릿에서 적당한 지도 높이 */
  }
}

@media (max-width: 768px) {
  .page-header,
  .subpage-content {
    max-width: 95%;                           /* 모바일에서는 거의 전체 너비 */
  }
  
  /* 모바일에서 뉴스를 한 열로 표시 */
  .latest-news {
    grid-template-columns: 1fr; /* 모바일에서는 한 열로 */
    gap: 1.5rem;
  }
  
  /* 모바일에서는 모든 멤버 카드를 1열로 변경 */
  .members-list {
    grid-template-columns: 1fr;
  }
  
  .members-list .member-card:first-of-type {
    display: flex;
    flex-direction: column;                  /* 사진 위, 정보 아래 */
    align-items: center;
  }

  .members-list .member-card:not(:first-of-type) {
    display: flex;
    flex-direction: column;                  /* 사진 위, 정보 아래 */
    align-items: center;
    width: 100%;
    margin-bottom: 20px;
  }
  
  .members-list .member-card:not(:first-of-type) .member-photo {
    flex: none;                              /* 가로 배치 해제 */
    margin-bottom: 12px;                     /* 사진과 정보 간격 */
  }
  
  .members-list .member-card:not(:first-of-type) .member-info {
    flex: none;                              /* 가로 배치 해제 */
    width: 100%;                             /* 정보는 가로 전체 사용 */
    text-align: left;                        /* 좌측 정렬 유지 */
  }
  
  .photo-gallery {
    grid-template-columns: repeat(2, 1fr);    /* 모바일에서는 2열로 변경 */
    gap: 1.5rem;
  }
  
  .gallery-img {
    height: 200px;                            /* 모바일에서 이미지 높이 줄임 */
  }
  
  .contact-grid {
    grid-template-columns: 1fr;               /* 모바일에서는 1열로 변경 */
    gap: 2rem;
  }
  
  /* 모바일에서 지도 높이 조정 */
  .map-container {
    height: 350px; /* 모바일에서 높이 줄임 */
  }
  
  .google-map {
    height: 250px; /* 모바일에서 지도 높이 줄임 */
  }
  
  .page-header {
    padding: 6rem 0 3rem;                     /* 모바일에서 여백 줄임 */
  }
  
  .page-header h1 {
    font-size: 2.5rem;                        /* 모바일에서 제목 크기 줄임 */
  }
  
  .page-header p {
    font-size: 1.1rem;                        /* 모바일에서 부제목 크기 줄임 */
  }
  
  .subpage-content section {
    padding: 2rem;                            /* 모바일에서 내부 여백 줄임 */
  }
  
  .vision-content {
    grid-template-columns: 1fr;               /* 1열로 변경 */
    gap: 2rem;
  }
  
  .mission-grid,
  .team-grid {
    grid-template-columns: 1fr;               /* 1열로 변경 */
  }
  
  .vision-img {
    height: 200px;                            /* 모바일에서 이미지 높이 줄임 */
  }
  
  .member-img {
    width: 150px;                             /* 모바일에서 이미지 크기 줄임 */
    height: 150px;
  }
}

@media (max-width: 480px) {
  .page-header h1 {
    font-size: 2rem;                          /* 더 작은 제목 크기 */
  }
  
  .photo-gallery {
    grid-template-columns: 1fr;                /* 작은 화면에서는 1열로 변경 */
    gap: 1rem;
  }
  
  .gallery-img {
    height: 180px;                             /* 더 작은 이미지 높이 */
  }
  
  .subpage-content h2 {
    font-size: 2rem;                          /* 섹션 제목 크기 줄임 */
  }
  
  .subpage-content section {
    padding: 1.5rem;                          /* 더 작은 내부 여백 */
  }
}

/* ========================================
   Research 페이지 전용 스타일
   ======================================== */

/* 연구 분야 그리드 */
.research-areas-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(350px, 1fr));
  gap: 2rem;
}

.research-area-item {
  background: rgba(255, 255, 255, 0.1);
  border-radius: 15px;
  padding: 2rem;
  border: 1px solid rgba(255, 255, 255, 0.1);
  transition: transform 0.3s ease;
}

.research-area-item:hover {
  transform: translateY(-10px);
  background: rgba(255, 255, 255, 0.15);
}

.area-icon {
  font-size: 3rem;
  text-align: center;
  margin-bottom: 1rem;
}

.research-area-item h3 {
  font-size: 1.5rem;
  color: #ffffff;
  margin-bottom: 1rem;
  text-align: center;
}

.research-area-item p {
  color: #e0e0e0;
  line-height: 1.6;
  margin-bottom: 1.5rem;
}

.area-details h4 {
  color: #ff6b6b;
  margin-bottom: 0.5rem;
  font-size: 1.1rem;
}

.area-details ul {
  list-style: none;
  padding: 0;
}

.area-details li {
  color: #e0e0e0;
  padding: 0.25rem 0;
  position: relative;
  padding-left: 1.5rem;
}

.area-details li::before {
  content: '▶';
  color: #ff6b6b;
  position: absolute;
  left: 0;
  font-size: 0.8rem;
}

/* 프로젝트 그리드 */
.projects-grid {
  display: grid;
  grid-template-columns: 1fr; /* 한 행에 하나의 프로젝트 */
  gap: 2rem;
}

.project-item {
  background: rgba(255, 255, 255, 0.1);
  border-radius: 15px;
  border: 1px solid rgba(255, 255, 255, 0.1);
  transition: transform 0.3s ease;
}

.project-item:hover {
  transform: translateY(-10px);
  background: rgba(255, 255, 255, 0.15);
}

.project-content {
  padding: 2rem;
}

.project-header h3 {
  font-size: 1.1rem;
  color: #ff6b6b;
  margin-bottom: 1rem;
  font-weight: 600;
  line-height: 1.4;
}

.project-theme h4 {
  font-size: 1.3rem;
  color: #ffffff;
  margin-bottom: 1.5rem;
  font-weight: 600;
  line-height: 1.4;
}

.project-description {
  color: #e0e0e0;
  line-height: 1.8;
  margin-bottom: 0;
  font-size: 1.1rem;
}

/* 성과 그리드 */
.achievements-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  gap: 2rem;
}

.achievement-item {
  text-align: center;
  background: rgba(255, 255, 255, 0.1);
  border-radius: 15px;
  padding: 2rem;
  border: 1px solid rgba(255, 255, 255, 0.1);
  transition: transform 0.3s ease;
}

.achievement-item:hover {
  transform: translateY(-10px);
  background: rgba(255, 255, 255, 0.15);
}

.achievement-number {
  font-size: 3rem;
  font-weight: 700;
  color: #ff6b6b;
  margin-bottom: 1rem;
}

.achievement-item h3 {
  font-size: 1.3rem;
  color: #ffffff;
  margin-bottom: 1rem;
}

.achievement-item p {
  color: #e0e0e0;
  line-height: 1.6;
}

/* 반응형 디자인 */
@media (max-width: 768px) {
  .research-areas-grid,
  .projects-grid {
    grid-template-columns: 1fr;
  }
  
  .achievements-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 480px) {
  .achievements-grid {
    grid-template-columns: 1fr;
  }
}

/* 논문 스타일 */
.paper-item {
    margin-bottom: 30px;
    padding: 25px;
    background: transparent;
    border-radius: 12px;
    box-shadow: 0 2px 10px rgba(0,0,0,0.1);
    position: relative;
    counter-increment: paper-counter;
}

.paper-item::before {
    content: counter(paper-counter);
    position: absolute;
    top: 20px;
    left: 20px;
    width: 30px;
    height: 30px;
    background: #007bff;
    color: white;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: bold;
    font-size: 14px;
}

.paper-item h3 {
    margin-left: 50px;
    margin-top: 0;
    margin-bottom: 15px;
    color: #ffffff;
    font-size: 18px;
    line-height: 1.4;
}

.paper-item p {
    margin-left: 50px;
    margin-bottom: 0;
    line-height: 1.6;
    color: #e0e0e0;
}

/* 한빛사 논문 표시 스타일 */
.paper-item p strong {
    font-weight: normal;
}

/* 한빛사 논문 표시를 위한 특별한 스타일 */
.paper-item p {
    color: #e0e0e0;
}

/* Bhin J만 bold로 강조하기 위한 스타일 */
.paper-item p strong {
    font-weight: normal;
}

.bhin-name {
    font-weight: bold !important;
    color: #ffffff !important;
}

/* 한빛사 논문 표시 스타일 */
.hanbit-paper {
    color: #ff6b6b !important;
    font-weight: 600;
    font-style: italic;
}

/* 논문 번호 카운터 초기화 */
.journal-papers {
    counter-reset: paper-counter;
}

/* ========================================
   News 페이지 전용 스타일
   ======================================== */

/* 뉴스 아이템 스타일 */
.news-item {
    background: rgba(255, 255, 255, 0.1);
    border-radius: 15px;
    padding: 2rem;
    margin-bottom: 2rem;
    border: 1px solid rgba(255, 255, 255, 0.1);
    transition: transform 0.3s ease;
    position: relative;
}

.news-item:hover {
    transform: translateY(-5px);
    background: rgba(255, 255, 255, 0.15);
}

.news-item h3 {
    font-size: 1.4rem;
    color: #ffffff;
    margin-bottom: 1rem;
    line-height: 1.4;
}

.news-item p {
    color: #e0e0e0;
    line-height: 1.6;
    margin-bottom: 1rem;
    font-size: 1.1rem;
}

.news-item .date {
    display: block;
    background: transparent;
    color: #ffffff;
    padding: 0.5rem 0;
    font-size: 0.9rem;
    font-weight: 600;
    border: none;
    text-align: right;
    margin-top: 1rem;
}

/* 뉴스 그리드 레이아웃 */
.latest-news {
    max-width: 1400px; /* 가로 너비를 더 크게 확장 */
    margin: 0 auto;
    display: grid;
    grid-template-columns: 1fr 1fr; /* 두 열로 배치 */
    gap: 3rem; /* 뉴스 항목 간 간격도 조금 늘림 */
}

/* ========================================
   Alumni 섹션 전용 스타일
   ======================================== */

/* ========================================
   Events 섹션 전용 스타일
   ======================================== */

/* 이벤트 그리드 레이아웃 */
.events-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr); /* 한 줄에 2개 이벤트로 변경하여 가로 크기 증가 */
    gap: 2rem;
    margin-bottom: 2rem;
}

/* 이벤트 아이템 스타일 */
.event-item {
    background: rgba(255, 255, 255, 0.1);
    border-radius: 15px;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, 0.1);
    transition: transform 0.3s ease;
}

.event-item:hover {
    transform: translateY(-10px);
    background: rgba(255, 255, 255, 0.15);
}

/* 이벤트 슬라이더 컨테이너 */
.event-slider {
    position: relative;
    height: 400px;
    overflow: hidden;
}

/* 이벤트 슬라이드 */
.event-slide {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    transition: opacity 0.5s ease;
}

.event-slide.active {
    opacity: 1;
}

/* 이벤트 이미지 */
.event-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.3s ease;
}

.event-item:hover .event-img {
    transform: scale(1.05);
}

/* 슬라이더 컨트롤 버튼 */
.slider-controls {
    position: absolute;
    bottom: 10px;
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    gap: 10px;
    z-index: 10;
}

.prev-btn,
.next-btn {
    background: rgba(0, 0, 0, 0.7);
    color: white;
    border: none;
    border-radius: 50%;
    width: 30px;
    height: 30px;
    cursor: pointer;
    font-size: 14px;
    transition: all 0.3s ease;
    display: flex;
    align-items: center;
    justify-content: center;
}

.prev-btn:hover,
.next-btn:hover {
    background: rgba(0, 0, 0, 0.9);
    transform: scale(1.1);
}

/* 이벤트 캡션 */
.event-caption {
    padding: 1.5rem;
    text-align: center;
}

.event-caption h3 {
    font-size: 1.3rem;
    color: #ffffff;
    margin-bottom: 0.5rem;
}

.event-date {
    color: #ffffff;
    font-weight: 600;
    font-size: 0.9rem;
    margin: 0;
}

/* 반응형 디자인 */
@media (max-width: 768px) {
    .events-grid {
        grid-template-columns: repeat(2, 1fr); /* 모바일에서는 2열로 변경 */
        gap: 1.5rem;
    }
    
    .event-slider {
        height: 200px; /* 모바일에서 이미지 높이 줄임 */
    }
}

@media (max-width: 480px) {
    .events-grid {
        grid-template-columns: 1fr; /* 작은 화면에서는 1열로 변경 */
        gap: 1rem;
    }
    
    .event-slider {
        height: 180px; /* 더 작은 이미지 높이 */
    }
}

/* Alumni 제목 스타일 */
.alumni-section h2 {
    margin-top: 3rem;
    margin-bottom: 2rem;
    text-align: center;
    font-size: 1.8rem; /* 2.5rem에서 1.8rem으로 축소 */
    color: #ffffff;
    position: relative;
}

.alumni-section h2::after {
    content: '';
    position: absolute;
    bottom: -10px;
    left: 50%;
    transform: translateX(-50%);
    width: 60px; /* 80px에서 60px로 축소 */
    height: 3px; /* 4px에서 3px로 축소 */
    background: linear-gradient(90deg, rgba(120, 120, 120, 0.6), rgba(160, 160, 160, 0.6)); /* 투명도도 낮춤 */
    border-radius: 2px;
}

/* Alumni 멤버 카드 스타일 */
.alumni-section .member-card {
    margin-bottom: 1rem; /* 1.5rem에서 1rem으로 축소 */
    padding: 1.5rem; /* 2rem에서 1.5rem으로 축소 */
    background: transparent;
    border-radius: 15px;
    border: none;
    transition: transform 0.3s ease;
    max-width: none;
    margin-left: 0;
    margin-right: 0;
}

.alumni-section .member-card:hover {
    transform: translateY(-2px); /* 3px에서 2px로 축소 */
    background: transparent;
}

/* Alumni 멤버 정보 스타일 */
.alumni-section .member-info h3 {
    font-size: 1rem; /* 1.3rem에서 1rem으로 축소 */
    color: #ffffff;
    margin-bottom: 1rem; /* 1.5rem에서 1rem으로 축소 */
    border-bottom: none;
    padding-bottom: 0.5rem;
    text-align: left;
}

.alumni-section .member-info h4 {
    font-size: 0.9rem; /* 1.1rem에서 0.9rem으로 축소 */
    color: #ffffff;
    margin: 1rem 0 0.6rem 0; /* 여백도 축소 */
    font-weight: 600;
    text-align: left;
}

.alumni-section .member-info p {
    margin: 0.4rem 0; /* 0.5rem에서 0.4rem으로 축소 */
    line-height: 1.5; /* 1.6에서 1.5로 축소 */
    color: #ffffff;
    padding-left: 0;
    border-left: none;
    text-align: left;
    font-size: 0.85rem; /* 기본 글씨 크기도 축소 */
}
