@charset "utf-8";

/*
 * KSMS XEDITION customization layer
 * 원본 layout.css를 직접 크게 변경하지 않고, 이 파일에서 덮어씁니다.
 */
:root {
    --ksms-green: #55a630;
    --ksms-green-dark: #2f6f2c;
    --ksms-ink: #1d252c;
    --ksms-muted: #66727d;
    --ksms-line: #e6eaed;
    --ksms-bg: #f7f9f8;
    --ksms-width: 1200px;
}

html,
body {
    min-width: 0;
}

body {
    color: var(--ksms-ink);
    background: #fff;
}

.container,
.fixed_header .header_wrap.shrink {
    min-width: 0;
}

.header,
.body.fixed-width,
.footer .f_info_area {
    width: min(var(--ksms-width), calc(100% - 48px));
    margin-left: auto;
    margin-right: auto;
}

.header_wrap {
    border-bottom: 1px solid var(--ksms-line);
    background: rgba(255, 255, 255, .97);
}

.header > .logo-item a {
    color: var(--ksms-ink);
    font-weight: 800;
    letter-spacing: -.04em;
}

.gnb > ul > li > a {
    color: var(--ksms-ink);
    font-weight: 700;
}

.gnb > ul > li > a:hover,
.gnb > ul > li > a:focus,
.gnb > ul > li.active > a,
.gnb > ul > li.on > a {
    color: var(--ksms-green-dark);
}

.body {
    min-height: 420px;
}

.footer {
    border-top-color: var(--ksms-line);
    border-bottom-color: var(--ksms-green) !important;
    background: var(--ksms-bg);
}

.footer .f_cr_area {
    background: var(--ksms-ink);
}

.footer .copyright a:hover,
.footer .copyright a:focus,
.footer .copyright a:active {
    color: #a8df82;
}

.btn_top {
    border-color: var(--ksms-green-dark);
    background: var(--ksms-green-dark);
}

@media all and (max-width: 768px) {
    .header,
    .body.fixed-width,
    .footer .f_info_area {
        width: calc(100% - 32px);
    }

    .container.fixed_header {
        padding-top: 60px;
    }

    .header > h1 {
        max-width: calc(100% - 120px);
    }

    .header > h1 img {
        max-width: 100%;
        height: auto;
    }

    .body {
        padding: 24px 0;
    }
}

/* KSMS v2: 서브 전용 슬라이드 */
.ksms-sub-slider{height:300px;background:#183328;overflow:hidden}
.ksms-sub-slider .swiper-slide{position:relative;background-position:center;background-size:cover}
.ksms-sub-slider .swiper-slide:before{content:"";position:absolute;inset:0;background:rgba(5,24,18,.42)}
.ksms-sub-slider .ksms-sub-caption{position:relative;z-index:2;max-width:1200px;height:100%;margin:0 auto;padding:0 30px;display:flex;flex-direction:column;justify-content:center;color:#fff}
.ksms-sub-slider .ksms-sub-caption h1{margin:0 0 10px;font-size:38px;line-height:1.2;font-weight:700}
.ksms-sub-slider .ksms-sub-caption p{margin:0;font-size:17px;line-height:1.7}
.ksms-sub-slider .swiper-pagination-switch{background:#fff;opacity:.55}
.ksms-sub-slider .swiper-active-switch{opacity:1}

/* KSMS v2: 관리형 사이드바 */
.body.sub .lnb.ksms-sidebar{background:#fff}
.ksms-sidebar-title{margin:0;padding:22px 20px;background:#1f5d47;color:#fff;font-size:22px;line-height:1.3;font-weight:700}
.ksms-sidebar-image{display:block;margin:0 0 18px}
.ksms-sidebar-image img{display:block;width:100%;height:auto}
.ksms-sidebar-block{margin-top:18px;padding:18px;border:1px solid #e1e7e3;background:#fff;box-sizing:border-box}
.ksms-sidebar-block h3{margin:0 0 10px;color:#173d30;font-size:18px}
.ksms-sidebar-block .ksms-sidebar-text{color:#555;line-height:1.7;white-space:normal}
.ksms-sidebar-buttons{margin-top:14px}
.ksms-sidebar-buttons a{display:block;margin-top:8px;padding:11px 12px;background:#1f5d47;color:#fff;text-align:center;text-decoration:none;border-radius:3px}
.ksms-sidebar-buttons a:hover,.ksms-sidebar-buttons a:focus{background:#174936;color:#fff}
.ksms-sidebar-custom{margin-top:18px}
@media (max-width:767px){
  .ksms-sub-slider{height:220px}
  .ksms-sub-slider .ksms-sub-caption{padding:0 20px}
  .ksms-sub-slider .ksms-sub-caption h1{font-size:27px}
  .ksms-sub-slider .ksms-sub-caption p{font-size:14px}
}


/* KSMS refined header tools */
.header > .side.ksms-header-tools{margin-top:31px;margin-left:24px;line-height:normal}
.header > .side.ksms-header-tools > ul{display:flex;align-items:center;gap:8px;margin:0;padding:0}
.header > .side.ksms-header-tools > ul > li{float:none}
.header > .side.ksms-header-tools > ul > li > a.ksms-tool-button{display:flex;align-items:center;justify-content:center;width:auto;height:40px;margin:0;border:1px solid #e3e7e5;background:#fff;color:#555;box-sizing:border-box;transition:border-color .2s ease,background-color .2s ease,color .2s ease,box-shadow .2s ease}
.header > .side.ksms-header-tools > ul > li > a.ksms-search-button{width:40px;border-radius:50%;font-size:19px;line-height:1}
.header > .side.ksms-header-tools > ul > li > a.ksms-account-button{gap:7px;min-width:40px;padding:0 13px;border-radius:21px;font-size:13px;font-weight:600;white-space:nowrap}
.header > .side.ksms-header-tools > ul > li > a.ksms-tool-button:hover,.header > .side.ksms-header-tools > ul > li > a.ksms-tool-button:focus,.header > .side.ksms-header-tools > ul > li.on > a.ksms-tool-button{border-color:#b8c9c1;background:#f5f9f7;color:#1f5d47;box-shadow:0 4px 14px rgba(31,93,71,.10);text-decoration:none}
.ksms-account-icon{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;background:#edf4f0;color:#1f5d47;font-size:15px}
.ksms-account-name{max-width:88px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ksms-account-arrow{font-size:12px;color:#999}
.header > .side.ksms-header-tools > ul .ly.ly_login.ksms-account-menu{right:0;margin-top:8px}
.header > .side.ksms-header-tools > ul .ly.ly_login.ksms-account-menu ul{min-width:150px;margin-top:10px;padding:7px 0;border-radius:8px;background:#fff;box-shadow:0 12px 30px rgba(0,0,0,.14);border:1px solid #e7ebe9;overflow:hidden}
.header > .side.ksms-header-tools > ul .ly.ly_login.ksms-account-menu a{min-width:120px;height:38px;padding:0 17px;line-height:38px;color:#555;background:#fff}
.header > .side.ksms-header-tools > ul .ly.ly_login.ksms-account-menu a:hover{color:#1f5d47;background:#f3f8f5}
.header > .side.ksms-header-tools > ul > li .login_after{overflow:visible;width:auto;height:40px;margin-top:0;border-radius:21px}
.header > .side.ksms-header-tools > ul > li .login_after ~ .ly_login .edge{right:24px}
@media (max-width:1100px){.ksms-account-name,.ksms-account-arrow{display:none}.header > .side.ksms-header-tools > ul > li > a.ksms-account-button{min-width:40px;padding:0 7px}}
