.container{max-width:95%; margin:auto; padding-right: 0; padding-left: 0;}
.navbar-brand img{width:250px;}
.nav-link{font-size:14px; padding-left:20px !important; padding-right: 20px !important; }

.display_pc_only{display:block;}
.display_tablet_only{display:none;}


.navbar{padding:30px 0;background:#fafaf8}
.top_sns{    display: flex;  gap: 10px;}
.top_sns img{width:23px;}


.footer_celin{ 
    padding:60px 40px;
    font-size:14px;
    line-height:1.8;
}

/* PC */
.footer_pc .footer_inner{
    display:flex;
    justify-content:space-between;
    max-width:100%;
    margin:0 auto;
        font-size: 13px;
}

.footer_right{
    display:flex;
    gap:120px;
}

.footer_pc .f_col a{
    display:block;
    margin-bottom:10px;
}

.footer_pc .info p{
    margin-bottom:6px;
}


/* MOBILE */
.footer_mo{
    max-width:600px;
    margin:0 auto;
}

.footer_mo_menu{
    display:flex;
    justify-content:space-between;
    margin-bottom:30px;
}

.footer_mo .f_col a{
    display:block;
    margin-bottom:10px;
}


/* Accordion */
.footer_toggle{
    border-top:1px solid #000;
    padding-top:20px;
}

.toggle_head{
    display:flex;
    justify-content:space-between;
    align-items:center;
    cursor:pointer;
    font-size:14px;
}

.toggle_icon{
    font-size:18px;
}

.toggle_body{
    margin-top:15px;
}

.footer_toggle:not(.active) .toggle_body{
    display:none;
}


#chat_btn {position:fixed;bottom:20px;right:20px;padding: 5px  20px;
    border-radius: 10px; color:#fff;text-align:center;font-size:14px;z-index:90;background:#000;    display: flex;
    justify-content: center;
    gap: 5px;}
#chat_btn img{width:17px;filter: brightness(0) invert(1);}
.about_page{ 
  min-height:100vh;
  padding:80px 40px 120px;
}

/* PC 기본 구조 */
.about_wrap{
  display:flex;
  justify-content:space-between;
  gap:120px;
  /*max-width:1400px;*/
  margin:0 auto;
}

/* 좌측 메뉴 */
.about_tabs{
  width:220px;
}

.about_tabs a{
  display:block;
  font-size:15px;
  margin-bottom:6px;
  text-decoration:none;
}

.about_tabs a.is-active{
  text-decoration:underline;
  text-underline-offset:4px;
}

/* 우측 콘텐츠 */
.about_content{
  width:50%;
  margin-left:auto;
}

.about_text{
  font-size:15px;
  line-height:1.9;
  color:#666;
}

.about_text p{
  margin-bottom:28px !important;
}

.about_info{
  margin-top:70px;
  font-size:15px;
  line-height:1.9;
  color:#666;
}

.about_info .info_head{
  margin-bottom:20px;
}

.about_info .info_mail{
  margin-top:30px;
}
/* OUR TEAM */
.team_content{
  font-size:15px;
  line-height:1.8;
  color:#666;
}

/* 각 사람 블록 간격 (캡처처럼 여백 크게) */
.team_group{
  margin-bottom:120px;
}

/* 역할 */
.team_role{
  font-size:15px;
  letter-spacing:0.02em;
  margin-bottom:5px;
  color:#666;
}

/* 이름 */
.team_name{
  font-size:15px;
  margin-bottom:6px;
  color:#666;
}

/* 설명 */
.team_desc{
  font-size:13px;
  color:#666;
}

.pkg_page{ 
  min-height:100vh;
  padding:80px 40px 120px;
}

.pkg_page strong{    font-weight: 400;}

.pkg_head{
  font-size:20px;
  margin-bottom:100px;
}

.pkg_grid{
  display:grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 90px;
  align-items:start;
        max-width: 90%;
    margin: auto;
}

.pkg_card{
  min-width:0;
}

.pkg_top{
  margin-bottom:38px;
}

.pkg_title{
  font-size:24px;
  margin-bottom:8px;
  line-height:1.35;
}

.pkg_time{
  font-size:15px;
  margin-left:10px;
    color:#666;
  
}
.pkg_time em{
  font-style:normal;
 font-size: 13px;
  margin-left:6px;
    color:#666;
}

.pkg_price{
  font-size:18px; 
}

.pkg_desc{
  font-size:15px;
  line-height:1.85;
  color:#333;
  margin-bottom:46px;
    font-family: 'Pretendard';
}
.pkg_desc p{ margin:0 0 18px 0; }

/* Accordion */
.pkg_acc{
  border-top:1px solid rgba(0,0,0,.55);
}

.acc_item{
  border-bottom:1px solid rgba(0,0,0,.55);
}

.acc_head{
  width:100%;
  display:flex;
  justify-content:space-between;
  align-items:center;
  padding:18px 0;
  border:0;
  background:transparent;
  cursor:pointer;
  font-size:15px;
}

.acc_icon{
  font-size:16px;
  line-height:1;
}

.acc_body{
  display:none;
  padding: 0 0 18px 0;
  font-size:15px;
  line-height:1.85;
  color:#666;
    font-family: 'Pretendard';
}
.acc_body ul{
  margin:0;
 
}
.acc_body li{ margin:0 0 0px 0; position: relative; padding-left:16px;}
.acc_body li::before {
  content: "-";
  position: absolute;
  left: 0;
  top: 0;
}

.acc_item.is-open .acc_body{ display:block; }
.acc_item.is-open .acc_icon{ content:""; }

.faq_page{ 
  min-height:100vh;
  padding:80px 40px 120px;
}

.faq_head{
  font-size:20px;
  margin-bottom:70px;
}

/* 가운데 정렬된 긴 라인형 리스트 */
.faq_list{
  max-width: 1100px;
  margin: 0 auto;
  border-top: 1px solid #000;
}

/* item */
.faq_item{
  border-bottom:1px solid #000;
        font-family: 'Pretendard';
}

/* Q 버튼 */
.faq_q{
  all: unset;
  display:flex;
  justify-content:space-between;
  align-items:center;
  width:100%;
  cursor:pointer;
  box-sizing:border-box;
  padding: 26px 0;
}

.faq_q .q_txt{
  font-size:16px;
}

.faq_q .q_icon{
  font-size:18px;
  line-height:1;
}

/* A 영역 */
.faq_a{
  display:none;
  padding: 6px 0 28px 0;
  font-size:14px;
  line-height:1.9;
  color:#666;
}

.faq_a p{
  margin: 0 0 18px 0;
}

.faq_a a{text-decoration: underline; color:#666;margin: 20px 0 0 0;
    display: block;}

/* open */
.faq_item.is-open .faq_a{
  display:block;
}



@media (min-width: 1025px) {
    .t_menu{ position: absolute; left: 50%; transform: translateX(-50%);}
    .pkg_desc{min-height: 230px;}
}

@media (max-width: 1024px) {
    .display_tablet_only{display:block;}
    .display_pc_only{display:none;}
    
    .top_sns .kakao{display:none;}
    
    .nav-link {
    font-size: 16px;
    padding-left: 10px !important;
        padding-right: 20px !important;}
    
    .navbar {  padding: 5px 0;}
    .navbar-brand{}
    .navbar-brand img { width: 185px; margin: 0 0 0 50px;}
    .navbar-toggler{
  position: fixed;
  left: 15px;
  top: 22px;
  background: transparent;
  border: 0;
  width: 25px;
  height: 22px;
  padding: 0;
                z-index: 99999;
}

/* 공통 */
.navbar-toggler span{
  position: absolute;
  left: 0;
  width: 100%;
  height: 1px;
  background: #000;
  transition: all .3s ease;
}
    
    .top_sns img{margin: 0 5px 0 0;}

/* =====================
   닫힘 상태 = 햄버거
   (.collapsed 있을 때)
===================== */
.navbar-toggler.collapsed span:nth-child(1){
  top: 0;
  transform: none;
}

.navbar-toggler.collapsed span:nth-child(2){
  top:8px;
  opacity: 1;
}

.navbar-toggler.collapsed span:nth-child(3){
  top: 17px;
  transform: none;
}

/* =====================
   열림 상태 = X
   (.collapsed 없을 때)
===================== */
.navbar-toggler:not(.collapsed) span:nth-child(1){
  top: 10px;
  transform: rotate(45deg);
}

.navbar-toggler:not(.collapsed) span:nth-child(2){
  opacity: 0;
}

.navbar-toggler:not(.collapsed) span:nth-child(3){
  top: 10px;
  transform: rotate(-45deg);
}
    
    
    #navbarResponsive{
  position: fixed;
  top: 0;
  left: 0;
  width: 320px;
  height: 100vh;
  background:#fafaf8 !important;
  z-index: 9999;

  transform: translateX(-100%);
  transition: transform .35s ease;

  display: block !important;
}

#navbarResponsive.show{
  transform: translateX(0);
}

/* 기본 height 애니메이션 제거 */
#navbarResponsive.collapsing{
  height: auto !important;
  transition: none !important;
}
    
    #navbarResponsive .navbar-nav{    margin: 100px 0 0 0;}
    
    .about_page{
    padding:60px 22px 90px;
  }

  .about_wrap{
    flex-direction:column;
    gap:60px;
  }

  /* 메뉴를 상단 가로로 */
  .about_tabs{
    width:auto;
    display:flex;
    gap:28px;
  }

  .about_tabs a{
    margin-bottom:0;
      font-size:14px;
  }
    
    .about_text {  font-size: 14px;}
    .about_info {  font-size: 14px;}

  /* 콘텐츠 풀폭 */
  .about_content{
    width:100%;
    margin-left:0;
  }
    
    .team_group{
    margin-bottom:70px;
  }

  .team_name{
    font-size:17px;
  }
    
    .pkg_head {
    font-size: 15px;
        margin-bottom: 50px;}
    
    .pkg_page{
    padding:60px 22px 90px;
  }

  .pkg_grid{
    grid-template-columns: 1fr; max-width: 100%;
    gap: 55px;
  }

  /* 모바일에서 각 영역(카드) 박스 검은 라인 */
  .pkg_card{
    border:0px solid #000;
    padding:34px 0px;
    background:transparent;
  }

  .pkg_title{
    font-size:18px;
  }
    
    .pkg_price {
        font-size: 16px;}
    .pkg_desc {
        font-size: 13px;}
    
    .pkg_time {
        font-size: 13px;}
    .pkg_time em{font-size: 11px;}

  /* 모바일 박스 안에서 아코디언 라인도 검정 */
  .pkg_acc{
    border-top:1px solid #000;
  }
  .acc_item{
    border-bottom:1px solid #000;
  }
    
    .acc_body{font-size: 13px;}
    
     .faq_head {
    font-size: 15px;
        margin-bottom: 50px;}
    
     .faq_page{
    padding:60px 22px 90px;
  }

  .faq_list{
    max-width: 100%;
  }

  .faq_q{
    padding: 22px 0;
  }

  .faq_q .q_txt{
    font-size:14px;
  }

  .faq_a{
    font-size:13px;
    padding-bottom: 24px;
  }
    
    .footer_celin {font-size: 12px;  padding: 60px 20px;}
    .footer_toggle{border-top: 0; padding-top: 0;}
    .toggle_head{    justify-content: flex-start; gap: 5px;}
    
}