/***************************************************
*********** Working : 오픽셀 *************************
********* Url: https://www.ohpixels.com ***********
***************************************************/
/*font - begin*/
/* === Ohpixel Universal Font Override (reinforced) === */
/* === Ohpixel Universal Font Override (Safe Version) === */
:root {
	--ohpixel-font: 'Noto Sans KR', 'Apple SD Gothic Neo', 'Malgun Gothic','맑은 고딕', Dotum, 돋움, sans-serif;
}

/* 전역 폰트 적용 */
html, body,
p, a, span, strong, em, small,
h1, h2, h3, h4, h5, h6,
ul, ol, li, th, td,
button, input, select, textarea,
.qbutton, .vc_btn, .load_more a, .blog_load_more_button a,
.qode-advanced-tabs a, .pagination ul li a, .pagination ul li span,
table.shop_table, #yith-wcwl-form,
.cf7_custom_style_1 input, .cf7_custom_style_1 textarea, .cf7_custom_style_1 select,
:is(h1,h2,h3,h4,h5,h6) a {
  font-family: var(--ohpixel-font) !important;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
[class^="icon_"],
[class*=" icon_"],
[class^="arrow_"],
[class*=" arrow_"],
[class^="social_"],
[class*=" social_"]{
	font-family: 'ElegantIcons' !important;
	-moz-osx-font-smoothing: grayscale;
}
[class^="fa-"],[class*=" fa-"] {
	font-family: "FontAwesome" !important;
	-moz-osx-font-smoothing: grayscale;
}
/* === WordPress Admin Bar Icon Fix === */
#wpadminbar .ab-icon:before, #wpadminbar #wp-admin-bar-wp-logo>.ab-item .ab-icon:before {
  font-family: 'Dashicons' !important;
}
.miniTit * {
    font-size: 14px;
    font-weight: 300;
    color: #fff;
    letter-spacing: 2px;
    text-transform: uppercase;
    margin-bottom: 1% !important;
    margin-top: 0 !important;
}
.portTit h3 {
    /*font-family: "santelia-script", sans-serif !important;*/
	font-family:inherit;
    font-weight: 600;
    /*font-style: italic;*/
    font-size: 5em !important;
    text-transform: capitalize;
    line-height: 0.5em;
}
.wpb_wrapper > h4 {
  margin-bottom: 25px !important;
}
/*font - end*/

/*Header - begin*/
.icon-white circle {
  stroke: #fff;
  fill: #fff;
}
.icon-green circle {
  stroke: #00ff99;
  fill: #00ff99;
}
header {border-bottom: 1px solid #1a1a1a;}
/* 1) 해당 링크의 after 제거 */
.side_menu_button>a:before, .side_menu_button > a::after {
  content: none !important;   /* 또는 display:none !important; */
  height: 0 !important;
  width: 0 !important;
  background: transparent !important;
}
.drop_down .second .inner>ul, li.narrow .second .inner ul{padding:10px 0 !important;}	

/*header - end*/

/*default - begin*/
	.empty25{height:25px;}
	.empty45{height:45px;}
	.mgB{margin-bottom: 15px !important;}
	ol {padding-left: 15px;}
	ol ul {margin: 5px 0 20px;}
	.tr{text-align:right !important;}
	.tl{text-align:left !important;}
	.tc{text-align:center !important;}
	.tj, .tj > *{text-align:justify !important;}

	.sign p{font-weight:600; font-size:20px;}
	.enter{display:block;}
	strong {font-weight: 700 !important;}
	span.alt {
		color: red;
		padding: 5px 5px 0 0;
		display: inline-block;
		vertical-align: middle;
	}
	.smTxt{font-size:14px; line-height:22px; font-weight:400;}
	button.navi {
		background: rgba(98,131,194, 0.6);
		padding: 10px 25px;
		border: 2px solid rgba(98,131,194, 0);
		border-radius: 50px;
		color: #fff;
		margin-top: 15px;
		font-size:16px;
		transition: all 0.3s ease;
	}
	button.navi:hover, button:active, button:focus{
		background: transparent;
		border-color: rgba(98,131,194, 1);
	}
	.visually-hidden {
		position: absolute !important;
		width: 1px;
		height: 1px;
		padding: 0;
		margin: -1px;
		overflow: hidden;
		clip: rect(0, 0, 0, 0);
		white-space: nowrap;
		border: 0;
	}
	.single-portfolio_page {background:#231f20 !important;}
	#submit_comment{background:#6283c2 !important; border:1px solid #6283c2!important;}
	#submit_comment:hover{background:transparent !important;}
/*default - end*/

/*side area - begin*/
.side_menu .side_menu_title h4, .side_menu h5, .side_menu h6 {
    font-size: 20px !important;
    margin-top: 45px;
}
/*side area - end*/

/*Kboard - begin*/
	#kboard-default-document .kboard-document-wrap{background: transparent !important;}
	.kboard-ask-one-poweredby, .kboard-list-header {display: none !important;}
	.parent-pageid-6850 a.kboard-ask-one-button-small, .parent-pageid-6850 input.kboard-ask-one-button-small, .parent-pageid-6850 button.kboard-ask-one-button-small{
		background-color:#ffca18 !important;
		color:#222 !important;
		border-radius:3px;
	}
	.kboard-ask-one-status.status-1, .kboard-ask-one-new-notify{background-color:#fff !important; border-radius:3px;}
	#kboard-ask-one-list .kboard-list thead tr td {
		font-weight: 500 !important;
		color: #fff !important;
		border-top: none !important;
		border-bottom: none !important;
		background-color: #6283c26283c2 !important;
	}
	#kboard-ask-one-document .kboard-detail {
		font-size: 14px !important;
		border-top: none !important;
		border-bottom: none !important;
		background-color: #6283c2 !important;
		overflow: hidden;
	}
	#kboard-ask-one-document .kboard-detail > div > div {color:#fff !important;}
/*Kboard - end*/

/*color - begin*/
	.co-yellow, .co-yellow *{color:#fecb1e !important;}
	.co-w, .co-w *{color:#fff !important;}
	.co-b, .co-b p, .co-b h4{color:#222 !important;}
	.co-lw, .co-lw *{color:#d7dddd !important;}
	.bg-blue, .bg-blue .q_elements_item_content > * {background: #f3f6fb;}
	.bg-white, .bg-white .q_elements_item_content > * {background:#ffff;}
/*color - end*/

/*Map - begin*/
div#daumRoughmapContainer1754491114552 {width: 100% !important;}
.root_daum_roughmap .cont .section.lst, .root_daum_roughmap .border1, .root_daum_roughmap .border2, .root_daum_roughmap .border3, .root_daum_roughmap .border4{display: none !important;}
.root_daum_roughmap .wrap_controllers{border:none !important;}
/*Map - end*/

/*contact form7 - begin*/
	.conWrap {
		display: flex;
		justify-content: space-between;
		margin-bottom: 1%;
	}
	.col1{width:100%;}

	.col3 {
		width: 32%;
		margin-right: 2%;
	}

	.col3:last-child{margin:0;}
	.conWrap+.conWrap+.conWrap {margin-bottom: 0;}
	
	.conWrap input.wpcf7-form-control.wpcf7-text.wpcf7-validates-as-required {margin-top: 0;}
	.conWrap input.wpcf7-form-control.wpcf7-submit {margin-top: 3% !important;}


	.wpcf7 h4.Tit4:nth-of-type(2),.wpcf7 h4.Tit4:nth-of-type(3) {margin-top:45px; border-top:2px solid #eaeaea; padding-top:45px;}
	input.wpcf7-form-control.wpcf7-date, input.wpcf7-form-control.wpcf7-number, input.wpcf7-form-control.wpcf7-quiz, input.wpcf7-form-control.wpcf7-text, select.wpcf7-form-control.wpcf7-select, textarea.wpcf7-form-control.wpcf7-textarea{
		font-family:'Noto Sans KR', "Apple SD Gothic Neo", "Malgun Gothic", "맑은 고딕", Dotum, 돋움, sans-serif !important;
		font-size: 16px !important;
	}
	dt.cotTit {margin: 20px 0 15px;}
	input.wpcf7-form-control.wpcf7-submit[disabled] {
		color: #fff !important;
		border: none !important;
		cursor: not-allowed;
	}
	.block dl{
		width:100%; 
		overflow:hidden;
		margin-bottom:25px;		
		border-bottom: 1px dotted #eaeaea;
		padding-bottom:20px;
	}
	.block dt {
		width: 100px;
		margin-right:25px;
		float:left;
		font-weight: 600;
		font-size: 18px;
	}
	.block dd {
		width: calc(100% - 125px);
		float:left;
		margin-bottom: 10px;
		font-size: 14px;
	}
	.block ul {padding-left:25px;}
	.block li {list-style:circle;}
/*contact form7 - end*/

/*etc element - begin*/
.qode-accordion-holder .qode-title-holder{border-bottom-color:#424242 !important;}
.qode-accordion-holder .qode-title-holder.ui-state-active, .qode-accordion-holder .qode-title-holder.ui-state-hover {border-bottom-color: #fff !important;}

.q_elements_item_inner ul {
    margin: 3% 0;
    padding: 0 0 0 20px;
}
.q_elements_item_inner li {list-style: circle;}

.qode-inter-page-navigation-holder{padding: 20px !important;}
.qode-inter-page-navigation-holder .qode-inter-page-navigation-back-link-inner {
    width: 50px;
    height: 50px;
    line-height: 50px;
    border-radius: 50px;
    background-color: transparent;
    border: 1px solid #2e302c;
}
.qode-inter-page-navigation-holder .qode-inter-page-navigation-back-link-inner a {color: #8d8d8d;}
/*etc element - end*/

/*table - begin*/
	table.defTable {
		width: 100%;
		overflow: hidden;
		border-top:2px solid #1c1d1c;
		border-bottom:2px solid #1c1d1c;
		table-layout: auto;
	}
	table.defTable caption{display:none;}
	table.defTable thead{background:transparent;}
	table.defTable thead th{text-align:left; color:#b5b5b5; font-weight:600; padding:15px;}
	table.defTable tbody th {text-align:left; color:#b5b5b5; font-weight: 600; background:transparent; vertical-align:middle; border: 1px solid #1c1d1c; border-width:1px 1px 1px 0 !important; padding:10px;  white-space: normal !important;}
	table.defTable tr{border: 1px solid #1c1d1c; border-width: 1px 0 !important;}
	table.defTable td{text-align:left; padding:10px;}
	
	.defTable .col-1 {
		min-width: 9%;   /* 최소 20% 확보 */
		width: auto;       /* 내용에 따라 늘어남 */
	}
	.defTable .col-2 {
		width: auto;       /* 나머지 영역 자동 */
	}
/*table - end*/

/*Step - begin*/
.op-flow {
  /*--size:16.3%;*/
  --size:130px;
  --overlap:-10px;
  --border-thin:1px;
  --border-thick:3px;
  --mint:#167263;
  --urban:#9b4225;
  --background:rgb(73 215 192 / 100%) !important
}
.op-flow.bg-urban{
  --background:rgb(222 145 120 / 100%) !important
}
.op-flow.bg-yello{
  --background:rgb(255 271 144 / 100%) !important
}
.op-flow .steps {
  display:flex;
  gap:15px;
  overflow:visible;
  text-align:center;
}

.op-flow .circle {
  position:relative;
  width:var(--size);
  min-height:130px;
  border-radius:50%;
  flex-shrink:0;
  /*margin-left:calc(var(--overlap) * -1);*/
  display:flex;
  align-items:center;
  justify-content:center;
  color:#fff;
  font-weight:600;
  flex-direction:column;
  background:var(--background);
  
  opacity: 0;
  transform: translateY(-20px);
}
/* active 클래스가 붙었을 때만 애니메이션 시작 */
.op-flow.active .circle {animation: fadeDown 0.8s ease forwards;}
.op-flow.active .circle:nth-child(1) { animation-delay: 0s; }
.op-flow.active .circle:nth-child(2) { animation-delay: 0.2s; }
.op-flow.active .circle:nth-child(3) { animation-delay: 0.4s; }
.op-flow.active .circle:nth-child(4) { animation-delay: 0.6s; }
.op-flow.active .circle:nth-child(5) { animation-delay: 0.8s; }
.op-flow.active .circle:nth-child(6) { animation-delay: 1s; }
.op-flow.active .circle:nth-child(7) { animation-delay: 1.2s; }

@keyframes fadeDown {
  0% {
    opacity: 0;
    transform: translateY(-20px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
/* ✅ 겹치는 부분에서 민트 border 숨김 */
.op-flow .circle:first-child {margin-left:0;}

/* ✅ 텍스트 상단 */
.op-flow .kicker {
  font-size:12px;
  color:var(--mint);
  margin-bottom:4px;
}
.op-flow.bg-urban .kicker {color:var(--urban);}

/*Step - end*/


/*portfolio - begin*/
.portfolio_navigation.navigation_title {
    border-top: 1px solid #2e302c !important;
    border-bottom: 1px solid #2e302c !important;
    margin-bottom: 0;
}
.portfolio_template_8 .portfolio_detail .info .category, 
.portfolio_navigation.navigation_title .post_info span.categories, 
.qode_portfolio_related .projects_holder article .portfolio_description .project_category{color:#8d8d8d !important;}
.portfolio_template_8 i.fa.fa-angle-left,.portfolio_template_8 i.fa.fa-angle-right {color: #8d8d8d;}
.single-portfolio_page .qode_portfolio_related {padding-bottom: 0px;}
.single-portfolio_page .projects_holder.v4 .mix, .single-portfolio_page .projects_holder.v4.hover_text .mix{margin-bottom:0 !important;}
/*.single-portfolio_page .portfolio_navigation.navigation_title{padding:25px 0 64px !important;}*/
.portfolio_detail .info > h6{color:#8d8d8d !important;}

.projects_holder article .portfolio_description{background:transparent !important;}
.qode_image_gallery_no_space .controls a.prev-slide{left:0;}
.filter_holder ul li.current span, .filter_holder ul li.active span, .filter_holder ul li:hover span{color:#fff !important;}
.wpb_text_column.wpb_content_element.metaWrap{
    padding: 0.5% 0.5% 2%;
    color: #6283C2;
}
.metaWrap ul {
	padding: 10px 15px 20px 20px;	
    border-left: 2px solid #6283C2;
}
.metaWrap li{list-style:none;}
/*portfolio - end*/

/*blog - begin*/
.metaBox {
    background: #f1f1f1;
    padding: 3%;
    border: 5px solid #fff;
    box-shadow: 0 0 1px #979797;
}
.metaBox h4 {
    margin-bottom: 1%;
}
.single-post sup {
    background: #f1f1f1;
    padding: 2px 5px;
    margin: 0 0 0 3px;
    border-radius: 10px;
    color: #8c8d8d;
    font-weight: 100;
}
.latest_post_two_holder .latest_post_two_text {padding: 45px 15px 0px !important;}
.blog_holder article .post_info {margin: 0 0 3% !important;}
.blog_holder article.format-quote .post_text i.qoute_mark, .blog_holder article.format-link .post_text i.link_mark{font-size:2em !important;}
/*blog - end*/

/*footer - begin*/
	footer{
		padding-top:5%;
		background-color:transparent !important;
		/*background-image:url(/wp-content/uploads/2025/11/ptrn.png);*/
		background-repeat:repeat;
	}
	.single-portfolio_page footer, .parent-pageid-6860 footer{padding-top:0;}
	.single-portfolio_page div.comment_form {margin: 0 0 80px;}
	footer li {
		list-style: none !important;
		margin-left: 20px;
		padding: 5px 0 0;
	}
	footer ul.fWrap{
		border-left:1px solid #2e302c;
	}
	.footer_top_holder, footer #lang_sel > ul > li > a, footer #lang_sel_click > ul > li > a, .footer_bottom_holder, #lang_sel_footer{background-size:contain !important;}
	.footer_bottom a{color:#4c4c4c !important;}
	address{
		font-style:normal !important;
		line-height:24px;	
	}
/*footer - end*/
@media only screen and (max-width: 1000px) {
	.op-flow .steps {flex-wrap: nowrap;}
	.op-flow .circle {
		width: 20%;
		min-height: 120px;
	}
}

@media only screen and (max-width: 768px) {
	.footer_top .three_columns .column1{
		order:1 !important;
		text-align:left !important;
		margin-top:0 !important;
	}
	.footer_top .three_columns .column2{
		order:2 !important;
		text-align:left !important;
		margin-top:25px !important;
	}
	.footer_top .three_columns .column3{
		order:3 !important;
		text-align:left !important;
		margin-top:35px !important;
	}
	.footer_top .three_columns .column2 ul, .footer_top .three_columns .column3 ul{border-left:none !important;}
	footer li{margin-left:0 !important;}	
	.op-flow .circle {
		width: 20%;
		min-height: 120px;
	}
  .defTable .col-1 {
    min-width: 90px;  /* 모바일에서 최소 보장 */
  }
}
@media only screen and (max-width: 600px) {
    .breadcrumb {
        position: relative;
        display: none;
    }
	.op-flow .steps {
		flex-wrap: wrap;
		justify-content: center;
		gap: 16px;
	}

	.op-flow .circle {
		width: 130px;
		height: 130px;
		/*margin-left: -30px !important;  겹침  
		margin-top:-30px;*/
		background: var(--background);
	}
	  
	.home .vc_row.full_screen_section {padding: 0 0 !important;}
}
@media only screen and (max-width: 480px) {
    .boxed div.section .section_inner, .carousel-inner .slider_content_outer, .container_inner, .container_inner nav.content_menu, .elementor-container .elementor-widget-wrap>.qode_elementor_container_inner, .elementor-row .elementor-widget-wrap>.qode_elementor_container_inner, .full_width .parallax_content, .qode_elementor_container_inner, .steps_holder_inner, div.grid_section .section_inner, div[data-element_type=container].qode_elementor_container_inner, nav.content_menu ul {
        width: 350px !important;
    }	
	.op-flow{
		--size:130px;
		--label-size:16px;
		--overlap:20px;
	}
	.op-flow .steps{
		flex-wrap:wrap;
		gap:12px;
	}
	.op-flow .step + .step{margin-left:0;}
	.op-flow .step + .step::before{display:none;}
	.blog_holder.masonry.blog_masonry_date_in_image h5, .blog_holder.masonry_full_width.blog_masonry_date_in_image h5, .blog_holder.masonry.blog_masonry_date_in_image h5 a, .blog_holder.masonry_full_width.blog_masonry_date_in_image h5 a{
		font-size:18px;
		line-height:24px;
	}
	.blog_holder.blog_masonry_date_in_image article .post_text .post_text_inner{padding:15px 5px;}
    .blog_holder.blog_pinterest, .blog_holder.masonry {width: 100% !important;}
}
