.clearfix{*zoom:1;}
.clearfix:after{clear:both; display:block; content:"";}


#homeContainer .bottom {
    max-width: 1745px;   /* PC는 기존 폭 유지 */
    width: 100%;         /* 모바일/태블릿에서 화면에 맞게 */
    margin: 0 auto;
    padding: 0 15px;     /* 모바일 좌우 여백 */
    box-sizing: border-box;
}


.bottom .main-tit {
    font-family: 'Open Sans', Helvetica, sans-serif;
    font-size: 33px;
    font-weight: 700;
    text-align: center;
    margin-bottom: 32px;
    margin-top: 32px;
}

.main-news-video {
    float: left;
    width: 49%;
    margin-right: 2%;
}

.main-news-list {
    float: left;
    width: 49%;
}

.main-news-inner:first-child {
    margin-top: 0;
}

.main-news-inner {
    margin-top: 13px;
}

.main-news-inner a {
    display: block;
}
.main-news-inner dl {
    display: table;
    width: 100%;
}

.main-news-inner dt {
    display: table-cell;
    vertical-align: middle;
    width: 195px;
}

.main-news-img {
    border: 1px solid #ddd;
    width: 195px;
    height: 110px;
}

.main-news-img img {
    width: 100%;
    height: 100%;
}

.main-news-inner dd {
    display: table-cell;
    vertical-align: middle;
    padding: 0 20px;
}

.main-news-inner dd h3 {
    font-size: 20px;
    margin-bottom: 15px;
    letter-spacing: -0.25px;
    color: #081d3e;
    font-weight: 600;
    width: 100%;
    height: 20px;
    position: relative;
    padding-bottom: 10px;
}

.main-news-inner dd h3 span {
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    right: 0;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.main-news-inner dd p {
    font-size: 14px;
    line-height: 24px;
    letter-spacing: -0.1px;
    color: #535353;
    font-weight: 300;
    height: 48px;
    overflow: hidden;
    text-overflow: ellipsis;
    width: 100%;
}

/* =========================
   FINAL: News & Event Responsive (Tablet/Mobile only)
   ========================= */
@media (max-width:1024px){

  /* 1) 좌/우 → 위/아래 스택 + float 해제 */
  .main-news-video,
  .main-news-list{
    float: none !important;
    width: 100% !important;
  }

  /* 2) 비디오: 무조건 폭 100% (검은 박스/과확대 방지) */
  .main-news-video video{
    width: 100% !important;
    height: auto !important;
    max-height: none !important;
    object-fit: initial !important;
    background: #000;
    display:block;
  }

  /* 3) 리스트 레이아웃: 썸네일(좌) + 텍스트(우) */
  .main-news-inner dl{
    display:flex !important;
    align-items:flex-start !important;
    width:100% !important;
  }
  .main-news-inner dt{
    width:auto !important;
    display:block !important;
    flex: 0 0 120px !important;
  }
  .main-news-inner dd{
    display:block !important;
    flex: 1 1 auto !important;
    width:auto !important;
    padding: 0 0 0 12px !important;
    min-width:0 !important;
  }

  /* 4) 썸네일 고정 크기 (기존 195x110 → 모바일 축소) */
  .main-news-img{
    width:120px !important;
    height:80px !important;
  }
  .main-news-img img{
    width:100% !important;
    height:100% !important;
    object-fit:cover !important;
    display:block;
  }

  /* 5) 제목/내용 “모바일에서 잘 보이게” (PC용 absolute 제거) */
  .main-news-inner dd h3{
    height:auto !important;
    padding-bottom:0 !important;
    margin-bottom:6px !important;
  }
  .main-news-inner dd h3 span{
    position: static !important;     /* PC의 absolute 제거 */
    white-space: normal !important;  /* 줄바꿈 허용 */
    overflow: hidden !important;

    display:-webkit-box !important;
    -webkit-line-clamp:2 !important;
    -webkit-box-orient:vertical !important;
  }

  .main-news-inner dd p{
    height:auto !important;
    line-height:1.35 !important;
    overflow:hidden !important;

    display:-webkit-box !important;
    -webkit-line-clamp:2 !important;
    -webkit-box-orient:vertical !important;
  }

  .main-news-video{ margin-bottom: 16px !important; } /* ← 이거 추가 */

 /* 비디오 아래 여백 */
  .main-news-video{ margin-bottom: 18px !important; }

  /* 리스트 아이템을 카드로 */
  .main-news-inner{
    margin-top: 10px !important; /* 기존 13px보다 조금 정리 */
  }

  .main-news-inner a{
    border: 1px solid rgba(0,0,0,.10);
    border-radius: 14px;
    background: #fff;
    padding: 12px;
    display: block;
  }

  /* dl이 flex라 padding을 a로 올려주면 더 깔끔 */
  .main-news-inner dl{
    padding: 0 !important;
  }

  /* 썸네일 라운드 */
  .main-news-img{
    border: none !important;        /* 기존 border 제거 */
    border-radius: 12px;
    overflow: hidden;
    background: #f2f4f7;
  }

  /* 제목/내용 간격 살짝 */
  .main-news-inner dd{
    padding-left: 12px !important;
  }
  .main-news-inner dd h3{
    margin-bottom: 6px !important;
  }
  .main-news-inner dd p{
    margin-top: 4px;
    color: rgba(0,0,0,.65) !important;
  }

}

@media (max-width:740px){
  .main-news-inner dt{ flex-basis:108px !important; }
  .main-news-img{ width:108px !important; height:74px !important; }
  .main-news-inner dd h3{ font-size:15px !important; }
  .main-news-inner dd p{ font-size:12.5px !important; }
}

@media (max-width:390px){
  .main-news-inner dt{ flex-basis:96px !important; }
  .main-news-img{ width:96px !important; height:68px !important; }
}

/* =========================
   HOTFIX: Mobile scroll lock release
   ========================= */
@media (max-width:1024px){
  html, body{
    height:auto !important;
    overflow:auto !important;
  }
  /* 메뉴 열렸을 때만 잠기게(기존 동작 유지) */
  body.mobile-nav-open{
    overflow:hidden !important;
  }
}

