/* =========================
   KakaoTalk In-App Banner
   ========================= */
   .inapp-banner{
    position: fixed;
    inset: 0;
    z-index: 999999;
    padding: 24px 18px;
    background: #0D0D11;
    color: #fff;
  
    /* hidden by default */
    display: none;
  
    /* layout */
    align-items: center;
    justify-content: center;
    text-align: center;
  }
  
  .inapp-banner .card{ max-width: 520px; width: 100%; }
  .inapp-banner .title{ font-size: 18px; font-weight: 600; margin-bottom: 10px; }
  .inapp-banner .desc{ font-size: 14px; line-height: 1.45; opacity: 0.9; margin-bottom: 16px; }
  .inapp-banner .actions{ display:flex; gap:10px; justify-content:center; flex-wrap:wrap; }
  
  .inapp-banner button{
    border: 1px solid #fff;
    background: transparent;
    color:#fff;
    padding: 10px 12px;
    border-radius: 10px;
    font-size: 14px;
  }
  
  /* ✅ KakaoTalk only: show banner, hide everything else */
  html.is-kakao #inappBanner{
    display: flex !important;
  }
  
  html.is-kakao body > :not(#inappBanner){
    display: none !important;
  }
  
  html.is-kakao,
  html.is-kakao body{
    overflow: hidden !important;
  }

  
/******/

.header_menu {
   position: fixed;
   top: 0;
   left: 0;
   width: 100%;
   z-index: 1000;

    display: flex;
    align-items: center;
    justify-content:flex-start;
    gap:6vw;
    padding: 8px 8vw;
    background-color: #0D0D11;

    border-bottom: 1px solid #505050;
  }

  .header_logo {
    display:flex; 
    align-items: center;
    width: fit-content;
  }

  .header_logo #logo_img {
    width: 32px;
    height: auto;
    margin-right: 15px;
  }

  .header_logo a {
    color:#FFF;
    font-family: 'Bitter', serif;
    font-size: 24px;
    font-weight: 300;
    width: fit-content;
    text-decoration: none;
    height: fit-content;
    line-height: 1rem;
  }

  .header_logo a:visited {color:#FFF;}

  .header_list > ul {
    display: flex;
    align-items: center;
    gap: 30px;
    padding-left: 0;
  }

  .header_list > ul li {width:103px; list-style:none;  position: relative;}

  .header_list > ul li a {
    color: #FFF;
    font-size: 20px;
    list-style: none;
    text-decoration: none;
    font-weight: 200;
    position:relative;
  }

  .arrow {
    font-size: 10px;
    margin-left: 6px;
  }

  /* ✅ 전체 폭 드롭다운(메가 메뉴) */
.header_list .has-submenu > .submenu {
  position: fixed;          /* 핵심: li 기준이 아니라 화면 기준 */
  left: 0;
  right: 0;
  width: 100vw;

  top: 79px;                /* 헤더 높이에 맞게 조절 (아래 설명 참고) */
  display: none;

  background:  #0D0D11;;
  margin: 0;
  padding: 32px 0;          /* 위아래 여백 */
  list-style: none;

  box-shadow: 0 10px 30px rgba(0,0,0,0.12);
  border-top: 1px solid rgba(0,0,0,0.08);
  z-index: 99999;
}

/* ✅ 열렸을 때만 보이게 */
.header_list .has-submenu.open > .submenu {
  display: block;
}

/* ✅ submenu 안쪽 내용을 가운데 정렬 + 너의 헤더 패딩과 맞추기 */
.header_list .has-submenu > .submenu {
  padding: 30px 8vw;
}

.header_list .has-submenu > .submenu > li {
  width:auto;
}

/* ✅ submenu 항목들을 가로로 배치하고 싶으면(애플 느낌) */
.header_list .has-submenu > .submenu {
  display: none;            /* 기본 숨김 유지 */
}
.header_list .has-submenu.active > .submenu {
  /*display: flex;            /* 열렸을 때 flex 
  gap: 60px;
  align-items: flex-start;*/
}

/* submenu 링크 스타일 */
.header_list .has-submenu > .submenu a {
  color: #FFF;
  font-size: 22px;
  font-weight: 300;
  text-decoration: none;
  padding: 10px 0;
  display: inline-block;
}

.header_list > ul > li > a::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -5px;
  width: 100%;
  height: 2px;
  background: #fff;
  transform: scaleX(0);
  transform-origin: left;
  transition: transform .25s ease;
}


.header_list > ul > li.current > a::after {
  transform: scaleX(1);
}


.header_list > ul > li.has-submenu.active > a::after {
  transform: scaleX(0);
}



  

  /*반응형 시작*/

  @media (max-width: 1280px){
    .header_menu {padding: 6px 6vw;}
    .header_list .has-submenu > .submenu {padding:40px 6vw; top:70px;}
  }

  @media (max-width:1024px){
    .header_logo #logo_img {width:30px;}
    .header_logo a {font-size: 22px;}
    .header_list > ul li {width: 80px;}
    .header_list > ul li a {font-size: 16px;}

    .header_list .has-submenu > .submenu {top:69px;}
    .header_list .has-submenu > .submenu a {font-size:18px;}

  }

  @media (max-width: 768px) {
    .header_menu {padding: 6px 4vw;}
    .header_logo #logo_img {width:22px; margin-right: 6px;}
    .header_logo a {font-size: 20px;}
    .header_list > ul li {width: fit-content;}

    .header_list .has-submenu > .submenu {padding: 30px 4vw 60px 4vw;}

  }

  @media (max-width: 480px){
    .header_menu {padding: 8px 15px;}
    .header_logo {height: 33px;}
    .header_logo #logo_img {width:20px; margin-right: 6px;}
    .header_logo a {font-size: 17px;}
    .header_list {display: none;}
  }