/* ===================================
    Crafto - Bisiness
====================================== */
/* font */
@import url('https://fonts.googleapis.com/css2?family=Sora:wght@100;200;300;400;500;600;700;800&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Be+Vietnam:wght@100;300;400;500;600;700;800&display=swap');
/* variable */
:root {
    --base-color: #5758D6;
    --dark-gray: #191919;
    --black:#000000;
    --medium-gray:#868d98;
    --orange:#ff2a00;
    --green:#84ff00;
    --yellow:#fcff00;
    --primary-font: 'Be Vietnam', sans-serif;
    --alt-font: 'Sora', sans-serif;
}
/* reset */
body {
    margin: 0;
    padding: 0;
    font-size: 17px;
    line-height: 32px;
    -ms-overflow-style: none;
    }
   ::-webkit-scrollbar {
     display: none;
   }

.top-space { top: -32px !important; }
.border-left-1 { border-left:10px solid #fff !important; }
.border-left-2 { border-left:10px solid #fff !important; }
.border-left-3 { border-left:0px solid #fff !important; }
.pl-1px { padding-left:1px !important; }
.pl-2px { padding-left:2px !important; }
.pl-3px { padding-left:3px !important; }
.pl-4px { padding-left:4px !important; }
.pl-5px { padding-left:5px !important; }
.pl-6px { padding-left:6px !important; }
.pl-7px { padding-left:7px !important; }
.pl-8px { padding-left:8px !important; }
.pl-9px { padding-left:9px !important; }
.pl-10px { padding-left:10px !important; }
.pl-20px { padding-left:20px !important; }
.pl-30px { padding-left:30px !important; }
.pb-14px { padding-bottom:14px !important; }

@media (max-width: 700px) {
  .border-left-1 { border-left:3px solid #fff!important; }
  .border-left-2 { border-left:0px!important; }
  .border-left-3 { border-left:3px solid #fff!important; }
}


/* header */
header .navbar-brand img {
    max-height: 60px;
}
.navbar .navbar-nav .nav-link {
    font-size: 17px;
    font-weight: 400;
}
.sticky .header-transparent .header-button .btn {
    color: var(--black);
    border-color: var(--dark-gray);
}
.sticky .header-transparent .header-button .btn:hover {
    border-color: var(--dark-gray);
    color: var(--white);
    background:  var(--dark-gray);
}
header.sticky.sticky-active [data-header-hover="light"] .widget-text i {
    color: var(--white);
}
/* accordion style 02 */
.navbar .navbar-nav .dropdown.dropdown-with-icon-style02 .dropdown-menu {
    background-color: var(--black);
}
.navbar .navbar-nav .dropdown.dropdown-with-icon-style02 .dropdown-menu li a {
    border-bottom: 1px solid rgba(255, 255, 255, 0.3);
    color: var(--white);
}
.navbar .navbar-nav .dropdown.dropdown-with-icon-style02 .dropdown-menu li:hover a,
.navbar .navbar-nav .dropdown.dropdown-with-icon-style02 .dropdown-menu li.active a{
    opacity: 1.0;
}

.custom-dropdown-toggle{ border: 0; background: transparent; padding: 0; margin-left: 8px; display: inline-flex; align-items: center; justify-content: center; cursor: pointer; }
.custom-dropdown-toggle img{ width: 15px; height: 15px; display: block; }
.border-left { border-left:2px solid #e5e5e5;}
.border-right { border-right:2px solid #e5e5e5; }
.border-top { border-top:2px solid #e5e5e5; }

/*history start*/
/* =========================
   UTOBIOTECH HISTORY PAGE
========================= */
.ut-history-hero,
.ut-history-section {
}

.ut-history-inner { width: min(1200px, calc(100% - 48px));  margin: 0 auto; }
.ut-history-hero { padding: 90px 0 24px; }
.ut-history-hero__en { margin: 0 0 12px; font-size: 15px; font-weight: 600; color: #f26a00; letter-spacing: 0.08em; text-transform: uppercase; }
.ut-history-hero__title { margin: 0; font-size: 42px; line-height: 1.2; font-weight: 700; color: #111; }
.ut-history-hero__desc { margin: 16px 0 0; font-size: 17px; line-height: 1.7; color: #555; }
.ut-history-section { padding: 20px 0 110px; }
.ut-history-timeline { position: relative; margin: 0; padding: 0; list-style: none; }
.ut-history-timeline::before { content: ""; position: absolute; top: 10px; bottom: 10px; left: 177px; width: 2px; background: #f26a00; }
.ut-history-timeline__item { position: relative; display: grid; grid-template-columns: 140px 74px 1fr; grid-template-areas: "year dot content"; column-gap: 0; align-items: start; padding-bottom: 82px; }
.ut-history-timeline__item:last-child { padding-bottom: 0; }
.ut-history-timeline__year { grid-area: year; padding-top: 2px; font-size: 32px; line-height: 1.2; font-weight: 700; color: #111; white-space: nowrap; }
.ut-history-timeline__dot { grid-area: dot; width: 26px; height: 26px; margin: 0 auto; border: 3px solid #f26a00; border-radius: 50%; background: #fff; position: relative; z-index: 1; box-sizing: border-box; }
.ut-history-timeline__content { grid-area: content; padding-top: 0; }
.ut-history-timeline__content p { margin: 0 0 8px; font-size: 18px; line-height: 1.75; font-weight: 400; color: #111; word-break: keep-all; }
.ut-history-timeline__content p:last-child { margin-bottom: 0; }
.ut-history-timeline__month { display: inline-block; min-width: 28px; margin-right: 10px; font-weight: 500; }


/* tablet */
@media (max-width: 1024px) {
  .ut-history-hero { padding: 72px 0 20px; }
  .ut-history-hero__title { font-size: 34px; }
  .ut-history-hero__desc { font-size: 16px; }
  .ut-history-timeline::before { left: 145px; }
  .ut-history-timeline__item { grid-template-columns: 110px 70px 1fr;    padding-bottom: 66px; }
  .ut-history-timeline__year { font-size: 26px; }
  .ut-history-timeline__content p { font-size: 17px; }
}

/* mobile */
@media (max-width: 767px) {
  .ut-history-inner { width: calc(100% - 28px); }
  .ut-history-hero { padding: 56px 0 18px; }
  .ut-history-hero__en { font-size: 13px; margin-bottom: 10px; }
  .ut-history-hero__title { font-size: 28px; }
  .ut-history-hero__desc { margin-top: 12px; font-size: 15px; line-height: 1.6; }
  .ut-history-section { padding: 12px 0 72px; }
  .ut-history-timeline::before { left: 12px; top: 8px; bottom: 8px; }
  .ut-history-timeline__item { grid-template-columns: 24px 1fr; grid-template-areas: "dot year" "dot content"; column-gap: 18px; row-gap: 10px; padding-bottom: 42px; }
  .ut-history-timeline__year { padding-top: 0; font-size: 24px; }
  .ut-history-timeline__dot { width: 24px; height: 24px; }
  .ut-history-timeline__content p { font-size: 16px; line-height: 1.7; }
  .ut-history-timeline__month { min-width: 24px; margin-right: 8px; }
}
/*history end*/


/* 비즈니스 카드  시작*/
/* =========================
   UTOBIOTECH BUSINESS PAGE
========================= */
.product-card { position: relative; width: 90%; }
.product-card__inner { border: 1px solid #bebebe; border-radius: 20px; padding: 60px 10px 10px 10px; height: 350px; box-sizing: border-box; text-align: center; }

@media (max-width: 500px) { .product-card { width: 100%; }
  .product-card__inner { padding: 50px 10px 10px 10px; height:320px;  }
}
.product-card__badge { position: absolute; top: -22px; left: 50%; transform: translateX(-50%); width: 78px; height: 52px; line-height: 52px; background: #ff6a00; color: #fff; font-size: 24px; font-weight: 700; text-align: center; border-radius: 30px; box-shadow: 0 3px 0 rgba(0, 0, 0, 0.15); z-index: 2; }
/* 비즈니스 카드  끝*/


/* 바이오 시작 */
/* =========================
   UTOBIOTECH BIO PAGE
========================= */
/* 전체 섹션 */
.bio-material-section { padding: 60px 20px; background: #f7f7f7; overflow: hidden; font-family: 'Pretendard', 'Noto Sans KR', sans-serif; }
.bio-material-wrap { max-width: 1200px; margin: 0 auto; display: grid; grid-template-columns: 190px 180px 1fr; gap: 30px; align-items: center; position: relative; }

/* 왼쪽 특징 리스트 */
.bio-feature-list { display: flex; flex-direction: column; gap: 18px; }
.bio-feature-card { min-height: 80px; padding: 15px 10px; border-radius: 20px; background: linear-gradient(180deg, #f3d4c9 0%, #d9d1f6 100%); box-shadow: 0 4px 12px rgba(0,0,0,0.05); display: flex; flex-direction: column; justify-content: center; text-align: center; }
.bio-feature-card2 { min-height: 80px; padding: 15px 10px; border-radius: 20px; background: linear-gradient(180deg, #f9f0eb 0%, #b4e2fa 100%); box-shadow: 0 4px 12px rgba(0,0,0,0.05); display: flex; flex-direction: column; justify-content: center; text-align: center; }
.bio-feature-card3 { min-height: 80px; padding: 15px 10px; border-radius: 20px; background: linear-gradient(180deg, #bad6fd 0%, #dbd4fd 100%); box-shadow: 0 4px 12px rgba(0,0,0,0.05); display: flex; flex-direction: column; justify-content: center; text-align: center; }
.bio-feature-card4 { min-height: 80px; padding: 15px 10px; border-radius: 20px; background: linear-gradient(180deg, #bab6f3 0%, #f4d5e5 100%); box-shadow: 0 4px 12px rgba(0,0,0,0.05); display: flex; flex-direction: column; justify-content: center; text-align: center; }

/* 가운데 세로 바 */
.bio-center-bar { position: relative; display: flex; justify-content: center; }
.bio-center-bar > span { width: 80px; height: 650px; border-radius: 80px 80px  0 0; background: linear-gradient(180deg, #e4a7a9 0%, #d2c2c2 55%, #c6d3d7 100%); display: flex; align-items: center; justify-content: center; writing-mode: vertical-rl; text-orientation: mixed; color: #fff; line-height: 1.1; }
.bio-center-bar .connector::before,
.bio-center-bar .connector::after { content: ""; position: absolute; top: 50%; transform: translateY(-50%); background: #7d7d7d; border-radius: 50%; }
.bio-center-bar .connector-left { width: 170px; left: -170px; top: 56%; }
.bio-center-bar .connector-left::before { left: -10px; width: 18px; height: 18px; }
.bio-center-bar .connector-left::after { right: -10px; width: 20px; height: 20px; }
.bio-center-bar .connector-right { width: 170px; right: -170px; top: 35%; }
.bio-center-bar .connector-right::before { left: -10px; width: 20px; height: 20px; }
.bio-center-bar .connector-right::after { display: none; }
.bio-center-bar2 { position: relative; display: flex; justify-content: center; }
.bio-center-bar2 > span { width: 80px; height: 750px; background: linear-gradient(180deg, #c6d3d7 0%, #73c3de 55%, #76bce0 100%); display: flex; align-items: center; justify-content: center; writing-mode: vertical-rl; text-orientation: mixed; color: #fff; line-height: 1.1; }
.bio-center-bar3 { position: relative; display: flex; justify-content: center; }
.bio-center-bar3 > span { width: 80px; height: 750px; background: linear-gradient(180deg, #76bce0 0%, #aca3da 55%, #a7a7d9 100%); display: flex; align-items: center; justify-content: center; writing-mode: vertical-rl; text-orientation: mixed; color: #fff; line-height: 1.1; }
.bio-center-bar4 { position: relative; display: flex; justify-content: center; }
.bio-center-bar4 > span { width: 80px; height: 750px; border-radius: 0 0 80px 80px; background: linear-gradient(180deg, #a7a7d9 0%, #98b4db 55%, #83c1da 100%); display: flex; align-items: center; justify-content: center; writing-mode: vertical-rl; text-orientation: mixed; color: #fff; line-height: 1.1; }

/* 오른쪽 컨텐츠 박스 */
.bio-content-box { position: relative; }
.bio-content-inner { background: #fff; border: 1px solid #c7c7c7; border-radius: 36px; padding: 30px; min-height: 550px; }
.bio-content-top .point-text { font-weight: 700; }
.bio-divider { height: 1px; background: #7d7d7d; margin: 42px 0 50px; }

/* 장비 이미지 */
.bio-machine-list { display: flex; align-items: flex-end; justify-content: center; gap: 40px; flex-wrap: wrap; }
.bio-machine-item { display: flex; align-items: center; justify-content: center; }
.bio-machine-item img { display: block; max-width: 100%; height: auto; object-fit: contain; }
.bio-machine-item:nth-child(1) img { width: min(18vw, 260px); }
.bio-machine-item:nth-child(2) img { width: min(22vw, 340px); }
.bio-machine-item:nth-child(3) img { width: min(18vw, 260px); }

/* 하단 배지 */
.bio-bottom-badge { position: absolute; left: 50%; bottom: -26px; transform: translateX(-50%); background: #e3e3e3; border-radius: 999px; padding: 10px 42px; text-align: center; white-space: nowrap; }

/* 1400px 이하 */
@media (max-width: 1400px) {
  .bio-material-wrap { grid-template-columns: 170px 150px 1fr; gap: 24px; }
  .bio-center-bar > span { width: 80px; height: 750px; }
  .bio-center-bar .connector-left { width: 140px; left: -140px; }
  .bio-center-bar .connector-right { width: 140px; right: -140px; }
  .bio-content-inner { padding: 36px 28px 100px; min-height: 620px; }
  .bio-center-bar2 > span { width: 80px; height: 850px; }
  .bio-center-bar2 .connector-left { width: 140px; left: -140px; }
  .bio-center-bar2 .connector-right { width: 140px; right: -140px; }
  .bio-center-bar3 > span { width: 80px; height: 850px; }
  .bio-center-bar3 .connector-left { width: 140px; left: -140px; }
  .bio-center-bar3 .connector-right { width: 140px; right: -140px; }
  .bio-center-bar4 > span { width: 80px; height: 750px; }
  .bio-center-bar4 .connector-left { width: 140px; left: -140px; }
  .bio-center-bar4 .connector-right { width: 140px; right: -140px;  }
}

/* 태블릿 */
@media (max-width: 991px) {
  .bio-material-wrap { grid-template-columns: 1fr; gap: 24px; }
  .bio-feature-list { order: 1; display: grid; grid-template-columns: repeat(2, 1fr); gap: 16px; }
  .bio-center-bar { order: 2; }
  .bio-center-bar > span { width: 100%; height: auto; min-height: 50px; writing-mode: horizontal-tb; text-orientation: initial; border-radius: 999px; padding: 18px 24px; }
  .bio-center-bar2 > span { width: 100%; height: auto; min-height: 50px; writing-mode: horizontal-tb; text-orientation: initial; border-radius: 999px; padding: 18px 24px; }
  .bio-center-bar2 { order: 2; }
  .bio-center-bar3 > span { width: 100%; height: auto; min-height: 50px; writing-mode: horizontal-tb; text-orientation: initial; border-radius: 999px; padding: 18px 24px; }
  .bio-center-bar3 { order: 2; }
  .bio-center-bar4 > span { width: 100%; height: auto; min-height: 50px; writing-mode: horizontal-tb; text-orientation: initial; border-radius: 999px; padding: 18px 24px; }
  .bio-center-bar4 { order: 2; }
  .bio-center-bar .connector { display: none; }
  .bio-content-box { order: 3; }
  .bio-content-inner { min-height: auto; }
  .bio-divider { margin: 28px 0 36px; }
  .bio-machine-list { gap: 24px; }

  .bio-machine-item:nth-child(1) img,
  .bio-machine-item:nth-child(2) img,
  .bio-machine-item:nth-child(3) img { width: min(100%, 240px); }

  .bio-bottom-badge { min-width: calc(100% - 40px); white-space: normal; padding: 10px 24px; }
}

/* 모바일 */
@media (max-width: 575px) {
  .bio-material-section { padding: 40px 16px 60px; }
  .bio-feature-list { grid-template-columns: 1fr; }
  .bio-content-inner { border-radius: 20px; padding: 24px 18px 82px; }
  .bio-content-top h2 { font-size: 22px; }
  .bio-content-top p { font-size: 15px; line-height: 1.7; }
  .bio-divider { height: 1px; margin: 24px 0 28px; }
  .bio-machine-list { flex-direction: column; align-items: center; }
  .bio-machine-item img { width: 100%; max-width: 220px; }
  .bio-bottom-badge { bottom: -22px; border-radius: 50px; }
}
/* 바이오 끝 */


/* 파트너 로고 시작 */
.partner-logo-section { padding: 40px 20px; }
.partner-logo-grid { max-width: 1200px; margin: 0 auto; display: grid; grid-template-columns: repeat(3, 1fr); }
.partner-logo-item { display: flex; align-items: center; justify-content: center; height: 240px; }
.partner-logo-item img { max-width: 72%; max-height: 80px; width: auto; height: auto; object-fit: contain; display: block; }

/* PC: 내부 라인만 */
.partner-logo-item:not(:nth-child(3n)) { border-right: 2px solid #d9d9d9; }
.partner-logo-item:nth-child(-n+3) { border-bottom: 2px solid #d9d9d9; }


/* 모바일 */
@media (max-width: 768px) {
  .partner-logo-grid { grid-template-columns: 1fr; }
  .partner-logo-item { height: 100px; border: none !important; }
  .partner-logo-item:not(:last-child) { border-bottom: 2px solid #d9d9d9 !important; }
  .partner-logo-item img { max-width: 70%; max-height: 70px; }
}
/* 파트너 로고 끝 */


/* 장비 시작 */
.equipment-section { padding: 40px 20px; }
.equipment-grid { max-width: 1200px; margin: 0 auto; display: grid; grid-template-columns: repeat(3, 1fr); }
.equipment-item { display: flex; flex-direction: column; align-items: center; justify-content: center; height: 360px; padding: 25px 20px; box-sizing: border-box; }
.equipment-thumb { width: 100%; height: 240px; display: flex; align-items: center; justify-content: center; }
.equipment-thumb img { max-width: 88%; max-height: 220px; width: auto; height: auto; object-fit: contain; display: block; }
.equipment-title { margin: 20px 0 0; font-size: 20px; font-weight: 500; color: #111; line-height: 1.4; text-align: center; word-break: keep-all; }

/* PC: 내부 라인만 */
.equipment-item:not(:nth-child(3n)) { border-right: 2px solid #d9d9d9; }
.equipment-item:nth-child(-n+3) { border-bottom: 2px solid #d9d9d9; }

/* 태블릿 */
@media (max-width: 1024px) {
  .equipment-item { height: 320px; padding: 20px 16px; }
  .equipment-thumb { height: 210px; }
  .equipment-thumb img { max-height: 190px; }
  .equipment-title { font-size: 18px; margin-top: 16px; }
}

/* 모바일 */
@media (max-width: 768px) {
  .equipment-grid { grid-template-columns: 1fr; }
  .equipment-item { height: auto; min-height: 260px; padding: 24px 12px; border: none !important; }
  .equipment-item:not(:last-child) { border-bottom: 1px solid #d9d9d9 !important; }
  .equipment-thumb { height: 170px; }
  .equipment-thumb img { max-width: 85%; max-height: 150px; }
  .equipment-title { font-size: 16px; margin-top: 14px; }
}

/* 작은 모바일 */
@media (max-width: 480px) {
  .equipment-section { padding: 20px 12px; }
  .equipment-item { min-height: 220px; padding: 20px 10px; }
  .equipment-thumb { height: 230px; }
  .equipment-thumb img { max-height: 230px; }
  .equipment-title { font-size: 15px; }
}
/* 장비 끝 */


/* 프로세스 시작*/
.process-section { background: #efefef; padding: 40px 20px; }
.process-wrap { max-width: 1200px; margin: 0 auto; display: grid; grid-template-columns: repeat(7, 1fr); gap: 20px; position: relative; }

/* PC 가로 라인 */
.process-wrap::before { content: ""; position: absolute; left: 4%; right: 4%; top: 73px; height: 3px; background: #f0a05b; z-index: 0; }
.process-item { text-align: center; position: relative; z-index: 1; }
.process-icon { height: 54px; display: flex; align-items: center; justify-content: center; margin-bottom: 18px; }
.process-icon img { max-width: 70px; max-height: 54px; width: auto; height: auto; display: block; object-fit: contain; }
.process-dot { width: 28px; height: 28px; top: -10px; border-radius: 50%; background: #fff; border: 3px solid #f0a05b; margin: 0 auto 18px; position: relative; box-sizing: border-box; }
.process-dot::after { content: "✔"; position: absolute; left: 50%; top: 45%; transform: translate(-50%, -50%); font-size: 14px; font-weight: 700; color: #f0a05b; }
.process-step { color: #f0a05b; text-decoration: underline; text-underline-offset: 3px; }
.process-title { margin: 0; color: #111; word-break: keep-all; }

/* 태블릿 */
@media (max-width: 1024px) {
  .process-wrap { grid-template-columns: repeat(3, 1fr); gap: 30px 20px; }
  .process-wrap::before { display: none; }
  .process-item { background: #fff; padding: 24px 15px; border-radius: 14px; box-shadow: 0 4px 18px rgba(0, 0, 0, 0.05); }
}

/* 모바일 */
@media (max-width: 768px) {
  .process-section { padding: 30px 16px; }
  .process-wrap { grid-template-columns: repeat(2, 1fr); gap: 16px; }
  .process-title { font-size: 16px; }
  .process-step { font-size: 14px; }
}

/* 작은 모바일 */
@media (max-width: 480px) {
  .process-wrap { grid-template-columns: repeat(2, 1fr); }
  .process-item { padding: 20px 14px; }
  .process-icon { height: 48px; }
  .process-icon img { max-width:100px; max-height: 100px; }
}
/* 프로세스 끝*/


/* 테스트 카드 시작 */
.test-card { max-width: 760px; background: #e9e9e9; padding: 20px 22px; box-sizing: border-box; }
.test-card__header { display: flex; align-items: flex-start; justify-content: space-between; gap: 20px; margin-bottom: 14px; }
.test-card__title { max-width:300px; padding: 10px 10px; background: #ff6a00; color: #fff; text-align: center; border-radius: 8px; margin-top: 30px; word-break: keep-all; }
.test-card__icon { width: 112px; height: 50px; display: flex; align-items: center; justify-content: center; }
.test-card__icon svg { width: 92px; height: 92px; display: block; }
.test-card__list { margin: 0; padding: 0; list-style: none; }
.test-card__list li { position: relative; padding-left: 14px; color: #111; letter-spacing: -1px; font-weight: 400; word-break: keep-all; }
.test-card__list li:last-child { margin-bottom: 0; }
.test-card__list li::before { content: "·"; position: absolute; left: 0; top: 0; color: #111; font-weight: 700; }
.test-card__list li span { display: inline-block; }

/* 태블릿 */
@media (max-width: 768px) {
  .test-card { padding: 18px 16px; }
  .test-card__title { min-width: 150px; padding: 9px 14px; }
  .test-card__icon { width: 92px; height: 92px; flex-basis: 92px; }
  .test-card__icon svg { width: 76px; height: 76px; }
  .test-card__list li { font-size: 16px; }
}

/* 모바일 */
@media (max-width: 480px) {
  .test-card__header { flex-direction: column; align-items: center; text-align: center; }
  .test-card__title { width: 100%; min-width: auto; }
  .test-card__list li { font-size: 15px; line-height: 1.5; }
}
/* 테스트 카드 끝*/


/* 성량분석 시작*/
.lab-section { width: 100%; padding: 20px; border: 2px dashed #222; box-sizing: border-box; }
.lab-wrap { display: grid; grid-template-columns: repeat(2, 1fr); gap: 28px; }
.lab-card { position: relative; border: 6px solid #e5e5e5; min-height: 520px; padding: 90px 30px 40px; box-sizing: border-box; }
.lab-badge { position: absolute; top: 34px; left: 34px; display: inline-block; padding: 14px 28px; background: #ff6a00; color: #fff; line-height: 1; border-radius: 10px; }
.lab-image-box { width: 100%; height: 100%; min-height: 360px; display: flex; align-items: center; justify-content: center; }
.lab-image-box img { max-width: 78%; max-height: 420px; width: auto; height: auto; object-fit: contain; display: block; }

/* 태블릿 */
@media (max-width: 1024px) {
  .lab-card { min-height: 440px; padding: 80px 24px 30px; }
  .lab-badge { top: 24px; left: 24px; font-size: 18px; padding: 12px 22px; }
  .lab-image-box img { max-width: 82%; max-height: 320px; }
}

/* 모바일 */
@media (max-width: 768px) {
  .lab-section { padding: 12px; }
  .lab-wrap { grid-template-columns: 1fr; gap: 16px; }
  .lab-card { min-height: auto; padding: 72px 18px 24px; }
  .lab-badge { top: 18px; left: 18px; padding: 10px 16px; border-radius: 8px; }
  .lab-image-box { min-height: 240px; }
  .lab-image-box img { max-width: 88%; max-height: 240px; }
}
/* 성량분석 끝*/


/* 시험절차안내 시작*/
.process-section1 { width: 100%; padding: 30px 20px; box-sizing: border-box; }
.process-grid1 { max-width: 1680px; margin: 0 auto; display: grid; grid-template-columns: repeat(5, 1fr); gap: 40px 52px; }
.process-item1 { position: relative; min-height: 200px; border: 4px solid #e7e7e7; padding: 70px 20px 28px; box-sizing: border-box; text-align: center; }
.step-badge1 { position: absolute; top: -30px; left: 50%; transform: translateX(-50%); min-width: 160px; padding: 14px 20px; background: #ff6a00; line-height: 1; border-radius: 999px; box-shadow: 0 4px 0 rgba(0, 0, 0, 0.08); white-space: nowrap; }
.process-icon1 { display: flex; align-items: center; justify-content: center; margin-bottom: 20px; }
.process-icon1 img { max-width: 130px; max-height: 130px; padding-bottom: 20px; width: auto; height: auto; object-fit: contain; display: block; }
.process-title1 { margin: 0; line-height: 1.35; word-break: keep-all; }
.process-item--logo1 { display: flex; align-items: center; justify-content: center; }
.process-logo1 img { max-width: 170px; width: 100%; height: auto; display: block; opacity: 0.55; }

/* 화살표 */
.process-item1::after { content: url('/img/test27.png'); position: absolute; right: -50px; top: 40%; transform: translateY(-50%); font-size: 90px; font-weight: 300; color: #e8e8e8; line-height: 1; }

/* 1행 마지막, 2행 마지막 화살표 제거 */
.process-item1:nth-child(5)::after,
.process-item1:nth-child(10)::after { display: none; }

/* 태블릿 */
@media (max-width: 1200px) {
  .process-grid1 { grid-template-columns: repeat(3, 1fr); gap: 30px 30px; }
  .process-item1 { min-height: 280px; padding: 64px 18px 24px; }
  .step-badge1 { min-width: 135px; font-size: 22px; padding: 12px 18px; top: -30px; }
  .process-title1 { font-size: 22px; }
  .process-icon1 { min-height: 140px; }
  .process-icon1 img { max-width: 110px; max-height: 110px; }
  .process-item1::after { display: none; }
}

/* 모바일: 한 줄에 2개 */
@media (max-width: 768px) {
  .process-section1 { padding: 20px 12px; }
  .process-grid1 { grid-template-columns: repeat(2, 1fr); gap: 18px 14px; }
  .process-item1 { min-height: 220px; padding: 52px 14px 18px; border-width: 4px; }
  .step-badge1 { min-width: 108px; font-size: 16px; padding: 10px 14px; top: -24px; }
  .process-icon1 { min-height: 100px; margin-bottom: 14px; }
  .process-icon1 img { max-width: 140px; max-height: 140px; }
  .process-title1 { font-size: 16px; line-height: 1.4; }
  .process-logo1 img { max-width: 120px; }
}
/* 시험절차안내 끝*/


@media screen and (min-width: 995px) {
    .custom-dropdown-toggle img {
        display: none;
    }
}

.custom-dropdown-toggle::after{
    display: none !important;
}

/* bg color */
.bg-gradient-sherpa-blue-black {
    background-image: linear-gradient(to right top, #23248C, #22236D, #232348, #222226, #232323);
}
.bg-gradient-sherpa-black-blue {
    background-image: linear-gradient(to right top, #232323, #222226, #232348, #22236D, #23248C);
}
/* bg transparent color */
.bg-base-color-transparent {
    background-color: rgba(87, 88, 214,.8);
}
/*  tabs style 05  */
.tab-style-05 .nav-tabs > li.nav-item {
    letter-spacing: -.5px;
}
/* accordion */
.accordion .accordion-item .accordion-header .accordion-title i {
    top: 52%;
}
.h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6 {margin-bottom: 25px}

/*  progress bar style 01  */
.progress-bar-style-01 .progress .progress-bar-title {
    bottom: 15px;
}
/* page title */
.page-title-extra-large h1 {
    font-size: 4.7rem;
    line-height: 4.7rem;
}
/* separator line */
.separator-line-9px {
    height: 9px;
}
/* tag */
.tag-cloud a {
    padding-top: 5px;
    padding-bottom: 9px;
}
/* blog comment */
.blog-comment li .btn-reply {
    padding-top: 5px;
    padding-bottom: 7px;
}
/* number pagination style 01 */
.pagination-style-01 .page-item .page-link {
    line-height: 42px;
}
.pagination-style-01 .page-item.active .page-link {
    background: var(--dark-gray);
    color: var(--white);
}
/* top right bottom left */
.bottom-minus-45px {
    bottom: -45px;
}
.right-minus-45px {
    right: -45px;
}
/* footer */
footer .footer-logo img {
    max-height: 26px;
}
footer ul li {
    margin-bottom: 0;
}
.footer-dark a:hover {
    color: var(--white);
}
/* model popup */
.mfp-bg {
    background: #000000;
    opacity: 0.7;
}
.mt-80px {
  margin-top:80px !important;
}
/* media query responsive */
@media (max-width: 1499px) {
    .navbar .navbar-nav .nav-link {
        padding-left: 15px;
        padding-right: 15px;
    }
}
@media (max-width: 1399px) {
    .navbar .navbar-nav .nav-link {
        padding-left: 13px;
        padding-right: 13px;
    }
    .sticky-wrap.shadow-in {
        left: 35px;
    }
}
@media (max-width: 1300px) {
    .sticky-wrap.shadow-in {
        left: 10px;
    }
}
@media (max-width: 991px) {
    .header-transparent .header-button .btn {
        color: var(--dark-gray);
        border-color: var(--dark-gray);
    }
    .header-transparent .header-button .btn:hover {
        border-color: var(--dark-gray);
        color: var(--white);
        background:  var(--dark-gray);
    }
    .navbar .navbar-nav .dropdown.dropdown-with-icon-style02 .dropdown-menu {
        width: calc(100% + 30px) !important;
        margin-left: -15px;
        padding: 10px 45px;
        margin-bottom: 0;
        margin-right: -15px;
    }
    .navbar .navbar-nav .dropdown.dropdown-with-icon-style02 .dropdown-menu li:last-child a {
        padding-bottom: 17px;
    }
}
@media (max-width: 767px) {
    header .navbar-brand img {
        max-height: 40px;
    }
    p {
        margin-bottom: 20px;
    }
    .page-title-extra-large h1 {
        font-size: 40px;
        line-height: 46px;
    }
    .nowgo {
      display: flex;
      justify-content: center;
    }
}
@media (max-width: 575px){
  .col-xs {
    flex: 1 1 0%;
  }
  .row-cols-xs-2 > * {
    flex: 0 0 auto;
    width: 50%;
  }
}
