

 /* PC Device */

@media all and (min-width:1001px){
	/* 전체메뉴 */
	#total_m_lay{display:none;}
}


@media (max-width:1870px){
  .main01 .visual-txt {width:50%; max-width:70rem;}
  .main01 .typing {font-size:8rem; min-height:22rem;}
  .main01 .main-visual {width:52%; right:-8%;}
}


@media (max-width:1600px){
  .layer02 {bottom:4%;}
  .layer03 {left:35%;}
  .layer04 {right:4%;}
}


@media (max-width:1300px){
  /* main05 */
  .main05{padding:10rem 0 12rem; background-size:contain;}
  .main05 .txt h2 {margin-bottom:4rem;}
  .main05 .layer-box{ top: auto; }
  .layer-box .layer{ transform-origin:center; }
  .layer01,.layer02,.layer03,.layer04,.layer05{ zoom: .9; }
  .layer-box{position:relative; inset:auto; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px 18px; padding:0 9rem; margin-top:4rem;}
  .layer-box .layer{position:static; top:auto; left:auto; right:auto; bottom:auto; opacity:1 !important; transform:none !important; transition:none;}
  .layer-box .layer.pre, .layer-box .layer.in{ transform:none; opacity:1; }
  .layer-box .layer-inner{width:100%; animation:none !important; }
  .layer-box .img-wrapper{ width:100%; }
  .layer-box .img-wrapper img{ width:100%; height:auto; object-fit:contain; }
}


@media (max-width:1200px){
/* main07 */
  .main07:before{ display:none; }
  .main07 .main-title{ width:100%; text-align:center; }
  .custom_slide_wrap{ width:100%; margin:0 0 3rem; }
  .swiper-bottom{ width:100%; margin-top:2rem; }
  .swiper-bottom .swiper-slide .info-box{ padding-left:0; }

}

@media (max-width:1400px){
  .main01 .visual-txt {width:90%; max-width:none; padding:0 5%; padding-top:12rem;}
  .main01 .main-visual {position:relative; top:auto; right:auto; transform:none; width:95%; max-width:none; margin:5rem auto 0; border-radius:2rem; box-shadow:0 10px 40px rgba(0,0,0,0.1);}
  .main01 .main-visual.enter {transform:none;}
  .main01.flex-wrap {flex-direction:column; align-items:flex-start; min-height:auto;}
  .main01 .typing {min-height:auto;}
}

@media (max-width:1100px){
  .main01 .visual-txt {padding-left:5rem;}
}


 /* Tablet Device */
@media (max-width:1024px){
  header{ height:70px; padding:0 16px; }
  .logo{ left:16px; height:26px; }
  .actions{ gap:12px; }
  .trial-btn{ width:auto; padding:6px 12px; font-size:14px; }

  /* main 공통 */
  .main-cont{ padding:8rem 0; }
  .main-title h2{ font-size:36px; }
  .main-title p{ font-size:18px; }

  /* main01 */
  .main01 {min-height:auto; padding:8rem 0;}
  .main01.flex-wrap {flex-direction:column; align-items:flex-start; min-height:auto;}
  .main01 .visual-txt {width:90%; max-width:none; padding:0 5%; padding-top:12rem; order:1;}
  .main01 .main-visual {position:relative; top:auto; right:auto; transform:none; width:95%; max-width:none; margin:5rem auto 0; order:2; border-radius:2rem; box-shadow:0 10px 40px rgba(0, 0, 0, 0.1);}
  .main01 .main-visual.enter {transform:none;}
  .main01 .typing {font-size:7.6rem; min-height:auto;}
  .main01 .visual-txt .btn01 {margin-bottom:3rem;}
  .main01 .main-visual img {max-width:100%;}

  /* main02 */
  .aiapp-hero{ padding:80px 24px 0; }
  .bubble{ width:88%; font-size:2rem; border-radius:28px; padding:1.6rem 2.2rem; }
  .bubble.typing{ margin-left:6%; width:70%; }
  .preview-card{ height:320px; }

  /* main04 */
  .main04 h2{ font-size:28px; margin-bottom:24px; }
  .app{ grid-template-columns: 1fr; gap:32px; }
  .app .tablist{ padding:0 2%; }
  .app .tab{ font-size:16px; padding:14px 16px; }
  .panels{ padding:32px 24px; border-radius:24px; }
  .panel .txt span.eng{ font-size:14px; margin-bottom:12px; }
  .panel .txt h3{ font-size:22px; margin-bottom:16px; }
  .panel .txt p{ font-size:15px; }
  .panel > div{ flex-direction:column; gap:2.4rem; }
  .panel .txt, .panel .img{ width:100%; margin:0; }
  .panel .img img{ width:100%; max-width:100%; height:auto; }

 
  /* main06 */
  .main06 .slide-box .swiper-slide .info h3{ font-size:3.2rem; }
  .main06 .slide-box .swiper-slide .info p{ font-size:1.6rem; }

  /* main08 */
  .main08 .board-box ul li{ width:calc(96% / 2); }

  /* main09 */
  .main09 .flex-wrap{ flex-direction:column; }
  .main09 .flex-wrap > div{ width:100%; }
  .main09 .faq, .main09 .cs{ padding:8rem 4rem; }
  .main09 .cs .cf-row label{ width:100%; margin:0 0 .6rem; font-size:2rem; }
  .main09 .cs input[type="text"],
  .main09 .cs input[type="email"],
  .main09 .cs input[type="tel"],
  .main09 .cs select,
  .main09 .cs textarea,
  .main09 .cs .cf-send-error,
  .main09 .cs .cf-error-agree,
  .main09 .cs .cf-error,
  .main09 .cs .cf-agree,
  .main09 .cs .cf-agree-desc,
  .main09 .cs .cf-submit{ width:100%; margin-left:0; }
  .main09 .cs .cf-submit{ font-size:2.2rem; }

  /* main10 */
  .main10 h2{ font-size:9rem; }
  .main10 button{ width:32rem; font-size:2.4rem; }
  .main10 .main10-estimate{ width:32rem; font-size:2rem; }

  /* footer */
  .site-footer .footer-inner{ flex-direction:column; gap:18px; padding:6rem 5%;}
  .footer-right{ align-items:flex-start; }
}


 /* Mobile Device */
@media (max-width:768px){
  .main-wrap{ padding:0 2rem; }

  /* main01 */
  .main01 .typing{ font-size:8.6rem; }
  .main01 .visual-txt .btn01{ font-size:2rem; }

  /* main02 */
  .bubble{ width:95%; font-size:1.8rem; }
  .bubble.typing{ width:82%;}
  .preview-card{ height:260px; }

  /* main03 */
  .main03 h1{ font-size:7rem; }
  .main03 .txt h3{ font-size:3.6rem; }
  .main03 .txt p{ font-size:1.9rem; }

  /* main05 */
  .main05 .txt h2{ font-size:5rem; }
  .layer01,.layer02,.layer03,.layer04,.layer05{ zoom: .8; }

  /* main08 : 1열 */
  .main08 .board-box ul li{ width:100%; }

  /* main10 */
  .main10 h2{ font-size:7rem; }
  .main10 p{ font-size:2rem; }
  .main10 button{ width:26rem; font-size:2rem; }
  .main10 .main10-estimate{ width:26rem; font-size:1.8rem; }

  /* footer */
  .copy{ font-size:1.5rem; }

  .top_btn {right:5%;}
}

@media (max-width:640px){
  .layer-box{grid-template-columns:1fr; gap:16px; padding:0 2rem;}
  .main05 .txt h2{ font-size:5rem; }
  .main05 .txt p{ font-size:2rem; }

  .custom_bullet .img:after {background-size:60%;}
}

/* 헤더 햄버거 분기점: 가로 메뉴 + 우측 버튼 묶음이 겹치지 않도록 1024px부터 햄버거로 전환
   (JS가 햄버거 노출 시 모두의창업·언어 메뉴를 드롭다운 안으로 이동) */
@media all and (max-width:1024px){

	/* 헤더 */
	header {justify-content: flex-end;}
	header nav{display:none;position:absolute;top:70px;left:0;width:100%; background:#fff; padding:10px; flex-direction:column; z-index:900; box-shadow:0 7px 8px rgba(0, 0, 0, 0.2); gap:10px; border-top:1px solid #eee;}
	header nav a {font-size:16px; color:#333; padding:15px; border-bottom:1px dashed #ddd; }
	header nav a:last-child {border-bottom:none;}
	header nav.show{display:flex}
	header .actions {right:70px; gap:10px;}
	.lang {font-size:16px;}
	.burger{display:flex}

}

@media (max-width:480px){
  .main-title h2{ font-size:28px; }
  .main-title p{ font-size:16px; }

  /* main01 */
  .main01{ padding:5rem 0; }
  .main01 .typing{ font-size:7rem; white-space:normal; word-break:keep-all; }

  /* main02 */
  .aiapp-hero{ padding:60px 16px 0; }
  .bubble{ border-radius:22px; padding:1.4rem 1.8rem; }
  .preview-card{ height:220px; }

  /* main04 */
  .main04 h2{ font-size:24px; margin-bottom:20px; }
  .app .tab{ font-size:15px; padding:12px 14px; }
  .panel .txt h3{ font-size:20px; margin-bottom:14px; }
  .panel .txt p{ font-size:14px; }
  .panel .txt span.eng{ font-size:13px; }

  /* main09 폼 라벨/텍스트 크기 */
  .main09 .cs .cf-row label{ font-size:1.8rem; }
  .main09 .cs input[type="text"],
  .main09 .cs input[type="email"],
  .main09 .cs input[type="tel"],
  .main09 .cs select,
  .main09 .cs textarea{ font-size:1.8rem; }

  /* footer */
  .footer-info li{ line-height:1.6; }
  .footer-links{ flex-wrap:wrap; gap:8px; }
}

@media (max-width:380px){

	.preview-card {height:190px;}

	.main06 .slide-box .swiper-slide .info h3 {font-size:2.8rem; margin-bottom:2rem;}
	.main06 .slide-box .swiper-slide .info h3:after {display:none;}
}


/* 영문 */

@media (max-width:1700px){
	#en .main01 .visual-txt {height:auto;}
}

@media (max-width:1600px){
	#en header .actions {gap:15px;}
	#en header nav {gap:20px;}
	#en header nav a {font-size:1.6rem}

	#en .main01 .typing {font-size:7rem;}
}

@media (max-width:1200px){
	/* main01 */
  #en .main01 .visual-txt {width:55%; max-width:none;}
  #en .main01 .main-visual {width:50%; right:-12%;}
  #en .main01 .visual-txt .btn01 {margin-bottom:3rem;}

  #en .main06 .slide-box .swiper-slide .info h3 {margin-bottom:3rem; font-size:2.4rem;}
  #en .main06 .slide-box .swiper-slide .info h3:after {display:none;}
}

@media (max-width:1024px){
  /* main01 영문 태블릿 */
  #en .main01 .visual-txt {width:90%; padding:0 5%;}
  #en .main01 .main-visual {position:relative; top:auto; right:auto; transform:none; width:95%; margin:5rem auto 0;}
  #en .main01 .main-visual.enter {transform:none;}
}

@media all and (max-width:1024px){

	/* 헤더 */
	#en header {justify-content: flex-end;}
	#en header nav{display:none;position:absolute;top:70px;left:0;width:100%; background:#fff; padding:10px; flex-direction:column; z-index:900; box-shadow:0 7px 8px rgba(0, 0, 0, 0.2); gap:10px; border-top:1px solid #eee;}
	#en header nav a {font-size:16px; color:#333; padding:15px; border-bottom:1px dashed #ddd; }
	#en header nav a:last-child {border-bottom:none;}
	#en header nav.show{display:flex}
	#en header .actions {right:70px; gap:10px;}
	#en .lang {font-size:16px;}
	#en .burger{display:flex}

}

@media (max-width:768px){
	#en .main01 .typing {font-size:4.6rem; min-height:inherit;}
}


/* ========== 서브페이지 반응형 ========== */

@media (max-width:1024px){
  .page-hero {padding:14rem 0 6rem;}
  .page-hero h1 {font-size:4rem;}
  .page-hero p {font-size:1.8rem;}

  .notice-wrap {padding:0 3rem;}
  .notice-list li a {gap:2rem;}
  .notice-thumb {width:16rem; height:11rem;}
  .notice-info h3 {font-size:2rem;}
  .notice-info p {font-size:1.5rem;}
}

@media (max-width:768px){
  .page-hero {padding:12rem 0 5rem;}
  .page-hero h1 {font-size:3.2rem;}
  .page-hero p {font-size:1.6rem;}

  .notice-section {padding:5rem 0 8rem;}
  .notice-wrap {padding:0 2rem;}

  .notice-filter {gap:0.8rem;}
  .filter-btn {padding:0.8rem 1.8rem; font-size:1.4rem;}

  .notice-list li a {flex-direction:column; align-items:flex-start; gap:1.5rem; padding:2.5rem 0;}
  .notice-thumb {width:100%; height:20rem;}
  .notice-info h3 {font-size:1.9rem; white-space:normal; -webkit-line-clamp:2; display:-webkit-box; -webkit-box-orient:vertical;}

  .pagination {gap:0.5rem; margin-top:4rem;}
  .pagination a {min-width:3.6rem; height:3.6rem; font-size:1.4rem;}
}

@media (max-width:480px){
  .page-hero h1 {font-size:2.8rem;}
  .notice-thumb {height:16rem;}
  .notice-info h3 {font-size:1.8rem;}
  .notice-info p {font-size:1.4rem; -webkit-line-clamp:3;}
}

/* 모바일: 데스크톱용 강제 줄바꿈 해제 (전 페이지 공통 유틸) */
@media (max-width:768px){
  .br-pc{display:none;}
}