/* ==========================================================
   history7 연혁 스킨
   - 좌측: 공동 문구 + 세로 탭 (sticky)
   - 우측: 상단 라운드 이미지 (타이틀 오버레이) + 연혁 리스트
   - 년도-월 사이 라인 없음 / 년도-년도 사이 연한 라인
   ========================================================== */
.history_H7 {
  overflow: visible;
  position: relative;
  padding-top: 0;
  padding-bottom: 10rem;
  width: 100%;
  float: left;
}

/* 구분 -----------------------------------*/
/**** pc ****/
@media only all and (min-width:768px) {
  .history_H7 .col-group {
    width: 100%;
    float: left;
    display: grid;
    /* grid-template-columns 는 content.skin.php 동적 스타일(left_width)로 지정 */
    gap: 0 clamp(40px, 6vw, 110px);
  }
  /* 좌측 영역 sticky */
  .history_H7 .col-group .left {
    display: flex;
    flex-direction: column;
    position: sticky;
    top: clamp(80px, 10vw, 120px);
    align-self: start;
  }
}
/**** pc2 ****/
@media all and (max-width:1280px) and (min-width:768px) {
  .history_H7 .col-group {
    gap: 0 clamp(30px, 4vw, 60px);
  }
}
/**** 모바일 ****/
@media only all and (max-width:767px) {
  .history_H7 .col-group {
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 10px;
  }
  .history_H7 .col-group .left {
    position: relative;
    top: auto;
    align-self: auto;
  }
}
/* 구분 //end -----------------------------------*/


/* ========== 공동 문구 영역 ========== */
.history_H7 .h7-intro {
  width: 100%;
  margin-bottom: clamp(25px, 3vw, 50px);
}

/* ========== 세로 탭 메뉴 ========== */
.history_H7 .h7-tabs {
  display: flex;
  flex-direction: column;
  width: 100%;
}
.history_H7 .h7-tabs .tab {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  width: 100%;
  padding: clamp(14px, 1.5vw, 22px) 4px;
  font-weight: 600;
  color: #222;
  text-decoration: none;
  font-family: "Roboto", sans-serif !important;
  position: relative;
  border-bottom: 1px solid #e5e5e5;
  transition: color 0.3s ease;
}
.history_H7 .h7-tabs .tab i {
  color: #bbb;
  line-height: 1;
  transition: color 0.3s ease, transform 0.3s ease;
}
/* hover: 연한 회색 하단 라인 위에 왼쪽→오른쪽 검정 채움 모션 */
.history_H7 .h7-tabs .tab::after {
  content: '';
  position: absolute;
  left: 0;
  bottom: -1px;
  width: 100%;
  height: 1px;
  background: #000;
  transform: scaleX(0);
  transform-origin: left center;
  transition: transform 0.45s ease;
}
.history_H7 .h7-tabs .tab:hover::after {
  transform: scaleX(1);
}
.history_H7 .h7-tabs .tab:hover i {
  transform: translateX(4px);
}
/* active: 포인트 컬러 (컬러값은 content.skin.php 동적 스타일에서 지정) */
.history_H7 .h7-tabs .tab.active::after {
  transform: scaleX(1);
}

/* ========== 우측 상단 이미지 (라운드 마스크 + 타이틀 오버레이) ========== */
.history_H7 .h7-visual {
  position: relative;
  width: 100%;
  overflow: hidden;
  margin-bottom: clamp(30px, 4vw, 60px);
  background-color: #666;
  /* border-radius 는 content.skin.php 동적 스타일(h7_img_radius)로 지정 */
}
.history_H7 .h7-visual-img {
  width: 100%;
  aspect-ratio: 16 / 6;
}
.history_H7 .h7-visual-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
/* 텍스트 가독성 오버레이 */
.history_H7 .h7-visual::before {
  content: '';
  position: absolute;
  left: 0; right: 0; top: 0; bottom: 0;
  background: linear-gradient(180deg, rgba(0,0,0,0) 45%, rgba(0,0,0,0.35) 100%);
  z-index: 1;
  pointer-events: none;
}
.history_H7 .h7-visual-txt {
  position: absolute;
  left: clamp(20px, 3vw, 50px);
  bottom: clamp(16px, 2.5vw, 40px);
  color: #fff;
  z-index: 2;
}
.history_H7 .h7-visual-title {
  font-size: clamp(28px, calc(1.75vw + 22.4px), 56px);
  font-weight: 800;
  font-family: "Roboto", sans-serif !important;
  line-height: 1.1;
  color: #fff;
}
.history_H7 .h7-visual-desc {
  font-size: clamp(13px, 1.1vw, 16px);
  margin-top: 8px;
  color: #fff;
  opacity: 0.9;
  line-height: 1.5;
}

/* ========== 연혁 리스트 ========== */
.history_H7 .history-list {
  list-style: none;
  margin: 0;
  padding: 0;
  width: 100%;
  float: left;
}
.history_H7 .history-list > li {
  list-style: none;
  border-left: none;
}
.history_H7 .history-list > li::before {
  display: none;
}

/* 년도|내용 좌우 배열 */
@media only all and (min-width:768px) {
  .history_H7 .history-list > li.layout-horizontal {
    display: grid;
    grid-template-columns: minmax(110px, auto) 1fr;
    column-gap: clamp(30px, 5vw, 90px);
    align-items: start;
  }
}
/* 년도 위, 내용 아래 배열 */
.history_H7 .history-list > li.layout-vertical {
  display: flex;
  flex-direction: column;
}

/* 년도 */
.history_H7 .history-list > li .year {
  position: relative;
  margin: 0;
  font-weight: 900;
  color: #000;
  font-family: "Roboto", sans-serif !important;
  line-height: 1;
}

/* 월(dt) / 내용(dd) */
.history_H7 .inner-list {
  margin: 0;
}
.history_H7 .inner-list dt {
  white-space: nowrap;
  margin: 0;
  padding: 0;
  text-align: left;
  color: #000;
  font-family: "Roboto", sans-serif !important;
  line-height: 1.6;
}
.history_H7 .inner-list dd {
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  color: #333;
}
.history_H7 .inner-list dd .dot {
  position: relative;
  padding-left: 12px;
  line-height: 1.6;
}
.history_H7 .inner-list dd .dot::before {
  content: '';
  position: absolute;
  left: 0;
  top: 0.65em;
  width: 3px;
  height: 3px;
  background-color: #999;
  border-radius: 50%;
}
.history_H7 .inner-list dd .dot li {
  list-style: none;
  position: relative;
  padding-left: 10px;
  margin-bottom: 3px;
}
.history_H7 .inner-list dd .dot li::before {
  content: '';
  position: absolute;
  left: 0;
  top: 0.65em;
  width: 3px;
  height: 3px;
  background-color: #999;
  border-radius: 50%;
}

/* 날짜 없는 항목 / 같은 달 묶기 */
.history_H7 .inner-list .item-row.layout-horizontal dt.same-month,
.history_H7 .inner-list .item-row.layout-horizontal dt.no-date {
  visibility: hidden;
}
.history_H7 .inner-list .item-row.layout-vertical dt.same-month,
.history_H7 .inner-list .item-row.layout-vertical dt.no-date {
  display: none;
}

/* 게시물 없음 */
.history_H7 .history-list .empty {
  margin: 0;
  color: #999;
  font-size: 14px;
}

/* ========== 모바일 ========== */
@media only all and (max-width:767px) {
  /* 상단 이미지 기본 숨김 (mobile_info_area=show 시 동적 스타일에서 재표시) */
  .history_H7 .h7-visual {
    display: none;
  }
  .history_H7 .history-list > li.layout-horizontal {
    display: flex;
    flex-direction: column;
    gap: 12px;
  }
  .history_H7 .h7-tabs .tab {
    padding: 12px 4px;
  }
}
