/*
Theme Name: OceanWP Child Theme
Theme URI: https://oceanwp.org/
Description: OceanWP WordPress theme. Sample child theme.
Author: OceanWP
Author URI: https://oceanwp.org/
Template: oceanwp
Version: 1.0
*/

/* Parent stylesheet should be loaded from functions.php not using @import */
:root {
    --lvs-green: rgba(8, 34, 19, 0.9);
    --lvs-accent: #91cab1;
    --lvs-white: #ffffff;
    --transition-base: 0.4s cubic-bezier(0.25, 0.8, 0.25, 1);
}

html * {
    outline: none;
    letter-spacing: -0.03em;
    line-height: 1.1em;
    word-break: keep-all !important;
    -webkit-text-size-adjust: none;
}
a[x-apple-data-detectors] {
  color: inherit !important;
  text-decoration: none !important;
  font-size: inherit !important;
  font-family: inherit !important;
  font-weight: inherit !important;
  line-height: inherit !important;
}
/* 마우스 클릭 시에는 아웃라인을 제거 */
a:focus {
    outline: none !important;
}

/* 키보드로 접근했을 때만 아웃라인을 다시 살려줌 */
a:focus-visible {
    outline: 1px solid #0E6B50 !important;
}

.hm-contact-button {
	display: none
}
/*
.tmea-smart-menu-container .sm, .sm li, .tmea-smart-menu-container .sm ul {
	min-height: 53px !important;
}
*/
.she-header .hm-contact-button {
	display: block;
}
.top-menu-left-width {
	width: 22% !important;
}
.top-menu-center-width {
	width: 56% !important;
}
.top-menu-right-width {
	width: 22% !important;
}
@media screen and (max-width: 1446px) {
	.top-menu-left-width {
		width: 20% !important;
	}
	.top-menu-center-width {
		width: 50% !important;
	}
	.top-menu-right-width {
		width: 30% !important;
	}
}
@media screen and (max-width: 930px) {
	.top-menu-left-width {
		width: 20% !important;
	}
	.top-menu-center-width {
		width: 45% !important;
	}
	.top-menu-right-width {
		width: 35% !important;
	}
}

.tmea-smart-menu-container .menu-item .sub-arrow {
	display: none !important;
}
.tmea-smart-menu-container .sub-menu .sub-arrow {
	display: inherit !important;
}

.breadcrumb-style span{
	text-align: center !important;
	text-shadow: 0px 0px 1px rgba(0,0,0,0.2);
}
.breadcrumb-style {
	text-align: center !important;
	margin: 0 auto;
}
.breadcrumb-style span, .breadcrumb-style a {
	color: #6A6F71;
}
.breadcrumb-style a:hover {
	color: #6A6F71;
}
.breadcrumb-style-01 span{
/* 	text-align: center !important; */
	text-shadow: 0px 0px 1px rgba(0,0,0,0.2);
}
/* .breadcrumb-style-01 {
	text-align: center !important;
	margin: 0 auto;
} */
.breadcrumb-style-01 span, .breadcrumb-style-01 a {
	color: #0E6B50;
}
.breadcrumb-style-01 a:hover {
	color: #0E6B50;
}


.f-color, .f-color span, .f-color a {
	color: #FFFFFF !important;
}
.f-color a:hover {
	color: ##57b08a !important;
}
.frm-fluent-form h3 {
	line-height: 1.3em !important;
}
.agree {
	width: 100% !important;
	height: 240px !important;
	line-height: 20px !important;
	padding: 30px 20px !important;
	margin: 10px 0px 10px 0px !important;
	border: 1px solid #CCCCCC !important;
	border-radius: 4px !important;
	overflow-y: scroll !important;
	background-color: #fbfbfb;
}
.agree ol {
	list-style: decimal !important;
	margin: 10px !important;
	padding: 10px !important;
}
.agree li {
	padding: 4px !important;
}
.agree dl {
	margin: 2px !important;
	padding: 2px !important;
}
.agree dt {
	margin: 0px !important;
	padding: 2px !important;
	color: #666666 !important;
}
.agree dd {
	margin: 0px !important;
	padding: 0px !important;
}	
/* 프로덕트용 */
.sticky-header {
  position: sticky;
  top: 80px;
  background-color: #ffffff;
  z-index: 90;
}
/* 태블릿 구간 */
@media (min-width: 767px) and (max-width: 1080px) {
  .sticky-header {
    top: 66px;
  }
}
.mobile-sticky-header {
    position: sticky !important;
    top: 46px !important;
    left: 0 !important;
    right: 0 !important;

    width: 100%;
    z-index: 9999 !important;

    background: #ffffff;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.08);

    overflow-x: auto;

    white-space: nowrap;
    -webkit-overflow-scrolling: touch;
}
@media (max-width: 767px) {
  .mobile-sticky-header {
    overflow: visible !important;
  }
}


.fix-sub-menu {
    position: sticky;
    top: 80px;
    z-index: 30 !important;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.08);
}
.admin-bar .fix-sub-menu {
    top: 112px;
}
.fluentform .agree p {
	margin: 10px 0px;
	line-height: 1.4em;
}
@media screen and (max-width: 1024px) {
	.fix-sub-menu {
		top: 66px;
	}
	.admin-bar .fix-sub-menu {
		top: 88px;
	}
}
@media screen and (max-width: 767px) {
	.fix-sub-menu {
		top: 48px;
	}
	.admin-bar .fix-sub-menu {
		top: 46px;
	}
	.fluentform h3 {
		font-size: 0.9em !important;
	}
	.fluentform .agree h2, .fluentform .agree p {
		font-size: 0.9em !important;
	}
}
.fix-sub-menu .tme-dd-button i {
  float: right;
}
.fix-sub-menu .tme-dd-button.tme-btn-md {
  padding: 0px 4%;
}
.fix-sub-menu .tme-dd-menu.tme-dd-menu-bottom {
  top: 30px;
}

/*제품페이지네비*/
.fix-sub-menu ul.elementor-icon-list-items{margin:0 auto !important; max-width:1500px;}
.fix-sub-menu li.elementor-icon-list-item{margin: 0 !important; justify-content: center; align-items: center;  border-right: 1px solid #999; flex:1;}
.fix-sub-menu li.elementor-icon-list-item:last-child{border:0;}
.fix-sub-menu li.elementor-icon-list-item:after{display:none;}
.fix-sub-menu li.elementor-icon-list-item a{min-height: 50px; padding: 10px;}



/* 테이블 컨테이너 및 기본 초기화 */
.agree table {
    width: 100%;
    border-collapse: collapse;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
    color: #2b2b2b;
    font-size: 14px;
    line-height: 1.5;
    background-color: #ffffff;
    border-top: 1px solid #c8c8c8;
    border-bottom: 1px solid #c8c8c8;
}
.agree table thead th {
    background-color: #f8f9fa;
    font-weight: 500;
    color: #111111;
    padding: 16px 12px;
    text-align: center;
    vertical-align: middle;
    border-bottom: 1px solid #e2e2e2;
    border-right: 1px solid #e2e2e2;
}
.agree table tbody td {
    padding: 18px 14px;
    text-align: center;
    vertical-align: middle;
    border-bottom: 1px solid #e2e2e2;
    border-right: 1px solid #e2e2e2;
    word-break: normal;
}
.agree table thead th:last-child,
.agree table tbody td:last-child {
    border-right: none;
}
.agree table tbody td a {
    color: #2b2b2b;
    text-decoration: none;
}
.agree table tbody td a:hover {
    text-decoration: underline;
}
@media screen and (max-width: 767px) {
	.policy-table-wrap {overflow-x: auto;-webkit-overflow-scrolling: touch;margin: auto 0px;}
}

/*게시글*/
.next-post-list .list-left,
.prev-post-list .list-left{width:100%}

.prev-post-list,
.next-post-list {border-top: 1px solid #DCDCDC; border-bottom: 1px solid #DCDCDC; padding: 30px 55px 30px 55px; display: flex; justify-content: space-between;}

.prev-post-list{border-bottom:none;}

.next-post-list span,
.prev-post-list span{font-size: 18px; font-weight: bold; color: #000;}

.next-post-list .next-post-date,
.prev-post-list .prev-post-date{font-size: 18px;  font-weight: 400; color: #000;}

.next-post-list a,
.prev-post-list a {font-size: 18px; font-weight: 400; color: #000; width: 75%; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; margin-left:50px;}


@media screen and (max-width:1024px){	
	.prev-post-list,
	.next-post-list{padding:20px;}
	
	.next-post-list span,
	.prev-post-list span{font-size:16px;}
	
		.next-post-list a,
	.prev-post-list a{font-size:16px; margin-left:20px;}
}
.hidden-form {
	display: none !important;
}
.d-only {
	display: block !important;
}
.m-only {
	display: none !important;
}
@media screen and (max-width: 767px) {
	.d-only {
		display: none !important;
	}
	.m-only {
		display: block !important;
	}
}
#News .premium-blog-entry-title{
	overflow: hidden !important;
	text-overflow: ellipsis !important;
	white-space : nowrap !important;
	width: 100% !important;
	
}
#News .premium-blog-entry-meta{margin-top :15px;}
#News .premium-blog-entry-title a{line-height:0 !important;}

.premium-blog-wrap.premium-blog-even.slick-initialized.slick-slider .carousel-arrow {
  z-index: 1 !important;
}
.premium-blog-inner-container {
    height: 60px !important;
    justify-content: center !important;
}
.premium-blog-post-content {
	overflow: hidden !important;
	text-overflow: ellipsis !important;
	display: -webkit-box !important;
	-webkit-line-clamp: 2 !important;
	-webkit-box-orient: vertical !important;
	width: 100% !important;
}
.premium-blog-post-tags-container a, a.premium-tcloud-term-link, .page-numbers.dots {
	pointer-events: none !important;
}

/* 1. 슬라이더 고정 섹션 보완 */
.sticky-content-section { 
    position: sticky;
    top: 0; 
    left: 0; 
    width: 100%; 
    height: 820px; 
    z-index: 0; 
}

/* 2. 다음 콘텐츠 영역 */
.next-content-section {
    position: relative;
    z-index: 1;
    background: #fff;
}

/* 햄버거 사이트 맵 */
.wpp-hamburger-btn, 
.wpp-modal-overlay, 
.wpp-modal-content, 
.wpp-search-container, 
.wpp-sitemap-grid {
    font-family: 'Montserrat', sans-serif;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

/* 햄버거 사이트 맵 버튼 */
.wpp-hamburger-btn { 
    background: transparent; 
    border: none; 
    cursor: pointer; 
    width: 60px; 
    height: 60px; 
    display: flex; 
    justify-content: center; 
    align-items: center; 
    position: relative; 
    z-index: 10000001; 
    transition: var(--transition-base); 
}
.hamburger-box { width: 30px; height: 20px; position: relative; }
.hamburger-line { 
    display: block; 
    width: 100%; 
    height: 2px; /* 선을 더 얇게 수정 */
    background-color: #333; 
    position: absolute; 
    left: 0; 
    transition: var(--transition-base); 
}
.hamburger-line:nth-child(1) { top: 0; }
.hamburger-line:nth-child(2) { top: 9px; }
.hamburger-line:nth-child(3) { top: 18px; }

.wpp-hamburger-btn.is-active .hamburger-line { background-color: var(--lvs-white); }
.wpp-hamburger-btn.is-active .hamburger-line:nth-child(1) { transform: translateY(9px) rotate(45deg); }
.wpp-hamburger-btn.is-active .hamburger-line:nth-child(2) { opacity: 0; }
.wpp-hamburger-btn.is-active .hamburger-line:nth-child(3) { transform: translateY(-9px) rotate(-45deg); }

/* 모달 오버레이 및 배경 */
.wpp-modal-overlay { 
    position: fixed !important; 
    top: 0; 
    left: 0; 
    width: 100%; 
    height: 100%; 
    z-index: 2147483647 !important; 
    visibility: hidden; 
    opacity: 0; 
    display: flex; 
    justify-content: center; 
    align-items: flex-start; 
    transition: visibility 0s 0.4s, opacity 0.4s ease; 
    overflow-y: auto; 
	backdrop-filter: blur(4px);
	-webkit-backdrop-filter: blur(4px);
	transition: background 0.3s ease;
}
.wpp-modal-overlay.is-active { visibility: visible; opacity: 1; transition: opacity 0.4s ease; }
.wpp-modal-bg { 
    position: absolute; 
    top: 0; 
    left: 0; 
    width: 100%; 
    height: 100%; 
    background-color: var(--lvs-green); 
    z-index: -1; 
}
.wpp-modal-content { 
    max-width: 1200px; 
    width: 90%; 
    margin-top: 80px; 
    padding: 40px 20px; 
    color: var(--lvs-white); 
    transform: translateY(30px); 
    transition: transform 0.5s ease; 
}
.wpp-modal-overlay.is-active .wpp-modal-content { transform: translateY(0); }

/* 타이틀 디자인 개선 */
.wpp-modal-title { 
    font-size: clamp(24px, 5vw, 36px); 
    font-weight: 300; /* 아주 얇게 설정하여 세련미 강조 */
    text-align: center; 
    margin-bottom: 50px; 
    letter-spacing: 0.3em; /* 자간을 넓혀 고급스러운 느낌 추가 */
    color: var(--lvs-accent); 
    text-transform: uppercase;
}

/* 검색 컨테이너 */
.wpp-search-container { max-width: 600px; margin: 0 auto 60px; padding: 0 15px; }
.wpp-search-inner { 
    background: rgba(255, 255, 255, 0.03); 
    padding: 6px; 
    border-radius: 50px; 
    border: 1px solid rgba(145, 202, 177, 0.2);
    transition: all 0.3s ease;
}
.wpp-search-inner:focus-within { 
    border-color: var(--lvs-accent); 
    background: rgba(255, 255, 255, 0.08);
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.2);
}

/* Ivory Search 커스텀 */
.wpp-search-inner .is-form-style input.is-search-input {
	border: none !important;
}
.wpp-search-inner .is-form-style input.is-search-submit, .is-search-icon {
	background: none !important;
	border: none !important;
}

.wpp-modal-content .is-search-form { display: flex !important; align-items: center; width: 100%; }
.wpp-modal-content .is-search-input { 
    background: transparent !important; 
    border: none !important; 
    color: #fff !important; 
    padding: 12px 25px !important; 
    flex: 1;
    font-size: 15px;
    font-weight: 300;
}
.wpp-modal-content .is-search-input::placeholder { color: rgba(255,255,255,0.4); }
.wpp-modal-content .is-search-submit { 
    background: var(--lvs-accent) !important; 
    color: var(--lvs-green) !important; 
    border-radius: 50px !important; 
    padding: 10px 30px !important; 
    font-weight: 600 !important;
    font-size: 13px;
    letter-spacing: 0.1em;
    cursor: pointer;
    transition: 0.3s ease;
}
.wpp-modal-content .is-search-submit:hover { opacity: 0.9; transform: scale(1.02); }

/* 사이트맵 그리드 가독성 개선 */
.wpp-sitemap-grid { 
    display: grid; 
    gap: 50px; 
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); 
}
.wpp-column p, .wpp-column p > a { 
    font-size: 16px; 
    color: var(--lvs-accent); 
    font-weight: 600; 
    border-bottom: 1px solid rgba(145, 202, 177, 0.2); 
    padding-bottom: 15px; 
    margin-bottom: 25px; 
    letter-spacing: 0.1em;
}
.depth-1 { padding-left: 0; }
.depth-1 li { margin-bottom: 10px; list-style: none; }
.depth-1 a { 
    color: rgba(255, 255, 255, 0.9); 
    text-decoration: none; 
    font-size: 15px; 
    font-weight: 400;
    transition: 0.3s ease; 
    display: inline-block; 
}
.depth-1 a:hover { 
    color: var(--lvs-accent); 
    transform: translateX(5px); 
}

/* 서브 메뉴 가독성 (Depth 2) */
.depth-2 { 
    margin-left: 18px; 
    margin-top: 10px; 
    border-left: 1px solid rgba(145, 202, 177, 0.15); 
    list-style: none; 
    padding-left: 0;
}
.depth-2 li { margin-bottom: 8px; }
.depth-2 a { 
    font-size: 13px; 
    color: rgba(255, 255, 255, 0.5); 
    padding-left: 18px; 
    font-weight: 300;
}
.depth-2 a:hover { color: var(--lvs-white); }

/* 닫기 버튼 */
.wpp-close-btn { 
    position: absolute; 
    top: 30px; 
    right: 30px; 
    background: none; 
    border: none; 
    color: rgba(255,255,255,0.5); 
    font-size: 40px; 
    font-weight: 200;
    cursor: pointer; 
    transition: 0.4s cubic-bezier(0.4, 0, 0.2, 1); 
}
.wpp-close-btn:hover { transform: rotate(90deg); color: var(--lvs-accent); }

body.wpp-modal-open { overflow: hidden !important; }

@media (max-width: 768px) {
    .wpp-modal-content { margin-top: 40px; padding: 20px; }
    .wpp-sitemap-grid { gap: 30px; }
    .wpp-hamburger-btn { display: flex; } 
    .wpp-modal-title { margin-bottom: 30px; }
}

.wpp-mobile-floating-menu {
display: block;
position: fixed;
bottom: 0;
left: 0;
width: 100%;
/* 최신 스마트폰 하단 Safe Area 대응 */
height: calc(60px + env(safe-area-inset-bottom, 0px));
padding: 12px 16px calc(12px + env(safe-area-inset-bottom, 0px)) 16px;
background-color: rgba(255, 255, 255, 0.95);
backdrop-filter: blur(10px);
box-shadow: 0 -4px 20px rgba(0, 0, 0, 0.1);
z-index: 99999;
box-sizing: border-box;
}

.wpp-floating-inner {
display: flex;
gap: 10px;
width: 100%;
height: 100%;
}

.wpp-btn-item {
display: flex;
align-items: center;
justify-content: center;
gap: 8px;
border-radius: 0px 10px 0px 10px;
text-decoration: none !important;
transition: transform 0.2s ease;
}

.wpp-btn-item:active {
transform: scale(0.97);
}

.wpp-btn-inquiry {
background-color: #2A6B54;
flex: 0.43;
}

.wpp-btn-support {
background-color: #1E4E3D;
flex: 0.57;
}

/* 아이콘 박스 및 폰트어썸 크기 두께 최적화 */
.wpp-icon-box {
width: 24px;
height: 24px;
display: flex;
align-items: center;
justify-content: center;
flex-shrink: 0;
}

/* 폰트어썸 아이콘 세부 스타일 (얇고 선명하게 최적화) */
.wpp-fa-icon {
font-size: 18px; /* 컴팩트한 시각적 크기 정의 */
color: #FFFFFF;
font-weight: 400; /* 폰트어썸 기본 두께 유지 */
display: inline-block;
}

.wpp-btn-text {
color: #FFFFFF;
font-family: 'Noto Sans KR', -apple-system, sans-serif;
font-size: 14px;
font-weight: bold;
letter-spacing: -0.3px;
white-space: nowrap;
}

/*more - link button*/
.link_a{display: block;}
.link_a i{padding: 0 9px;position: relative;font-style: normal;}
.link_a i::before{content: "";position: absolute;top: 50%;right: 0;left: auto;transform: translateY(-50%);width: 0;height: 4px;background-color: rgba(145,202,177,.6);z-index: -1;transition: width .45s ease;}

.link_a i:hover::before{width: 100%;right: auto;left: 0;}
.link_a.on i::before { width: 100%;right: auto;left: 0; }


@media screen and (max-width: 720px){
    .link_a{font-size: 11px;font-weight: 900;}
}

.hfe-flyout-container .is-form-style button.is-search-submit {
  border: 1px solid #ccc !important;
}
.hfe-flyout-container .is-form-style button.is-search-submit:hover {
  background: #ccc !important;
}

/* 컨테이너: Flex 적용 */
.slick-slide-container {
	display: flex;
	flex-wrap: wrap; /* 화면이 좁아지면 아래로 떨어짐 */
	gap: 10px;
	align-items: center;
}

/* 공통 박스 스타일 */
.slick-slide-box {
	/* 모바일 우선: 기본적으로 100% */
	flex: 1 1 100%;
	align-content: center;
	align-items: center;
}

.slick-slide-box img {
	margin: 0px 0px 10px 10px;
}
.slick-slide-box .dsc {
	font-size: 18px;
	margin: 10px 0px 50px 10px;
	display: block;
}

.slick-slide-box i {
	color: black;
	font-family: var(--e-global-typography-98e39d2-font-family), noto sans;
	font-size: var(--e-global-typography-98e39d2-font-size);
	font-weight: var(--e-global-typography-98e39d2-font-weight);
	line-height: var(--e-global-typography-98e39d2-line-height);
	letter-spacing: var(--e-global-typography-98e39d2-letter-spacing);
}

/* 데스크탑(768px 이상)에서 50% 분할 */
@media (min-width: 1023px) {
	.slick-slide-box {
		flex: 1 1 calc(50% - 5px); /* 갭을 고려하여 50% 설정 */
	}
}
@media screen and (max-width: 1079px) {
	.slick-slide-box img {
		margin: 0px auto;
	}
	.slick-slide-box .dsc {
		font-size: 14px;
		text-align: center !important;
		margin-left: 0px !important;
	}

	.slick-slide-box .link_a {
		text-align: center !important;
		margin-left: 0px !important;
	}
	#premium-carousel-c390a10 .link_a {
		text-align: center !important;
		margin: 0px auto 20px auto !important;
	}
}
.premium-carousel-nav-progressbar {
	width: 25% !important;
	margin: 0 auto !important;
}

/* 마우스오버 시 살짝 위로 뜨는 모션 */
.hover-lift {
  transition: transform 0.25s ease;
}

.hover-lift:hover {
  transform: translateY(-6px);
}
/* Easy 적힌 박스 padding넣기 */
.easybox {
  display: inline-block;
  padding: 0 20px;
}
/* pc-83vh */
@media screen and (min-width: 1025px) {
  .pc-83vh {
    height: 83vh !important;
    min-height: 83vh !important;
    max-height: 83vh !important;
  }
}
/* Interface guide imgbox content */
.txt-box01 .elementor-image-box-content{
	padding: 20px;
    background: #f9f9f9;
    border: 1px solid #eee;
    box-sizing: border-box;
}
/* max height*/
.max-h-960 {
  max-height: 960px;

}
/* 초록박스 리스트*/
.square-list {
  list-style: none;
  margin: 0;
  padding: 0;
}

.square-list li {
  position: relative;
  margin: 0 0 8px 0;
  padding-left: 16px;
  line-height: 1.45;
  font-size: 18px;
  color: #111;
}

.square-list li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.72em;
  width: 4px;
  height: 4px;
  background-color: #57B08A;
}
/* 박스요소 a태그를 박스 전체로 키워 박스가 버튼으로 동작하기 */
.a-box .elementor-element,
.a-box .elementor-element.elementor-widget.elementor-widget-heading{position:static;}

.a-box .elementor-heading-title a{position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: 2; padding-top:85px; padding-left:40px;}
@media screen and (max-width:1024px){
	.a-box .elementor-heading-title a{
		padding-top: 60px;
		padding-left:20px;
	}
}
@media screen and (max-width:767px){
	.a-box .elementor-heading-title a{
		padding-top: 20px;
		padding-left:60px;
		line-height: 1 !important;
	}
}
/* 백그라운드 영상 contain */
.video-contain-bg .elementor-background-video-container {
  height: 83vh !important;
  overflow: hidden;
  background: #f4f4f2;
}

.video-contain-bg video.elementor-background-video-hosted {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center bottom !important;
}


/*서브페이지배너*/
.subpage-banner{overflow:hidden;}

/* 헤더 섹션 오버레이 에니메이션 */
.gloim-header-container {
	position: absolute;
	top: 0;
	width: 100%;
	height: 84vh;
	color: white;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 2rem;
	z-index: 2;

	/* 초기 배경색 투명 및 부드러운 전환을 위한 transition 설정 */
	background-color: rgba(0, 0, 0, 0);
	transition: background-color 0.5s cubic-bezier(0.22, 1, 0.36, 1);
	pointer-events: none; /* 헤더가 화면 전체를 덮어 스크롤이 안 되는 현상 방지 */
}

.gloim-header-container.gloim-scrolled {
	background-color: rgba(0, 0, 0, 0.4) !important;
}


.gloim-overlay {
	position: absolute;
	top: 0;
	height: 100%;
	width: 100px;
	background-color: white;
	z-index: 20;
	transition: transform 1s cubic-bezier(0.22, 1, 0.36, 1);
}

.gloim-overlay-left { left: 0; transform: translateX(0); }
.gloim-overlay-right { right: 0; transform: translateX(0); }

.gloim-overlay-left.gloim-hidden { transform: translateX(-100%); }
.gloim-overlay-right.gloim-hidden { transform: translateX(100%); }

.gloim-spacer { height: 150vh; padding: 20px; background: #f0f0f0; }

@media (max-width: 768px) {
	.gloim-overlay-left { display: none !important; }
	.gloim-overlay-right { display: none !important; }
	.gloim-overlay {
		width: 50px;
	}
	.hfe-scroll-to-top-button {
		bottom: 80px;
	}
	
	.pna-title-text {
		text-align: center !important;
	}
}
/*  */
.nowrap{
	box-sizing:border-box;
	white-space:nowrap;
}
/* 기본: 필요한 br만 보이도록 제어 */

/* 모바일만 br */
.mo-br {
  display: none;
}

/* 태블릿만 br */
.ta-br {
  display: none;
}

/* 태블릿 + 모바일 br */
.tamo-br {
  display: none;
}

/* PC만 br */
.pc-br {
  display: inline;
}

/* PC + 태블릿 br */
.r-br {
  display: inline;
}

/* 모바일: 767px 이하 */
@media (max-width: 767px) {
  .mo-br {
    display: inline;
  }

  .tamo-br {
    display: inline;
  }

  .pc-br {
    display: none;
  }

  .r-br {
    display: none;
  }
}

/* 태블릿: 768px ~ 1024px */
@media (min-width: 768px) and (max-width: 1024px) {
  .ta-br {
    display: inline;
  }

  .tamo-br {
    display: inline;
  }

  .pc-br {
    display: none;
  }

  .r-br {
    display: inline;
  }
}
.blog-thumb .premium-blog-thumbnail-container img, .blog-thumb .premium-blog-zoomin-effect {
	border-radius: 20px !important;
}
.elementor-widget-text-editor li {
  margin: 10px 0px;
}
.w3eden .card {
  border-radius: unset !important;
}
.w3eden .form-control {
  font-size: 1em !important;
  border-radius: unset !important;
}
.w3eden .btn {
  font-size: 1em !important;
  border-radius: unset !important;
}
.w3eden .pagination .page-numbers {
  font-size: 1em !important;
  border-radius: unset !important;
}
.w3eden .btn-info {
  color: #fff;
  background-color: #043e2e !important;
  border-color: #043e2e !important;
}
.w3eden .btn-info:hover {
  color: #fff;
  background-color: #000000 !important;
  border-color: #000000 !important;
}
.w3eden .pagination .page-numbers.current, .w3eden .pagination .page-numbers.current-page {
  color: #fff;
  background-color: #043e2e !important;
  border-color: #043e2e !important;
}
.dynamic-btn-wrapper {
	margin: 0px;
	text-align: center;
}
.dynamic-download-button {
	display: inline-block;
	padding: 20px 40px;
	background-color: #043e2e;
	color: #ffffff;
	font-size: 16px;
	font-weight: 600;
	text-decoration: none;
	border-radius: 0px;
	box-shadow: 0 4px 6px rgba(0,0,0,0.1);
	transition: all 0.3s ease;
	margin: 0px;
}
.dynamic-download-button:hover {
	background-color: #000000;
	color: #ffffff;
}


.tme-slider.slick-initialized>div, .tme-slider>div:first-child {
	border-radius: 10px;
}

.tme-thumbnail-dots {
	display: grid !important;
	grid-template-columns: repeat(5, 1fr) !important; /* 가로 5열 */
	gap: 10px !important; /* 이미지 사이 간격 */
	list-style: none !important;
	padding: 0 !important;
}


/*모바일메뉴계층*/
.mo-btn .hfe-nav-menu > li > .sub-menu > li > .sub-menu > li > a{font-size:13px; text-indent:10px;}

/*제품페이지서포트*/
@media screen and (max-width:767px){
.support-sec > .elementor-container > .elementor-column > .elementor-widget-wrap{padding:30px; justify-content:center;}
.support-sec .support-btn{width: 48% !important; margin: 0 !important; padding: 0 !important; overflow: hidden;}
.support-sec .support-btn + .support-btn{margin-left:2% !important;}
.support-sec .support-btn:nth-child(3 of .support-btn) {
    margin-top: 8px !important;
}
.support-sec .support-btn a{font-size:14px; padding:15px 20px;}
}
@media screen and (max-width:500px){
.support-sec .elementor-widget-spacer{display:none;}
}
/*cad페이지모바일*/
@media screen and (max-width:499px){
.software-top-banner .elementor-widget-spacer{display:none;}
}

/*탭버튼반응형시 떨어지게*/
.e-tabs-menu-base{flex-wrap:wrap;}


/*문의하기 국가번호*/
  /* 전화번호 입력 영역을 폼 너비에 맞춤 */
  .iti {
    width: 100%;
  }

  .iti input.ff-intl-phone {
    width: 100%;
  }

  /* 국가 검색창 및 목록이 다른 요소 뒤에 가려지는 현상 방지 */
  .iti__dropdown-content {
    z-index: 999999;
  }

.iti__search-icon{
    right:8px !important; left:auto !important;
  }
