/*!
Theme Name: Ohio-Child
Theme URI: http://ohio.colabr.io/
Author: Colabrio
Author URI: http://colabr.io/
Description: Ohio is a WordPress theme bundled with premium plugins to build a modern and functional website.
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Template: ohio
Text Domain: ohio-child
Tags: ajax, customizer, ecommerce, portfolio, minimal, page builder, responsive, multipurpose, shop, store, woocommerce, wpml

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned with others.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal http://necolas.github.com/normalize.css/
*/


.root {
  --clb-container-side-gutter:0 !important;
}
h1, h2, h3, h4, h5, h6, p ,span, a, body, li, .elementor-widget-ohio_button a, button { 
  font-family: "pretendard", "SF Pro KR", "SF Pro Text", "SF Pro Icons", "Apple Gothic", "HY Gulim", "MalgunGothic", "HY Dotum", "Lexi Gulim", "Helvetica Neue", "Helvetica", "Arial", sans-serif;
  word-break: keep-all;
}
p {
  margin-block-start:0;
}
h4:not(.title) + *, h5:not(.title) + *, h6:not(.title) + * {
    margin-top: 0;
}
.elementor {
  margin:0;
}

/*.e-con {
    --container-default-padding-right: 0 !important;
    --container-default-padding-left: 0 !important;
}*/
.heading .divider + .subtitle {
    margin-left: 2px;
}
.inner-wrap {
  margin:0 auto !important;
}

.page-container {
  max-width: 100%;
  padding:0 var(--pc-LR-padding);
}
/*.page-container:not(.-full-w) {
    max-width: unset;
}*/
.page-container.bottom-offset {
  max-width:var(--clb-container-width);
  padding:0 var(--pc-LR-padding);
}
.elementor-page .page-container:not(.-full-w) .elementor > .e-con-full.e-parent, .elementor-page .page-container:not(.-full-w) .elementor .e-con-full[data-nesting-level="0"].e-parent {
  left:0 !important;
}
a.ohio-widget.button {
    padding: 0 28px;
    font-weight:700;
    font-size:16px;
}
.inner-wrap-modify .img-col {
  border-radius: 8px;
  overflow: hidden;
}
 .vc_row:not(.-nospace) {
  margin-left:-6px;
  margin-right:-6px;
} 
.heading .divider + .title {
    padding-top: 0;
}
/* #contact-archive 로 해시 점프한 경우에만 스무스 스크롤 비활성화 */
/*html:has(#contact-archive:target) {
  scroll-behavior: auto !important;
}*/
span.highlighted-text-holder {
    margin-right: -4px;
}

.empty-state h3 {
    margin-bottom: 40px;
}
@media (max-width: 768px) {
  .grid-item:not(.-nospace) {
    padding-top:0;
    padding-bottom:0;
  }
}
@media screen and (min-width:1641px) {
  .inner-wrap-modify {
    max-width:var(--clb-container-width);
    margin:0 auto;
    padding:0 var(--pc-LR-padding);
  }
}

@media screen and (min-width:1461px) and (max-width:1640px) {
  .inner-wrap-modify {
     margin-left:calc((100% - var(--clb-container-width)) / 2);
     padding-left:var(--pc-LR-padding);
  }
  .inner-wrap-modify .left {
    width: calc((var(--clb-container-width) - var(--pc-LR-padding) * 2) * 0.40);
  }
  .inner-wrap-modify .img-col {
    border-radius: 8px 0 0 8px;
  }
}

@media screen and (min-width:1181px) and (max-width:1460px) {
  .inner-wrap-modify {
     margin-left:0;
     padding-left:var(--pc-LR-padding);
  }
  .inner-wrap-modify .left {
    width: calc((100% - var(--pc-LR-padding)) * 0.42);
  }
  .inner-wrap-modify .img-col {
    border-radius: 8px 0 0 8px;
    overflow: hidden;
  }
}

@media screen and (min-width:769px) and (max-width:1180px) {
  .inner-wrap-modify {
     margin-left:0;
     padding-left:var(--pc-LR-padding);
  }
  .inner-wrap-modify .left {
    width: calc((100% - var(--pc-LR-padding)) * 0.5 - var(--pc-LR-padding) / 2);
  }
  .inner-wrap-modify .img-col {
    border-radius: 8px 0 0 8px;
    overflow: hidden;
  }
}


@media screen and (min-width:1181px) {
  .section {
      padding-top: 5.5vw !important;
      padding-bottom:5.5vw !important;
  }
  #intro {
      padding: 7vw 0 6vw 0 !important;
  }
  .inner-wrap {
     /*padding: 0 var(--pc-LR-padding) !important;*/
  }

  .e-con>.e-con-inner {
    padding-left: var(--pc-LR-padding);
    padding-right: var(--pc-LR-padding);
  }
}

@media screen and (min-width:769px) and (max-width:1180px) {
  .section {
      padding-top: 7vw !important;
      padding-bottom: 7vw !important;
  }
    #intro {
      padding-top: 7vw !important;
      padding-bottom: 0vw !important;
  }

  .e-con>.e-con-inner {
    padding-left: var(--pc-LR-padding);
    padding-right: var(--pc-LR-padding);
  }
}


@media screen and (max-width:768px) {
  .page-container {
  max-width: 100%;
     padding: 0 var(--mo-LR-padding);
}
  .section {
      padding-top: 14vw !important;
      padding-bottom: 14vw !important;
  }
  #intro {
      padding: 18vw 0 0vw 0 !important;
  }
   .inner-wrap-modify {
     padding: 0 var(--mo-LR-padding) !important;
  }
  .e-con>.e-con-inner {
    padding-left: var(--mo-LR-padding);
    padding-right: var(--mo-LR-padding);
  }
  .page-container.bottom-offset {
    max-width:var(--clb-container-width);
    padding:0 var(--mo-LR-padding);
  }
  .vc_row:not(.-nospace) {
    margin-left: 0;
    margin-right: 0;
  }
  .vc_row:not(.-nospace) [class^=vc_col], .vc_row:not(.-nospace) .grid-item {
    padding-left: 0;
    padding-right: 0;
  }

  /*.section .side-col {
    position: sticky;
    top: 65px; 
    z-index: 1;
  }*/
}


/*--------컨택트 폼----------*/
.contact-form .wpcf7-form-control-wrap:not([data-name^=checkbox]), .subscribe-form .wpcf7-form-control-wrap:not([data-name^=checkbox]) {
    margin-top: 4px !important;
    margin-bottom: 4px;
}
.contact-form label {
    font-size: 14px;
    font-weight: 600;
}
input:not([type="submit"]), textarea, select {
  border-radius: 4px !important;
}
input[type=email].wpcf7-not-valid, input[type=number].wpcf7-not-valid, input[type=password].wpcf7-not-valid, input[type=search].wpcf7-not-valid, input[type=tel].wpcf7-not-valid, input[type=text].wpcf7-not-valid, input[type=date].wpcf7-not-valid, input[type=url].wpcf7-not-valid, textarea.wpcf7-not-valid, select.wpcf7-not-valid, .select2-container--default .select2-selection--single.wpcf7-not-valid {
    box-shadow: 0 0 0 2px color-mix(in srgb, var(--clb-color-danger) 25%, transparent);
}


@media (min-width: 992px) {
.vc_col-lg-4.vc_col-sm-12.empty {
    opacity: 0;
    display: unset;
} 

.vc_col-lg-4.vc_col-sm-12.empty p label {
    opacity: 0;
}
  .vc_hidden-lg {
    display: none !important;
    margin: 20px 0 12px;
  }

  div[class*=vc_col-lg] {
    float: left;
  }

  .vc_col-lg-1 {
    width: calc(8.3333333333% * 1);
  }

  .vc_col-lg-2 {
    width: calc(8.3333333333% * 2);
  }

  .vc_col-lg-3 {
    width: calc(8.3333333333% * 3);
  }

  .vc_col-lg-4 {
    width: calc(8.3333333333% * 4);
  }

  .vc_col-lg-5 {
    width: calc(8.3333333333% * 5);
  }

  .vc_col-lg-6 {
    width: calc(8.3333333333% * 6);
  }

  .vc_col-lg-7 {
    width: calc(8.3333333333% * 7);
  }

  .vc_col-lg-8 {
    width: calc(8.3333333333% * 8);
  }

  .vc_col-lg-9 {
    width: calc(8.3333333333% * 9);
  }

  .vc_col-lg-10 {
    width: calc(8.3333333333% * 10);
  }

  .vc_col-lg-11 {
    width: calc(8.3333333333% * 11);
  }

  .vc_col-lg-12 {
    width: calc(8.3333333333% * 12);
  }

  .vc_col-lg-push-1 {
    left: calc(8.3333333333% * 1);
    position: relative;
  }

  .vc_col-lg-push-2 {
    left: calc(8.3333333333% * 2);
    position: relative;
  }

  .vc_col-lg-push-3 {
    left: calc(8.3333333333% * 3);
    position: relative;
  }

  .vc_col-lg-push-4 {
    left: calc(8.3333333333% * 4);
    position: relative;
  }

  .vc_col-lg-push-5 {
    left: calc(8.3333333333% * 5);
    position: relative;
  }

  .vc_col-lg-push-6 {
    left: calc(8.3333333333% * 6);
    position: relative;
  }

  .vc_col-lg-push-7 {
    left: calc(8.3333333333% * 7);
    position: relative;
  }

  .vc_col-lg-push-8 {
    left: calc(8.3333333333% * 8);
    position: relative;
  }

  .vc_col-lg-push-9 {
    left: calc(8.3333333333% * 9);
    position: relative;
  }

  .vc_col-lg-push-10 {
    left: calc(8.3333333333% * 10);
    position: relative;
  }

  .vc_col-lg-push-11 {
    left: calc(8.3333333333% * 11);
    position: relative;
  }

  .vc_col-lg-push-12 {
    left: calc(8.3333333333% * 12);
    position: relative;
  }
}
@media (max-width: 991px) {
  .vc_col-lg-4.vc_col-sm-12.empty {
      height: 20px;
      margin: 12px 0 6px;
  }
  .vc_col-lg-4.vc_col-sm-12.empty p {
      border-top: 1px solid #ddd;
  }
  .vc_col-lg-4.vc_col-sm-12.empty span {
      display: none;
  }
}
/*--------//컨택트 폼----------*/




/*----------자료실 블로그 리스트 엘레먼트-------------*/
#contact-archive { 
  scroll-margin-top: 72px; 
} 
.card-details-item.-left h4 {
    font-weight: 600;
}
.card-details-item.-left h4:hover {
    opacity: 0.5;
}
.blog-item.-layout6 .card-details {
    position: relative;
    z-index: 1;
    display: inherit;
}
.blog-item.-layout6 .card-details-item:nth-child(2) {
    padding:0 !important;
}
.blog-item.-layout6:not(.-contained) .card-details {
    padding-bottom: 3vw;
    padding-top: 16px !important;
}
.blog-item .card-details .heading + .category-holder {
    margin-top: 8px;
}
.headline-meta .category-holder, .headline-meta .date {
    font-weight: 500;
    font-size: 16px !important;
    letter-spacing: -0.5px;
    margin-right:4px;
    color: var(--basic-gray);
}
.blog-item.-layout6 .overlay-details {
  display:none;
}
.blog-item .card-details .headline-meta {
    margin-bottom: 4px;
}
span.tag, a.tag, .tagcloud > a, .wp-block-tag-cloud > a, .testimonial-headline > b {
    padding: 0;
    font-weight: 600;
    background: unset;
}
.headline-meta .category-holder + *::before, .headline-meta .date + *::before {
  display:none;
}
.blog-item.-layout6 .card-details-item .headline-meta {
  align-items: baseline;
}
.blog-item.card.-layout6.-no-media a.tag {
    pointer-events: none;
    font-size:16px;
}
ul.pagination.-default.-unlist {
    margin-left: -6px;
}
@media screen and (min-width:1181px) {
  .blog-item .card-details .heading .title {
    font-size:32px;
  }
}
@media screen and (min-width:769px) and (max-width:1180px) {
  .blog-item .card-details .heading .title {
    font-size:28px;
  }
}
@media screen and (max-width:768px) {
  .blog-item .card-details .heading .title {
    font-size:24px;
  }
}

/*.vc_row:not(.-nospace).portfolio-grid div[class*=vc_col-lg-]:first-child, .vc_row:not(.-nospace).blog-posts div[class*=vc_col-lg-]:first-child, .vc_row:not(.-nospace).archive-holder div[class*=vc_col-lg-]:first-child {
      padding-top: 0;
      padding-bottom: 0;
  }*/
@media (max-width: 768px) {
  .headline-meta .category-holder, .headline-meta .date {
      font-size: 14px;
  }    
}

/*----------//자료실 블로그리스트 엘레먼트-------------*/






/*------------검색결과---------------------*/
.search .headline-meta.-small-t {
    display: none;
}
/*------------//검색결과---------------------*/




/*-------------------admin-------------------*/
li#wp-admin-bar-wp-logo,
li#wp-admin-bar-theme-settings,
li#wp-admin-bar-new-content,
li#wp-admin-bar-edit, 
li#wp-admin-bar-elementor_edit_page
 {
    display: none;
}
li#wp-admin-bar-rocket-settings,
li#wp-admin-bar-purge-url,
li#wp-admin-bar-purge-opcache,
li#wp-admin-bar-docs,
li#wp-admin-bar-faq,
li#wp-admin-bar-support 
 {
    display: none;
}
/*-------------------//admin-------------------*/







/* 1) 모바일에서 sticky 죽이는 원인(overflow/transform/contain)을 상위 래퍼에서 제거 */
@media (hover:none) and (pointer:coarse){
  /* 테마의 상위 컨테이너 후보들: 필요 시 클래스 추가/조정 */
  .site, .site-content, .content-area, .page-content, .page-container,
  .ohio-content, .ohio-page, .clb-page-head, .scene, .spc-scene {
    overflow: visible !important;
    transform: none !important;
    filter: none !important;
    contain: none !important;
  }

  /* 우리 컴포넌트 주변도 안전하게 */
  .spc-root, .spc-root .scene, .spc-root .spc-scene {
    overflow: visible !important;
    transform: none !important;
  }
}

/* 2) sticky 자체 신뢰도 강화 */
.spc-filter{
  position: sticky;
  position: -webkit-sticky; /* iOS */
  top: var(--header-height, 80px);
  z-index: 20;
}







