/* common */
html.lenis,
html.lenis body { height: auto; }
.lenis.lenis-smooth { scroll-behavior: auto !important; }
.lenis.lenis-smooth [data-lenis-prevent] { overscroll-behavior: contain; }
.lenis.lenis-stopped { overflow: clip; }
.lenis.lenis-stopped .os-scrollbar { display: none; }
.lenis.lenis-scrolling iframe { pointer-events: none; }
html.sr .load-hidden { visibility: hidden; }
.document-loaded .main { animation: mainFadeIn .65s cubic-bezier(0.4, 0, 0.2, 1) 0s forwards; }
.main { position: relative; }
.modal-video-body { max-width: 1340px; }
[data-scroll-y="false"] { overflow-y: hidden; }
[role="button"] { cursor: pointer; }
.lenis-stopped[data-overlayscrollbars-viewport~=overflowYScroll] { overflow-y: hidden !important; }
.blind { position: absolute; width: 1px; height: 1px; clip-path: rect(0 0 0 0); overflow: hidden; }
.inner { position: relative; margin-left: auto; margin-right: auto; max-width: var(--inner); width: 90%; }
.inner-small { max-width: 1480px; }
.image-wrap { position: relative; }
.image-wrap::after { content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 100%; }
/* .heading { color: var(--heading); } */
.color-black { color: var(--clr-dark) !important; }
.color-dark { color: var(--clr-dark) !important; }
.color-primary { color: var(--clr-primary) !important; }
.color-secondary { color: var(--clr-secondary) !important; }
.color-red { color: var(--clr-red) !important; }
.color-blue { color: var(--clr-blue) !important; }
.bg-light { background-color: #fff !important; }
.bg-gray { background-color: #F5F5F5 !important; }
.bg-dark { background-color: #272B31 !important; }
.align-top { vertical-align: top; }
.word-break-all { word-break: break-all; }
.text-justify { text-align: justify !important; }
.text-center { text-align: center !important; }
.text-left { text-align: left !important; }
.text-right { text-align: right !important; }
.fw-light { font-weight: 200; }
.fw-bold { font-weight: bold; }
.fw-normal { font-weight: 400; }
.fw-medium { font-weight: 500; }
.fw-semibold { font-weight: 600; }
.font-secondary { font-family: 'Russo One'; }
.font-italic { font-style: italic; }
.w-auto { width: auto; }
.d-none { display: none !important; }
.indent-1 { text-indent: 1em; }
.indent-2 { text-indent: 2em; }
.border-0 { border: none !important; }
.letter-spacing { letter-spacing: 0.05em; }
.text-link { text-decoration: underline !important; text-underline-offset: 0.25em; }
.text-link .icon-certify { margin-left: 0.25em; width: 1em; height: 1em; }
.text-link .icon-certify::before { background-image: url("data:image/svg+xml,%3Csvg width='20' height='20' viewBox='0 0 20 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Crect x='1.75' y='1.75' width='16.5' height='16.5' rx='8.25' stroke='%2347CE78' stroke-width='1.5'/%3E%3Cpath d='M6 10.0833L8.94737 13L14 8' stroke='%2347CE78' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E%0A"); }
.tb,
.sp,
.mo { display: none !important; }
@media (hover: hover) and (pointer: fine) {
    .text-link:hover { color: var(--clr-primary); }
    /* .text-link:hover .icon-certify::before { background-image: url("data:image/svg+xml,%3Csvg width='20' height='20' viewBox='0 0 20 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Crect x='1.75' y='1.75' width='16.5' height='16.5' rx='8.25' stroke='%23FCAF17' stroke-width='1.5'/%3E%3Cpath d='M6 10.0833L8.94737 13L14 8' stroke='%23FCAF17' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E%0A"); } */
}
@media screen and (min-width: 1025px) {
    .main { min-height: calc(100vh - 348px); }
}
@media screen and (max-width: 1024px) {
    .main { min-height: calc(100vh - 263px); }

    .pc { display: none !important; }
    .tb,
    .sp { display: block !important; }
}
@media screen and (max-width: 768px) {
    .main { min-height: calc(100vh - 212px); }
}
@media screen and (max-width: 500px) {
    .tb { display: none !important; }
    .mo { display: block !important; }
}


.swiper-slide { box-sizing: border-box; }
.swiper-scrollbar { background: #D9D9D9; }
.swiper-scrollbar-drag { background: var(--clr-primary); }
.swiper-horizontal > .swiper-scrollbar,
.swiper-scrollbar.swiper-scrollbar-horizontal { left: 0; right: 0; bottom: 0; width: 100%; height: 2px; }
.swiper-button-next:after,
.swiper-rtl .swiper-button-prev:after,
.swiper-button-prev:after,
.swiper-rtl .swiper-button-next:after { content: none; }
.swiper-button-next,
.swiper-button-prev { width: 40px; height: 40px; background-repeat: no-repeat; background-position: center; background-size: 100% auto; }
.swiper-button-next { right: 0; background-image: url('/images/slide-next.svg'); }
.swiper-button-prev { left: 0; background-image: url('/images/slide-prev.svg'); }
.swiper-horizontal>.swiper-pagination-bullets,
.swiper-pagination-bullets.swiper-pagination-horizontal,
.swiper-pagination-custom,
.swiper-pagination-fraction { display: flex; align-items: center; justify-content: center; bottom: 0; }
.swiper-pagination-bullet-active { background: var(--clr-primary); }
.swiper-horizontal>.swiper-scrollbar,
.swiper-scrollbar.swiper-scrollbar-horizontal { z-index: 2; }
@media screen and (max-width: 1024px) {
    .swiper-horizontal > .swiper-scrollbar,
    .swiper-scrollbar.swiper-scrollbar-horizontal { height: 4px; }
}
@media screen and (max-width: 768px) {
    .mobile-scroll { overflow: visible; position: relative; padding-bottom: 25px; }
    .mobile-scroll img { max-width: none; }
}
@media screen and (max-width: 684px) {
    .mobile-scroll .swiper-slide { min-width: 550px; width: auto; }
}


/* Cursor */
@media (hover: hover) and (pointer: fine) {
    .cursor { z-index: 100; position: fixed; top: 0; left: 0; margin: -50px 0 0 -50px; pointer-events: none; }
    .cursor-wrap { width: 100%; height: 100%; width: 100px; height: 100px; background: var(--clr-primary); border-radius: 50%; opacity: 0; transition: all ease .15s; }
    .cursor .drag { display: block; position: relative; width: 100%; height: 100%; }
    .cursor .drag::before,
    .cursor .drag::after { content: ''; position: absolute; top: 0; bottom: 0; margin: auto; width: 30px; height: 30px; background-repeat: no-repeat; background-position: center; background-size: auto 100%; }
    .cursor .drag::before { left: 14px; background-image: url('/images/chevron-left-light.svg'); }
    .cursor .drag::after { right: 14px; background-image: url('/images/chevron-right-light.svg'); }
	.cursor[data-cursor-state="on"] .cursor-wrap { transform: none; opacity: 1; }
}
@media screen and (max-width: 1024px) {
	.cursor { display: none; }
}


.check { display: inline-flex; align-items: center; position: relative; user-select: none; }
.check label { padding-left: 8px; font-size: 1.6rem; color: var(--clr-dark); cursor: pointer; }
.check i { flex-shrink: 0; display: inline-block; vertical-align: middle; position: relative; width: 24px; height: 24px; pointer-events: none; }
.check i::before,
.check i::after { content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-size: auto 100%; background-position: center; border-radius: 50%; }
/* .check i::after { content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-image: url('/images/checked.svg'); background-size: auto 100%; background-position: center; } */
.check i::after { background-repeat: no-repeat; border: 1px solid var(--clr-primary); background-color: #ffffff; background-image: url('/images/checked-primary.svg'); transition: all ease .1s; opacity: 0; }
.check i::before { background-color: #ffffff; border: 1px solid #DDDDDD; }
.check input { z-index: 2; position: absolute; top: 0; left: 0; bottom: 0; margin: auto; width: 24px; height: 24px; color: #fff; opacity: 0; cursor: pointer; }
.check input:checked ~ i::after { opacity: 1; }
.check a { display: inline-block; margin-left: 8px; font-size: 1.6rem; color: var(--clr-black); text-decoration: underline; text-underline-offset: 0.25em; }
.check a span { vertical-align: baseline; }
.check-light label { color: #fff; cursor: pointer; }
.check-light i::after { background-color: var(--clr-primary); background-image: url('/images/check-light.svg'); }
.check-light i::before { border-color: #fff; }
.check-round i { width: 20px; height: 20px; }
.check-round i::before,
.check-round i::after { border-radius: 50%; }
.check-round i::before { background-image: none; border-color: #B3B3B3; }
.check-round i::after { background-image: url('/images/checked-light.svg'); background-color: var(--clr-primary); background-size: auto 66%; }
.radio { display: inline-flex; align-items: center; position: relative; user-select: none; }
.radio label { padding-left: 10px; font-size: 1.6rem; color: #3d3d40; cursor: pointer; }
.radio i { flex-shrink: 0; display: inline-block; vertical-align: middle; position: relative; width: 24px; height: 24px; pointer-events: none; }
.radio i::before,
.radio i::after { content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 100%; }
.radio i::after { padding: 4px; background: var(--clr-primary) url('/images/checked-light.svg') no-repeat center / auto 70%; opacity: 0; }
.radio i::before { border: 1px solid #dddddd; }
.radio input { z-index: 2; position: absolute; top: 0; left: 0; bottom: 0; margin: auto; min-width: auto !important; width: 24px; height: 24px; color: #fff; opacity: 0; cursor: pointer; }
.radio input:checked ~ i::after { opacity: 1; }
/* .radio input:checked ~ label { color: #000; } */
.radio-round i { width: 20px; height: 20px; }
.radio-round i::before,
.radio-round i::after { border-radius: 50%; }
.radio-round i::before { background-image: none; border-color: #B3B3B3; }
.radio-round i::after { background-image: url('/images/checked-light.svg'); background-color: var(--clr-primary); background-size: auto 66%; }
.input-group { display: flex; flex-wrap: wrap; align-items: center; margin: -4px -5px; }
.input-group.radio-box { margin: 0; padding: 10px 20px; min-height: 65px; border: 1px solid var(--border); border-radius: 8px; }
.input-group + .check { margin-top: 14px; }
.input-group .button { padding-top: 8px; padding-bottom: 8px; width: 140px; text-align: center; font-size: inherit; }
.input-group .check,
.input-group .radio { margin: 4px 36px 4px 4px; }
.input-group .col { padding: 5px; }
.input-group .col.auto { flex-grow: 0 !important; }
.input-group.tel { width: 100%; }
.input-group.tel .col { flex: 1 1; }
.input-group.tel .input,
.input-group.tel .select { min-width: auto; width: 100%; }
.input-group.email .col { flex: 1 1; }
.input-group.email .col:first-child input { width: 100%; }
.input-group.email .col:nth-child(2) { flex: 0 0; }
/* .input-group.email input,
.input-group.email select { min-width: 280px; } */
.input-group.regi { max-width: 600px; }
.input-group.regi .col { flex: 1 1; }
.input-group.regi .col:nth-child(2) { flex: 0 0 auto; }
.input-group.regi .col:nth-child(4) { flex: 0 0 140px; width: 100%; }
.input-group.regi .col:nth-child(4) .button { width: 100%; }
.input-group.regi .input,
.input-group.regi .select { width: 100%; }
.input-group.auto .col { flex: 1 1 auto; }
.input-group.auto .input,
.input-group.auto .select,
.input-group.auto textarea { width: 100%; }
.input-group p { margin: 6px; }

.mobile-scroll-container img { max-width: 100%; }
@media (hover: hover) and (pointer: fine) {
    .floating:hover { transform: scale(1.1); }
    .floating:hover .floating-wrap { box-shadow: -3px 3px 14px 0px rgba(234, 0, 44, 0.5), 3px -3px 14px 0px rgb(255, 121, 0, 0.5); }

    /* .check a:hover { color: var(--clr-dark); } */
}
@media screen and (max-width:1024px){
    .inner { padding: 0; width: 90%; }
    .image-wrap.border:not(.full) { padding: 60px; }

    .floating-container { right: 5%; }
    .floating-wrap { margin-bottom: 15px; width: 75px; height: 75px; }
    .floating .icon { margin-bottom: 5px; width: 35px; height: 20px; }
    .floating .text { font-size: 1.2rem; }

    .mobile-scroll-container { overflow: visible; position: relative; padding-bottom: 12px; }
    .mobile-scroll-container .swiper-slide { width: auto; }
    .mobile-scroll-container .image-wrap img { max-width: none; width: 1000px; }

    .scroll-top a { width: 55px; height: 55px; }

    .check i { width: 22px; height: 22px; }
    .check label { font-size: 1.5rem; }
    .check a { font-size: 1.5rem; }
    .input-block-group .radio-block label { font-size: 1.6rem; }

	.input-group { margin: -4px; }
	.input-group .col { flex: 1 1 auto; padding: 4px; }
	.input-group.radio-box { padding: 10px; }
	.input-group .check,
	.input-group .radio { margin: 4px 24px 4px 4px; }
    .input-group.tel { max-width: none; }
	.input-group.email .col { flex-basis: 0; }
	.input-group.email .col:nth-child(2) { flex-grow: 0; }
	.input-group.email .col .select { width: 100%; }
}
@media screen and (max-width:768px){
    .image-wrap.border:not(.full) { padding: 24px; }

    .floating-container { bottom: 25px; }
    .scroll-top { bottom: 15px; }
    .scroll-top a { width: 45px; height: 45px; }

    .check i { width: 20px; height: 20px; }
    .check label { padding-left: 6px; font-size: 1.4rem; }
    .check a { font-size: 1.4rem; }
    .input-block-group .radio-block label { font-size: 1.4rem; }

    .input-group.email .col:last-child { flex-basis: 100%; }
}


/* Icons */
.icon { z-index: 2; position: relative; display: inline-block; vertical-align: middle; width: 24px; height: 24px; }
.icon::before { content: ''; display: block; width: 100%; height: 100%; background-repeat: no-repeat; background-position: center; background-size: auto 100%; transition: all ease .15s; }
.icon-chevron-left::before { background-image: url('/images/chevron-left.svg'); }
.icon-x::before { background-image: url('/images/x.svg'); }
.icon-x-light::before { background-image: url('/images/x-light.svg'); }
.icon-chevron-right::before { background-image: url('/images/chevron-right.svg'); }
.icon-chevron-left-light::before { background-image: url('/images/chevron-left-light.svg'); }
.icon-chevron-right-light::before { background-image: url('/images/chevron-right-light.svg'); }
.icon-rotate-cw::before { background-image: url('/images/icon-rotate-cw.svg'); }
.icon-upload::before { background-image: url('/images/upload.svg'); }
.icon-danger::before { background-image: url('/images/danger.svg'); }
.icon-option::before { background-image: url('/images/option-light.svg'); }
.icon-download::before { background-image: url('/images/download.svg'); }
.icon-download-light::before { background-image: url('/images/download-light.svg'); }
.icon-arrow-long-right-light::before { background-image: url('/images/arrow-long-right-light.svg'); }
.icon-headphone::before { background-image: url('/images/headphone.svg'); }
.icon-user::before { background-image: url('/images/user.svg'); }
.icon-pin::before { background-image: url('/images/pin.svg'); }
.icon-pin2::before { background-image: url('/images/pin2.svg'); }
.icon-search-light::before { background-image: url('/images/search-light.svg'); }
.icon-plus::before { background-image: url('/images/plus.svg'); }
.icon-plus-light::before { background-image: url('/images/plus-light.svg'); }
.icon-rotate::before { background-image: url('/images/rotate.svg'); }
.icon-home::before { background-image: url('/images/home.svg'); }
.icon-external-link::before { background-image: url('/images/external-link.svg'); }
.icon-external-link-light::before { background-image: url('/images/external-link-light.svg'); }
.icon-tel::before { background-image: url('/images/tel.svg'); }
.icon-fax::before { background-image: url('/images/fax.svg'); }
.icon-copy::before { background-image: url('/images/copy.svg'); }
.icon-map::before { background-image: url('/images/map.svg'); }
@media (hover: hover) and (pointer: fine) {
    .button:hover .icon-chevron-right::before { background-image: url('/images/chevron-right-light.svg'); }
    .button:hover .icon-upload::before { background-image: url('/images/upload-light.svg'); }
    .button:hover .icon-download::before { background-image: url('/images/download-light.svg'); }
}
@media screen and (max-width: 1024px) {
}
@media screen and (max-width: 768px) {
}


/* Button */
.button { overflow: hidden; display: inline-flex; align-items: center; justify-content: center; position: relative; padding-right: 24px; padding-left: 24px; height: 50px; line-height: 50px; font-family: var(--font-display); font-size: 1.6rem; color: var(--clr-dark); font-weight: 500; background: transparent; border: 1px solid transparent; border-radius: 8px; transition-property: color, background; transition-timing-function: ease; transition-duration: .15s; }
.button span { display: block; z-index: 2; position: relative; }
.button .icon { margin-right: -0.5em; width: 24px; height: 24px; }
.button .icon:last-child { margin-left: 0.5em; margin-right: 0; }
.button .icon:first-child { margin-left: 0; margin-right: 0.5em; }
.button-center { justify-content: center; }
.button-large { line-height: 70px; height: 70px; }
.button-round { border-radius: 100px; }
.button-primary { color: #fff; background: var(--clr-primary); }
.button-primary::before { content: none; }
.button-red { color: #fff; background: var(--clr-red); }
.button-red::before { content: none; }
.button-arrow { overflow: hidden; display: inline-block; position: relative; padding-right: 60px; min-width: 220px; color: #fff; border: 1px solid #fff; transition: all ease .35s; }
.button-arrow::after { content: ''; position: absolute; top: 0; right: 30px; bottom: 0; margin: auto; display: block; width: 7px; height: 13px; background-image: url("data:image/svg+xml,%3Csvg version='1.1' id='Layer_1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 7.7 12.9' enable-background='new 0 0 7.7 12.9' xml:space='preserve' stroke='%23111111'%3E%3Cg%3E%3Cpath stroke-width='1.8' stroke-miterlimit='10' d='M5.7,6.4'/%3E%3Cline stroke-width='1.8' stroke-linecap='square' stroke-linejoin='bevel' stroke-miterlimit='10' x1='1.3' y1='1.3' x2='6.4' y2='6.4'/%3E%3Cline stroke-width='1.8' stroke-linecap='square' stroke-linejoin='bevel' stroke-miterlimit='10' x1='1.3' y1='11.6' x2='6.4' y2='6.4'/%3E%3C/g%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: center; transition: background-image ease .15s; }
.button-round { border-radius: 50px; }
.button-gradient { color: #fff; background-image: linear-gradient(48deg, var(--clr-primary), #ff7900, #ff7900, var(--clr-primary)); background-size: 400% 100%; background-position: 0%; border-color: transparent; transition: background ease .3s; }
.button-dark { color: #fff; background: var(--clr-dark); }
.button-dark::before { content: none; }
/* .button-border { color: var(--clr-dark); background: transparent; border-color: #e5e5e5; } */
.button-border { text-align: center; border: 1px solid var(--border); }
.button-border::before { content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: #23323B; border-radius: 40px; transform: translateX(-101%); transform-origin: left; transition: transform ease .35s; }
.button-border-light { color: #fff; border-color: #fff; }
.button-border-dark { text-align: center; background: #fff; border: 1px solid var(--clr-dark); }
/* .button-border-dark::before { content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: #23323B; border-radius: 40px; transform: translateX(-101%); transform-origin: left; transition: transform ease .35s; } */
.button-border-dark::before { content: none; }
.button-border-primary { color: var(--clr-primary); border-color: var(--clr-primary); }
.button-border-primary[aria-selected="true"] { color: #fff; background: var(--clr-primary); border-color: var(--clr-primary); }
.button-border-light-gray { color: #fff; background: transparent; border-color: rgba(255, 255, 255, 0.4); }
.button-border[aria-selected="true"] { color: #fff; background: var(--clr-primary); border-color: var(--clr-primary); }
.button-arrow[aria-selected="true"]::after { background-image: url("data:image/svg+xml,%3Csvg version='1.1' id='Layer_1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 7.7 12.9' enable-background='new 0 0 7.7 12.9' xml:space='preserve' stroke='%23ffffff'%3E%3Cg%3E%3Cpath stroke-width='1.8' stroke-miterlimit='10' d='M5.7,6.4'/%3E%3Cline stroke-width='1.8' stroke-linecap='square' stroke-linejoin='bevel' stroke-miterlimit='10' x1='1.3' y1='1.3' x2='6.4' y2='6.4'/%3E%3Cline stroke-width='1.8' stroke-linecap='square' stroke-linejoin='bevel' stroke-miterlimit='10' x1='1.3' y1='11.6' x2='6.4' y2='6.4'/%3E%3C/g%3E%3C/svg%3E"); }
.button-link { display: inline-flex; position: relative; padding-right: 32px; height: 24px; line-height: 24px; font-size: 1.6rem; font-weight: 500; color: var(--clr-black); }
.button-link::before,
.button-link::after { content: ''; position: absolute; top: 0; right: 0; width: 24px; height: 24px; background-repeat: no-repeat; background-position: center; background-size: auto 100%; background-image: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M10 17L14 12.5L10 8' stroke='%23101010'/%3E%3C/svg%3E%0A"); transition: all ease .65s; }
.button-link::after { transform: translateX(-100%); opacity: 0; }
.button-link-light { display: inline-flex; position: relative; padding-right: 32px; height: 24px; line-height: 24px; font-size: 1.6rem; font-weight: 500; }
.button-link-light::before,
.button-link-light::after { content: ''; position: absolute; top: 0; right: 0; width: 24px; height: 24px; background-repeat: no-repeat; background-position: center; background-size: auto 100%; background-image: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M10 17L14 12.5L10 8' stroke='white'/%3E%3C/svg%3E%0A"); transition: all ease .65s; }
.button-link-light::after { transform: translateX(-100%); opacity: 0; }
.button-white { color: #fff; }
.button-more { border-color: #fff; border-radius: 50px; }
.button-more svg { z-index: 2; position: relative; margin-left: 36px; transition: all ease .35s; }
.button-more::after { content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: #fff; border-radius: 50px; transform: translateX(-100%); transition: transform ease .65s; }
.button.disabled { pointer-events: none; }
.button-border.disabled { color: #777 !important; }
.button-naver { color: #fff; background: #00c73c; }
.button-kakao { color: #3C1E1E; background: #ffde00; }
.button-naver::before,
.button-kakao::before { content: none; }
.button-naver svg,
.button-kakao svg { margin-right: 8px; }
.button.disabled { opacity: 0.4 !important; -moz-user-select: none; user-select: none; }
@media (hover: hover) and (pointer: fine) {
    .button:hover { background-color: rgba(25, 25, 25, 0.06); }
    .button-hover:hover { color: var(--clr-primary); background-color: transparent; }
    .button-hover:hover .icon::before { background-image: url('/images/download-primary.svg'); }
    .button-primary:hover { background: var(--clr-primary-hover); }
    .button-red:hover { background: var(--clr-red-hover); }
    .button-dark:hover { background: #3a3a3f; }
    .button-light:hover { color: #fff; background-color: #fff; }
    .button-light:hover::before { transform: none; }
    .button-border:hover { color: #fff; background-color: #fff; }
    .button-border:hover::before { transform: none; }
    .button-border-dark:hover { color: #fff; background-color: var(--clr-dark); }
    /* .button-border-dark:hover::before { transform: none; } */
    .button-border-primary:hover { color: #fff; background: var(--clr-primary); }
    .button-border-light-gray:hover { background: var(--clr-primary); border-color: var(--clr-primary); }
    .button-arrow:hover { color: var(--clr-dark); background: #fff; border-color: #fff; }
    .button-arrow:hover::after { background-image: url("data:image/svg+xml,%3Csvg version='1.1' id='Layer_1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 7.7 12.9' enable-background='new 0 0 7.7 12.9' xml:space='preserve' stroke='%23ffffff'%3E%3Cg%3E%3Cpath stroke-width='1.8' stroke-miterlimit='10' d='M5.7,6.4'/%3E%3Cline stroke-width='1.8' stroke-linecap='square' stroke-linejoin='bevel' stroke-miterlimit='10' x1='1.3' y1='1.3' x2='6.4' y2='6.4'/%3E%3Cline stroke-width='1.8' stroke-linecap='square' stroke-linejoin='bevel' stroke-miterlimit='10' x1='1.3' y1='11.6' x2='6.4' y2='6.4'/%3E%3C/g%3E%3C/svg%3E"); }
    .button-gradient:hover { background-position: 20%; }
    .button-border-light:hover { color: #fff !important; background: var(--clr-primary); border-color: var(--clr-primary); }
    .button-hover-white:hover { color: #151515; background: #fff;}
    .button-hover-primary:hover { color: #fff !important; background: var(--clr-primary) !important; }
    .button-hover-primary:hover * { color: inherit; }
    .button-more:hover::after { transform: none; }
    .button-more:hover svg { stroke: #151515; }
    .button-link:hover::before,
    .button-link-light:hover::before { transform: translateX(35%); opacity: 0; }
    .button-link:hover::after,
    .button-link-light:hover::after { transform: none; opacity: 1; }
    .button-naver:hover { background: #00c23a; }
    .button-kakao:hover { background: #f7d600; }
}
@media screen and (max-width: 1024px) {
    .button { height: 50px; line-height: 50px; font-size: 1.5rem; }
    .button-arrow { padding: 12px 40px 12px 30px; }
    .button-link,
    .button-link-light { padding-right: 22px; font-size: 1.5rem; }
}
@media screen and (max-width: 768px) {
    .button { height: 45px; line-height: 45px; font-size: 1.4rem; }
    .button-link,
    .button-link-light { font-size: 1.4rem; }
}


/* Header */
.header { z-index: 11; position: fixed; top: 0; left: 0; width: 100%; height: 90px; }
.header-primary { z-index: 2; position: relative; color: #fff; transition-property: color, background, box-shadow; transition-duration: .35s, .35s, .35s; transition-timing-function: ease; }
.header-primary-wrap { z-index: 3; position: relative; }
.header-primary .logo { z-index: 3; position: absolute; top: 20px; left: 0; width: 296px; height: 46px; background: url('/images/logo.svg') no-repeat center / auto 100%; transition: all ease .35s; }
.header-primary .gnb { position: relative; }
.header-primary .hamburger,
.header-primary .gnb .close { transition: all ease .15s; }
.header-primary .hamburger { display: none; position: absolute; top: 22px; right: 40px; width: 50px; height: 50px; }
.header-primary .hamburger a { display: block; position: relative; width: 100%; height: 100%; }
.header-primary .hamburger .circle { display: block; position: absolute; top: 0; right: 0; bottom: 0; left: 0; margin: auto; width: 20px; height: 1px; background: #fff; border: none; }
.header-primary .hamburger .circle::before,
.header-primary .hamburger .circle::after { content: ''; position: absolute; width: 100%; height: 1px; background: #fff; }
.header-primary .hamburger .circle::before { top: -7px; }
.header-primary .hamburger .circle::after { top: 7px; }
.header-primary .gnb .depth1 { display: flex; }
.header-primary .gnb .depth1 .title { display: flex; align-items: center; justify-content: center; position: relative; height: 90px; font-size: 1.8rem; text-align: center; color: inherit; font-weight: 600; }
.header-primary .gnb .depth1 .title:has(+ .sub-menu .depth2) { cursor: default;}
.header-primary .gnb .depth2 { padding: 0 0 50px; height: 100%; transition: background ease .35s; }
.header-primary .gnb .depth2 > li > a { display: inline-block; padding: 5px 0; font-size: 1.7rem; font-weight: 500; }
html[lang='en'] .header-primary .gnb .depth2 > li > a { font-size: 1.7rem;}
.header-primary .gnb .close { display: none; position: fixed; top: 8px; margin: auto; }
.header-primary .gnb .close a { display: block; width: 100%; height: 100%; }
.header-primary .gnb .close .circle { display: block; position: relative; width: 100%; height: 100%; border: none; border-radius: 50%; }
.header-primary .gnb .close .circle::before,
.header-primary .gnb .close .circle::after { content: ''; position: absolute; top: 0; left: 0; right: 0; bottom: 0; margin: auto; width: 22px; height: 1px; background: #101010; }
.header-primary .gnb .close .circle::before { transform: rotate(45deg); }
.header-primary .gnb .close .circle::after { transform: rotate(-45deg); }
.header-primary .header-right { display: flex; align-items: center; z-index: 3; position: absolute; top: 20px; right: 0; }
.header-primary .header-right .button { margin-left: 10px; }
.header-primary .header-right .button-solid { padding: 0; height: 50px; line-height: 50px; font-size: 1.4rem; font-weight: 400; color: inherit; background: transparent; border: 1px solid rgba(255, 255, 255, 0.32); border-radius: 50px; }
.header-primary .header-right .button-solid span { padding: 0 18px; font-family: var(--font-display); }
.header-primary .header-right .button-solid .icon { margin-right: 0; width: 100%; height: 100%; }
.header-primary .header-right .button-round { width: 50px; border-radius: 50%; }
.header__right { z-index: 2; position: absolute; top: 0; right: 0; }
.header-language { position: relative; }
.header-language__current { display: flex; align-items: center; position: relative; padding: 0 40px 0 14px; min-width: 65px; line-height: 1; text-align: left; font-size: 1.6rem; color: inherit; font-weight: 600; }
.header-language__current::before,
.header-language__current::after { content: ''; display: block; position: absolute; top: 2px; right: 10px; width: 13px; height: 10px; background: url('/images/language-arrow-light.svg') no-repeat center / auto 300%; transition: transform ease .35s, opacity ease .35s; }
.header-language__current::after { background-image: url('/images/language-arrow.svg'); opacity: 0; }
.header-language__list { position: absolute; left: 50%; top: 35px; margin-top: 5px; width: 80px; background: #fff; border: 1px solid #555; transform: translateX(-50%); visibility: hidden; opacity: 0; transition: all ease .1s; }
.header-language__list::before { content: ''; z-index: -1; position: absolute; top: -5px; left: 0; right: 0; margin: auto; width: 10px; height: 10px; background: #fff; border: 1px solid #555; transform: rotate(45deg); }
.header-language__item { background: #fff; }
.header-language__link { display: block; padding: 10px 0; text-align: center; font-size: 14px; color: #101010; transition: all ease .15s; }
.header-language__current[aria-expanded="true"] + ul { visibility: visible; opacity: 1; }
.header-language__current[aria-expanded="true"]::after { transform: scaleY(-1); }

.header-search-handler { display: none; z-index: 10; position: fixed; top: 0; left: 0; width: 100%; height: 100vh; background: rgba(0, 0, 0, .5); opacity: 0; visibility: hidden; }
.header-search-handler-wrapper { position: relative; top: 0; padding: 80px 60px; background: #F7F7F7; }
.header-search-handler form { display: block; width: 100%; }
.header-search-handler .heading { margin-bottom: 20px; text-align: center; font-size: 3.6rem; font-weight: 700; color: var(--clr-dark); }
.header-search-handler .input-group { position: relative; margin: auto; max-width: 780px; background: #fff; border: 1px solid #ddd; border-radius: 55px; }
.header-search-handler .input-group .search { position: absolute; top: 0; right: 0; width: 80px; height: 100%; background: url('/images/search.svg') no-repeat center / auto 46%; }
.header-search-handler .input-group .input { padding-right: 100px; padding-left: 20px; width: 100%; height: 55px; font-size: 1.6rem; font-weight: 400; background: transparent; border: none; outline: none; }
.header-search-handler .close { position: absolute; top: 24px; right: 120px; width: 55px; height: 55px; background: url('/images/x.svg') no-repeat center / auto 60%; }

/* [data-header-theme="light"] .header-primary,
[data-header-sticky="true"] .header-primary { background: #fff; } */
[data-hamburger="opened"] .header-primary { background: var(--clr-black); }
/* [data-hamburger="opened"] .header-primary .language .current::before,
[data-header-theme="dark"] .header-primary .language .current::before,
[data-header-theme="light"] .header-primary .language .current::before,
[data-header-sticky="true"] .header-primary .language .current::before { background-image: url('/images/language-dark.svg'); } */
[data-header-theme="light"] .header-primary { color: var(--clr-black); background: #fff; }
[data-header-menu="true"] .header-primary,
[data-header-theme="dark"] .header-primary,
[data-header-sticky="true"] .header-primary,
[data-header-theme="transparent"][data-header-expanded="true"] .header-primary { color: #101010; background: #fff; box-shadow: 0 0 0 1px rgba(0, 0, 0, .1); }
[data-header-theme="transparent"] .header-primary .logo { background-image: url('/images/logo-light.svg'); }
[data-header-theme="transparent"][data-header-expanded="true"] .header-primary .logo { background-image: url('/images/logo.svg'); }
[data-hamburger="opened"] .header-primary .logo,
[data-header-menu="true"] .header-primary .logo,
[data-header-theme="dark"] .header-primary .logo,
[data-header-theme="light"] .header-primary .logo,
[data-header-sticky="true"] .header-primary .logo { background-image: url('/images/logo.svg'); }
[data-header-theme="transparent"] .header-primary .header-language__current::after { opacity: 0; }
/* [data-header-sticky="true"] .header-primary .language .current,
[data-header-theme="dark"] .header-primary .language .current,
[data-header-theme="light"] .header-primary .language .current { background-image: url('/images/language-arrow-dark.svg'); } */
/* [data-header-sticky="true"] .header-primary .hamburger a .circle, */
[data-header-theme="dark"] .header-primary .hamburger a .circle,
[data-header-theme="light"] .header-primary .hamburger a .circle { border-color: var(--clr-dark); }
/* [data-header-sticky="true"] .header-primary .hamburger a .circle::before,
[data-header-sticky="true"] .header-primary .hamburger a .circle::after, */
[data-header-theme="dark"] .header-primary .hamburger .circle,
[data-header-theme="light"] .header-primary .hamburger .circle,
[data-header-theme="dark"] .header-primary .hamburger a .circle::before,
[data-header-theme="dark"] .header-primary .hamburger a .circle::after,
[data-header-theme="light"] .header-primary .hamburger a .circle::before,
[data-header-theme="light"] .header-primary .hamburger a .circle::after { background: #000; }
[data-header-theme="light"] .header-primary .header-right .button-solid { background: #fff; border-color: rgba(0, 0, 0, 0.3); }
[data-header-theme="dark"] .header-primary .header-right .button-solid { background: rgba(150, 150, 150, 0.1); }
[data-header-theme="dark"] .header-primary .language li:not(:last-child)::before { background: rgba(0, 0, 0, 1); }
[data-header-theme="light"] .header-primary .language li:not(:last-child)::before { background: rgba(5, 5, 5, 0.3); }
[data-header-theme="light"] .header-primary .header-right .button-solid .icon::before { filter: brightness(0); }
[data-header-theme="light"][data-header-expanded="true"] { box-shadow: 0px 0px 0px 1px #dddddd; }
[data-header-sticky="true"][data-header-theme="light"] .header-primary { color: #000; background: #fff; box-shadow: 0px 0px 0px 1px #dddddd; }
[data-header-sticky="true"][data-header-theme="light"] .header-primary .header-right .button-solid { background: #fff; border-color: rgba(0, 0, 0, 0.3); }
/* [data-header-sticky="true"][data-header-theme="light"] .header-primary .header-right .button-solid .icon::before { filter: brightness(1); } */
[data-header-sticky="true"][data-header-theme="light"] .header-primary .hamburger a .circle::before,
[data-header-sticky="true"][data-header-theme="light"] .header-primary .hamburger a .circle::after { background: #000; }
[data-header-sticky="true"] .header-primary .header-language__current::before,
[data-header-expanded="true"] .header-primary .header-language__current::before { opacity: 0; }
[data-header-sticky="true"] .header-primary .header-language__current::after,
[data-header-expanded="true"] .header-primary .header-language__current::after,
[data-header-theme="dark"] .header-primary .header-language__current::after { opacity: 1; }
[data-header-sticky="true"] .header-primary .hamburger .circle,
[data-header-sticky="true"] .header-primary .hamburger .circle::before,
[data-header-sticky="true"] .header-primary .hamburger .circle::after { background: #101010; }
[data-hamburger="opened"][data-header-theme="light"] .header-primary { color: #000; background: #fff; }
[data-hamburger="opened"] .header-language__current { color: #101010; }
[data-hamburger="opened"] .header-primary .header-language__current::before { opacity: 0; }
[data-hamburger="opened"] .header-primary .header-language__current::after { opacity: 1; }
[data-header-theme="light"] .header-primary .gnb .close .circle::before,
[data-header-theme="light"] .header-primary .gnb .close .circle::after { background: #101010; }
[data-header-theme="light"] .header-primary .gnb { background: #fff; }
[data-header-theme="light"] .header-primary .gnb .depth1 .title::after { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='48' viewBox='0 96 960 960' width='48' fill='%23000000'%3E%3Cpath d='m375 816-43-43 198-198-198-198 43-43 241 241-241 241Z'/%3E%3C/svg%3E"); }
[data-header-theme="light"] .header-primary .gnb .depth1 > li > .title[aria-expanded="true"]::after { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='48' viewBox='0 96 960 960' width='48' fill='%23E60012'%3E%3Cpath d='m375 816-43-43 198-198-198-198 43-43 241 241-241 241Z'/%3E%3C/svg%3E"); }
@media screen and (pointer: fine) {
    .header-primary .gnb .depth2 > li > a:hover { color: var(--clr-primary); }
    .header-primary .gnb .depth1 > li > a:hover span { transform: translateY(-100%); }
    [data-header-theme="light"] .header-primary .header-right .button-solid:hover { color: #fff; }
    [data-header-theme="light"] .header-primary .header-right .button-solid:hover .icon::before { filter: brightness(1); }
}
@media screen and (min-width: 1025px) {
    .header-primary-wrap { margin: auto; max-width: 1720px; width: 90%; }
    .header-primary .gnb { overflow: hidden; z-index: 2; display: flex; justify-content: flex-end; padding-right: 180px; height: 90px; transition-property: padding, opacity, visibility; transition-timing-function: ease; transition-duration: .35s; }
    .header-primary .gnb .depth1 > li.on > .title { color: var(--clr-primary); }
    .header-primary .gnb .depth1 > li.on > .title::before { opacity: 1; }
    .header-primary .nav { transition: all ease .35s; }
    .header-primary .background { z-index: 2; position: absolute; top: 90px; left: 0; width: 100%; height: 0px; transition: opacity ease .6s; pointer-events: none; }
    .header-primary .gnb .depth1 .title { padding: 0 30px; }
    .header-primary .gnb .sub-menu { position: absolute; top: 0; left: 0; margin-top: 90px; width: calc(100% - 180px); visibility: hidden; opacity: 0; border-top: 1px solid rgba(255, 255, 255, 0.2); }
    .header-language { margin-top: 38px; }
    [data-header-theme="light"][data-header-expanded="true"] .header-primary .gnb .sub-menu { border-top-color: var(--border); }
    [data-header-theme="transparent"][data-header-expanded="true"] .header-primary .background { background: #fff; }
    [data-header-gnb="opened"] .header-primary .background { opacity: 1; }
    [data-header-spread="false"] .header-primary .gnb { visibility: hidden; opacity: 0; }
    [data-header-spread="false"] .header-primary .header-right .button-solid,
    [data-header-spread="true"] .header-primary .header-right .button-solid { visibility: visible; opacity: 1; }
    [data-header-spread="true"] .header-primary .gnb { padding-right: 128px; }
}
@media screen and (max-width: 1024px) {
    .header { z-index: 12; height: 70px; }
	.header-background { content: ''; z-index: 1; position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0, 0, 0, 0.6); visibility: hidden; opacity: 0; transition: all ease .35s; }
    .header-primary-wrap { margin: 0; }
    .header-primary { height: 100%; transition: background ease .3s; }
    .header-primary .logo { top: 23px; left: 5%; width: 153px; height: 24px; }
    .header-primary .hamburger,
    .header-primary .gnb .close { top: 10px; right: 5%; margin-right: -9px; width: 50px; height: 50px; }
    .header-primary .hamburger { display: block; }
    .header-primary .gnb { z-index: 1; overflow-y: auto; position: fixed; top: 0; right: -100%; margin-top: 70px; padding: 30px 34px 170px; max-width: 500px; width: 80%; height: 100vh !important; background: #fff; transition: all ease .6s; }
    .header-primary .gnb .depth1 { flex-direction: column; }
    .header-primary .gnb .depth1 > li:last-child { border-bottom: none; }
    .header-primary .gnb .depth1 .title { justify-content: flex-start; padding: 10px 0 2px; width: 100%; height: auto; text-align: left; font-size: 1.6rem; font-weight: 600; color: #101010; }
    .header-primary .gnb .depth1 .title::after { content: ''; z-index: 2; position: absolute; top: 0; bottom: 0; right: 4px; margin: auto; width: 26px; height: 26px; background-repeat: no-repeat; background-size: auto 100%; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='48' viewBox='0 96 960 960' width='48' fill='%23101010'%3E%3Cpath d='m375 816-43-43 198-198-198-198 43-43 241 241-241 241Z'/%3E%3C/svg%3E"); transform: rotate(90deg); transition: transform ease .15s; }
    .header-primary .gnb .depth2 { padding: 10px 0; }
    .header-primary .gnb .depth2 > li > a { padding: 6px 0.865rem; text-align: left; font-size: 1.6rem !important; font-weight: 400; color: initial;}
    .header-primary .gnb .sub-menu { overflow: hidden; margin-bottom: 10px; padding: 0; max-height: 0; opacity: 0; visibility: hidden; }
	.header-primary .gnb .depth1 > li > .title[aria-expanded="true"] { color: var(--clr-primary); }
	.header-primary .gnb .depth1 > li > .title[aria-expanded="true"]::after { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='48' viewBox='0 96 960 960' width='48' fill='%23164194'%3E%3Cpath d='m375 816-43-43 198-198-198-198 43-43 241 241-241 241Z'/%3E%3C/svg%3E"); transform: rotate(90deg) scaleX(-1); }
    .header__right { top: 26px; right: 5%; margin-right: 50px; }

    .header-search-handler-wrapper { padding: 60px 5% 40px; }
    .header-search-handler .heading { margin-bottom: 16px; font-size: 2.4rem; }
    .header-search-handler .input-group .input { padding-right: 60px; height: 50px; }
    .header-search-handler .input-group .search { width: 50px; }
    .header-search-handler .close { top: 8px; right: 5%; background-size: auto 50%; }

	[data-hamburger="opened"] .header-background { visibility: visible; opacity: 1; }
    [data-hamburger="opened"] .header-primary .hamburger { opacity: 0; visibility: hidden; }
    [data-hamburger="opened"] .header-primary .close { opacity: 1; visibility: visible; }
    [data-hamburger="opened"] .header-primary .gnb { right: 0; }
    [data-hamburger="opened"] .header-primary .gnb .close { display: block; }

    .header-primary .header-right { top: 10px; right: 39px; }
    .header-primary .header-right .button-center,
    .header-primary .header-right .button-agency { display: none; }
    .header-primary .header-right .button-search { order: 1; }
    .header-primary .header-right .button-login { order: 2; }
    .header-primary .header-right .button { margin-left: 0; width: 46px; border: none; }
    .header-primary .header-right .button .icon::before { background-size: auto 95%; }

    .header-language__current { padding-right: 30px; font-size: 1.4rem; }
    .header-language__current::after { top: 2px; width: 11px; }
}
@media screen and (max-width: 768px) {
}


/* Footer */
.footer { position: relative; color: #666; background: #ffffff; border-top: 1px solid #e5e5e5;}
.footer-sitemap { border-top: 1px solid #222; border-bottom: 1px solid #222; }
.footer-sitemap__list { display: flex; align-items: center; justify-content: center; }
.footer-sitemap__item { margin: 0 35px; }
.footer-sitemap__item a { display: block; padding: 19px 0; font-size: 1.7rem; }
.footer-primary { margin: 0 auto; padding: 80px 0; max-width: 1720px; width: 90%; }
.footer-primary .button-primary { justify-content: space-between; padding: 0 24px; width: 195px; font-family: var(--font-display); font-size: 1.6rem; font-weight: 400; }
.footer-primary__row { display: flex; justify-content: space-between; }
.footer-primary__row:first-child { margin-bottom: 40px; }
/* .footer-primary__site { display: flex; justify-content: space-between; margin: 0 -15px; }
.footer-primary__site-item { flex: 1 1; padding: 0 15px; width: 240px; }
.footer-primary__site-title { margin-bottom: 20px; color: #ffffff; }
.footer-primary__site-text { margin-top: 10px; line-height: 1.6; font-size: 1.6rem; }
.footer-primary__site-link { line-height: inherit; color: inherit; font-weight: inherit; transition: color ease .15s; } */
.footer-primary__logo { width: 255px; height: auto; }
.footer-primary__copyright { margin-top: 40px; font-size: 1.4rem; }
.footer-primary__social { display: flex; align-items: center; margin: 0 -14px; }
/* .footer-primary__social-text { margin-left: 24px; } */
.footer-primary__social-item { padding: 0 14px; }
.footer-primary__social-link { display: block; opacity: 0.6; transition: opacity ease .1s; }
.footer-primary__social-link .icon { display: block; width: 26px; height: 26px; background-repeat: no-repeat; background-position: center; background-size: auto 100%; }
.footer-primary__social-link .icon-cafe { background-image: url('/images/cafe.svg'); }
.footer-primary__social-link .icon-chat { background-image: url('/images/chat.svg'); }
.footer-primary__social-link .icon-instagram { background-image: url('/images/instagram.svg'); }
.footer-primary__social-link .icon-youtube { background-image: url('/images/youtube.svg'); }
.footer-primary__info { display: flex; flex-wrap: wrap; margin: -6px -20px; }
.footer-primary__info-item { position: relative; padding: 4px 20px; font-size: 1.6rem; font-weight: 600; color: #333; }
.footer-primary__info-item .line { position: relative; display: inline-block; padding-left: 0.875em; color: #666; font-weight: 400; }
/* .footer-primary__info-item .line::before { content: ''; position: absolute; top: 0; left: 0.42em; bottom: 0; margin: auto; width: 2px; height: 48%; background: #666666; } */
/* .footer-primary__info-item:not(:last-child)::after { content: ''; position: absolute; top: 0; right: -1px; bottom: 0; margin: auto; width: 1px; height: 15px; background: #fff; } */
.footer-primary__link { display: flex; flex-wrap: wrap; margin: 0 -20px; }
.footer-primary__link-item { position: relative; padding: 0 20px; font-size: 1.6rem; }
.footer-primary__link-item:not(:last-child)::after { content: ''; position: absolute; top: 2px; right: 0; bottom: 0; margin: auto; width: 2px; height: 12px; background: #dddddd; transform: translateY(-2px); }
.footer-primary__link a { font-size: 1.6rem; color: #AAAAAA; font-weight: 500; transition: color ease .1s; }
.footer-primary__link a b { font-weight: 700; color: #333; transition: inherit; }
.footer-primary__external-link { display: inline-flex; align-items: center; justify-content: space-between; padding: 0 20px 0 25px; width: 210px; height: 50px; line-height: 50px; color: #fff; border: 1px solid #AAAAAA; border-radius: 50px;     backface-visibility: hidden;
    transform-style: preserve-3d;
    transform: translateZ(0); }
.footer-primary__external-link::after { content: ''; display: inline-flex; width: 19px; height: 19px; background: url('/images/external-link.svg') no-repeat center / auto 100%; }

.footer-category { z-index: 12; position: fixed; top: 0; right: 0; height: 100%; transition: all cubic-bezier(0.22, 0.61, 0.36, 1) .55s; }
.footer-category__button { position: absolute; top: 260px; right: 20px; padding: 0 20px; font-family: var(--font-display); font-size: 1.6rem; font-weight: 400; color: #fff; white-space: nowrap; letter-spacing: 0.0065em; border-radius: 0; transform: rotate(90deg); transform-origin: center right; }
.footer-category__button::before,
.footer-category__button::after { content: ''; position: absolute; top: 0; width: 20px; height: 100%; background-repeat: no-repeat; background-size: auto 100%; background-image: url("data:image/svg+xml,%3Csvg width='21' height='46' viewBox='0 0 21 46' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M-2.01072e-06 0L10.9603 38.7827C12.1669 43.0521 16.0633 46 20.5 46L20.5 2.91861e-06L-2.01072e-06 0Z' fill='%23f32735'/%3E%3C/svg%3E"); pointer-events: none; }
.footer-category__button::before { left: 0; }
.footer-category__button::after { right: 0; transform: scaleX(-1); }
.footer-category__button .textbox { display: flex; align-items: center; padding-left: 0.6em; height: 46px; line-height: 46px; background: #f32735; }
.footer-category__button .textbox .icon { margin-left: 0.4em; }
.footer-category__button .textbox .icon::before { background-image: url("data:image/svg+xml,%3Csvg width='17' height='17' viewBox='0 0 17 17' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M11.8327 7.16667L8.49935 10.5L5.16602 7.16667' stroke='white' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E%0A"); }
.footer-category__scroll { overflow-x: hidden; overflow-y: auto; position: relative; padding: 5px 32px 32px; }
.footer-category__scroll::after { content: ''; position: absolute; bottom: 0; left: 0; width: 100%; height: 100px; background: linear-gradient(to bottom, rgba(0, 0, 0, 0), rgba(0, 0, 0, 1)); transition: all ease .15s; pointer-events: none; }
.footer-category__scroll[data-overlayscrollbars-position="end"]::after { opacity: 0; visibility: hidden; }
.footer-category__lists { display: flex; flex-direction: column; position: absolute; top: 0; left: 0; padding-top: 28px; width: 260px; height: 100%; text-align: center; background: #010101; }
.footer-category__heading { margin-bottom: 10px; padding: 0 32px; font-size: 1.6rem; color: #fff; }
.footer-category__ul { display: flex; flex-wrap: wrap; margin: -6px auto; width: 95%; }
.footer-category__item { width: 50%; padding: 6px; }
.footer-category__link { display: block; color: #fff; }
.footer-category__icon { display: inline-flex; align-items: center; justify-content: center; position: relative; width: 66px; height: 66px; border-radius: 50%; }
.footer-category__icon::before { content: ''; z-index: -1; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: var(--clr-primary); border-radius: 50%; transform: scale(.65); opacity: 0; transition: all ease .15s; }
.footer-category__icon .item { will-change: transform; display: block; width: 66px; height: auto; }
.footer-category__title { margin-top: -0.25em; font-size: 1.6rem; }
.footer-category__button[aria-pressed="true"] .textbox .icon::before { transform: scaleY(-1); }

.footer-floaty { overflow: hidden; z-index: 11; position: fixed; bottom: 0; right: 0; pointer-events: none; }
.footer-floaty__list { display: flex; flex-direction: column; align-items: flex-end; }
.footer-floaty__link { overflow: hidden; display: flex; align-items: center; margin-right: 100px; border-radius: 16px 16px 0 0; }
.footer-floaty__link-item { display: inline-flex; align-items: center; justify-content: center; width: 270px; height: 56px; line-height: 56px; font-size: 1.6rem; font-weight: 500; color: #fff; background: rgba(22, 64, 148, 0.75); transition: all ease .1s; }
html[lang='en'] .footer-floaty__link-item { width: 350px;}
.footer-floaty__link-item:last-child { background: rgba(66, 95, 150, 0.75); }
.footer-floaty__link-item .text { padding-right: 6px;  padding-left: 6px;}
.footer-floaty__button { overflow: hidden; display: inline-flex; align-items: center; margin-bottom: 10px; font-size: 1.8rem; font-weight: 400; border-radius: 70px; }
.footer-floaty__button .textbox { display: flex; align-items: center; margin-right: 70px; padding: 0 30px 0 20px; height: 70px; line-height: 70px; color: #fff; background: #333333; border-radius: 70px; box-shadow: 0 0 15px 0 rgba(0, 0, 0, .1), 0 0 4px 0 rgba(0, 0, 0, .1); transform: translateX(100%); transition: all ease .3s; pointer-events: all; }
.footer-floaty__button .text { display: flex; align-items: center; transition: all ease .3s; white-space: nowrap; font-size: 1.6rem; transform: translateX(14px); }
.footer-floaty__button .text::after { content: ''; display: inline-flex; margin-left: 0.66em; width: 20px; height: 20px; background-repeat: no-repeat; background-position: center; background-size: auto 100%; background-image: url("data:image/svg+xml,%3Csvg width='20' height='20' viewBox='0 0 20 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M10.0007 15.8337L15.834 10.0003M15.834 10.0003L10.0007 4.16699M15.834 10.0003L4.16732 10.0003' stroke='white' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E%0A"); }
.footer-floaty__button .icon { margin-right: 8px; width: 28px; height: 28px; background-repeat: no-repeat; background-position: center; background-size: auto 100%; }
.footer-floaty__button .icon-menu::before { background-image: url('/images/floating/menu.svg'); }
.footer-floaty__button .icon-calendar::before { background-image: url('/images/floating/calendar.svg'); }
.footer-floaty__button .icon-badge::before { background-image: url('/images/floating/badge.svg'); }
.footer-floaty__button .icon-bluewave::before { background-image: url('/images/floating/bluewave.svg'); }
.footer-floaty__top { display: flex; justify-content: flex-end; margin: 0 60px 30px 0; }
.footer-floaty__top-button { display: flex; align-items: center; width: 70px; height: 70px; font-size: 1.8rem; font-weight: 700; color: #fff; background: var(--clr-primary); border-radius: 50%; outline: none; transition: all ease .35s; visibility: hidden; opacity: 0; pointer-events: all; }
.footer-floaty__top-button::before { content: ''; display: block; width: 100%; height: 32px; background: url('/images/scroll-top-arrow.svg') no-repeat center / auto 100%; }
.footer-floaty__button--toggle { display: none; }
.footer-floaty__button--toggle .textbox { background: var(--clr-red); }
.footer-category__close { display: none; position: absolute; top: 0; right: 0; width: 60px; height: 60px; background: url('/images/x-light.svg') no-repeat center / auto 40%; }
[data-floating="false"] { position: absolute; }
[data-scroll-top="true"] .footer-floaty { pointer-events: auto; }
[data-scroll-top="true"] .footer-floaty__top-button { opacity: 1; visibility: visible; transition: ease .3s; }
.wrap.sub .footer-floaty .footer-floaty__link{ display: none;}
@media (hover: hover) and (pointer: fine) {
    /* .footer-primary__site-link:hover { color: #fff; } */
    .footer-floaty__link-item:hover { background: rgba(15, 52, 126, 0.8); }
    .footer-floaty__link-item:hover:last-child { background: rgba(52, 79, 129, 0.8); }
    .footer-primary__link a:hover { color: var(--clr-primary); }
    .footer-primary__link a:hover b { color: inherit; }
    .footer-primary__social-link:hover { opacity: 1; }
    .footer-sitemap__item a:hover { color: var(--clr-primary); }
    .footer-floaty__button .textbox:hover { background: var(--clr-primary); transform: translateX(70px); }
    .footer-floaty__button .textbox:hover .text { transform: none; }
    .footer-category__link:hover .footer-category__icon::before { transform: scale(1); opacity: 1; }
}
@media screen and (min-width: 1025px) {
    .footer-primary__info { max-width: 750px; }
    html[lang='en'] .footer-primary__info { max-width: 1120px; }
    .footer-primary__info-item:nth-child(2)::after { content: none; }
    .footer-primary__row:first-child { align-items: center; }
    .footer-primary__row:first-child .footer-primary__col:first-child { display: flex; align-items: flex-end; }
    .footer-primary__logo { margin-right: 30px; }
    .footer-category[data-category="opened"] { right: 260px; }
}
@media screen and (max-width: 1024px) {
    .footer-primary__row:first-child { flex-direction: column; margin-bottom: 20px; }
    .footer-primary__row:last-child { flex-direction: column-reverse; }
    .footer-primary__logo { margin-bottom: 24px; width: 180px; }
    .footer-primary__link { margin: 0 -14px; }
    .footer-primary__link-item { padding: 0 14px; }
    .footer-primary__link-item:not(:last-child)::after { top: 4px; width: 1px; }
    .footer-primary__link a { font-size: 1.5rem; }
    .footer-primary__info-item { font-size: 1.5rem; }
    .footer-primary__social { margin: 20px -10px -10px; }
    .footer-primary__social-item { padding: 0 10px; }
    .footer-primary__social-link .icon { width: 22px; height: 22px; }
    .footer-primary__copyright { margin-top: 30px; font-size: 1.3rem; }
    .footer-primary .button-primary { margin-top: 35px; font-size: 1.4rem; }
    .footer-primary__external-link { height: 45px; line-height: 45px; }

	.footer-floaty { bottom: 20px; right: 20px; }
    .footer-floaty__top { margin: 0; }
	.footer-floaty__top-button { width: 45px; height: 45px; }
    .footer-floaty__button { margin-bottom: 5px; }
    .footer-floaty__button .textbox { justify-content: center; margin-right: 0; padding: 0; width: 45px; height: 45px; line-height: 45px; transform: none; }
    .footer-floaty__button .text { position: absolute; width: 1px; height: 1px; clip-path: rect(0 0 0 0); overflow: hidden; }
    .footer-floaty__button .icon { margin-right: 0; width: 22px; height: 22px; }
    .footer-floaty__button--toggle { display: block; }
    .footer-category { padding: 1.6rem; width: 100%; background: rgba(0, 0, 0, 0.6); visibility: hidden; opacity: 0; transition: none; }
    .footer-category__button { display: none; }
    .footer-category__lists { position: relative; padding-top: 20px; width: 100%; border-radius: 10px; }
    .footer-category__heading { margin-bottom: 20px; }
    .footer-category__item { width: 25%; }
    .footer-category__close { display: block; }
    .footer-sitemap { display: none; }
    .footer-floaty__link { display: none; }
}
@media screen and (max-width: 768px) {
    .footer-primary { padding: 45px 0; }
    .footer-primary__logo { width: 153px; }
    .footer-primary__info { margin: 0 -5px; }
    .footer-primary__info-item { display: flex; padding: 0px 5px; width: 100%; font-size: 1.4rem; }
    .footer-primary__copyright { margin-top: 20px; }

    .footer-category__item { width: 33.33333%; }
    .footer-category__title { margin-top: -0.5em; font-size: 1.4rem; }
    .footer-floaty { bottom: 15px; right: 15px; }
}


/* ------- Modal ------- */
.modal-container { display: none; z-index: 11; position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0, 0, 0, 0.7); }
.modal-container .modal-wrapper { display: flex; flex-direction: column; align-items: center; justify-content: center; margin: 5px; width: auto; height: 100%; min-height: calc(100% - 10px); max-height: calc(100% - 10px); }
.modal-container .modal { overflow: hidden; display: flex; flex-direction: column; justify-content: center; position: relative; padding: 0 60px; max-width: 800px; width: 100%; height: auto; transform: scale(0.9); animation: zoomIn ease .35s forwards; }
.modal-container .modal-body { overflow-x: hidden; overflow-y: auto; padding: 24px 5%; max-height: 600px; color: var(--clr-black); background: #fff; }
.modal-container .modal-body::-webkit-scrollbar { width: 22px; }
.modal-container .modal-body::-webkit-scrollbar-thumb { background-color: var(--clr-primary); border: 7px solid rgba(255, 255, 255, 1); border-radius: 22px; }
.modal-container .modal-body::-webkit-scrollbar-track { background-color: rgba(0, 0, 0, 0); }
.modal-container .modal-body p:not(.head-title) { margin: 0.25em 0; }
.modal-container .modal .close { display: block; position: absolute; top: -20px; right: 0; width: 60px; height: 60px; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' class='feather feather-x'%3E%3Cline x1='18' y1='6' x2='6' y2='18'%3E%3C/line%3E%3Cline x1='6' y1='6' x2='18' y2='18'%3E%3C/line%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: center; background-size: auto 55%; }
.modal-container .modal img { max-width: 100%; }
.modal-container .head-title { margin-bottom: 15px; padding-bottom: 10px; text-align: center; font-size: 1.6rem; font-weight: 600; border-bottom: 1px solid var(--border-c); }
.modal-container--auto .modal { max-width: 100%; width: auto; }
.modal-container--flat .modal-body { padding: 0; }
.modal-container .modal-agree h2{font-size:20px}
.modal-container .modal-agree p{font-size:1.6rem;}
.modal-container .modal-agree ul { list-style: inherit; margin: revert; padding: revert; }
.modal-container .modal-agree ul li { font-size:1.6rem; list-style: inherit; }
.modal-container.modal-opened .modal { animation-name: zoomOut; }
@keyframes zoomIn {
	from { transform: scale(1); }
	to { transform: scale(0.9); }
}
@keyframes zoomOut {
	from { transform: scale(0.9); }
	to { transform: scale(1); }
}
@media screen and (max-width: 768px) {
    .modal-container .modal{padding:0 20px; overflow:unset; max-height:500px;}
    .modal-container .modal .close{top:-48px;}

    .modal-container .modal-agree h2{font-size:1.6rem;}
    .modal-container .modal-agree p{font-size:14px;}
    .modal-container .modal-agree ul li{font-size:14px;}
}


/* Pagination */
.pagination { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; margin-top: 60px; }
.pagination .page-item .page-link { display: flex; align-items: center; justify-content: center; margin: 0 4px; padding-right: 0.5em; padding-left: 0.5em; width: 40px; height: 40px; font-size: 1.6rem; font-weight: 400; color: #23323B; border: 1px solid transparent; border-radius: 50%; }
/* .pagination .page-item.active .page-link { color: #fff; background: #01ABAA; } */
/* .pagination .page-item:nth-child(1) .page-link,
.pagination .page-item:nth-child(2) .page-link,
.pagination .page-item:nth-last-child(1) .page-link,
.pagination .page-item:nth-last-child(2) .page-link { padding-right: 0; padding-left: 0; width: 40px; } */
.pagination .page-item .page-link .number { display: flex; align-items: center; justify-content: center; padding-top: 4px; text-align: center; border-bottom: 1px solid transparent; }
.pagination .page-item.active .page-link { color: #fff; background: var(--clr-primary); }
.pagination .page-item .page-link span { display: block; width: 100%; height: 100%; background-repeat: no-repeat; background-position: center; background-size: auto 120%; }
.pagination .page-item .page-link span.first { background-image: url('/images/pagination-arrow-first.svg'); }
.pagination .page-item .page-link span.previous { background-image: url('/images/pagination-arrow-prev.svg'); }
.pagination .page-item .page-link span.next { background-image: url('/images/pagination-arrow-next.svg'); }
.pagination .page-item .page-link span.last { background-image: url('/images/pagination-arrow-last.svg'); }
.pagination .page-item.disabled,
.pagination .disabled > .page-link { opacity: 0.55; pointer-events: none; }
@media screen and (pointer: fine) {
    /* .pagination .page-item:nth-child(1) .page-link:hover,
    .pagination .page-item:nth-child(2) .page-link:hover,
    .pagination .page-item:nth-last-child(1) .page-link:hover,
    .pagination .page-item:nth-last-child(2) .page-link:hover { background: #3574f2; } */
    /* .pagination .page-item .page-link:hover { color: #01ABAA; } */
    /* .pagination .page-item .page-link:hover span.first { background-image: url('../images/pagination-arrow-first.png'); }
    .pagination .page-item .page-link:hover span.previous { background-image: url('../images/pagination-arrow-previous.png'); }
    .pagination .page-item .page-link:hover span.next { background-image: url('../images/pagination-arrow-next.png'); }
    .pagination .page-item .page-link:hover span.last { background-image: url('../images/pagination-arrow-last.png'); } */
}
@media screen and (max-width: 1024px) {
    .pagination { margin-top: 50px; }
    .pagination .page-item:nth-child(1) .page-link,
    .pagination .page-item:nth-child(2) .page-link,
    .pagination .page-item:nth-last-child(1) .page-link,
    .pagination .page-item:nth-last-child(2) .page-link { width: 36px; }
    .pagination .page-item .page-link { font-size: 1.4rem; width: 36px; height: 36px; line-height: 36px; }
}
@media screen and (max-width: 768px) {
    .pagination { margin-top: 30px; }
    .pagination .page-item:nth-child(1) .page-link,
    .pagination .page-item:nth-child(2) .page-link,
    .pagination .page-item:nth-last-child(1) .page-link,
    .pagination .page-item:nth-last-child(2) .page-link { width: 30px; }
    .pagination .page-item .page-link { font-size: 1.3rem; }
    .pagination .page-item .page-link span { background-size: auto 100%; }
}
@media screen and (max-width: 500px) {
    .pagination .page-item .page-link { margin: 0; width: 30px; height: 30px; line-height: 30px; }
}


.lenis-scrolling .document-scrollbar { opacity: 1; }
.os-scrollbar { z-index: 2; }
.document-scrollbar { opacity: 0; }
.os-theme-dark {
    --os-handle-bg: var(--clr-primary);
    --os-handle-bg-hover: var(--clr-primary);
    --os-handle-bg-active: var(--clr-primary);
}
@media screen and (max-width: 1024px) {
    .os-scrollbar-vertical .os-scrollbar-handle { width: 4px; }
    .os-scrollbar { display: none; }
}

.dot-list > li { position: relative; margin-bottom: 0.1em; padding-left: 1em; }
.dot-list > li::before { content: ''; position: absolute; top: 0.625em; left: 0; width: 0.2em; height: 0.2em; background: currentColor; border-radius: 50%; will-change: transform; }
