/* ============================================================
   연구원소식 > 공지 리스트  (.ehboagal)
   * 10px = 1rem  ( html { font-size: 62.5%; } 전제 )
   ============================================================ */

.ehboagal { padding:12rem 0;position: relative; width: 100%; font-family: pretendard-400; font-weight: 400; color: #111; letter-spacing: -0.02em; }
.ehboagal * { box-sizing: border-box; }
.ehboagal a { text-decoration: none; color: inherit; }
.ehboagal ul { list-style: none; margin: 0; padding: 0; }
.ehboagal img { max-width: 100%; }
.ehboagal button { border: 0; background: none; padding: 0; cursor: pointer; font-family: inherit; }

/* inner ---------------------------------------------------- */
.inner_title {
    width: 100%;
    max-width: 168rem;
    margin: 0 auto 6rem auto;
    padding: 0 4rem;
}
.ehboagal .inner { max-width: 116rem; margin: 0 auto; padding: 0 4rem; }

/* ------------------------------------------------------------
   1. 검색
   ------------------------------------------------------------ */
.bo-search { display: flex; justify-content: center; }

.bo-search__form {
  display: flex; align-items: center; gap: 1.6rem;
  width: 46rem; height: 6.6rem; padding: 2rem 2.4rem;
  background: #f5f5f5; border: 1px solid #eee; border-radius: 1rem;
  transition: background .2s, border-color .2s, border-radius .2s, box-shadow .2s;
}
.bo-search__form:focus-within {
  background: #fff; border-color: #111; border-radius: .4rem;
}

.bo-search__submit {     background: initial;flex: 0 0 auto; display: block; width: 1.8rem; height: 1.8rem; }
.bo-search__submit img { display: block; width: 100%; height: 100%; object-fit: contain; }

.bo-search__input {
  flex: 1 1 auto; min-width: 0; width: 100%;
  border: 0; background: none; outline: none; padding: 0;
  font-family: pretendard-400; font-weight: 400;
  font-size: 1.8rem; line-height: 2.6rem; color: #111; letter-spacing: -0.02em;
}
.bo-search__input::placeholder { color: #999; }
.bo-search__form.is-filled .bo-search__input { font-family: pretendard-700; font-weight: 700; }

.bo-search__del { display: none; flex: 0 0 auto; width: 1rem; height: 1rem; }
.bo-search__del img { display: block; width: 100%; height: 100%; object-fit: contain; }

/* ------------------------------------------------------------
   2. 리스트
   ------------------------------------------------------------ */
.ehboagal .bo-list { margin-top: 6rem; }
.ehboagal .bo-list__ul { border-top: 1px solid #111; }
.ehboagal .bo-list__li { border-bottom: 1px solid rgba(17, 17, 17, .1); }
.ehboagal .bo-list__li:last-child { border-bottom: 0; }

.ehboagal .bo-item { display: flex; align-items: stretch; gap: 3rem; padding: 3.4rem 0; }

.ehboagal .bo-item__thumb {
  flex: 0 0 25rem; align-self: flex-start;
  width: 25rem; height: 14rem; overflow: hidden;
  background: #f4f4f4; border: 1px solid rgba(0, 0, 0, .06); border-radius: .8rem;
}
.ehboagal .bo-item__thumb img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .4s; }

.ehboagal .bo-item__cont {
  flex: 1 1 auto; min-width: 0; min-height: 14rem;
  display: flex; flex-direction: column; justify-content: space-between;
}
.ehboagal .bo-item__text { display: flex; flex-direction: column; gap: .8rem; }

.ehboagal .bo-item__tit {
  display: -webkit-box; -webkit-line-clamp: 1; -webkit-box-orient: vertical; overflow: hidden;
  font-family: pretendard-600; font-weight: 600;
  font-size: 2rem; line-height: 3rem; color: #111; word-break: break-all;
  transition: color .2s;
}
.ehboagal .bo-item__desc {
  display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;
  height: 5.6rem;
  font-family: pretendard-400; font-weight: 400;
  font-size: 1.6rem; line-height: 2.8rem; color: #888; word-break: break-all;
}
.ehboagal .bo-item__date {
  display: block;
  font-family: Poppins, pretendard-600; font-weight: 600;
  font-size: 1.4rem; line-height: 1.6rem; color: #aaa; white-space: nowrap;
}

.ehboagal .bo-item:hover .bo-item__tit { color: #22969c; }
.ehboagal .bo-item:hover .bo-item__thumb img { transform: scale(1.06); }

/* ------------------------------------------------------------
   3. 페이징
   ------------------------------------------------------------ */
.bo-paging { display: flex; align-items: center; gap: .6rem; margin-top: 6rem; }
.bo-paging__nums,
.bo-paging__arrows { display: flex; align-items: center; gap: .6rem; }

.bo-paging__num {
  display: flex; align-items: center; justify-content: center;
  width: 5.8rem; height: 5.8rem; padding: 1.1rem .8rem;
  border: 1px solid transparent; border-radius: 99px;
  font-family: Poppins, pretendard-500; font-weight: 500;
  font-size: 1.8rem; line-height: 1.6rem; color: #aaa;
  transition: border-color .2s, color .2s, background .2s;
}
.bo-paging__num:hover { border-color: #eee; }
.bo-paging__num--last { color: #111; }
.bo-paging__num.is-active {
  background: #f3f5f4; border-color: transparent; color: #22969c;
  font-family: Poppins, pretendard-700; font-weight: 700;
}

.bo-paging__dots {
  display: flex; align-items: center; justify-content: center;
  width: 5rem; padding: .8rem;
  font-family: pretendard-500; font-weight: 500;
  font-size: 1.6rem; line-height: 2.2rem; color: #111;
}

.bo-paging__arrow {
  display: flex; align-items: center; justify-content: center;
  width: 5.8rem; height: 5.8rem; border-radius: .4rem;
  transition: background .2s;
}
.bo-paging__arrow:hover { background: #f3f5f4; }
.bo-paging__arrow img { display: block; width: .7rem; height: 1.2rem; object-fit: contain; }
/* .ehboagal .bo-paging__arrow--next img { transform: rotate(180deg); } */

/* ---------- max-width: 1800px ---------- */
@media (max-width: 1800px) {
	.ehboagal {padding: 10rem 0;}
  .inner_title {padding: 0 3rem;margin: 0 auto 4rem auto;}
  .ehboagal .inner { padding: 0 3rem; }
}

/* ---------- max-width: 1400px ---------- */
@media (max-width: 1400px) {
		.ehboagal {padding: 8rem 0;}
  .ehboagal .inner { padding: 0 3rem; }

  .ehboagal .bo-item { gap: 2.6rem; }
  .ehboagal .bo-item__tit { font-size: 1.9rem; line-height: 2.9rem; }
}

/* ---------- max-width: 991px ---------- */
@media (max-width: 991px) {
  .ehboagal .inner { padding: 0 3rem; }

  .bo-search__form { width: 100%; max-width: 46rem; height: 6.2rem; padding: 1.8rem 2.2rem; }
  .bo-search__input { font-size: 1.7rem; }

  .ehboagal .bo-list { margin-top: 5rem; }
  .ehboagal .bo-item { gap: 2.4rem; padding: 3rem 0; }
  .ehboagal .bo-item__thumb { flex: 0 0 22rem; width: 22rem; height: 12.4rem; }
  .ehboagal .bo-item__cont { min-height: 12.4rem; }
  .ehboagal .bo-item__tit { font-size: 1.8rem; line-height: 2.8rem; }
  .ehboagal .bo-item__desc { height: 5.2rem; font-size: 1.5rem; line-height: 2.6rem; }
  .ehboagal .bo-item__date { font-size: 1.3rem; }

  .bo-paging { margin-top: 5rem; }
  .bo-paging__num,
  .bo-paging__arrow { width: 4.8rem; height: 4.8rem; }
  .bo-paging__num { font-size: 1.7rem; }
}

/* ---------- max-width: 768px (MOBILE) ---------- */
@media (max-width: 768px) {
		.ehboagal {padding: 5rem 0;}
  .inner_title {padding: 0 2rem;margin: 0 auto 2rem auto;}
  .ehboagal .inner { padding: 0 2rem; }

  /* 검색 */
  .bo-search__form {
    width: 100%; max-width: none; height: 5.6rem; gap: 1.2rem;
    padding: 1.8rem 2rem; border-radius: .8rem;
  }
  .bo-search__form:focus-within {
    border-radius: .8rem; box-shadow: 0 2px 10px rgba(0, 0, 0, .1);
  }
  .bo-search__input { font-size: 1.6rem; line-height: 2rem; }
  .bo-search__input::placeholder { color: #888; }
  .bo-search__form.is-filled .bo-search__del { display: block; }

  /* 리스트 */
  .ehboagal .bo-list { margin-top: 3rem; }
  .ehboagal .bo-list__ul { border-top: 0; }

  .ehboagal .bo-item {gap: 2rem;}
  /* .ehboagal .bo-item { flex-direction: column; align-items: stretch; gap: 1.6rem; padding: 2.4rem 0; } */
  .ehboagal .bo-list__li:first-child .bo-item { padding-top: 0; }

  /* .ehboagal .bo-item__thumb { flex: none; align-self: auto; width: 100%; height: 18.8rem; } */

  /* .ehboagal .bo-item__cont { min-height: 0; justify-content: flex-start; gap: 1.2rem; } */
  .ehboagal .bo-item__text { gap: .6rem; }

  .ehboagal .bo-item__tit {
	  height: auto;
    -webkit-line-clamp: 2;
    font-family: pretendard-500; font-weight: 500;
    font-size: 1.5rem; line-height: 2.3rem;
  }
  .ehboagal .bo-item__desc { height: 4rem; font-size: 1.3rem; line-height: 2rem; color: #666; }
  .ehboagal .bo-item__date { font-size: 1rem; line-height: 1rem; }

  /* 페이징 */
  .bo-paging { margin-top: 3rem; justify-content: space-between; }
  .bo-paging__dots,
  .bo-paging__num--last { display: none; }
  .bo-paging__num,
  .bo-paging__arrow { width: 3.8rem; height: 3.8rem; }
  .bo-paging__num { font-size: 1.6rem; padding: 1.1rem .8rem; }
  .bo-paging__arrow { padding: .8rem; }
}
@media (max-width: 600px) {
	.ehboagal .bo-item {
		flex-direction: column;
		align-items: stretch;
		gap: 1.6rem;
		padding: 2.4rem 0;
	}
	.ehboagal .bo-item__thumb {
		flex: none;
		align-self: auto;
		width: 100%;
		height: 18.8rem;
	}
	.ehboagal .bo-item__cont {
		min-height: 0;
		justify-content: flex-start;
		gap: 1.2rem;
	}
}


/* ============================================================
   연구원소식 > 공지 상세  (.ehboadet)
   * 10px = 1rem  ( html { font-size: 62.5%; } 전제 )
   ============================================================ */

.ehboadet { position: relative; width: 100%; font-family: pretendard-400; font-weight: 400; color: #222; letter-spacing: -0.02em; }
.ehboadet * { box-sizing: border-box; }
.ehboadet a { text-decoration: none; color: inherit; }
.ehboadet img { max-width: 100%; }
.ehboadet button { border: 0; background: none; padding: 0; cursor: pointer; font-family: inherit; }
.ehboadet .br-m { display: none; }

/* inner ---------------------------------------------------- */
.ehboadet .inner { max-width: 116rem; margin: 0 auto; padding: 0 4rem; }

/* ------------------------------------------------------------
   1. 게시글 헤더
   ------------------------------------------------------------ */
.ehboadet .bo-head { display: flex; flex-direction: column; gap: 3rem; overflow: hidden; }

.ehboadet .bo-head__tit {
  margin: 0;
  font-family: pretendard-700; font-weight: 700;
  font-size: 4.4rem; line-height: 6.6rem; color: #000;
}

.ehboadet .bo-head__meta { display: flex; align-items: center; gap: 2rem; }
.ehboadet .bo-head__bar { flex: 0 0 auto; width: 1px; height: 1.4rem; background: #eee; }

.ehboadet .bo-meta { display: flex; align-items: center; gap: 1rem; white-space: nowrap; }
.ehboadet .bo-meta__label {
  font-family: pretendard-500; font-weight: 500; font-style: normal;
  font-size: 1.4rem; line-height: 3.4rem; color: #888;
}
.ehboadet .bo-meta__value {
  font-family: Poppins, pretendard-600; font-weight: 600;
  font-size: 1.4rem; line-height: 3.4rem; color: #000;
}

.ehboadet .bo-head__copy {
  font-family: pretendard-500; font-weight: 500;
  font-size: 1.4rem; line-height: 3.4rem; color: #888; white-space: nowrap;
  transition: color .2s;
}
.ehboadet .bo-head__copy:hover { color: #22969c; text-decoration: underline; }

/* ------------------------------------------------------------
   2. 본문
   ------------------------------------------------------------ */
.ehboadet .bo-view { display: flex; flex-direction: column; align-items: center; gap: 6rem; margin-top: 4rem; }

/* 본문 이미지 */
.ehboadet .bo-view__img {
  width: 54rem; max-width: 100%; aspect-ratio: 540 / 485;
  border: 1px solid rgba(0, 0, 0, .06); border-radius: 1rem; overflow: hidden;
}
.ehboadet .bo-view__img img { display: block; width: 100%; height: 100%; object-fit: cover; }

/* 본문 내용 */
.ehboadet .bo-view__cont { display: flex; flex-direction: column; align-items: center; gap: 3rem; width: 100%; }

.ehboadet .bo-view__txt { text-align: center; color: #000; }
.ehboadet .bo-view__txt p { margin: 0; }
.ehboadet .bo-view__txt-sm { font-family: pretendard-500; font-weight: 500; font-size: 1.8rem; line-height: 3.4rem; }
.ehboadet .bo-view__txt-sm strong { font-family: pretendard-700; font-weight: 700; }
.ehboadet .bo-view__txt-lg { font-family: pretendard-500; font-weight: 500; font-size: 2.2rem; line-height: 3.4rem; }

/* 로고 */
.ehboadet .bo-view__logo { display: flex; flex-direction: column; align-items: center; }
.ehboadet .bo-view__logo-tit {
  font-family: pretendard-600; font-weight: 600;
  font-size: 2rem; line-height: 3.4rem; color: #000;
}
.ehboadet .bo-view__logo img { display: block; width: 17.7rem; height: auto; }

/* 버튼 */
.ehboadet .bo-view__btns { display: flex; justify-content: center; gap: .6rem; }

.ehboadet .bo-btn {
  display: flex; align-items: center; justify-content: center; gap: .8rem;
  width: 22rem; height: 6rem; border-radius: 1rem;
  font-size: 1.8rem; line-height: 3.6rem; white-space: nowrap;
  transition: opacity .2s, background .2s;
}
.ehboadet .bo-btn b { font-family: pretendard-700; font-weight: 700; }
.ehboadet .bo-btn span { font-family: Poppins, pretendard-500; font-weight: 500; }
.ehboadet .bo-btn:hover { opacity: .85; }

.ehboadet .bo-btn--primary { background: #22969c; color: #fff; }
.ehboadet .bo-btn--primary img { display: block; width: .7rem; height: 1.2rem; object-fit: contain; }
.ehboadet .bo-btn--tel { background: #f0f7f7; border: 1px solid #22969c; color: #22969c; }
.ehboadet .bo-btn--fax { background: #fff; border: 1px solid #000; color: #222; }

/* ------------------------------------------------------------
   3. 목록으로
   ------------------------------------------------------------ */
.ehboadet .bo-golist { display: flex; justify-content: center; margin-top: 8rem; }
.ehboadet .bo-golist__btn {
  display: flex; align-items: center; justify-content: center;
  width: 20rem; height: 6.1rem;
  border: 1px solid #111; border-radius: 1rem;
  font-family: pretendard-400; font-weight: 400;
  font-size: 1.8rem; line-height: 3.5rem; color: #222;
  transition: background .2s, color .2s;
}
.ehboadet .bo-golist__btn:hover { background: #111; color: #fff; }

/* ------------------------------------------------------------
   4. 이전글 / 다음글
   ------------------------------------------------------------ */
.ehboadet .bo-nav { margin-top: 8rem; padding-top: 2rem; border-top: 1px solid #eee; }

.ehboadet .bo-nav__item { display: flex; align-items: center; gap: 3rem; padding: 1.8rem 0; }
.ehboadet .bo-nav__label {
  flex: 0 0 auto;
  font-family: pretendard-700; font-weight: 700;
  font-size: 1.8rem; line-height: 3.4rem; color: #222; letter-spacing: 0.04em;
  white-space: nowrap;
}
.ehboadet .bo-nav__txt {
  flex: 1 1 auto; min-width: 0;
  display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
  font-family: pretendard-400; font-weight: 400;
  font-size: 1.8rem; line-height: 3.4rem; color: #222;
}
.ehboadet .bo-nav__item:hover .bo-nav__txt { text-decoration: underline; }

/* ---------- max-width: 1800px ---------- */
@media (max-width: 1800px) {
  .ehboadet .inner { padding: 0 3rem; }
}

/* ---------- max-width: 1400px ---------- */
@media (max-width: 1400px) {
  .ehboadet .inner { padding: 0 3rem; }

  .ehboadet .bo-head__tit { font-size: 4rem; line-height: 6rem; }
}

/* ---------- max-width: 991px ---------- */
@media (max-width: 991px) {
  .ehboadet .inner { padding: 0 3rem; }

  .ehboadet .bo-head { gap: 2.4rem; }
  .ehboadet .bo-head__tit { font-size: 3.2rem; line-height: 4.6rem; }

  .ehboadet .bo-view { gap: 5rem; margin-top: 3.4rem; }
  .ehboadet .bo-view__img { width: 48rem; }
  .ehboadet .bo-view__cont { gap: 2.6rem; }

  .ehboadet .bo-view__txt-sm { font-size: 1.7rem; line-height: 3.2rem; }
  .ehboadet .bo-view__txt-lg { font-size: 2rem; line-height: 3.2rem; }
  .ehboadet .bo-view__logo-tit { font-size: 1.7rem; line-height: 3rem; }
  .ehboadet .bo-view__logo img { width: 15rem; }

  .ehboadet .bo-btn { width: 20rem; height: 5.6rem; font-size: 1.6rem; line-height: 3.2rem; }

  .ehboadet .bo-golist { margin-top: 6rem; }
  .ehboadet .bo-golist__btn { width: 18rem; height: 5.6rem; font-size: 1.6rem; }

  .ehboadet .bo-nav { margin-top: 6rem; }
  .ehboadet .bo-nav__item { gap: 2.4rem; padding: 1.5rem 0; }
  .ehboadet .bo-nav__label,
  .ehboadet .bo-nav__txt { font-size: 1.6rem; line-height: 3rem; }
}

/* ---------- max-width: 768px (MOBILE) ---------- */
@media (max-width: 768px) {
  .ehboadet .inner { padding: 0 2rem; }
  .ehboadet .br-m { display: block; }

  /* 헤더 */
  .ehboadet .bo-head { gap: 1.2rem; }
  .ehboadet .bo-head__tit { font-size: 2.2rem; line-height: 3rem; }

  .ehboadet .bo-head__meta { gap: 1.5rem; }
  .ehboadet .bo-head__bar { height: 1.1rem; }
  .ehboadet .bo-meta__label,
  .ehboadet .bo-meta__value,
  .ehboadet .bo-head__copy { font-size: 1.1rem; line-height: 1.8rem; }

  /* 본문 */
  .ehboadet .bo-view { gap: 2rem; margin-top: 2rem; }
  .ehboadet .bo-view__img { width: 100%; border-width: .62px; border-radius: .62rem; }
  .ehboadet .bo-view__cont { gap: 3rem; }

  .ehboadet .bo-view__txt-sm { font-size: 1.6rem; line-height: 2.6rem; }
  .ehboadet .bo-view__txt-lg { font-size: 2rem; line-height: 3rem; }

  .ehboadet .bo-view__logo-tit { font-size: 1.3rem; line-height: 2.6rem; }
  .ehboadet .bo-view__logo img { width: 10.8rem; }

  /* 버튼 : 문의하기 100% → 전화/팩스 2단 */
  .ehboadet .bo-view__btns { flex-wrap: wrap; gap: .6rem .5rem; width: 100%; }
  .ehboadet .bo-btn { height: 4.4rem; border-radius: .8rem; gap: .5rem; font-size: 1.4rem; line-height: 2.2rem; }
  .ehboadet .bo-btn--primary { width: 100%; }
  .ehboadet .bo-btn--primary img { width: .5rem; height: .8rem; }
  .ehboadet .bo-btn--tel,
  .ehboadet .bo-btn--fax { flex: 1 1 0; width: auto; min-width: 0; }

  /* 목록으로 */
  .ehboadet .bo-golist { margin-top: 3rem; }
  .ehboadet .bo-golist__btn {
    width: 100%; height: 4.3rem; padding: 0 1.6rem;
    border-color: #000; border-radius: .8rem;
    font-size: 1.4rem; line-height: 2.3rem;
  }

  /* 이전글 / 다음글 */
  .ehboadet .bo-nav { margin-top: 2rem; padding-top: 1rem; }
  .ehboadet .bo-nav__item { gap: 1.8rem; padding: 0; height: 4.6rem; }
  .ehboadet .bo-nav__label { font-size: 1.3rem; line-height: 4.6rem; letter-spacing: 0.04em; font-family: pretendard-600; font-weight: 600; }
  .ehboadet .bo-nav__txt { font-family: pretendard-300; font-weight: 300; font-size: 1.3rem; line-height: 4.6rem; }
}



/* ============================================================
   연구원소식 > 자료실 리스트  (.ehboamete)
   * 10px = 1rem  ( html { font-size: 62.5%; } 전제 )
   ============================================================ */
.ehboamete { margin-top: 6rem;position: relative; width: 100%; font-family: pretendard-400; font-weight: 400; color: #111; letter-spacing: -0.02em; }
.ehboamete * { box-sizing: border-box; }
.ehboamete a { text-decoration: none; color: inherit; }
.ehboamete ul { list-style: none; margin: 0; padding: 0; }

/* inner ---------------------------------------------------- */
.ehboamete .inner { max-width: 116rem; margin: 0 auto; padding: 0 4rem; }

/* ------------------------------------------------------------
   리스트
   ------------------------------------------------------------ */
.dt-list__ul { border-top: 1px solid #111; }
.dt-list__li { border-bottom: 1px solid rgba(17, 17, 17, .1); }
.dt-list__li:last-child { border-bottom: 0; }

.dt-item {
  display: flex; align-items: center; gap: 2rem;
  min-height: 3rem; padding: 2.4rem 0;
}

.dt-item__tit {
  flex: 1 1 auto; min-width: 0;
  display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
  font-family: pretendard-600; font-weight: 600;
  font-size: 2rem; line-height: 3rem; color: #111;
  transition: color .2s;
}

.dt-item__date {
  flex: 0 0 auto;
  font-family: Poppins, pretendard-600; font-weight: 600;
  font-size: 1.6rem; line-height: 1.6rem; color: #aaa; white-space: nowrap;
}

.dt-item:hover .dt-item__tit { color: #22969c; text-decoration: underline; }

/* ---------- max-width: 1800px ---------- */
@media (max-width: 1800px) {
  .ehboamete .inner { padding: 0 3rem; }
}

/* ---------- max-width: 1400px ---------- */
@media (max-width: 1400px) {
  .ehboamete .inner { padding: 0 3rem; }

  .ehboamete .dt-item__tit { font-size: 1.9rem; line-height: 2.9rem; }
}

/* ---------- max-width: 991px ---------- */
@media (max-width: 991px) {
	.ehboamete { margin-top: 5rem;}
  .ehboamete .inner { padding: 0 3rem; }

  .dt-item { gap: 1.6rem; padding: 2.2rem 0; }
  .dt-item__tit { font-size: 1.8rem; line-height: 2.8rem; }
  .dt-item__date { font-size: 1.4rem; line-height: 1.4rem; }
}

/* ---------- max-width: 768px (MOBILE) ---------- */
@media (max-width: 768px) {
	.ehboamete { margin-top: 3rem;}
  .ehboamete .inner { padding: 0 2rem; }

  .dt-list__ul { border-top: 0; }
  .dt-list__li:first-child .dt-item { padding-top: 0; }
  .dt-list__li:last-child .dt-item { padding-bottom: 0; }

  .dt-item {
    flex-direction: column; align-items: flex-start; gap: 1.2rem;
    min-height: 0; padding: 2rem 0;
  }

  .dt-item__tit {
    flex: none; width: 100%;
    display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical;
    overflow: hidden; text-overflow: clip; white-space: normal; word-break: break-all;
    font-family: pretendard-500; font-weight: 500;
    font-size: 1.6rem; line-height: 2.4rem;
  }

  .dt-item__date { font-size: 1rem; line-height: 1rem; }
}


/* ======================
   첨부파일 다운로드  (.ehboametebtn)
   ======================= */
.ehboametebtn {margin: 4rem 0 0 0; position: relative; width: 100%; font-family: pretendard-400; font-weight: 400; color: #111; letter-spacing: -0.02em; }
.ehboametebtn * { box-sizing: border-box; }
.ehboametebtn a { text-decoration: none; color: inherit; }
.ehboametebtn ul { list-style: none; margin: 0; padding: 0; }
.ehboametebtn img { max-width: 100%; }

/* ----------------
   첨부파일 리스트
   ---------------- */
.ehboametebtn .file-list { display: flex; flex-direction: column; gap: 1rem; }

.ehboametebtn .file-item {
  display: flex; align-items: center; gap: .4rem;
  width: 100%; min-height: 8.8rem; padding: 2rem 2.4rem;
  background: #f5f5f5; border-radius: .6rem;
  transition: background .2s;
}
.ehboametebtn .file-item:hover { background: #eee; }

.ehboametebtn .file-item__info {
  flex: 1 1 auto; min-width: 0;
  display: flex; flex-direction: column; gap: .4rem;
}

.ehboametebtn .file-item__name {
  display: block; min-width: 100%;
  font-family: pretendard-500; font-weight: 500;
  font-size: 1.6rem; line-height: 3rem; color: #000; word-break: break-all;
}

.ehboametebtn .file-item__size {
  display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
  font-family: Poppins, pretendard-500; font-weight: 500;
  font-size: 1.2rem; line-height: 1.4rem; color: #aaa;
}

.ehboametebtn .file-item__ico { flex: 0 0 auto; width: 1.8rem; height: 1.8rem; }
.ehboametebtn .file-item__ico img { display: block; width: 100%; height: 100%; object-fit: contain; }



/* ---------- max-width: 991px ---------- */
@media (max-width: 991px) {
  .ehboametebtn .file-item { min-height: 8rem; padding: 1.8rem 2rem; }
  .ehboametebtn .file-item__name { font-size: 1.5rem; line-height: 2.8rem; }
  .ehboametebtn .file-item__size { font-size: 1.1rem; line-height: 1.3rem; }
  .ehboametebtn .file-item__ico { width: 1.6rem; height: 1.6rem; }
}

/* ---------- max-width: 768px (MOBILE) ---------- */
@media (max-width: 768px) {
	.ehboametebtn {margin: 3rem 0 0 0;}
  .ehboametebtn .file-list { gap: .6rem; }

  .ehboametebtn .file-item {
    gap: 1rem; min-height: 6.8rem; padding: 1.6rem;
    border-radius: .8rem;
  }

  .ehboametebtn .file-item__info { gap: 0; }

  .ehboametebtn .file-item__name {
    overflow: hidden; 
	/* text-overflow: ellipsis; white-space: nowrap;  */
	/* word-break: normal; */
    font-size: 1.4rem; line-height: 1.8rem;
  }
	.ehboametebtn .file-item__size {
		margin: 0.4rem 0 0 0;
		font-size: 1rem;
		line-height: 1.2rem;
	}

  .ehboametebtn .file-item__ico { width: 1.4rem; height: 1.4rem; }
}


/* ======================
   서식이미지
   ======================= */
.bo-view-forms__img {
	display:flex;
    max-width: 82.7rem;
    /* aspect-ratio: 82/117; */
    border: 1px solid rgba(0, 0, 0, .06);
    border-radius: 1rem;
    overflow: hidden;
}
.bo-view-forms__img img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
@media (max-width: 768px) {
	.bo-view-forms__img {
		border-radius: 0.8rem;
	}
}

/* ============================================================
   연구원소식 > 자료실 리스트 - 상세
   ============================================================ */
.bo-view__resources{
   position:relative;
   width:100%;
}
.resortext{
	margin:1rem 0 0 0;
   color: #E92424;
text-align: center;
    font-family: pretendard-700;
font-size: 1.6rem;
font-style: normal;
font-weight: 600;
line-height: 3rem;
}
@media (max-width: 991px) {
	.ehfaq__cont.faqdetail .ehboadet{
		margin:3rem 0 0 0;
	}
}
@media (max-width: 767px) {
	.resortext{
	font-size: 1.4rem;
	line-height: 2.4rem;
	}
}


/* ============================================================
   자주묻는질문 (FAQ) - 리스트 (.ehfaq)
   * 10px = 1rem  ( html { font-size: 62.5%; } 전제 )
   ============================================================ */
.ehfaq {
  --faq-primary: #22969c;
  --faq-txt: #111;
  --faq-txt-sub: #888;
  --faq-txt-off: #aaa;
  --faq-line: #eee;
  --faq-bg: #f8f8f8;

  position: relative;
  padding: 12rem 0;
  background: #fff;
}

.ehfaq .inner {
  max-width: 168rem;
  margin: 0 auto;
  padding: 0 4rem;
}

/* ---------- 전체 레이아웃 ---------- */
.ehfaq__wrap {
	margin:6rem 0 0 0;
  display: flex;
  align-items: flex-start;
  gap: 10rem;
}

/* ---------- LEFT : 사이드 ---------- */
.ehfaq__side {
  flex: 0 0 34rem;
  width: 34rem;
  display: flex;
  flex-direction: column;
  gap: 1.6rem;
}

/* 질문 검색 (bo-search__form 틀) */
.ehfaq__search {
  display: flex;
  width: 100%;
  box-sizing: border-box;
}
.ehfaq__search .bo-search__form{
  background: #fff;
}
.ehfaq__search > * {
  width: 100%;
}

/* ---------- 카테고리 ---------- */
.ehfaq__cate {
  position: relative;
  width: 100%;
}

/* 카테고리 토글 버튼 (MO 전용) */
.ehfaq__cate-btn {
  display: none;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  width: 100%;
  padding: 1.4rem 2rem;
  border: 1px solid var(--faq-primary);
  border-radius: 0.8rem;
  background: #fff;
  box-shadow: 0 0 2rem 0 rgba(15, 23, 41, 0.05);
  backdrop-filter: blur(5px);
  -webkit-backdrop-filter: blur(5px);
  cursor: pointer;
  box-sizing: border-box;
  text-align: left;
}

.ehfaq__cate-btn::after {
  content: "";
  flex: 0 0 auto;
  width: 1rem;
  height: 0.6rem;
  background: url("/public/img/icon/ico_sel_black_arrow.webp") no-repeat center / 100% 100%;
  transition: transform 0.25s ease;
}

.ehfaq__cate-btn.on::after {
  transform: rotate(180deg);
}

.ehfaq__cate-btn-txt {
  flex: 1 1 auto;
  min-width: 0;
  font-family: pretendard-700;
  font-weight: 700;
  font-size: 1.5rem;
  line-height: 2rem;
  color: var(--faq-primary);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

/* 카테고리 리스트 */
.ehfaq__cate-nav {
  width: 100%;
}

.ehfaq__cate-list {
  display: flex;
  flex-direction: column;
  gap: 0.6rem;
  width: 100%;
  margin: 0;
  padding: 0;
  list-style: none;
  border-radius: 1.2rem;
}

.ehfaq__cate-item {
  width: 100%;
}

.ehfaq__cate-link {
  display: flex;
  align-items: center;
  width: 100%;
  min-height: 6.4rem;
  padding: 2rem 2.4rem;
  border: 1px solid transparent;
  border-radius: 1.2rem;
  background: var(--faq-bg);
  font-family: pretendard-500;
  font-weight: 500;
  font-size: 2rem;
  line-height: 2.4rem;
  color: var(--faq-txt);
  text-decoration: none;
  box-sizing: border-box;
  transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}

.ehfaq__cate-link:hover,
.ehfaq__cate-link:focus-visible {
  background: #f1f3f3;
  color: var(--faq-primary);
}

.ehfaq__cate-link.on {
  border-color: var(--faq-primary);
  background: #fff;
  font-family: pretendard-700;
  font-weight: 700;
  color: var(--faq-primary);
}

/* ---------- RIGHT : 컨텐츠 ---------- */
.ehfaq__cont {
  flex: 1 1 auto;
  min-width: 0;
  display: flex;
  flex-direction: column;
}

/* 질문 리스트 (dt-list 틀) */
.ehfaq__list {
  width: 100%;
  border-top: 0;
}
.ehfaq__list .dt-list__ul {
    border-top: none;
}
.ehfaq__list .dt-list__li:last-child {
	border-bottom: 1px solid rgba(17, 17, 17, .1);
}

/* 페이징 (bo-paging 틀) */
.ehfaq__paging {
  display: flex;
  align-items: center;
  width: 100%;
}

.ehfaq__paging > * {
  width: 100%;
}
.ehfaq__paging .bo-paging{
	margin-top: 4rem;
}

/* ==========================
   RESPONSIVE
   ========================== */
@media (max-width: 1800px) {
.ehfaq {padding: 10rem 0;}
  .ehfaq .inner { padding: 0 3rem; }

  .ehfaq__wrap { gap: 8rem; }
}

@media (max-width: 1400px) {
	.ehfaq {padding: 8rem 0;}
  .ehfaq .inner { padding: 0 3rem; }

  .ehfaq { padding: 6rem 0 10rem; }

  .ehfaq__wrap { gap: 6rem; }

  .ehfaq__side {
    flex: 0 0 28rem;
    width: 28rem;
  }

  .ehfaq__cate-link {
    min-height: 5.8rem;
    padding: 1.7rem 2rem;
    font-size: 1.8rem;
  }
}

@media (max-width: 991px) {
  .ehfaq .inner { padding: 0 3rem; }

	.ehfaq__wrap {
		margin: 5rem 0 0 0;
		gap: 3rem;
	}

  .ehfaq__side {
    flex: 0 0 20rem;
    width: 20rem;
    gap: 1.2rem;
  }

  .ehfaq__cate-list { gap: 0.5rem; }

  .ehfaq__cate-link {
    min-height: 5.2rem;
    padding: 1.5rem 1.8rem;
    border-radius: 1rem;
    font-size: 1.7rem;
    line-height: 2.2rem;
  }
  
  
  
  /* 1단 스택 */
  .ehfaq__wrap {
	  margin: 3rem 0 0 0;
    flex-direction: column;
    gap: 1rem;
  }

  .ehfaq__side {
    flex: 0 0 auto;
    width: 100%;
    gap: 1rem;
  }

  /* 카테고리 : 드롭다운 전환 */
  .ehfaq__cate {
    position: sticky;
    top: 0;
    z-index: 20;
  }

  .ehfaq__cate-btn { display: flex; }

  .ehfaq__cate-nav {
    display: none;
    position: absolute;
    top: calc(100% + 0.6rem);
    left: 0;
    z-index: 21;
    width: 100%;
    padding: 0.6rem;
    border: 1px solid var(--faq-line);
    border-radius: 0.8rem;
    background: #fff;
    box-shadow: 0 0.4rem 2rem 0 rgba(15, 23, 41, 0.08);
    box-sizing: border-box;
  }

  .ehfaq__cate-nav.on { display: block; }

  .ehfaq__cate-list { gap: 0; }

  .ehfaq__cate-link {
    min-height: 5.2rem;
    padding: 1.6rem 2rem;
    border: 0;
    border-radius: 0.6rem;
    background: transparent;
    font-size: 1.5rem;
    line-height: 2rem;
  }

  .ehfaq__cate-link:hover,
  .ehfaq__cate-link:focus-visible {
    background: var(--faq-bg);
  }

  .ehfaq__cate-link.on {
    background: var(--faq-bg);
  }
  
  
  .ehfaq__cont {
    width: 100%;
}
}

@media (max-width: 768px) {
	.ehfaq {padding: 5rem 0;}
  .ehfaq .inner { padding: 0 2rem; }

  
  
  .ehfaq__list .dt-list__li:last-child .dt-item {
		padding: 2rem 0;
	}

  /* 컨텐츠 */
  .ehfaq__cont {
    padding-top: 1.4rem;
  }
  .ehfaq__paging .bo-paging{
		margin-top: 3rem;
	}
}

/* ============================================================
   자주묻는질문 (FAQ) - 상세 (.ehfaq)
   ============================================================ */
@media (max-width: 991px) {
	.ehfaq__cont.faqdetail .ehboadet{
		margin:3rem 0 0 0;
	}
}
@media (max-width: 767px) {
	.ehfaq__cont.faqdetail{
		padding-top:0;
	}
}



/* ============================================================
   고객서비스 > 분석의뢰 리스트 (테이블형)  .bo-tbl
   * 10px = 1rem  ( html { font-size: 62.5%; } 전제 )
   * .ehboagal / .inner / .inner_title / .bo-paging 은 기존 공통 재사용
   ============================================================ */

.ehboagal .bo-tbl { margin-top: 6rem; }

/* ---------- 셀 공통 ---------- */
.ehboagal .bo-tbl__no,
.ehboagal .bo-tbl__writer,
.ehboagal .bo-tbl__date {
  flex: 0 0 auto;
  overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
  text-align: center;
}
.ehboagal .bo-tbl__no     { width: 4rem; }
.ehboagal .bo-tbl__writer { width: 12rem; }
.ehboagal .bo-tbl__date   { width: 9rem; }
.ehboagal .bo-tbl__subject { flex: 1 1 auto; min-width: 0; display: flex; align-items: center; }

.ehboagal .bo-tbl__date.let{letter-spacing: -0.6px;}

/* ---------- 헤더 ---------- */
.ehboagal .bo-tbl__head {
  display: flex; align-items: center; gap: 4rem;
  padding-bottom: 2.4rem; border-bottom: 1px solid #111;
}
.ehboagal .bo-tbl__head > span {
  font-family: pretendard-500; font-weight: 500;
  font-size: 1.8rem; line-height: 3rem; color: #111;
}
.ehboagal .bo-tbl__head .bo-tbl__subject { justify-content: center; }

/* ---------- 리스트 ---------- */
.ehboagal .bo-tbl__li { border-bottom: 1px solid rgba(17, 17, 17, .1); }
.ehboagal .bo-tbl__li:last-child { border-bottom: 0; }

.ehboagal .bo-tbl__row {
  display: flex; align-items: center; gap: 4rem;
  width: 100%; padding: 2.4rem 0;
}

.ehboagal .bo-tbl__row .bo-tbl__no {
  font-family: pretendard-500; font-weight: 500;
  font-size: 1.6rem; line-height: 3rem; color: #111;
}
.ehboagal .bo-tbl__row .bo-tbl__writer,
.ehboagal .bo-tbl__row .bo-tbl__date {
  font-family: pretendard-500; font-weight: 500;
  font-size: 1.6rem; line-height: 3rem; color: #aaa;
}

/* 제목 영역 */
.ehboagal .bo-tbl__subject-in {
  display: flex; align-items: center; gap: 1.6rem;
  width: 100%; min-width: 0;
}
.ehboagal .bo-tbl__tit {
  min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
  font-family: pretendard-600; font-weight: 600;
  font-size: 2rem; line-height: 3rem; color: #111;
  transition: color .2s;
}

/* 아이콘 (자물쇠 / 답변) */
.ehboagal .bo-tbl__ico { flex: 0 0 auto; display: block; width: 1.8rem; height: 1.8rem; }
.ehboagal .bo-tbl__ico img { display: block; width: 100%; height: 100%; object-fit: contain; }

/* 글쓴이·날짜 (MO 전용) */
.ehboagal .bo-tbl__meta { display: none; }

.ehboagal .bo-tbl__row:hover .bo-tbl__tit { color: #22969c; text-decoration: underline; }

/* 게시글 없음 */
.ehboagal .bo-tbl__empty {
  padding: 8rem 0; border-bottom: 1px solid rgba(17, 17, 17, .1); text-align: center;
  font-family: pretendard-500; font-weight: 500;
  font-size: 1.7rem; line-height: 3rem; color: #888;
}

/* ------------------------------------------------------------
   페이징 + 글쓰기
   ------------------------------------------------------------ */
.ehboagal .bo-foot {
  display: flex; align-items: center; justify-content: space-between; gap: 2rem;
  margin-top: 6rem;
}
.ehboagal .bo-foot .bo-paging { flex: 1 1 auto; margin-top: 0; }

.ehboagal .bo-write {
  flex: 0 0 auto;
  display: inline-flex; align-items: center; justify-content: center; gap: .9rem;
  padding: 1.6rem 3rem; border-radius: 1rem; background: #22969c;
  font-family: pretendard-600; font-weight: 600;
  font-size: 1.8rem; line-height: 2.2rem; color: #fff;
  transition: background .2s;
}
.ehboagal .bo-write:hover { background: #1b7a7f; }

/* ---------- max-width: 1400px ---------- */
@media (max-width: 1400px) {
  .ehboagal .bo-tbl__head,
  .ehboagal .bo-tbl__row { gap: 3rem; }
  .ehboagal .bo-tbl__tit { font-size: 1.9rem; line-height: 2.9rem; }
}

/* ---------- max-width: 991px ---------- */
@media (max-width: 991px) {
  .ehboagal .bo-tbl { margin-top: 5rem; }

  .ehboagal .bo-tbl__head,
  .ehboagal .bo-tbl__row { gap: 2.4rem; }
  .ehboagal .bo-tbl__head { padding-bottom: 2rem; }
  .ehboagal .bo-tbl__head > span { font-size: 1.7rem; }

  .ehboagal .bo-tbl__writer { width: 10rem; }
  .ehboagal .bo-tbl__date   { width: 8.5rem; }

  .ehboagal .bo-tbl__row { padding: 2.2rem 0; }
  .ehboagal .bo-tbl__subject-in { gap: 1.2rem; }
  .ehboagal .bo-tbl__tit { font-size: 1.8rem; line-height: 2.8rem; }
  .ehboagal .bo-tbl__row .bo-tbl__no,
  .ehboagal .bo-tbl__row .bo-tbl__writer,
  .ehboagal .bo-tbl__row .bo-tbl__date { font-size: 1.5rem; }

  .ehboagal .bo-tbl__empty { padding: 6rem 0; font-size: 1.6rem; }

  .ehboagal .bo-foot { margin-top: 5rem; }
  .ehboagal .bo-write { padding: 1.4rem 2.6rem; font-size: 1.7rem; }
}

/* ---------- max-width: 768px (MOBILE) ---------- */
@media (max-width: 768px) {
  .ehboagal .bo-tbl { margin-top: 3rem; }

  /* 헤더 미노출 · 상단 라인은 ul 이 담당 */
  .ehboagal .bo-tbl__head { display: none; }
  .ehboagal .bo-tbl__ul { border-top: 1px solid #111; }

  .ehboagal .bo-tbl__row { align-items: flex-start; gap: 1.6rem; padding: 2rem 0; }

  .ehboagal .bo-tbl__row .bo-tbl__no {
    width: auto; font-family: pretendard-500; font-weight: 500;
    font-size: 1.6rem; line-height: 2.4rem; color: #111;
  }

  /* 제목 + 메타 2단 구성 */
  .ehboagal .bo-tbl__subject { flex-direction: column; align-items: flex-start; gap: 1rem; }
  .ehboagal .bo-tbl__subject-in { gap: .6rem; }
  .ehboagal .bo-tbl__tit {
    font-family: pretendard-500; font-weight: 500;
    font-size: 1.6rem; line-height: 2.4rem;
  }

  .ehboagal .bo-tbl__row .bo-tbl__writer,
  .ehboagal .bo-tbl__row .bo-tbl__date { display: none; }

  .ehboagal .bo-tbl__meta { display: flex; align-items: center; gap: 2rem; min-width: 0; }
  .ehboagal .bo-tbl__meta > span {
    overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
    font-family: pretendard-600; font-weight: 600;
    font-size: 1.2rem; line-height: 1.2rem; color: #aaa;
  }

  .ehboagal .bo-tbl__empty { padding: 5rem 0; font-size: 1.5rem; }

  /* 페이징 + 글쓰기 */
  .ehboagal .bo-foot { flex-direction: column; align-items: stretch; gap: 3rem; margin-top: 3rem; }
  .ehboagal .bo-foot .bo-paging { width: 100%; }
  .ehboagal .bo-write {
    width: 100%; padding: 1.1rem 2rem; border-radius: .8rem;
    font-size: 1.6rem; line-height: 2.2rem;
  }
}
