@charset "utf-8";
.sec-tit {margin-bottom: clamp(20px, calc(80 / var(--inner) * 100vw), 80px); font-size: var(--font-size-36); font-weight: 500; color: var(--dark-color); line-height: 1.39em;}

.root_daum_roughmap .wrap_map, .root_daum_roughmap, .direction-map iframe {width: 100% !important; height: 100% !important;}

.sec-overview-welcome {display: flex; gap: 0 35px; flex-wrap: wrap;}
.sec-overview-vision {display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; margin-bottom: clamp(60px, calc(160 / var(--inner) * 100vw), 160px);}
.sec-overview-vision .img {border-radius: 8px; margin-bottom: var(--space-30); overflow: hidden;}
.sec-overview-vision h4 {border-bottom: 1px solid var(--dark-color); padding-bottom: var(--space-20); margin-bottom: var(--space-20);}
.sec-overview-vision p {margin-top: clamp(4px, calc(8 / var(--inner) * 100vw), 8px); color: #676767;}
.sec-company-info {display: grid; grid-template-columns: repeat(5, 1fr); gap: var(--space-20);}
.company-info-box {display: flex; flex-direction: column; justify-content: space-between; gap: clamp(12px, calc(60 / var(--inner) * 100vw), 60px); padding: var(--space-30); border-radius: 8px; border: 1px solid #EEE; background: #FFF;}
.company-info-box h3 {margin-bottom: 4px; color: #BFBFBF;}

.history-wrap {position:relative; padding-top:3px; color:#676767;}
.history-line {position:absolute; left:calc(clamp(30px, calc(56 / var(--inner) * 100vw), 56px) / 2); top:calc(clamp(30px, calc(56 / var(--inner) * 100vw), 56px) / 2); bottom:0; width:1px; background:#eee;}
.history-line-bar {display:block; width:100%; height:0; background:var(--secondary-color);}
.history-item {display:flex; gap:var(--space-80); align-items:flex-start; padding-bottom:clamp(50px, calc(100 / var(--inner) * 100vw), 100px);}
.history-item:last-child {padding-bottom:0;}
.history-dot {position: relative; z-index: 1; flex-shrink:0; width:clamp(30px, calc(56 / var(--inner) * 100vw), 56px); height:clamp(30px, calc(56 / var(--inner) * 100vw), 56px); border:clamp(7px, calc(18 / var(--inner) * 100vw), 18px) solid #fafafa; border-radius:50%; background:#999; transition:background .3s, border-color .3s;}
.history-row {flex:1; display:flex; align-items:flex-start; min-width:0;}
.history-year {flex-shrink:0; width:240px; margin:0; font-size:var(--font-size-40); font-weight:600; line-height:1.4em; letter-spacing:-0.02em; color:#686868; transition:color .3s;}
.history-month-box {flex:1; display:flex; flex-direction:column; gap:24px; min-width:0; padding-top:11px;}
.history-detail {display:flex; align-items:center; margin:0; font-size:var(--font-size-20); font-weight:400; line-height:1.7em; letter-spacing:-0.02em;}
.history-detail .month {display:flex; align-items:center; gap:10px; flex-shrink:0; width:80px; font-weight:600; color:var(--dark-color);}
.history-detail .month::before {content:''; flex-shrink:0; width:8px; height:8px; border-radius:50%; background:var(--secondary-color);}
.history-detail p {flex:1; margin:0; color:#676767;}
.history-item.active .history-dot {background:var(--secondary-color); border-color:#f0e5ff;}
.history-item.active .history-year {color:var(--secondary-color);}


.sec-certification {padding: var(--space-120) 0; margin-top: var(--space-120); background: #F8F8F8;}
.cert-list {display: grid; grid-template-columns: repeat(6, 1fr); gap: 35px var(--space-20);}
.cert-item .cert-img {border-radius: 8px; overflow: hidden;}
.cert-item h4 {margin-top: clamp(12px, calc(24 / var(--inner) * 100vw), 24px); font-size: var(--font-size-20); font-weight: 500; color: var(--dark-color); text-align: center;}
.directions-map {position: relative; height: 680px;}
.direction-cnt {display: flex; flex-direction: column; justify-content: space-between; gap: 20px; position: absolute; z-index: 1; top:20px; left: 20px; bottom: 20px; padding: var(--space-40); border-radius: 8px; background: rgba(0, 0, 0, 0.80); backdrop-filter: blur(12px); color: rgba(255, 255, 255, 0.6);}
.direction-cnt li {display: flex;}
.direction-top span {min-width: 90px;}
.direction-top li:not(:last-child) {margin-bottom: clamp(8px, calc(16 / var(--inner) * 100vw), 16px);}
.direction-info strong {display: block; margin-bottom: 12px;}
.direction-info span {display: flex; align-items: center; justify-content: space-between; height: fit-content; min-width: 82px;}
.direction-info span:after {content: ''; display: block; width: 1px; height: 12px; margin: 0 10px; background: rgba(255, 255, 255, 0.3);}
.direction-info li:not(:last-child) {margin-bottom: 4px;}
.direction-info>p {margin-top: 12px;}

.work-title {margin-bottom: clamp(40px, calc(80 / var(--inner) * 100vw), 80px);}
.work-title .sec-tit {margin-bottom: var(--space-30);}
.work-edit {margin-bottom: 40px;}
.required {color: var(--primary-color);}
.board-form .input {height: clamp(44px, calc(60 / var(--inner) * 100vw), 60px); border-radius: 4px;}