/*----------------------custom-css-single-portfolio------------------*/
.wp-singular .project-page .page-container {
  padding:0 var(--pc-LR-padding);
  max-width: var(--clb-container-width) !important;
}
.elementor-slideshow__share-links a:has(.e-eicon-facebook),
.elementor-slideshow__share-links a:has(.e-eicon-twitter),
.elementor-slideshow__share-links a:has(.e-eicon-pinterest) {
  display: none !important;
}
.ohio_portfolio-template h1.category:after {
    display: none;
}
.ohio_portfolio-template h1.category {
    display: none;
}
.ohio_portfolio-template h1.category:first-child {
    display: inherit;
    color: var(--basic-white);
}
.ohio_portfolio-template .page-headline .animated-holder {
	display:block;
}
.ohio_portfolio-template .page-headline .title {
	width:100%;
}
.ohio_portfolio-template .page-headline .headline-meta {
	margin-bottom: 0;
}

.project.-layout2 .project-gallery {
  grid-gap: 16px;
  margin-bottom: 40px;
}
.project.-layout2 .project-gallery img {
  border-radius: 8px;
  border: 1px solid #eeeeee;

}
.project-content:not(.-with-slider) .holder {
    padding-top: 8px;
    padding-bottom: 40px;
}
.project-details {
  margin-bottom:40px;
}
.color-palette-wrap .title, .project-task .title, .options-group .title {
  font-weight:600;
  line-height: 1;
  color: var(--basic-gray);
  font-size:14px;
  margin: var(--clb-spacer-05) 0 0 0;
}
span.spc-file__ext {
    display: none;
}
.options-group > li {
    border:0;
    padding-top:var(--clb-spacer-4);
}
.options-group > li:nth-child(odd) {
    padding-right: 16px;
}
.options-group {
  grid-gap: unset;
}

.project-task {
    padding-bottom: 16px;
    margin-top:0 !important;
}
.project-content.-sticky-block {
    top: 182px;
    padding-bottom:56px;
}
@media screen and (max-width: 1180px) {
    .project-content.-sticky-block {
        padding-right: 24px !important;
        }
    }
.project-content.-sticky-block::-webkit-scrollbar {
    display: none;
}
.options-group {
    grid-template-columns: unset;
}
section.section.related-items-section.top-offset.bottom-offset {
  background-color: var(--basic-white);
}

/*.spc-filter-inner {
  align-items: start;
  margin-bottom:40px !important;
}*/
ul.options-group.-unlist {
    grid-template-columns: repeat(auto-fill, minmax(50%, auto));
    border-top:1px solid var(--basic-gray);
}

.page-headline .headline-meta {
  display:none;
}
.single-bottom-contact a.ohio-widget.button.-default {
    color: var(--basic-black);
    border-color: var(--basic-black);
}
.single-bottom-contact i.icon.-right.ion.ion-md-arrow-forward {
    color: var(--basic-black);
}
.single-bottom-contact a.ohio-widget.button.-default:hover {
    color: var(--basic-white);
}
.single-bottom-contact .ion-md-arrow-forward:before {
    content: "\f287";
    display: inline-block;
    font-family: "Ionicons";
    speak: none;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    text-rendering: auto;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}
.single-bottom-contact a.ohio-widget.button.-default:hover .ion-md-arrow-forward:before {
    color: var(--basic-white);
}
.single-bottom-contact {
    margin-top: 40px;
    display:none;
}
h4.title-fix {
    width: 70%;
}
.single-memo {
    margin-top: 32px;
}
.single-memo p {
    font-size:14px;
}
/*.project-gallery .first-image {
    display:none;
}*/

li.spc-files__item a:hover {
    background: #ddd;
}


.related-items-section .spc-filter-inner {
    margin: 0 auto 24px !important;
    align-items: baseline;
}




/*------싱글 상세 탭----*/
/* === Sticky 관련 핵심 보정 === */
.project-page.project.-layout2.section{ overflow: visible; } /* sticky가 조상 overflow에 잘리지 않도록 */

/* 기본 레이아웃 */
.jb-tabs__bar {
  position: relative; /* 기본 상태 */
  z-index: 5;
  will-change: transform;
}

/* 스티키 상태 */
.jb-tabs__bar.is-stuck {
  position: sticky;
  position: -webkit-sticky;
  top: var(--jb-tabs-top, 0px); /* JS가 동적으로 채움 */
  z-index: 50;
}



/* Tabs (기존 스타일 유지) */
.jb-tabs__nav{margin-bottom:24px;display:flex;gap:8px;align-items:center;padding-bottom:16px; padding-top:16px; background: rgba(255, 255, 255, 0.85);backdrop-filter: blur(5px);}
.jb-tab__btn{background: var(--basic-white); border-radius: 50px; appearance:none;border:0;padding:10px 20px;font-weight:700;cursor:pointer; font-size:16px;}
.jb-tab__btn.is-active{background: var(--basic-black);color:var(--basic-white);cursor:default}
.jb-tab__panel{display:block}
.jb-tab__panel[hidden]{display:none}
.jb-tab__btn:hover {
    background: var(--basic-black);
    color: var(--basic-white);
    transition: .5s;
}
/* 캡션 기본 */
.project-image{display:block;margin:0 0 0}
.project-image>img{display:block;width:100%;height:auto}
.project-caption{font-size:14px;line-height:1.6;color:var(--basic-black);margin-top:0px;margin-bottom:0px;text-align:center; padding:0px 0 0 0 !important;}
.img-caption-box {
    padding: 8px 0 0 ;
}
/*------//싱글 상세 탭----*/



@media screen and (min-width: 769px) {
  .project.-layout2 .project-gallery {
    width:60%;
  }
  .project-content.-sticky-block {
    width:40%;
  }
}



@media screen and (max-width: 768px) {
    .jb-tab__btn {
        font-size:14px;
        padding: 8px 16px;
    }
    .jb-tabs__nav {
        padding:12px 0;
        margin-bottom:16px;
    }    
    .project-content:not(.-with-slider) .holder, .jb-tabs__nav {
       padding-left: var(--mo-LR-padding);
      padding-right: var(--mo-LR-padding);
    }   
    .wp-singular .project-page .page-container {
    padding:0;
    }
    .project-content.-sticky-block {
    top: unset;
    }
    .ohio_portfolio-template .page-container {
    padding:0 var(--mo-LR-padding);
    }
    .project.-layout1 .project-gallery, .project.-layout2 .project-gallery, .jb-ag2.jb-ag2--wrap, section#jb-tab-contact {
      padding-left: var(--mo-LR-padding);
      padding-right: var(--mo-LR-padding);
    }
}





/*-----컨택트 탭----*/
section#jb-tab-contact div#jb-contact-wrap {
    padding: var(--pc-LR-padding);
    border: 1px solid #ddd;
    display: flex;
    border-radius: 16px;
}
section#jb-tab-contact div[class*=vc_col-lg] {
        padding: 8px;
    }

div#jb-contact-wrap label {
    font-size: 14px;
    font-weight: 600;
}
span.wpcf7-form-control-wrap {
    display: block;
    margin: 4px 0;
}
form.wpcf7-form p {
    margin-bottom: 0 !important;
}
span.required {
    color: #93003f;
}
span.wpcf7-form-control-wrap input, span.wpcf7-form-control-wrap textarea {
    font-size: 17px;
    font-weight: 600;
}
input.wpcf7-form-control.wpcf7-submit.has-spinner {
    border: 2px solid var(--basic-black);
    color: var(--basic-black);
}
input.wpcf7-form-control.wpcf7-submit.has-spinner:hover {
    color: var(--basic-white);
}
.jb-ag2.jb-ag2--wrap figure {
    margin:0;
}
div#wpcf7-f18-o1 {
    width:100%;
}
.wpcf7-not-valid-tip {
    display:none;
}
.wpcf7 form .wpcf7-response-output {
    color: var(--clb-color-danger);
    margin: 0;
}
.wpcf7 form.sent .wpcf7-response-output {
    background-color: color-mix(in srgb, var(--clb-color-success) 10%, transparent);
    color: var(--clb-color-success);
    border: 0;
    border-radius: var(--clb-border-radius);
    padding: 0.65rem var(--clb-spacer-3);
}
.wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.unaccepted .wpcf7-response-output, .wpcf7 form.payment-required .wpcf7-response-output {
    background-color: color-mix(in srgb, var(--clb-color-danger) 10%, transparent);
    border:0;
    border-radius: var(--clb-border-radius);
    padding: 0.65rem var(--clb-spacer-3);
}
@media screen and (max-width: 768px) {
    section#jb-tab-contact div#jb-contact-wrap {
        padding: var(--mo-LR-padding);

    }
}






.elementor-slideshow--ui-hidden .elementor-swiper-button-next, .elementor-slideshow--ui-hidden .elementor-swiper-button-prev {
    opacity: 1 !important;
    top: 0;
    position: absolute;
    z-index: 9;
    width: 7%;
}
.swiper.swiper-initialized.swiper-horizontal.swiper-pointer-events:not(.elementor-slideshow--ui-hidden) .elementor-swiper-button-next,
.swiper.swiper-initialized.swiper-horizontal.swiper-pointer-events:not(.elementor-slideshow--ui-hidden) .elementor-swiper-button-prev {
    opacity: 1 !important;
    top: 0;
    position: absolute;
    z-index: 9;
     width: 7%;
}
.elementor-lightbox .dialog-lightbox-close-button svg, .elementor-lightbox .elementor-swiper-button svg {
    width:32px;
    cursor: pointer;
}
