/*
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 */



/* ========================================
   English
   ======================================== */
html[lang^="en"] .elementor-kit-8 {
    --e-global-typography-primary-font-family: "Noto Sans";
    --e-global-typography-secondary-font-family: "Noto Sans";
    --e-global-typography-text-font-family: "Noto Sans";
    --e-global-typography-accent-font-family: "Noto Sans";

    --e-global-typography-c390577-font-family: "Noto Sans";
    --e-global-typography-3adf671-font-family: "Noto Sans";
    --e-global-typography-19997c8-font-family: "Noto Sans";
    --e-global-typography-faf2298-font-family: "Noto Sans";
    --e-global-typography-e5179c8-font-family: "Noto Sans";
    --e-global-typography-f9d641c-font-family: "Noto Sans";
    --e-global-typography-00cd74b-font-family: "Noto Sans";
}


/* ========================================
   Español
   ======================================== */
html[lang^="es"] .elementor-kit-8 {
    --e-global-typography-primary-font-family: "Noto Sans";
    --e-global-typography-secondary-font-family: "Noto Sans";
    --e-global-typography-text-font-family: "Noto Sans";
    --e-global-typography-accent-font-family: "Noto Sans";

    --e-global-typography-c390577-font-family: "Noto Sans";
    --e-global-typography-3adf671-font-family: "Noto Sans";
    --e-global-typography-19997c8-font-family: "Noto Sans";
    --e-global-typography-faf2298-font-family: "Noto Sans";
    --e-global-typography-e5179c8-font-family: "Noto Sans";
    --e-global-typography-f9d641c-font-family: "Noto Sans";
    --e-global-typography-00cd74b-font-family: "Noto Sans";
}


/* ========================================
   العربية
   ======================================== */
html[lang^="ar"] .elementor-kit-8 {
    --e-global-typography-primary-font-family: "Noto Sans Arabic";
    --e-global-typography-secondary-font-family: "Noto Sans Arabic";
    --e-global-typography-text-font-family: "Noto Sans Arabic";
    --e-global-typography-accent-font-family: "Noto Sans Arabic";

    --e-global-typography-c390577-font-family: "Noto Sans Arabic";
    --e-global-typography-3adf671-font-family: "Noto Sans Arabic";
    --e-global-typography-19997c8-font-family: "Noto Sans Arabic";
    --e-global-typography-faf2298-font-family: "Noto Sans Arabic";
    --e-global-typography-e5179c8-font-family: "Noto Sans Arabic";
    --e-global-typography-f9d641c-font-family: "Noto Sans Arabic";
    --e-global-typography-00cd74b-font-family: "Noto Sans Arabic";
}



/*임시언어버튼숨김*/
.mo-nav .lang-item-es,
.mo-nav .lang-item-ar,
.lang-btn .lang-item-es,
.lang-btn .lang-item-ar{display:none !important;}



/* 텍스트 관련 유틸리티 클래스 */

*{word-break:keep-all !important;}
.p-no-margin p{margin-bottom:0 !important;}
.p-margin p{margin-bottom:14px !important;}
.p-margin p:last-child{margin-bottom:0 !important;}
.mb-0{margin-bottom:0 !important;}
@media screen and (max-width:767px){
.pc-br{display:none;}
}

br.pc,
br.tb,
br.mo{display:none;}

@media screen and (min-width:1025px){
br.pc{display:inline-block;}
}
@media screen and (min-width: 768px) and (max-width: 1024px){
br.tb{display:inline-block;}
}
@media screen and (max-width: 767px){
br.mo{display:inline-block;}
}

.text-wrap-balance{text-wrap:balance;}
.text-wrap-pretty{text-wrap:pretty;}



.elementor-widget-html{margin-bottom:0 !important;}


/*여백*/
.spacer-def .elementor-spacer-inner{height:260px !important;}
.spacer-sm .elementor-spacer-inner{height:200px !important;}
/*모바일 컨텐츠너비*/
@media screen and (max-width:767px){
.mo-width .elementor-container{max-width: 520px !important;}
}


/*브레드크럼*/
.breadcrumb-style span,
.breadcrumb-style a{font-size:16px; font-weight:300; color:#fff; font-family:var(--e-global-typography-e5179c8-font-family), Sans-serif; line-height:1.2;}
.breadcrumb-style .elementor-shortcode{text-align:center;}
.breadcrumb-style.black span,
.breadcrumb-style.black a{color:#181F24;}
.breadcrumb-style .elementor-shortcode > span{display:flex; gap:10px; align-items: center; justify-content: center;}
.breadcrumb-style img{width:5px; aspect-ratio: 4 / 8; margin-top:2px;}
.post-template .breadcrumb-style img,
.white-banner .breadcrumb-style img { filter: brightness(0); }
@media screen and (max-width:767px){
	.breadcrumb-style span,
	.breadcrumb-style a{font-size:14px;}
}

/*header*/
.header-logo .elementor-image-box-title a{color:#000 !important;}
.header-logo .elementor-image-box-title a:hover{color:#000 !important;}
.main-header{transition:none !important;}
.pc-nav span.hfe-menu-toggle.sub-arrow.hfe-menu-child-0{display:none;}
.lang-btn{min-width:69px !important;}
.lang-btn .sub-menu{min-width:auto !important; left:4px !important;}
.lang-btn .lang-item a{padding-left:15px !important}
.lang-btn .current_page_item{display:none;}
.lang-btn .current-lang{display:none;}
.pc-nav .lang-item{display:none;}
.mo-nav .lang-item a{justify-content: start !important;}
.mo-nav .hfe-nav-menu-icon{padding:0 !important;}
@media screen and (max-width:1024px){
	.mo-nav .lang-item{display:block;}
}

/*메뉴 줄바꿈 방지*/
@media (min-width: 1025px) {

    /* 서브메뉴: 최소 너비 + 내용에 맞춰 자동 확장 */
    .pc-nav .hfe-nav-menu .sub-menu {
        min-width: 220px;
        width: max-content !important;
        max-width: none;
    }

    /* 모든 서브메뉴 항목 */
    .pc-nav .hfe-nav-menu .sub-menu .hfe-sub-menu-item {
        box-sizing: border-box;
        white-space: nowrap;
        padding: 15px 25px !important;
        text-align: left;
    }

    /* 하위 메뉴가 있는 항목 */
    .pc-nav .hfe-nav-menu .sub-menu
    .hfe-has-submenu-container > .hfe-sub-menu-item {
        position: relative;
        padding-right: 55px !important;
    }

    /* 화살표를 메뉴 오른쪽에 고정 */
    .pc-nav .hfe-nav-menu .sub-menu
    .hfe-sub-menu-item > .sub-arrow {
        position: absolute !important;
        right: 20px !important;
        top: 50% !important;
        transform: translateY(-50%);
        margin: 0 !important;
    }
}



.header-logo img{width:100% !important;}
.header-logo .elementor-image-box-img { flex: 0 0 50px; width: 50px;}
.header-logo .elementor-image-box-wrapper{display:flex !important; align-items:center;}
@media screen and (max-width:767px){
.header-logo .elementor-image-box-wrapper{display:flex !important; align-items:center; gap:5px; text-align:start !important;}
}

.first-sec{margin-top:200px !important;}


/*스크롤시*/
.she-header{border-bottom:1px solid #e9e9e9;}

/*footer*/
.sns-icon-list .elementor-icon-list-item{transition:0.4s;}
.sns-icon-list .elementor-icon-list-item:hover{transform:scale(1.1);}

/*arrow btn*/
.arrow-btn svg{width:20px; transition:0.4s; margin-top:2px}
.arrow-btn:hover svg{transform:translateX(5px);}



/*faq*/
.faq .elementor-accordion-item + .elementor-accordion-item{margin-top:16px}
.faq .elementor-accordion-icon{margin-top:7px;}
.faq .elementor-tab-title.elementor-active .elementor-accordion-icon-closed svg{transform:rotate(135deg);}
.faq .elementor-accordion-icon-closed svg{transition:0.4s;}
.faq .elementor-accordion-icon-closed{display: block !important; transition:0.4s;}
.faq .elementor-accordion-icon-opened{display: none !important;}


/*서브배너*/
.sub-top{margin:0 20px;}
@media screen and (max-width:767px){
	.sub-top{margin:0 15px;}
}
.sub-top > .elementor-container{}

/*인덱스*/
.index-box{position:relative; border-radius:20px !important;}
.index-box-wrap .elementor-widget-wrap{display:grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap:20px; align-items: start;}
.index-box-wrap.two-box .elementor-widget-wrap{grid-template-columns: repeat(2, minmax(0, 1fr));}

.index-box-wrap .elementor-widget-wrap{display:flex !important; gap:20px; align-items: start;}
.index-box-wrap .elementor-widget-wrap .index-box{width:calc((100% - 40px)/3);}
.index-box-wrap.two-box .elementor-widget-wrap .index-box{width:calc((100% - 20px)/2);}
@media screen and (min-width:1121px) and (max-width:1300px){
	.index-txt .elementor-widget-wrap{margin-right:40px !important;}
	.index-box-wrap{flex:0 0 685px;}
	
}
@media screen and (max-width:1120px){
	.index-wrap .elementor-container{flex-wrap:wrap !important;}
	.index-txt{width:100% !important;}
	.index-box-wrap{width:100% !important;}
	.index-box img{aspect-ratio:16/13; object-fit:cover;}
}
@media screen and (max-width:1024px){
	
}
@media screen and (max-width:767px){
	.index-box-wrap .elementor-widget-wrap .index-box{width:100%;}
	.index-box-wrap.two-box .elementor-widget-wrap .index-box{width:100%;}
	.index-box img{aspect-ratio:16/9;}

}

.index-box .elementor-image-box-wrapper{display:flex; }  
.index-box .elementor-image-box-content{position: absolute; bottom: 0; left: 0; padding:0 15px 20px 20px;}

.index-box img{width:100%;}
.index-box .elementor-image-box-title a:after{content:''; width:100%; height:100%; position: absolute; left: 0; bottom: 0;}
.index-box{transition:transform 0.25s ease, box-shadow 0.25s ease, filter 0.25s ease !important;}
.index-box:hover{transform: translateY(-2px); box-shadow: 0 6px 15px rgba(0, 0, 0, 0.12);}


/*서브네비*/
.id-btn{border-bottom:2px solid #fff;}
.id-btn:hover{border-bottom:2px solid #00aab1;}
.id-btn:hover a{color:#00aab1 !important;}

.id-btn.active{border-bottom:2px solid #00aab1;}
.id-btn.active a{color:#00aab1 !important;}

/*flex order*/
@media screen and (max-width:767px){
	.order1{order:1;}
	.order2{order:2;}
	.order3{order:3;}
}

/*기술백서*/
.spb-item-title a:hover{color:var(--e-global-color-primary) !important;}
.spb-pagination a:hover, .spb-pagination a:focus, .spb-pagination .current{background:none !important;; color: #000 !important;}
.spb-pagination a, .spb-pagination span{border:none !important;; color:#767676 !important;}
@media screen and (max-width:767px){
.white-paper-list .spb-thumb img{aspect-ratio:16/9 !important;}
.white-paper-list .spb-layout-media .spb-item{grid-template-columns: repeat(1, minmax(0, 1fr)) !important;}
}

/*아티클*/
.article-list .spb-items{row-gap: 60px;}
.article-list .spb-item{border:none !important;}
.article-list .spb-tabs{margin-bottom:48px;}
.article-list .spb-item img{transition:0.4s;}
.article-list .spb-item:hover img{transform:scale(1.1);}

/*게시글 네비*/
.pna-item{ display: flex !important; flex-wrap: wrap;}
.pna-title-text{width: 100%; margin-top: 0 !important; margin-bottom:5px; text-align: center;}
.pna-btn{order:2;}


/* =========================================
   SAMJUNG ARTICLE AUTO TOC
========================================= */

/* 왼쪽 목차 컨테이너 */
.sj-toc {
  position: sticky;
  top: 150px;
  align-self: flex-start;
  min-width: 0;
}

/* 목차 목록 */
.sj-toc-list {
  display: flex;
  flex-direction: column;
  gap: 18px;
}

/* 목차 기본 링크 */
.sj-toc-link {
  display: block;
  color: #8C969A;
  font-size: var(--e-global-typography-text-font-size);
  font-weight: 700;
  line-height: 1.6;
  text-decoration: none;
  transition: color 0.2s ease;
  overflow-wrap: anywhere;
	font-family:var(--e-global-typography-3adf671-font-family), Sans-serif;
}

/* 마우스 오버 및 활성화 */
.sj-toc-link:hover,
.sj-toc-link.is-active {
  color: var(--e-global-color-primary, #222);
  text-decoration: none;
}

.sj-toc-link.is-active {
/*   font-weight: 600; */
}

/* H2~H6 공통 폰트 크기 */

.sj-toc-link.is-h3,
.sj-toc-link.is-h4,
.sj-toc-link.is-h5,
.sj-toc-link.is-h6 {
  font-size: var(--e-global-typography-a903322-font-size);
	font-weight:500;
}

/* H2~H6 단계별 들여쓰기 */
.sj-toc-link.is-h2 { padding-left: 0; }
.sj-toc-link.is-h3 { padding-left: 12px; }
.sj-toc-link.is-h4 { padding-left: 24px; }
.sj-toc-link.is-h5 { padding-left: 36px; }
.sj-toc-link.is-h6 { padding-left: 48px; }

/* 헤딩 클릭 시 상단 여백 */
.sj-article h2,
.sj-article h3,
.sj-article h4,
.sj-article h5,
.sj-article h6 {
  scroll-margin-top: 50px;
}

/* 모바일 */
@media (max-width: 767px) {
  .sj-toc {
    position: static;
  }

  .sj-toc-list {
    gap: 15px;
  }
}

/* 목차 내부 스크롤 */
.sj-toc .sj-toc-list {
  max-height: calc(100dvh - 180px);
  overflow-y: auto;
  overflow-x: hidden;
  overscroll-behavior-y: contain;

  /* 스크롤바 공간 확보 */
  padding-right: 8px;

  /* Firefox */
  scrollbar-width: thin;
  scrollbar-color: #c5cbd0 transparent;
}

/* Chrome / Edge / Safari */
.sj-toc .sj-toc-list::-webkit-scrollbar {
  width: 4px;
}

.sj-toc .sj-toc-list::-webkit-scrollbar-thumb {
  background: #c5cbd0;
  border-radius: 10px;
}

.sj-toc .sj-toc-list::-webkit-scrollbar-track {
  background: transparent;
}

/* 모바일에서는 내부 스크롤 해제 */
@media (max-width: 767px) {
  .sj-toc .sj-toc-list {
    max-height: none;
    overflow: visible;
    padding-right: 0;
  }
}

/*브로슈어 리스트*/
.pdf-list .sbm-pagination a.is-current{background:none;  color: #000;}
.pdf-list .sbm-pagination a{border:none;}
.pdf-list .sbm-cover{border:none !important;}


/*문의폼*/
.fluentform .ff-el-input--label.ff-el-is-required.asterisk-right label:after{margin-left:0 !important;}
.choices__inner{border-radius:14px !important;}

/* Fluent Forms 드롭다운 화살표 위치 조절 */
.fluentform select.ff-el-form-control {
  appearance: none !important;
  -webkit-appearance: none !important;
  -moz-appearance: none !important;

  padding-right: 15px !important;

  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23666' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-position: right 12px center !important;
  background-size: 16px 16px !important;
}

/*백서테이블*/
.paper-table thead th {background: #00A9B5; color: #FFFFFF; }
.paper-table th{text-transform: none;}
.paper-table tr:last-child td,
.paper-table tbody tr:last-child th{border-bottom:1px solid #333;}




/*리캡챠*/
.grecaptcha-badge {
    left: 0 !important;
    right: auto !important;
    bottom: 14px !important;
    width: 70px !important;
    opacity: 0.7 !important;
    transition: width 0.3s ease, opacity 0.3s ease !important;
}

.grecaptcha-badge:hover {
    width: 256px !important;
    opacity: 1 !important;
}

.grecaptcha-badge .grecaptcha-logo {
    position: absolute !important;
    right: 0 !important;
}
/* 모바일에서 reCAPTCHA 배지 숨기기 */
@media (max-width: 767px) {
    .grecaptcha-badge {
        visibility: hidden !important;
    }
}
