@charset "utf-8";
@import url('./defaults/reset.css?ver=240126');
@import url('./defaults/utils.css?ver=240126');
@import url('./defaults/board.css?ver=240126');
@import url('./defaults/popup.css?ver=240126');
@import url('./defaults/ckeditor5.css?ver=240126');
@import url('./defaults/scroll-ani-transition.css?ver=240126');


@font-face {
  font-family: 'GmarketSans';
  src: url('../font/GmarketSansLight.woff') format('woff');
  font-weight: 300;
}
@font-face {
  font-family: 'GmarketSans';
  src: url('../font/GmarketSansMedium.woff') format('woff');
  font-weight: 500;
}
@font-face {
  font-family: 'GmarketSans';
  src: url('../font/GmarketSansBold.woff') format('woff');
  font-weight: 700;
}

#sian-nav {position:fixed;top: 120px;right: 0;z-index: 9999999999;}
#sian-nav a {display: block; font-size: 14px; background-color: #666; color: #fff; line-height: 30px; padding: 0 10px; border-radius: 5px 0 0 5px; margin-bottom: 2px; transition: background-color 0.3s;  min-width: 80px;}
#sian-nav a:hover {background-color: #999;}
#sian-nav a.active {background-color: #FC6262; color: #fff;font-weight: 700;}



/* ** 전역적으로 사용될 변수 스타일을 작성합니다. */
:root {
  --container-width: 1200px;
  --container-medium-width: 1100px;
  --container-narrow-width: 1024px;
  --container-wide-width: 1400px;

  --primary: #4D4DF8;
  --sky: #26B5D9;
  --purple: #A554EB;
  --blue :#007DF9;

  
  --ff-primary: "Pretendard", "맑은 고딕", sans-serif;
  --ff-secondary: 'Pretendard', var(--ff-primary);
  --ff-tertiary: Arial, var(--ff-primary), var(--ff-secondary), sans-serif;
  
  --cubic-pop1: cubic-bezier(.85,.14,.29,.99);
  --cubic-pop2: cubic-bezier(.71,.45,.36,1.31);
  --cubic-pop3: cubic-bezier(.85,.14,.29,.99);
  
  --scrollbar-color: var(--primary);
}

/* Base assets */
body {font-family: var(--ff-primary); letter-spacing: 0em;}





.more-btn {margin-top: 31px;padding: .7rem 1.5rem;  border-radius: 50px; border:2px solid var(--primary); color:var(--primary); font-weight: 600; font-size: 20px; display: inline-flex; justify-content: space-between; align-items: center; gap: 1rem;transition: 0.2s ease; min-width: 195px;}
.more-btn.primary {background: var(--primary); color: #fff;}
.more-btn.primary svg path {stroke: #fff;}
.more-btn.primary svg line {stroke: #fff;}

.more-btn.gray {color:#71727E; border-color: #71727E;}



@media (hover: hover) {
  .more-btn:hover {background: var(--primary); color: #fff;}
  .more-btn:hover svg path {stroke: #fff;}
  .more-btn:hover svg line {stroke: #fff;}
  .more-btn.primary:hover {background: #fff; color: var(--primary);}
  .more-btn.primary:hover svg path {stroke: var(--primary);}
  .more-btn.primary:hover svg line {stroke: var(--primary);}

  .more-btn.gray:hover {border-color: var(--primary); color: #fff;}
}

@media screen and (max-width: 1399px) {
  .more-btn {font-size: 16px; min-width: 150px; padding: .5rem 1.5rem ;}
}
@media screen and (max-width: 767px) {}


/* Header */
.header {position: fixed; top: 0; left: 0; width: 100%; height: 100px; z-index: 9999; font-family: var(--ff-primary); transition: background 0s, transform .4s; background: rgb(0,0,0,.7); color: #fff;}
.header-container {display: grid; grid-template-columns: 150px 1fr 150px; align-items: center; height: 100%; gap: 55px;  padding-inline: 60px; width: 100%;}
.header .logo {display: flex; position: relative; font-size: 42px; }
.header .logo img {display: block; transition: opacity .4s; }
.header .logo img.light {opacity: 1;}
.header .logo img.dark {position: absolute; top: 0; left: 0; opacity: 0;}

.header-gnb {display: flex; margin: 0 auto; height: 100%;}
.header-gnb-item {display: flex; align-items: stretch; position: relative;}
.header-gnb-item > a {display: flex; justify-content: center; align-items: center; text-align: center;  padding-inline: 30px; font-weight: 500; text-transform: uppercase; font-size: 18px; position: relative; opacity: 0.5;}
.header-gnb-item > a.active {opacity: 1;}

.header-submenu {position: absolute; top: 100%; left: 50%; transform: translate(-50%, 0px); padding: 20px 15px; background: black; border-block: 1px solid rgb(255,255,255,0.3); border-radius: 0px; overflow: hidden; box-shadow: 0 5px 10px rgb(0,0,0,.05); color: #303030; width: 200vw; height: auto; padding-block: 10px; min-width: 180px; opacity: 0; transition: transform .5s var(--easing1), opacity .5s var(--easing1); text-align: center; pointer-events: none; font-family: var(--ff-primary); display: flex; justify-content: center; color: white;}
.header-submenu-item > a {display: block; padding: 0.5em 20px; color: rgb(255,255,255,.7);}

.header-etc-nav {display: flex; justify-content: flex-end; align-items: center; gap: 25px; }

.header-lang-nav {}

.header-etc-nav .lang-ls {font-size: 14px; font-family: var(--ff-primary); width: 61px; border:1px solid #fff; border-radius: 19px; display: flex; align-items: center; justify-content: center; transition: width .3s ease;  right: 0; }
.header-etc-nav .lang-ls .btn {color:rgba(255, 255, 255,0.7); opacity: 0; display: none; line-height: 1;padding: 8px 5px;}
.header-etc-nav .lang-ls .btn.active {display: flex; color:#fff; opacity: 1;}
.header-etc-nav .lang-ls .divide {width: 1px; height: 12px; background:rgba(255, 255, 255,0.3); display: none; }

.header-etc-nav .lang-ls:hover {width: 100px; }
.header-etc-nav .lang-ls:hover .btn { opacity: 1;display: flex;}
.header-etc-nav .lang-ls:hover .divide {display: block; }




/* Header 상태관리 */
.header--scrolled {background: black;}
.header--hide {transform: translate(0, -100%);}

.header:not(.header--scrolled) {}
.header:not(.header--scrolled) .logo img.dark {opacity: 0;}
.header:not(.header--scrolled) .logo img.light {opacity: 1;}


@media screen and (min-width: 1400px) { 
  .product-page .header {background: black;}
  .product-page .header-gnb-item:has(.active) .header-submenu {opacity: 1; pointer-events: initial; z-index: -1;}
}

.sitemap {display: none;}


@media (hover: hover) {
  .header:has(.header-gnb-item:hover) {background: black;}
  .header .header-gnb:has(.header-gnb-item:hover) .header-gnb-item:not(:hover) > a {opacity: 0.4;}
  .header .header-gnb-item:hover > a {opacity: 1;}
  .header-gnb-item:hover .header-submenu {opacity: 1; pointer-events: initial;}
  .header-submenu-item > a:hover {font-weight: 700; color: var(--primary);}
  .header-lang-nav > a:not(.active):hover {opacity: .7;}
}
@media screen and (max-width: 1499px) {
  .header-container {gap: 30px;}
  .header-gnb-item > a {padding-inline: 20px; font-size: 14px;}

}
@media screen and (max-width: 1199px) {
  .header {height: 60px; background: #fff; border-bottom: 1px solid #dfdfdf; color: #333!important;}
  .header-container {width: min(1920px, calc(100% - 30px)); display: flex; justify-content: space-between; padding-inline: 0; gap: 0; }
  .header-gnb {display: none;}
  .header .logo {font-size: 32px; width: 100px;}
  .header .logo img {height: 100%; width: auto;}
  .header .logo .light {opacity: 0!important;}
  .header .logo .dark {opacity: 1!important;}

  .header-etc-nav {gap: 25px; padding: 0;}
  .header-etc-nav .btn--sitemap-toggle {display: flex;}
  .header-lang-nav {display: none;}
  .header .header-dropdown {display: none;}

  .header-etc-nav .btn--sitemap-toggle {display: flex; flex-direction: column; justify-content: center; gap: 3px; border: none; outline: none; box-shadow: none; appearance: none; width: 45px; height: 30px; border-radius: 10px; padding: 10px 12px; cursor: pointer; position: relative; overflow: hidden; background: var(--primary);}
  .header-etc-nav .btn--sitemap-toggle .bar {width: 100%; height: 2px; background: #fff; transition: .4s; border-radius: 2px;}
  .header-etc-nav .btn--sitemap-toggle .bar {background: #fff;}

  .sitemap--open .header-etc-nav .btn--sitemap-toggle .bar:nth-child(1) {transform: translate(0px, 2.5px) rotate(45deg);}
  .sitemap--open .header-etc-nav .btn--sitemap-toggle .bar:nth-child(2) {transform: translate(0px, -2.5px) rotate(-45deg);}


  .sitemap {display: block; position: fixed; top: 0; left: 0; z-index: 9998; width: 100%; height: calc(var(--vh, 1vh) * 100); pointer-events: none;}
  .sitemap-dim {position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: rgb(0,0,0,.6); backdrop-filter: blur(5px); -webkit-backdrop-filter: blur(5px); opacity: 0; transition: opacity .5s;}
  .sitemap-container {position: absolute; z-index: 10; top: 0; right: 0; width: 100%; max-width: 520px; height: 100%; background: #fff; overflow: hidden auto; --padding-inline: 30px; transform: translate(100%); opacity: 0; transition: opacity .5s, transform .5s; padding-top: 80px;}
  .sitemap-container .body {}
  .sitemap-container .body .block {padding-inline: var(--padding-inline); padding-block: 15px;}

  body.sitemap--open .sitemap {pointer-events: initial;}
  body.sitemap--open .sitemap-dim {opacity: 1;}
  body.sitemap--open .sitemap-container {opacity: 1; transform: translate(0);}


  .sitemap-container .body .block:has(.sitemap-gnb) {padding-inline: 0;}
  .sitemap-gnb {display: flex; flex-direction: column; align-items: center; justify-content: center; width: 100%; }
  .sitemap-gnb-item {  width: 100%; text-align: center; display: flex; flex-direction: column; align-items: center; justify-content: center;}
  .sitemap-gnb-item:not(:last-child) {border-bottom: 1px solid #ededed;}
  .sitemap-gnb-item .trigger {padding-block: .7em; display: flex; align-items: center; justify-content: space-between; font-size: 20px; font-family: var(--sub-font1); width: 100%; justify-content: center;}
  .sitemap-gnb-item .trigger .ico--plus {width: 1em; height: auto; aspect-ratio: 1 / 1; display: none;}
  .sitemap-gnb-item .trigger .ico--plus::before,
  .sitemap-gnb-item .trigger .ico--plus::after {background: #afafaf; border-radius: 2px;}
  .sitemap-gnb-item .trigger .ico--plus::before {width: 2px;}
  .sitemap-gnb-item .trigger .ico--plus::after {height: 2px;}
  .sitemap-gnb-item.active .trigger {font-weight: 700;}
  .sitemap-gnb-item.active .trigger .ico--plus::before {display: none;}
  .sitemap-gnb-item.active .trigger .ico--plus::before,
  .sitemap-gnb-item.active .trigger .ico--plus::after {background: var(--secondary);}

  .sitemap-submenu { margin: 0; padding: 0;  height: 0; overflow: hidden; transition: height .5s, overflow .3s, padding .5s;}
  .sitemap-gnb-item.active .sitemap-submenu { margin-block: 0px; padding-block: 10px; height: auto; overflow: visible; background: #f3f3f3; width: 100%;}

  .sitemap-submenu-ls {font-size: 16px;}
  .sitemap-submenu-ls > .item {}
  .sitemap-submenu-ls > .item > a {display: block; padding-block: 5px; font-weight: 300; color:#888;}
  .sitemap-submenu-ls > .item.active > a {font-weight: 500; color: #000;}

  .sitemap-submenu-ls > .item:has(.depth2-ls) > a {display: flex; align-items: center; gap: .8em;}
  .sitemap-submenu-ls > .item:has(.depth2-ls) > a::after {width: .3em; aspect-ratio: 1 / 1; border-top: 1px solid #dfdfdf; border-right: 1px solid #dfdfdf; transform: rotate(45deg); content: ''; display: block; transition: transform .4s;}
  .sitemap-submenu-ls > .item:has(.depth2-ls).active > a::after {transform: translate(0, -25%) rotate(135deg);}
  .sitemap-submenu-ls > .item .depth2-ls {display: none; font-size: 0.9em; padding: 5px 0 40px 0;}
  .sitemap-submenu-ls > .item.active .depth2-ls {display: block;}
  .sitemap-submenu-ls > .item:last-child .depth2-ls {padding-bottom: 0;}
  .sitemap-submenu-ls > .item .depth2-ls > li > a {display: block; padding-block: 8px; line-height: 1;}
  .sitemap-submenu-ls > .item .depth2-ls > li.active {color: #1b1b1b; font-weight: 500;}

  .sitemap-lang {display: flex; font-size: 18px;}
  .sitemap-lang a {display: flex; align-items: center; color: #909090; text-transform: uppercase;}
  .sitemap-lang a.active {color: var(--primary); font-weight: 600;}
  .sitemap-lang a:not(:last-child)::after {width: 1px; height: .7em; content: ''; background: #dfdfdf; margin: 0 .6em;}
}
@media screen and (max-width: 767px) {
  .header {height: 50px;}
  .header-etc-nav {gap: 10px;}

  .sitemap-container {--padding-inline: 20px;}
}





/* Footer */
@media screen and (max-width: 1399px) {}
@media screen and (max-width: 767px) {}


/* Modal */
.modal {--width: 890px; position: fixed; top: 0; left: 0; width: 100%; height: 100vh; z-index: 999999; align-items: center; justify-content: center; padding: 50px 15px; display: none; opacity: 0;  background: rgb(0,0,0,.7); -webkit-backdrop-filter: blur(5px); backdrop-filter: blur(5px);}
.modal-small {--width: 652px;}
.modal .dim {position: absolute; top: 0; left: 0; width: 100%; height: 100%;}
.modal .container {--padding: 70px 60px; width: var(--width)!important; max-width: 100%; position: relative; z-index: 1; background: #fff; overflow: hidden auto; max-height: 100%; border-radius: 10px;}
.modal .container .head {position: sticky; top: 0; left: 0; width: 100%; padding: var(--padding); padding-bottom: 30px; background: #fff; z-index: 10;}
.modal .container .btn--close {position: absolute; top: 20px; right: 20px;}
.modal .container .btn--close .ico--times::before {background: #000;}
.modal .container .btn--close .ico--times::after {background: #000;}
.modal .container .content {padding: var(--padding); padding-top: 0;}

.modal.overflow {overflow: hidden auto; align-items: flex-start;}
.modal.overflow .dim {background: none; backdrop-filter: none;}
.modal.overflow .container {overflow: visible; max-height: none;}
.modal.overflow .container .head {top: -50px; border-radius: 10px 10px 0 0; padding-block: 50px 20px; padding-right: 60px; border-bottom: 1px solid var(--gray-lighter);}
.modal.overflow .container .content {padding-top: 20px;}

.modal-brand-notice {--width: 500px;}
.modal-brand-notice.active {opacity: 1; display: flex;}
.modal-brand-notice .container .head {padding-block: 50px 20px;}
.modal-brand-notice .container .content .title {margin-bottom: 0.6em;}

.modal.type--video {--width: 1000px;}
.modal.type--video .container {--padding: 0; border-radius: 0; display: flex; overflow: visible; flex-direction: column; background: transparent; gap: 20px;}
.modal.type--video .container .content {border-radius: 10px; overflow: hidden; order: 1;}
.modal.type--video .container .btn--close {position: static; margin-inline: auto; order: 2;}
.modal.type--video .container .btn--close .ico--times::before,
.modal.type--video .container .btn--close .ico--times::after {background: #fff;}

@media screen and (max-width: 1399px) {
  .modal .container {--padding: 70px 30px;}
  .modal.overflow .container .head {padding-block: 20px;}
}
@media screen and (max-width: 767px) {
  .modal .container {--padding: 70px 15px;}
  .modal.type--video {padding-inline: 0;}
  .modal.type--video .container {--padding: 0; max-height: none;}
}


/* Policy */
.policy-doc {padding: 30px; border-radius: 10px; background: #FCFCFC; border: 1px solid #E8E8E8; font-size: 16px;}
.policy-doc dl {word-break: break-all;}
.en .policy-doc dl {word-break: normal;}
.policy-doc dt {display: block; font-weight: 700; color: var(--dark-navy); margin-bottom: 0.3em;}
.policy-doc dd {margin-bottom: 1.5em;}
.policy-doc dd :where(h1, h2, h3, h4, h5, h6) {color: var(--dark-navy); margin-bottom: 0.3em;}
.policy-doc dd .indent {padding-left: 1em;}
.policy-doc dd p {margin-bottom: 0.5em;}
.policy-doc dd table {width: 100%; font-size: 13px;}
.policy-doc dd table :where(th, td) {border: 1px solid var(--gray-lighter); padding: .3em .5em; line-height: 1.5;}
.policy-doc dd table thead th {background: var(--gray-light);}
.policy-doc .bullet > li::before {background: var(--primary);}
.policy-doc ol {margin-block: 1em;}
.policy-doc ol > li:not(:last-child) {margin-bottom: 0.7em;}

@media screen and (max-width: 1399px) {
  .policy-doc {padding: 30px 20px; font-size: 15px;}
}
@media screen and (max-width: 767px) {
  .policy-doc {padding: 25px 15px; font-size: 14px;}
  .policy-doc dd .indent {padding-left: 0em;}
}





/* footer */


.footer { background-color: #71727E;}
.ft {margin: 0 auto; background-color: #71727E;}
.ft-top {height: 64px; background-color: #ECEBEB; display: flex;}
.ft-img{width: min(var(--container-wide-width), calc(100% - 30px));; margin: 0 auto; display: flex; justify-content: space-between;}
.ft-img img{cursor: pointer;}
.ft-ul {margin: 0 auto; width: 1400px; display: flex; color:#4D4DF8; align-items: center; cursor: pointer;}
.ft-ul li {font-size: 16px;font-weight: 500;padding: 0 20px;height: 20px;border-right: 1.5px solid rgba(212, 212, 212, .6);display: flex;align-items: center;}
.ft-ul li:first-child {padding-left: 0;}
.ft-ul li:last-child {border-right: none;}

.footer-wrapper {width: min(var(--container-wide-width), calc(100% - 30px));margin: 0 auto; display: flex; flex-direction: column; justify-content: space-between; padding-block: 55px 97px;}



.footer-wrapper .ft-right {position: relative; display: flex;  align-items: flex-end;}
.footer-wrapper .ft-right .company { padding: 0 40px;}
.footer-wrapper .ft-right .time{font-size: 14px; font-weight: 400; color:  white;line-height: 25px; }

.footer-top {position: relative;}
.footer-top .wrap {display: flex; flex-direction: column;}
.footer-top .nkyber{font-size: 20px;font-weight: 700;color: white;line-height: 16px;margin-bottom: 13px;}
.footer-top .adress{font-size: 16px;font-weight: 400;color:  white;line-height: 31px;margin-bottom: 18px;}
.footer-top .key{font-size: 20px; font-weight: 800; color:  white; line-height: 22px; }
.footer-top .val{font-size: 33px; font-weight: 400; color:  white;line-height: 42px; margin-block: 10px 30px;}

.footer-layout {display: grid; grid-template-columns: 1fr 300px; justify-content: space-between;}
.footer-logo {width: 212px; margin-bottom: -10px; position: absolute; bottom: -10px; right: 25% ;}

.footer-bottom .copy {font-size: 15px; font-weight: 500; color: rgba(255, 255, 255,0.5); line-height: 25px;}

.footer-nav {font-size: 15px; color:rgba(255, 255, 255,0.9); display: flex; align-items: flex-start;}
.footer-nav .btn {padding-inline: 10px; border-left: 2px solid rgba(255, 255, 255,0.5); line-height: 1;}
.footer-nav .btn:first-child {border: none; padding-left: 0;}


.top-btn {width: 64px; height: 100%; background: #4D4DF8; display: flex; align-items: center; justify-content: center;}



/* 상태별 footer style */
body:has(.footer-theme-dark) .ft-top {background: #4A4A4A;}
body:has(.footer-theme-dark) .ft-ul {color:#fff;}





@media (hover: hover) {
  .ft-ul li:hover {opacity: 0.7;}
}

@media screen and (max-width: 1399px) {
  .ft-top {height: 47px;}
  .top-btn {width: 47px; margin-left: auto;}
  .ft-ul {display: none;}
  .footer-top {display: flex; flex-direction: column; }
  .footer-top .adress {font-size: 14px; margin: 0;}
  .footer-top .key {font-size: 17px;}
  .footer-top .val {font-size: 24px; padding-block: 0px;}
  .footer-logo {width: 150px; margin-left: auto; position: static;}
  .footer-wrapper {gap: 10px; padding-block: 60px;}
  .footer-bottom {}
  .footer-bottom .copy {font-size: 13px;}
  .footer-nav {font-size: 14px; justify-content: flex-end;}


}
@media screen and (max-width: 767px) {
  .footer-wrapper {flex-direction: column;}
  .ft-ul {display: none;}
  .footer-bottom {flex-direction: column;display: flex; gap: .5rem;}
  .footer-nav {justify-content: flex-start;}
  .footer-top .adress {line-height: 1.7;}
  .footer-top .key {font-size: 15px;}
  .footer-top .val {font-size: 20px;line-height: 1.5;}
}


