/* /hte/before/assets/css/style.css */
body.hte-before {
  font-family: "Malgun Gothic", "맑은 고딕", Arial, sans-serif;
  font-size: 14px;
  color: #222;
  background: #f7f7f7;
}

/* 헤더/메뉴(구형 감성) */
.hte-header { background: #fff; }
.hte-nav { background: #1f2f46; }
.hte-nav-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  gap: 0;
}
.hte-nav-item { position: relative; }
.hte-nav-link {
  display: block;
  padding: 12px 18px;
  color: #fff;
  text-decoration: none;
  font-weight: 700;
  font-size: 13px;
}
.hte-nav-item.is-active .hte-nav-link,
.hte-nav-link:hover {
  background: #152338;
}

/* 서브메뉴(hover로 보이게) */
.hte-subnav {
  display: none;
  position: absolute;
  top: 100%;
  left: 0;
  width: 160px;
  background: #ffffff;
  border: 1px solid #cfcfcf;
  list-style: none;
  margin: 0;
  padding: 6px 0;
  z-index: 20;
}
.hte-nav-item:hover .hte-subnav { display: block; }
.hte-subnav-link {
  display: block;
  padding: 8px 12px;
  text-decoration: none;
  color: #222;
  font-size: 13px;
}
.hte-subnav-link:hover,
.hte-subnav-link.is-active {
  background: #f1f1f1;
}

/* 메인 비주얼 */
.hte-visual-inner { background:#fff; border:1px solid #d9d9d9; }
.hte-visual-img {
  position: relative;
  height: 260px;
  background-size: cover;
  background-position: center;
}
.hte-visual-overlay {
  position:absolute; inset:0;
  background: rgba(0,0,0,0.35);
}
.hte-visual-text {
  position:absolute;
  left: 20px;
  top: 50%;
  transform: translateY(-50%);
  max-width: 560px;
  color: #fff;
}
.hte-visual-title { font-size: 22px; font-weight: 800; margin-bottom: 8px; }
.hte-visual-desc { font-size: 13px; line-height: 1.6; margin-bottom: 12px; }
.hte-visual-btns .btn { margin-right: 6px; }

/* 박스 UI */
.hte-box {
  background: #fff;
  border: 1px solid #d9d9d9;
  padding: 14px;
}
.hte-box-head {
  display:flex;
  justify-content: space-between;
  align-items: baseline;
  padding-bottom: 8px;
  border-bottom: 1px solid #e6e6e6;
  margin-bottom: 10px;
}
.hte-box-title { font-size: 15px; font-weight: 800; }
.hte-box-more { font-size: 12px; text-decoration: none; color: #1f2f46; }
.hte-box-more:hover { text-decoration: underline; }

/* 리스트 */
.hte-list { list-style:none; margin:0; padding:0; }
.hte-list-item {
  display:flex;
  justify-content: space-between;
  gap: 10px;
  padding: 6px 0;
  border-bottom: 1px dotted #ddd;
}
.hte-list-item:last-child { border-bottom: none; }
.hte-list-link { text-decoration:none; color:#222; }
.hte-list-link:hover { text-decoration: underline; }
.hte-list-date { color:#777; font-size:12px; white-space: nowrap; }

/* 미니 사업분야 */
.hte-mini-item { padding: 8px 0; border-bottom: 1px dotted #ddd; }
.hte-mini-item:last-child { border-bottom:none; }
.hte-mini-title { font-weight: 800; margin-bottom: 2px; }
.hte-mini-desc { color:#555; font-size:13px; }

/* 실적 bullet */
.hte-bullets { margin:0; padding-left: 18px; }
.hte-bullets li { margin: 6px 0; color:#333; }

/* 소개글/키값 */
.hte-copy p { margin-bottom: 8px; line-height: 1.65; }
.hte-kv {
  display:grid;
  grid-template-columns: 120px 1fr;
  gap: 6px 10px;
  padding: 10px;
  background: #f5f5f5;
  border: 1px solid #e1e1e1;
}
.hte-kv-item { display: contents; }
.hte-kv-k { font-weight: 800; color:#1f2f46; }
.hte-kv-v { color:#222; }

/* 우측 상담 박스 */
.hte-sidebox {
  border: 1px solid #cfcfcf;
  background: #fafafa;
  padding: 12px;
}
.hte-side-title { font-weight: 900; margin-bottom: 6px; }
.hte-side-desc { font-size: 13px; color:#444; line-height: 1.5; }
.hte-side-tel { font-size: 20px; font-weight: 900; margin-top: 8px; color:#1f2f46; }

/* 푸터 */
.hte-footer { background:#fff; }

/* 회사소개/서브페이지 공통 */
.hte-page-head{
  background:#fff;
  border:1px solid #d9d9d9;
  padding:12px 14px;
}
.hte-page-title{ font-size:16px; font-weight:900; margin-bottom:2px; }
.hte-page-loc{ font-size:12px; color:#777; }

.hte-table{
  width:100%;
  border-collapse: collapse;
  font-size:13px;
}
.hte-table th, .hte-table td{
  border:1px solid #e1e1e1;
  padding:10px 10px;
  vertical-align: top;
}
.hte-table th{
  width:120px;
  background:#f5f5f5;
  color:#1f2f46;
  font-weight:800;
}

.hte-photo img{
  width:100%;
  border:1px solid #cfcfcf;
  background:#eee;
}
.hte-photo-caption{
  margin-top:6px;
  font-size:12px;
  color:#777;
}

/* 연혁 테이블 */
.hte-history-year{
  width:120px;
  text-align:center;
  font-size:15px;
  letter-spacing: 1px;
}
.hte-history-list{
  margin:0;
  padding-left:18px;
}
.hte-history-list li{
  margin:6px 0;
  color:#333;
}

/* 사업분야 카드(올드하지만 정돈된 느낌) */
.hte-biz-card{
  background:#fff;
  border:1px solid #d9d9d9;
}
.hte-biz-thumb{
  position:relative;
  height: 180px;
  border-right:1px solid #e1e1e1;
  background:#eee;
  overflow:hidden;
}
.hte-biz-thumb img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}
.hte-biz-thumb-fallback{
  position:absolute;
  inset:0;
  display:flex;
  align-items:center;
  justify-content:center;
  color:#777;
  font-size:12px;
}
.hte-biz-body{
  padding:14px;
}
.hte-biz-title{
  font-size:15px;
  font-weight:900;
  margin-bottom:6px;
  color:#1f2f46;
}
.hte-biz-desc{
  font-size:13px;
  color:#333;
  line-height:1.6;
  margin-bottom:8px;
}
.hte-biz-list{
  margin:0;
  padding-left:18px;
}
.hte-biz-list li{
  margin:6px 0;
  color:#333;
  font-size:13px;
}
@media (max-width: 767px){
  .hte-biz-thumb{ border-right:none; border-bottom:1px solid #e1e1e1; }
}
/* 주요실적 표 */
.hte-perf-table thead th{
  background:#f0f0f0;
  font-weight:800;
  color:#1f2f46;
}
.hte-perf-table td{
  font-size:13px;
}

/* 게시판(구형 감성) */
.hte-board-search{
  background:#f5f5f5;
  border:1px solid #e1e1e1;
  padding:10px;
}
.hte-board-table thead th{
  background:#f0f0f0;
  font-weight:800;
  color:#1f2f46;
}
.hte-board-table td{
  font-size:13px;
}
.hte-board-link{
  text-decoration:none;
  color:#222;
}
.hte-board-link:hover{
  text-decoration: underline;
}

.hte-pagination{
  text-align:center;
}
.hte-page-btn, .hte-page-num{
  display:inline-block;
  border:1px solid #cfcfcf;
  background:#fff;
  color:#222;
  font-size:12px;
  padding:6px 9px;
  margin:2px 1px;
  text-decoration:none;
}
.hte-page-btn:hover, .hte-page-num:hover{
  background:#f5f5f5;
}
.hte-page-num.is-current{
  background:#1f2f46;
  color:#fff;
  border-color:#1f2f46;
  font-weight:800;
}

/* 게시판 상세 */
.hte-board-view-title{
  font-size:16px;
  font-weight:900;
  color:#1f2f46;
  padding-bottom:10px;
  border-bottom:1px solid #e6e6e6;
  margin-bottom:10px;
}
.hte-board-meta{
  font-size:12px;
  color:#777;
  margin-bottom:14px;
}
.hte-board-content{
  font-size:13px;
  line-height:1.75;
  color:#222;
  min-height:180px;
  padding:14px;
  background:#fafafa;
  border:1px solid #e1e1e1;
}
.hte-board-nav{
  border-top:1px solid #e6e6e6;
  padding-top:12px;
}
.hte-board-nav-row{
  display:flex;
  gap:10px;
  padding:6px 0;
}
.hte-board-nav-label{
  width:70px;
  font-weight:800;
  color:#1f2f46;
}
.hte-board-nav-link a{
  text-decoration:none;
  color:#222;
}
.hte-board-nav-link a:hover{
  text-decoration:underline;
}

/* 오시는길 */
.hte-mapbox{
  position:relative;
  height:320px;
  border:1px solid #cfcfcf;
  background:#eee;
  overflow:hidden;
}
.hte-mapbox img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}
.hte-mapbox-fallback{
  position:absolute;
  inset:0;
  display:flex;
  align-items:center;
  justify-content:center;
  color:#777;
  font-size:12px;
}

.hte-traffic{
  border:1px solid #e1e1e1;
  background:#fafafa;
  padding:10px;
}
.hte-traffic-row{
  display:flex;
  gap:10px;
  padding:8px 0;
  border-bottom:1px dotted #ddd;
}
.hte-traffic-row:last-child{ border-bottom:none; }
.hte-traffic-label{
  width:70px;
  font-weight:900;
  color:#1f2f46;
}
.hte-traffic-text{
  font-size:13px;
  color:#333;
  line-height:1.6;
}
.hte-note{
  border-top:1px solid #e6e6e6;
  padding-top:10px;
}
