@charset "utf-8";

.map iframe,
.root_daum_roughmap,
.root_daum_roughmap .wrap_map {overflow:hidden; height:clamp(250px, calc( 500 / var(--inner) * 100vw ), 500px) !important; width:100% !important;}
.root_daum_roughmap .cont {display:none !important;}

.doc-tit {margin-bottom:var(--space-20); text-align:center; font-size:var(--font-size-28); font-weight:700; line-height:1.4em; color:var(--color-bk);}

.doc-top {margin-bottom:var(--space-60); text-align:center;}
.doc-top .cont-tit {font-size:var(--font-size-24); gap:var(--space-15); display:flex; justify-content:center; color:#242424; font-weight:500; line-height:1.5em;}
.doc-top .deco {width:30px; height:30px; background:url('/images/sub/deco-left.svg') 50% 50% / contain no-repeat;}
.doc-top .deco.right {background-image:url('/images/sub/deco-right.svg');}
.doc-top .desc {margin-top:var(--space-20); line-height:1.75em;}

.doc-top .cont-tit2 {font-size:var(--font-size-18); align-items:center; gap:var(--space-25); display:flex; justify-content:center; color:#454545; font-weight:400; line-height:1.6em;}
.doc-top .cont-tit2 strong {font-weight:600; color:#242424;}
.doc-top .cont-tit2 .deco {width:13px; height:45px; background:url('/images/sub/deco2-left.png') 50% 50% / contain no-repeat;}
.doc-top .cont-tit2 .deco.right {background-image:url('/images/sub/deco2-right.png');}

/* 인사말 */
.greet {display:flex; justify-content:center; align-items:center; gap:var(--space-80);}
.greet .cont {flex:1; display:flex; flex-direction:column; justify-content:center; gap:var(--space-40);}
.greet .tit-area {display:flex; flex-direction:column; align-items:flex-start; gap:var(--space-30);}
.greet .tit {font-size:var(--font-size-30); line-height:1.33em; color:var(--color-bk);}
.greet .tit .primary {color:var(--color-primary); font-weight:700;}
.greet .line {width:40px; height:0; border:0; display:block; border-top:1px solid #ddd; margin:0;}
.greet .txt-list {display:flex; flex-direction:column; gap:var(--space-20);}
.greet .txt {line-height:26px;}
.greet .sign {display:flex; align-items:center; gap:16px;}
.greet .role {font-size:var(--font-size-18); font-weight:500; line-height:24px; color:var(--color-bk); flex-shrink:0;}

/* 회사 개요 - Company Profile */
.profile .cont-tit {padding-bottom:8px; border-bottom:2px solid var(--color-primary);}
.profile .tit {font-size:var(--font-size-20); font-weight:700; line-height:1.7em; color:var(--color-primary);}
.profile .wrap {grid-template-columns:repeat(2, 1fr); display:grid; gap:var(--space-30); border-bottom:1px solid #ddd;}
.profile .item {height:90px; align-items:center; display:flex; gap:var(--space-20); border-bottom:1px solid #ddd;}
.profile .item.item-multi {height:180px; align-items:flex-start; padding-top:var(--space-30);}
.profile .item:last-child {border-bottom:none;}
.profile .label {width:120px; flex-shrink:0; display:flex; align-items:center; gap:10px; font-size:var(--font-size-18); font-weight:600; line-height:32px; color:var(--color-bk);}
.profile .dot {width:14px; height:14px; background:url('/images/sub/chk-icon.png') 50% 50% / cover no-repeat; flex-shrink:0;}
.profile .val {line-height:2em;}

html[lang="en"] .profile .item.item-multi {display:block;}
html[lang="en"] .profile .label {width:180px;}

.partner {padding-bottom:var(--space-100); border-bottom:1px solid #ddd;}
.partner .partner-card {display:flex; justify-content:center; align-items:flex-start; flex-wrap:wrap; gap:var(--space-40);}
.partner .card {display:flex; flex-direction:column; align-items:center; gap:var(--space-40); flex:1;}
.partner .thumb {width:160px; height:160px; border-radius:100%; outline:6px solid; outline-offset:-6px; overflow:hidden; display:flex; align-items:center; justify-content:center;}
.partner .card-primary .thumb {outline-color:var(--color-primary);}
.partner .card-secondary .thumb {outline-color:var(--color-secondary);}
.partner .thumb svg {height:clamp(50px, calc( 70 / var(--inner) * 100vw ), 70px);}
.partner .cont {display:flex; flex-direction:column; align-items:center; gap:var(--space-20);}
.partner .cont .tit {font-size:var(--font-size-20); font-weight:600; line-height:1.4em; color:var(--color-bk);}
.partner .list {display:grid; gap:8px; text-align:center;}
.partner .list li {line-height:1.5em;}

.cert .list {grid-template-columns:repeat(5, 1fr); display:grid; gap:var(--space-50) var(--space-30);}
.cert .txt {margin-top:var(--space-20); text-align:center; font-weight:500; line-height:1.5em;}

.mission .list {display:flex; flex-wrap:wrap; justify-content:flex-start; align-items:stretch; gap:var(--space-30);}
.mission .list li {flex:0 0 calc(50% - var(--space-15));}
.mission .list .inner {height:100%; display:flex; justify-content:space-between; align-items:flex-end; gap:var(--space-30); padding:var(--space-40); border-radius:16px; border:1px solid #ddd;}
.mission .list .cont {height:100%; display:flex; flex-direction:column; align-items:flex-start; gap:var(--space-40); flex:1 1 0; min-width:0;}
.mission .list .num {font-size:var(--font-size-32); font-weight:700; line-height:1.25;}
.mission .list li:nth-child(1) .num,
.mission .list li:nth-child(4) .num {color:var(--color-primary);}
.mission .list li:nth-child(2) .num,
.mission .list li:nth-child(3) .num {color:var(--color-secondary);}
.mission .list .txt-wrap {display:flex; flex-direction:column; gap:var(--space-15); width:100%;}
.mission .list .tit {font-size:var(--font-size-24); font-weight:600; line-height:1.33; color:var(--color-bk); margin:0;}
.mission .list .txt {line-height:1.75;}
.mission .list .img {flex-shrink:0; margin:0;}
.mission .list .img img {width:80px; aspect-ratio:1; object-fit:contain;}

.organization {text-align:center; padding:0 var(--space-30);}

/* 연혁 */
.history-item {padding:var(--space-60) 0; border-bottom:1px dashed #ddd;}
.history-item:first-child {padding-top:0;}
.history-item:last-child {border-bottom:none; padding-bottom:0;}
.history-item .contain {display:flex;}
.history-item .head {width:50%; display:flex; flex-direction:column; gap:var(--space-20);}
.history-item .year {display:inline-flex; align-items:center; justify-content:center; padding:8px 16px; background:var(--color-primary); color:#fff; font-size:var(--font-size-24); font-weight:600; line-height:32px; border-top-left-radius:24px; border-bottom-right-radius:24px; align-self:flex-start;}
.history-item .year.secondary {background:var(--color-secondary);}
.history-item .tit {font-size:var(--font-size-30); font-weight:600; line-height:1.3em; color:var(--color-bk);}
.history-item .cont {flex:1;}
.history-item .cont .list {display:grid; gap:var(--space-20);}
.history-item .cont .list li {display:flex; align-items:flex-start; gap:0; line-height:24px;}
.history-item .cont .list li::before {content:'•'; color:var(--color-primary); font-weight:700; width:24px; flex-shrink:0; text-align:center;}
.history-item:has(.year.secondary) .cont .list li::before {color:var(--color-secondary);}

/* 찾아오시는 길 - 주소/연락처 카드 */
.locinfo {grid-template-columns:repeat(2, 1fr); display:grid; gap:var(--space-30); margin-top:var(--space-60);}
.locinfo .card {padding:var(--space-40); border-radius:16px; display:flex; flex-direction:column; justify-content:flex-start; align-items:flex-start; gap:var(--space-30);}
.locinfo .card.primary {background:rgba(255, 255, 255, 0.03); outline:2px solid var(--color-primary); outline-offset:-2px;}
.locinfo .card.secondary {outline:2px solid rgba(0, 95, 39, 0.5); outline-offset:-2px;}
.locinfo .head {width:100%; display:flex; justify-content:space-between; align-items:center;}
.locinfo .tit {font-size:var(--font-size-28); font-weight:600; line-height:1.43em; color:var(--color-bk);}
.locinfo .icon {width:clamp(30px, calc( 40 / var(--inner) * 100vw ), 40px); height:clamp(30px, calc( 40 / var(--inner) * 100vw ), 40px); flex-shrink:0;}
.locinfo .cont p {line-height:2em;}
.locinfo .cont p strong {font-size:var(--font-size-18); padding-right:8px; font-weight:500; color:var(--color-bk);}

.recruit-bnr {height:clamp(220px, calc( 300 / var(--inner) * 100vw ), 300px); display:flex; justify-content:center; align-items:center; text-align:center; background:url('/images/sub/recruit-bnr.jpg') 50% 50% / cover no-repeat; color:#fff;}
.recruit-bnr .tt {font-size:var(--font-size-24); margin-bottom:var(--space-20); font-weight:500; line-height:1.33em;}
.recruit-bnr p {line-height:1.75em; opacity:0.8;}

/* 채용 - Our Talents */
.talent {text-align:center; padding-top:var(--space-100); padding-bottom:var(--space-100); margin-bottom:var(--space-100); border-bottom:1px solid #ddd; display:flex; flex-direction:column; align-items:center; gap:var(--space-60);}
.talent .list {align-self:stretch; display:grid; grid-template-columns:repeat(3, 1fr); gap:var(--space-30); justify-content:flex-start; align-content:center;}
.talent .item {padding:var(--space-40); border-radius:32px; display:flex; flex-direction:column; justify-content:flex-start; align-items:center; gap:var(--space-40);}
.talent .item:nth-child(odd) {background:rgba(0, 95, 39, 0.03);}
.talent .item:nth-child(even) {background:rgba(141, 190, 34, 0.03);}
.talent .img img {height:clamp(50px, calc( 80 / var(--inner) * 100vw ), 80px);}
.talent .item .cont {align-self:stretch; display:flex; flex-direction:column; align-items:center; gap:var(--space-20);}
.talent .item .cont .label {font-size:var(--font-size-14); font-weight:600; line-height:1.5em;}
.talent .item:nth-child(odd) .cont .label {color:var(--color-secondary);}
.talent .item:nth-child(even) .cont .label {color:var(--color-primary);}
.talent .item .cont .tit {font-size:var(--font-size-24); font-weight:700; line-height:1.3em; color:var(--color-bk);}
.talent .item .cont .txt {line-height:1.75em;}

/* 채용 - Rewards and Welfare */
.reward {display:flex; flex-direction:column; align-items:center; gap:var(--space-60);}
.reward .list {display:grid; grid-template-columns:repeat(2, 1fr); gap:var(--space-30);}
.reward .item {padding:var(--space-40); border-radius:16px; outline:1px solid #ddd; outline-offset:-1px; display:flex; justify-content:flex-end; align-items:flex-end; gap:var(--space-40);}
.reward .item .cont {flex:1 1 0; min-width:0; display:flex; flex-direction:column; justify-content:flex-start; align-items:flex-start; gap:var(--space-40);}
.reward .item .num {font-size:var(--font-size-32); font-weight:700; line-height:1.25em;}
.reward .item:nth-child(1) .num,
.reward .item:nth-child(4) .num,
.reward .item:nth-child(5) .num,
.reward .item:nth-child(8) .num {color:var(--color-primary);}
.reward .item:nth-child(2) .num,
.reward .item:nth-child(3) .num,
.reward .item:nth-child(6) .num,
.reward .item:nth-child(7) .num {color:var(--color-secondary);}
.reward .item .txt-wrap {align-self:stretch; align-items:flex-start; display:flex; flex-direction:column; gap:var(--space-15);}
.reward .item .tit {font-size:var(--font-size-24); font-weight:600; line-height:1.3em; color:var(--color-bk);}
.reward .item .txt {line-height:1.75em;}
.reward .img {margin:0; flex-shrink:0;}
.reward .img img {height:clamp(50px, calc( 80 / var(--inner) * 100vw ), 80px);}