@charset "utf-8";

/* CEO 인사말 */
.gt { display: flex; align-items: center; gap: 120px; }
.gt-img { flex: 1 1 0; min-width: 0; }
.gt-img img { display: block; width: 100%; height: 100%; object-fit: cover; }
.gt-info { flex: 1 1 0; min-width: 0; display: flex; flex-direction: column; gap: 40px; }
.gt-info .label { margin: 0; font-size: var(--font-size18); font-weight: 600; line-height: 1.78em; letter-spacing: -0.02em; color: #ccc; }
.gt-info .tit { margin: 0; font-size: var(--font-size36); font-weight: 600; line-height: 1.39em; letter-spacing: -0.02em; color: #2c2c2c; }
.gt-info .tit span { color: var(--color-primary); }
.gt-info .txt { display: flex; flex-direction: column; gap: 24px; }
.gt-info .txt p { margin: 0; font-size: var(--font-size20); font-weight: 400; line-height: 1.7em; letter-spacing: -0.02em; color: #676767; }
.gt-info .name { display: block; font-size: var(--font-size20); font-weight: 600; line-height: 1.7em; letter-spacing: -0.02em; color: #2c2c2c; }

/* 회사연혁 */
.hy { position: relative; }
.hy-bg { position: relative; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 12px; height: 400px; overflow: hidden; text-align: center; background: url("../images/sub/sub1-2-img.jpg") center / cover no-repeat; }
.hy-bg::before { content: ""; position: absolute; inset: 0; background: rgba(0,0,0,0.28); }
.hy-bg .label { position: relative; z-index: 1; margin: 0; font-size: var(--font-size18); font-weight: 600; line-height: 1.78em; letter-spacing: -0.02em; color: rgba(255,255,255,0.5); }
.hy-bg .tit { position: relative; z-index: 1; margin: 0; font-size: var(--font-size36); font-weight: 600; line-height: 1.39em; letter-spacing: -0.02em; color: #fff; }
.hy-list { position: relative; }
.hy-list::before { content: ""; position: absolute; left: 50%; top: 0; width: 1px; height: 100%; background: #eee; transform: translateX(-50%); }
.hy-list .item { position: relative; display: flex; align-items: flex-start; padding-top: 60px; }
.hy-list .item .card { width: calc(50% - 60px); display: flex; flex-direction: column; gap: 14px; padding: 28px; box-sizing: border-box; border: 1px solid #eee; background: #fafafa; }
.hy-list .item .year { margin: 0; font-size: var(--font-size36); font-weight: 600; line-height: 1.39em; letter-spacing: -0.02em; color: var(--color-primary); }
.hy-list .item .row { display: flex; align-items: flex-start; gap: 16px; }
.hy-list .item .date { position: relative; flex-shrink: 0; font-size: var(--font-size22); font-weight: 600; line-height: 1.64em; letter-spacing: -0.02em; color: #2c2c2c; }
.hy-list .item .txt { font-size: var(--font-size22); font-weight: 400; line-height: 1.64em; letter-spacing: -0.02em; color: #676767; word-break: keep-all; }
.hy-list .item .dot { position: absolute; left: 50%; top: 118px; z-index: 1; width: 40px; height: 40px; border-radius: 50%; background: #fff; transform: translateX(-50%); display: flex; align-items: center; justify-content: center; }
.hy-list .item .dot::before { content: ""; width: 24px; height: 24px; border-radius: 50%; background: #adddf3; display: flex; align-items: center; justify-content: center; box-shadow: inset 0 0 0 8px #adddf3; background: radial-gradient(circle, #fff 0 4px, #adddf3 4px); }
.hy-list .item.right { justify-content: flex-end; }
.hy-list .item.right .card { margin-left: auto; }
.hy-list .item.right .date { padding-left: 14px; }
.hy-list .item.right .date::before { content: ""; position: absolute; left: 0; top: 50%; width: 4px; height: 4px; border-radius: 50%; background: #a8a8a8; transform: translateY(-50%); }
.hy-list .item.left { justify-content: flex-start; }
.hy-list .item.left .card { margin-right: auto; align-items: flex-end; text-align: right; }
.hy-list .item.left .row { flex-direction: row; }
.hy-list .item.left .date { padding-right: 14px; }
.hy-list .item.left .date::after { content: ""; position: absolute; right: 0; top: 50%; width: 4px; height: 4px; border-radius: 50%; background: #a8a8a8; transform: translateY(-50%); }
.hy-certi { background: #f9fcfe; padding: 120px 0; }
.hy-certi-tit { margin: 0 0 80px; font-size: var(--font-size40); font-weight: 600; line-height: 1.35em; letter-spacing: -0.02em; color: #2c2c2c; }
.hy-certi-list { display: flex; gap: 20px; flex-wrap: wrap;}
.hy-certi-list .item { display: flex; flex-direction: column; align-items: center; gap: 20px; }
.hy-certi-list .item .thumb { width: 100%;background: #fff; box-sizing: border-box; overflow: hidden; position: relative; }
.hy-certi-list .item .thumb::after { content:""; position: absolute; left: 0; right: 0; top: 0; bottom: 0; margin: auto; border: 1px solid #eee;}
.hy-certi-list .item .thumb img { display: block; width: 100%; height: 100%; object-fit: contain; }
.hy-certi-list .item .tt { margin: 0; font-size: var(--font-size24); font-weight: 500; line-height: 1.58em; letter-spacing: -0.02em; color: #2c2c2c; text-align: center; }

/* 찾아오시는 길 */
.lct { display: flex; flex-direction: column; gap: 40px; }
.lct-info { margin: 0; padding: 0; list-style: none; border-top: 1px solid #2c2c2c; }
.lct-info li { display: flex; align-items: center; padding: 36px 0; border-bottom: 1px solid #eee; }
.lct-info .label { display: inline-flex; align-items: center; gap: 12px; width: 140px; flex-shrink: 0; font-size: var(--font-size20); font-weight: 500; line-height: 1.7em; letter-spacing: -0.02em; color: #878787; }
.lct-info .label i { display: inline-flex; align-items: center; justify-content: center; }
.lct-info .txt { font-size: var(--font-size20); font-weight: 500; line-height: 1.7em; letter-spacing: -0.02em; color: #505050; word-break: keep-all; }

/* 사업분야 */
.bs-list { display: grid; grid-template-columns: repeat(3, 1fr); gap: 48px 24px; }
.bs-list .item { display: flex; flex-direction: column; align-items: center; gap: 20px; min-width: 0; }
.bs-list .item .tt { margin: 0; font-size: var(--font-size24); font-weight: 600; line-height: 1.67em; letter-spacing: -0.02em; color: #2c2c2c; text-align: center; word-break: keep-all; }
.bs-swiper { position: relative; width: 100%; height: 320px; overflow: hidden; }
.bs-swiper .swiper-slide img { display: block; width: 100%; height: 320px; object-fit: cover; }
.bs-nav { position: absolute; left: 16px; right: 16px; top: 50%; z-index: 2; display: flex; align-items: center; justify-content: space-between; transform: translateY(-50%); pointer-events: none; }
.bs-nav button { pointer-events: auto; display: flex; align-items: center; justify-content: center; width: 40px; height: 40px; border: 1px solid rgba(255,255,255,0.08); background: rgba(255,255,255,0.16); backdrop-filter: blur(6px); -webkit-backdrop-filter: blur(6px); cursor: pointer; padding: 0; }
.bs-nav button img { display: block; width: 8px; height: 14px; }
.bs-pagination { position: absolute; left: 0; right: 0; bottom: 16px !important; z-index: 2; display: flex; align-items: center; justify-content: center; gap: 8px; }
.bs-pagination .swiper-pagination-bullet { width: 6px; height: 6px; margin: 0 !important; border-radius: 50%; background: rgba(255,255,255,0.5); opacity: 1; }
.bs-pagination .swiper-pagination-bullet-active { background: #fff; }

/* sub4 */
.sub4-tab { display: flex; margin-bottom: 60px; }
.sub4-tab li { flex: 1;}
.sub4-tab li a { height: 64px; display: flex; align-items: center; justify-content: center; background: #f3f3f3; font-size: var(--font-size20); font-weight: 600; color: #878787; line-height: 1.3em; }
.sub4-tab li.active a { background: var(--color-primary); color: #fff; }
.sub4-tab li a:hover { background: var(--color-primary); color: #fff; }
