body { font-family: "Poppins",
-apple-system, BlinkMacSystemFont,
"Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell,
"Helvetica Neue", sans-serif; } 

:root { --main-color: #005EAD; --text-dark: #333; --text-light: #555555; --sub-text:#666666 } 

.py-8 { padding-top: 6rem; padding-bottom: 6rem; } 
.py-3 { padding-top: 3rem; padding-bottom: 3rem; } 
.mt-2 { margin-top: 2rem !important; } 
.mt-3 { margin-top: 2rem !important; } 
.mt-6 { margin-top: 4rem !important; } 
.mt-8 { margin-top: 6rem !important; } 
.mb-3 { margin-bottom: 3rem !important; } 
.mb-6 { margin-bottom: 6rem !important; } 

.logo { height: 44px; width: auto; } 

.heading-main { color: var(--main-color); } 
.btn-main { background-color: var(--main-color); color: #fff; } 
.section-title { color: var(--main-color); } 

/* Sticky Header Shadow */
.navbar-brand { padding:0; } 
.navbar-toggler { border:0; } 
.navbar-toggler:focus { box-shadow:none; } 
.navbar.sticky-top { box-shadow: 0 2px 10px rgba(0, 0, 0, 0.08); } 
.navbar .nav-item { padding:0 10px; } 
.navbar .lang { justify-content: end; } 
.navbar .lang select { border:none } 
.navbar .nav-link.active, .navbar .nav-link.show { color: var(--main-color); } 
.navbar .nav-link { color: var(--text-dark); } 

/* HERO SWIPER */
.hero-swiper { height: calc(80vh - 100px); /* nav 100px 기준 통일 */ } 
.hero-slide { height: 100%; background-size: cover; background-position: center; position: relative; } 

/* 슬라이드 내부 세로 중앙 정렬 */
.hero-inner { position: relative; z-index: 2; height: 100%; display: flex; align-items: center; /* 상하 가운데 */ } 
.swiper-pagination-bullet-active { background-color: var(--main-color); } 
.swiper-pagination-bullet { width: 30px; border-radius: inherit; height: 5px; } 

.hero-overlay { position: absolute; inset: 0; background: rgba(0, 0, 0, 0.45); z-index: 1; } 
.hero-content { margin-right:20px; color: #fff; /* margin-left 제거 */ } 
.hero-content h1 { font-size: 43px !important; line-height: 1.15; font-weight: 500 !important; margin-bottom: 25px; } 
.hero-content p { font-size: 19px !important; font-weight: 300 !important; } 

.section-title { font-size: 32px !important; font-weight: 500 !important; } 

.service-card img { width: 100%; } 
.service-card h5 { font-size: 21px !important; margin-bottom: .8rem; } 


.why-section { background: #f6f8fc; padding: 6rem 0; } 
.why-section h5,
.service-block h5 { font-size: 22px !important; color: var(--main-color); font-weight: 400 !important; margin-bottom: 20px; } 

.footer { padding: 100px 0; text-align: center; font-size: 11px; color: #666; } 

.row p { font-size: 14px !important; color: var(--sub-text); } 
.text-muted { font-size: 16px !important; } 

/* Buttons */
.btn, .btn-outline-primary, .btn-primary { font-size: 16px !important; padding: 18px 20px; min-width: 170px; } 
.btn-outline-primary, .btn-primary { --bs-btn-border-color: #005EAD; --bs-btn-hover-bg: #005EAD; font-size:16px!important; } 

.btn-outline-primary { --bs-btn-color: #005EAD; } 
.btn-primary { --bs-btn-bg: #005EAD; } 
/* NAV menu font */
.nav-link { font-size: 15px !important; } 

/* ---------------service------------ */
.service-list { margin-top:15px } 
.service-list li { margin-bottom: 6px; font-size: 15px; color: var(--sub-text); } 
.service-img { width: 100%; } 

/* ABOUT PAGE */
.history h4 { color: var(--main-color); font-size:28px; font-weight:700; } 
.history .row p { font-size: 16px !important; line-height: 1.9; margin-bottom:0; } 

.about-hero { height: 628px; background-image: url("../assets/img/office-building.jpg"); background-size: cover; background-position: center bottom; background-repeat: no-repeat; background-attachment: fixed; /* 핵심 */}

.about-list li { margin-bottom: 6px; font-size: 15px; color: var(--sub-text); } 

.exp-item { box-sizing: border-box; width: 100%; border-bottom: 1px solid #e9ecef; padding: 30px 0; } 

.exp-year { font-weight: 600; color: var(--main-color); font-size: 23px; margin-bottom: 6px; } 
.exp-year span { display:block; font-size: 14px; color: var(--text-light); font-weight: 400; } 
.exp-detail { color: #555; font-size: 15px; } 

/* Human Network Cards */
.network-card { background: #fff; padding: 50px 30px 30px; border-radius: 10px; box-shadow: 0 4px 15px rgba(0,0,0,0.05); min-height: 310px; } 
.network-icon { width: 112px; margin-bottom: 30px; } 
.network-title { font-size:19px; font-weight: 600; color: var(--main-color); } 

.row .network-text { font-size: 14px !important; color: #777; } 


@media (min-width: 992px){
 .logo { height: 32px; } 

 .py-8 { padding-top: 8rem; padding-bottom: 8rem; } 
 .mt-2 { margin-top: 2rem !important; } 
 .mt-3 { margin-top: 3rem !important; } 
 .mt-6 { margin-top: 6rem !important; } 
 .mt-8 { margin-top: 8rem !important; } 
 .mb-3 { margin-bottom: 4rem !important; } 
 .mb-6 { margin-bottom: 8rem !important; } 

 .navbar { height: 100px; padding: 0; } 
 .navbar .container { height: 100%; } 
 .navbar-brand,
 .navbar-nav,
 .navbar-collapse { height: 100%; display: flex; align-items: center; } 


 .logo { height: 72px; } 
 .align-items-center { min-width:151px; } 

 .hero-swiper { height: calc(90vh - 100px); /* nav 100px 기준 통일 */ } 

 /* HERO */
 .hero-content { max-width: 800px; } 
 .hero-content h1 { font-size: 68px !important; line-height: 1.15; font-weight: 600 !important; margin-bottom: 30px; } 

 .hero-content p { font-size: 24px !important; font-weight: 300 !important; } 

 .section-title { font-size: 42px !important; font-weight: 500 !important; } 
 .service-card h5 { font-size: 24px !important; } 

 .why-section { padding: 8rem 0; } 
 .why-section h5,
 .service-block h5 { font-size: 28px !important; font-weight: 400 !important; margin-bottom: 20px; } 
 .row p { font-size: 15px !important; } 

 /* General muted text */
 .text-muted { font-size: 18px !important; } 

 .btn, .btn-outline-primary, .btn-primary { font-size: 18px !important; padding: 21px 24px; min-width: 200px; } 
 .btn-outline-primary, .btn-primary { font-size:18px!important; } 

 .service-list { margin-top:30px } 
 }



