﻿@charset "utf-8";
/*@import url('font.css');*/ /*, ,*/
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+KR:wght@100..900&family=Noto+Serif+KR:wght@200..900&display=swap');

:root{
	--color-bg:#f4f1ea;
	--color-surface:#fbf8f2;
	--color-surface-strong:#f3ede3;
	--color-ink:#1f2430;
	--color-ink-soft:#5f6774;
	--color-line:rgba(31,36,48,0.12);
	--color-brand:#b9975b;
	--color-brand-deep:#8f7242;
	--color-brand-soft:#d8c2a0;
	--color-accent:#2f4f4f;
	--shadow-soft:0 18px 40px rgba(22,27,34,0.08);
	--shadow-card:0 22px 50px rgba(17,24,39,0.12);
	--radius-lg:28px;
	--radius-md:20px;
	--ease-out:cubic-bezier(.22,1,.36,1);
}

/*reset*/
body {
	font-family:'Pretendard','Noto Sans KR',NanumGothic,'나눔고딕','굴림',dotum, sans-serif;		
	font-weight:400;
	font-size:14px;
	line-height:1.6;
	color:#504f4d;	
	margin:0;
	padding:0;	
	letter-spacing:-0.5px;
	-webkit-font-smoothing:antialiased;
	-moz-font-smoothing:antialiased;
	font-smoothing:antialiased;
	-moz-osx-font-smoothing: grayscale;
	text-rendering:optimizeLegibility;
}

button{cursor:pointer; font-family:inherit;}
button:focus{outline:none;}

textarea{font-family:inherit;}
textarea:focus{outline:none;}

input{font-family:inherit;}
input:focus{outline:none;}

iframe{border:none; vertical-align:top; font-family:inherit;}

select{background-color:#ffffff; font-family:inherit; }
select:focus{outline:none;}

fieldset{border:none;}

legend{font-size:0; height:0; width:0;}

img{border:none;}

br{letter-spacing:0; font-family:NanumGothic,'나눔고딕', sans-serif;}

h1, h2, h3, h4, h5, h6 {font-size:1em;}

h1, h2, h3, h4, h5, h6, div, p, dl, dt, dd, ul, ol, li, form, fieldset, blockquote, address, table, thead, tbody, tfoot, tr, td, caption
{
	margin:0;
	padding:0;
}
ul, ol {
	list-style:none;
}

th,strong, b, h1, h2, h3, h4, h5, h6{font-weight:600;}
em,i,address{font-style:normal;}
a{text-decoration:none; color:#504f4d;}
*{box-sizing:border-box;}
*:before,*:after{box-sizing:border-box;}

/***layout***/
.wrap{width:100%; height:100%; min-width:1400px; font-family:'Pretendard','Noto Sans KR',NanumGothic,'나눔고딕','굴림',dotum, sans-serif;	}
header{width:100%;}
main{width:100%;}
footer{width:100%; color:#afaeac; padding:40px 0 80px; background-color:#0f0e0b;}

/***common***/
.wrap img{display:block; max-width:100%; vertical-align:top;}
#content_go{width:0; height:0; font-size:0; text-indent:-999999px; overflow:hidden;}
.clearfix:after{content:''; zoom:1; display:block; clear:both;}
.inner{width:1400px; padding:0 10px; margin:0 auto;}
.inner02{width:1200px; padding:0 10px; margin:0 auto;}
.blind{font-size:0; text-indent:-999999px; overflow:hidden;}
.main_container{padding-top:160px; position:relative;}
.main_container:before{content:'Product Description'; display:block; position:absolute; left:30px; top:50px; line-height:1.0; font-size:68px; color:#dcdbd7; font-weight:300;
		letter-spacing:-1px;}
.main_container>*+*{margin-top:80px;}
.main_container h3{line-height:1.0; font-size:42px; font-weight:700; color:#000000;}
.main_container .main_more{
	position:absolute; right:10px; top:0;
	display:flex; align-items:center; justify-content:center;
	width:40px; height:40px;
	border-radius:999px;
	background:#ffffff;
	border:1.5px solid rgba(17,24,39,0.1);
	box-shadow:0 2px 10px rgba(17,24,39,0.07);
	font-size:0; text-indent:0; overflow:hidden;
	-webkit-transition:all 0.25s ease; transition:all 0.25s ease;
}
.main_container .main_more:before{
	content:'';
	display:block;
	width:16px; height:16px;
	background-color:transparent;
	background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23111827' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cline x1='5' y1='12' x2='19' y2='12'/%3E%3Cpolyline points='13 6 19 12 13 18'/%3E%3C/svg%3E");
	background-repeat:no-repeat;
	background-size:contain;
	background-position:center;
	-webkit-transition:all 0.25s ease; transition:all 0.25s ease;
}
.main_container .main_more:hover{
	background:#111827;
	border-color:#111827;
	box-shadow:0 6px 18px rgba(17,24,39,0.18);
	transform:translateY(-1px);
}
.main_container .main_more:hover:before{
	background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cline x1='5' y1='12' x2='19' y2='12'/%3E%3Cpolyline points='13 6 19 12 13 18'/%3E%3C/svg%3E");
	transform:translateX(2px);
}

/*header_wrap01 PC / 1201px common*/
.header_wrap01{width:100%; padding:20px 0 0; z-index:350; min-width:1400px; background-color:#ffffff; -webkit-transition:all 0.3s ease; -ms-transition:all 0.3s ease; 
		-o-transition:all 0.3s ease; transition:all 0.3s ease;}
.header_wrap01>div{display:flex; justify-content:space-between; align-items:start; }
/*header_wrap01 h1*/
.header_wrap01>div>h1>a{display:block; width:100%;}
.header_wrap01>div>h1>a img{width:100%;}
/*header_wrap01 total_category_wrap common*/
.total_menu_wrap{display:flex; column-gap:6px; margin-top:6px;}
/*kakao_link*/
.kakao_link{width:48px; height:48px;}
.kakao_link>a{display:block; width:100%; height:100%; background-color:#ffe600; padding:4px; border-radius:50%; overflow:hidden; -webkit-transition:all 0.3s ease;
		-ms-transition:all 0.3s ease; -o-transition:all 0.3s ease; transition:all 0.3s ease;}
.kakao_link>a>img{width:100%;}
.kakao_link>a:hover{box-shadow:0 0 8px rgba(0,0,0,0.2);}

.btn_total_nav_open{overflow:hidden; text-indent:-999999px; width:48px; height:48px; padding-top:15px; cursor:pointer; font-size:0; background-color:#92d050; 
		border-radius:50%; -webkit-transition:all 0.3s ease; -ms-transition:all 0.3s ease; -o-transition:all 0.3s ease; transition:all 0.3s ease;}
.btn_total_nav_open span{display:block; width:26px; height:3px; border-radius:5px; -webkit-transition:all 0.3s ease; -ms-transition:all 0.3s ease; -o-transition:all 0.3s ease; 
		transition:all 0.3s ease; background-color:#ffffff; margin:0 auto;}
.btn_total_nav_open span+span{margin-top:5px;}
.btn_total_nav_open:hover{box-shadow:0 0 8px rgba(0,0,0,0.2);}
.btn_total_nav_open:hover span{width:22px;}
.btn_total_nav_open:hover span:nth-child(2){width:16px;}

#total_category{width:0; height:100%; position:fixed; right:0; top:0; bottom:0; background: linear-gradient(-90deg,#a0db61,#92d050);
		z-index:500; overflow:hidden; -webkit-transition:all 0.3s ease; -ms-transition:all 0.3s ease; -o-transition:all 0.3s ease;  transition:all 0.3s ease;
		box-shadow:1px 0 10px rgba(0,0,0,0.4);}
.total_category_inner{padding:70px 15px 20px 60px; position:relative; height:100%; overflow-y:auto;}
.total_category_list+div{margin-top:50px;}
.total_category_list h3{font-size:24px; color:#000000; line-height:1.0;  -webkit-transition:all 0.3s ease; -ms-transition:all 0.3s ease; 	-o-transition:all 0.3s ease;  
		transition:all 0.3s ease;}
.total_category_list h3>a{color:#000000;}
.total_2depth{margin-top:18px; display:flex;}
.total_2depth>li{position:relative; letter-spacing:-1px; font-size:17px; }
.total_2depth>li+li{margin-left:10px; padding-left:10px;}
.total_2depth>li+li:before{content:'/'; display:block; position:absolute; left:-3px; top:0; color:#201f1d; }
.total_2depth>li>a{display:block; color:#3c3b37; font-weight:500;}
.total_2depth>li>a:hover{color:#385d8a; font-weight:600;}
.total_category_list h3>a:hover{color:#385d8a;}

#total_category .btn_close{height:30px; width:30px; cursor:pointer; position:absolute; left:20px; top:20px;}
#total_category .btn_close .close_icon{font-size:0; overflow:hidden; display:block; height:100%; width:100%; position:absolute; left:0; top:0;}
#total_category .btn_close .close_icon:before, #total_category .btn_close .close_icon:after{content:''; height:1px; width:30px; display:block;
		background-color:#000000;  position:absolute; top:18px; left:0px; transform:rotate(-45deg); -webkit-transform:rotate(-45deg);
		-moz-transform:rotate(-45deg); -o-transform:rotate(-45deg);-ms-transform:rotate(-45deg);}
#total_category .btn_close .close_icon:after{transform:rotate(45deg);-webkit-transform:rotate(45deg);-moz-transform:rotate(45deg); -o-transform:rotate(45deg);
		-ms-transform:rotate(45deg);}

/*header_wrap01 gnb*/
.gnb{display:flex; column-gap:60px; align-items:start;}
.gnb>li{position:relative;}
.gnb>li>a{display:block; color:#000000; font-size:20px; padding:14px 10px 34px;}
.gnb>li>a strong{display:block; position:relative;}
.gnb>li>a strong:before{content:''; width:0; height:2px; display:block; border-radius:3px; background-color:#92d050; position:absolute; left:0; bottom:-2px;
		-webkit-transition:all 0.3s ease; -ms-transition:all 0.3s ease; -o-transition:all 0.3s ease; transition:all 0.3s ease; opacity:0;}
/*gnb_2depth_menu*/
.gnb_2depth_menu{display:none; background-color:rgba(255,255,255,1); width:210px; padding:20px 0 20px; border-radius:6px; border:1px solid #92d050;
		z-index:250; overflow:hidden; position:absolute; left:50%; top:65px; -ms-transform:translate(-50%,0); -o-transform:translate(-50%,0); transform: translate(-50%,0); 
		-webkit-transform:translate(-50%,0); -moz-transform:translate(-50%,0);}
.gnb_2depth_menu>li+li{margin-top:6px;}
.gnb_2depth_menu>li>a{display:block; font-size:16px; padding:2px 5px; text-align:center; font-weight:500;}
.gnb>li:hover>a{color:#92d050;}
.gnb>li:hover>a strong:before{opacity:1; width:100%; }
.gnb>li:hover .gnb_2depth_menu>li>a:hover{color:#92d050;}
/*header_wrap01*/
.header_wrap01.header_up{position:fixed; left:0; box-shadow:1px 1px 4px rgba(0,0,0,0.2); padding-top:10px;}
.header_wrap01.header_up .gnb>li>a{padding:14px 10px 24px;}

/*header_wrap02 / 1200px*/
.header_wrap02{display:none; width:100%; align-items:center; justify-content:space-between; z-index:300; min-width:320px; padding:18px 10px; 
		background-color:#ffffff; -webkit-transition:all 0.3s ease; -ms-transition:all 0.3s ease; -o-transition:all 0.3s ease;  transition:all 0.3s ease;}
.header_wrap02>h1{width:205px; height:auto;}
.header_wrap02>h1>a{display:block; width:100%; height:100%; }
.header_wrap02>h1>a>img{width:100%;}
.header_wrap02 .util_menu{column-gap:8px; display:flex;}
.tm_kakao_link{width:30px; height:30px;}
.tm_kakao_link>a{display:block; width:100%; height:100%; background-color:#ffe600; padding:1px; border-radius:50%; overflow:hidden; -webkit-transition:all 0.3s ease;
		-ms-transition:all 0.3s ease; -o-transition:all 0.3s ease; transition:all 0.3s ease;}
.tm_kakao_link>a>img{width:100%;}
.header_wrap02 .phone_link{width:30px; height:30px;}
.header_wrap02 .phone_link>a{display:block; width:100%; height:100%; font-size:0; text-indent:-999999px; overflow:hidden;
		background:url("../images/common/phone.png")no-repeat 0 0; background-size:100% auto; }

.btn_tm_nav_open{position:relative; cursor:pointer; -webkit-transition:all 0.3s ease; -ms-transition:all 0.3s ease; -o-transition:all 0.3s ease;  transition:all 0.3s ease; 
		padding-top:7px; width:30px; height:30px; }
.btn_tm_nav_open span{display:block; width:100%; height:2px; overflow:hidden; font-size:0;  background-color:#444444; -webkit-transition:all 0.3s ease; 
		-ms-transition:all 0.3s ease; -o-transition:all 0.3s ease;  transition:all 0.3s ease;}
.btn_tm_nav_open span+span{margin-top:5px;}
.page_cover02{display:none; position:fixed; width:100%; height:100%; top:0px; left:0; background-color:rgba(0,0,0,0.8); z-index:5490; min-height:999999px;}
.tm_gnb_wrap{display:block; width:80%; height:100%; position:fixed; top:0px; left:-100%; z-index:5500; overflow-y:auto; background-color:#ffffff;}
.tm_gnb_wrap>h1{ padding:20px 15px;}
.tm_gnb_wrap>h1>img{ width:160px;}
.tm_gnb{width:100%; overflow-x:hidden; padding:15px 0 0; }
.tm_gnb>li{border-bottom:1px solid #eeeeee;}
.tm_gnb>li:first-child>a{background-color:rgba(146,208,80,0.8); border-top:1px solid #eeeeee;}
.tm_gnb>li:first-child:hover strong{ color:#000000;}
.tm_gnb>li>a{display:block;}
.tm_gnb>li strong{display:block; font-size:16px; color:#000000; padding:8px 15px 8px 15px; cursor:pointer; position:relative; font-weight:500;}
.tm_gnb>li .m_more{width:13px; height:13px; display:block; position:absolute; right:15px; top:16px;}
.tm_gnb>li .m_more:before{content:''; height:8px; width:8px; display:block; border:1px solid #504f4d; border-left-width:0; border-top-width:0;
		position:absolute; top:1px; right:2px; transform:rotate(-45deg);-webkit-transform:rotate(-45deg); -moz-transform:rotate(-45deg);
		-webkit-transition:all 0.3s ease; -ms-transition:all 0.3s ease; -o-transition:all 0.3s ease;  transition:all 0.3s ease;}
.tm_gnb>li.active .m_more:before{transform:rotate(45deg); top:0; border-color:#92d050;}
.tm_gnb>li:hover strong{color:#92d050;}
.tm_gnb>li.active strong{color:#92d050;} 
.tm_gnb_2depth{display:none; background-color:#f8faf5; padding:12px 0; box-shadow: inset 0 0 6px rgba(0,0,0,0.06);}
.tm_gnb_2depth>li+li{margin-top:8px;}
.tm_gnb_2depth>li>a{display:block; font-size:14px;  padding:0 15px;}
.tm_gnb_2depth>li>a:hover{color:#92d050; font-weight:500;}

.tm_cs_center{padding:12px 15px 12px;} 
.tm_cs_center h4{font-size:15px; margin-bottom:5px; text-align:center; }
.tm_cs_center dl{display:flex; justify-content:center; column-gap:5px; font-size:20px; font-weight:700; color:#92d050;}
.header_wrap02.header_up02{ position:fixed; top:0; left:0; z-index:5400; box-shadow:1px 1px 4px rgba(0,0,0,0.4); padding:10px; }

/*main_visual_wrap*/
.main_visual{width:100%; height:760px;}
.main_slide_list{width:100%; height:100%;}
.main_slide_list>li{width:100%; height:100%;}
.main_slide_list>li>.background_visual_img{position:absolute; left:0; top:0; bottom:0; width:100%; height:100%; background-position:center center; 
		background-repeat:no-repeat; background-size:cover; transform:scale(1); -webkit-transform:scale(1); -ms-transform:scale(1); -o-transform:scale(1);}
.main_slide_list>li>.background_visual_img01{background-image:url("../images/main/main_visual_slide01.jpg");}
.main_slide_list>li>.background_visual_img02{background-image:url("../images/main/main_visual_slide02.jpg");}
.main_slide_list>li>.background_visual_img03{background-image:url("../images/main/main_visual_slide03.jpg");}
.main_slide_list>li>.background_visual_img04{background-image:url("../images/main/main_visual_slide04.jpg");}
.main_slide_list>li.swiper-slide-active>div.background_visual_img{animation:scale 5s ease forwards;}
@keyframes scale {
    0% { transform: scale(1.05); }
    100% { transform: scale(1); }
}
.main_slide_list .inner{height:100%; position:relative; z-index:30; }
.main_visual_txt{display:flex; flex-direction:column; justify-content:center; row-gap:30px; width:100%; height:100%; line-height:1.4; font-size:26px; font-weight:600; 
		color:#ffffff; padding-bottom:80px;}
.main_visual_txt p:first-child{font-weight:700; font-size:49px;}
.main_visual_txt p:first-child strong{font-weight:800; font-size:56px; color:#92d050;}

.swiper-slide-active p:first-child{animation:Up 2s ease forwards}
@keyframes Up {
    0% { opacity:0; transform:translateY(50px); }
    100% { opacity:1; transform:translateY(0); }
}
.swiper-slide-active p:nth-child(2){animation:Up02 4.5s ease forwards}
@keyframes Up02 {
    0% { opacity:0; transform:translateY(50px); }
    100% { opacity:1; transform:translateY(0); }
}
.main_visual.swiper-container-horizontal>.swiper-pagination-bullets{bottom:20px;}
.main_visual.swiper-container-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet{opacity:1; margin:0 6px; background-color:rgba(255,255,255,1); 
		vertical-align:middle;}
.main_visual.swiper-container-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet-active{width:18px; height:18px; background-color:transparent;
		border:1px solid #92d050;}
.main_visual.swiper-container-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet-active:before{content:''; width:10px; height:10px; display:block;
		background-color:#92d050; border-radius:50%; position:absolute; left:3px; top:3px;}
.main_visual_wrap>div.inner{position:relative;}
.main_contact_information_list{
	position:absolute; right:10px; bottom:80px;
	display:flex; flex-direction:column; row-gap:10px; z-index:30;
}
.main_contact_information_list>li{
	display:flex; align-items:center; column-gap:10px;
	background:rgba(255,255,255,0.13); backdrop-filter:blur(18px); -webkit-backdrop-filter:blur(18px);
	color:#ffffff; font-size:15px; font-weight:600; border-radius:40px; line-height:1;
	padding:14px 26px; border:1px solid rgba(255,255,255,0.22);
	box-shadow:0 8px 28px rgba(0,0,0,0.18); letter-spacing:-0.02em;
	-webkit-transition:all 0.3s ease; transition:all 0.3s ease;
}
.main_contact_information_list>li.main_visual_hp{
	font-size:19px; font-weight:700;
	background:rgba(185,151,91,0.82); border-color:rgba(185,151,91,0.5);
	color:#ffffff; letter-spacing:-0.01em;
}
.main_contact_information_list>li.main_visual_hp:before{
	content:''; display:inline-block; width:18px; height:18px;
	background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='white'%3E%3Cpath d='M6.62 10.79c1.44 2.83 3.76 5.14 6.59 6.59l2.2-2.2c.27-.27.67-.36 1.02-.24 1.12.37 2.33.57 3.57.57.55 0 1 .45 1 1V20c0 .55-.45 1-1 1-9.39 0-17-7.61-17-17 0-.55.45-1 1-1h3.5c.55 0 1 .45 1 1 0 1.25.2 2.45.57 3.57.11.35.03.74-.25 1.02l-2.2 2.2z'/%3E%3C/svg%3E") no-repeat center / contain;
	flex-shrink:0;
}
.main_contact_information_list>li:not(.main_visual_hp):before{
	content:''; display:inline-block; width:15px; height:15px;
	background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='rgba(255,255,255,0.8)'%3E%3Cpath d='M20 4H4c-1.1 0-1.99.9-1.99 2L2 18c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2zm0 4l-8 5-8-5V6l8 5 8-5v2z'/%3E%3C/svg%3E") no-repeat center / contain;
	flex-shrink:0; opacity:.85;
}
.main_contact_information_list>li:hover{ transform:translateY(-2px); box-shadow:0 14px 36px rgba(0,0,0,0.24);}
.main_contact_information_list>li.main_visual_hp:hover{ background:rgba(185,151,91,0.95);}
.main_visual_scroll{position:absolute; left:50%; bottom:60px; margin-left:-27px; color:rgba(255, 255, 255, 0.7); z-index:20; font-size:13px; letter-spacing:1px; 
		animation:mScroll 2.2s ease-in-out infinite; }
.main_visual_scroll:before{content:'';display:block;width:1px;height:32px; background:linear-gradient(to bottom,transparent,rgba(255,255,255,.6));
		position:absolute; left:50%; top:-33px;}
@keyframes mScroll{
    0%,100% { transform:translateY(0); }
    50% { transform:translateY(-7px); }
}

/**main_container**/
.main_scroll_wrap{overflow: hidden;}
.main_scroll_on{opacity:0; -webkit-transition:all 0.3s ease; -ms-transition:all 0.3s ease; -o-transition:all 0.3s ease; transition:all 0.3s ease;}
.main_scroll_on.active{opacity:1 !important; transform:translate(0, 0) !important;}
.main_scroll_on.main_type_bottom{transform: translate(0, 150px);}

.main_ptoducts_wrap>div{position:relative;}
.main_ptoducts_list{margin-top:40px; display:flex; flex-wrap:wrap; gap:50px 39px;}
.main_ptoducts_list>li{width:calc(33.3333% - 26px);}
.main_ptoducts_list>li>a{display:block; color:#201f1d; -webkit-transition:all 0.3s ease; -ms-transition:all 0.3s ease; -o-transition:all 0.3s ease;  transition:all 0.3s ease;}
.main_ptoducts_img{position:relative;}
.main_ptoducts_img:before{content:''; display:block; width:100%; height:100%; background-color:rgba(146,208,80,0.85); position:absolute; left:0; top:0; right:0; bottom:0;
		opacity:0; -webkit-transition:all 0.3s ease; -ms-transition:all 0.3s ease; -o-transition:all 0.3s ease;  transition:all 0.3s ease;}
.main_ptoducts_img>img{width:100%;}
.main_ptoducts_img>p{width:100%; height:100%; color:#ffffff; font-size:28px; font-weight:600; position:absolute; left:0; top:0; z-index:50; display:flex; opacity:0;
		justify-content:center; align-items:center; text-align:center; -webkit-transition:all 0.3s ease; -ms-transition:all 0.3s ease; -o-transition:all 0.3s ease; 
		transition:all 0.3s ease;}
.main_ptoducts_contents{margin-top:15px;}
.main_ptoducts_contents strong{ font-size:28px;}
.main_ptoducts_list>li>a:hover{color:#92d050;}
.main_ptoducts_list>li>a:hover .main_ptoducts_img{box-shadow:0 0 8px rgba(0,0,0,0.2);}
.main_ptoducts_list>li>a:hover .main_ptoducts_img:before{opacity:1;}
.main_ptoducts_list>li>a:hover .main_ptoducts_img>p{opacity:1;}

/*main_about_wrap*/
.main_about_wrap{
	background:url("../images/main/bg_banner01.jpg") no-repeat center center;
	background-size:cover; background-attachment:fixed; position:relative; padding:120px 0;
}
.main_about_wrap:before{
	content:''; display:block; width:55%; height:100%; position:absolute; right:0; top:0; z-index:2;
	background:linear-gradient(105deg, rgba(8,12,24,0) 0%, rgba(8,12,24,0.72) 30%, rgba(8,12,24,0.96) 100%);
}
.main_about_wrap>div{display:flex; justify-content:flex-end;}
.main_about{
	width:55%; position:relative; z-index:30; font-size:17px; font-weight:400;
	color:rgba(255,255,255,0.72); padding:60px 60px 60px 80px; line-height:1.8;
}
.main_about h2{ font-size:13px; font-weight:600; letter-spacing:0.22em; text-transform:uppercase; color:rgba(245,200,66,0.9);}
.main_about h1{ color:#ffffff; font-size:52px; font-weight:800; margin-top:10px; letter-spacing:-0.04em; line-height:1.1;}
.main_about p:nth-child(3){ color:#ffffff; font-size:22px; font-weight:600; margin-top:28px; line-height:1.55; letter-spacing:-0.02em;}
.main_about p:nth-child(4){margin-top:16px; font-size:16px;}
.btn_main_about{margin-top:40px; display:flex; justify-content:flex-start;}
.btn_main_about>a{
	display:flex; column-gap:10px; border:1.5px solid rgba(245,200,66,0.7); border-radius:999px;
	font-size:17px; font-weight:600; color:#f5c842; line-height:1; padding:16px 32px;
	-webkit-transition:all 0.3s ease; transition:all 0.3s ease; background:rgba(245,200,66,0.08);
}
.btn_main_about>a:hover{
	column-gap:18px; background:#f5c842; color:#111827; border-color:#f5c842;
	transform:translateY(-2px); box-shadow:0 8px 24px rgba(245,200,66,0.32);
}

.main_construction_case_wrap>div{position:relative;}

/* 탭메뉴 */
.main_construction_cas_tab{
	margin-top:28px; display:flex; flex-wrap:nowrap; gap:0; padding:0;
	background:none; border:none; border-radius:0;
	border-bottom:1.5px solid rgba(17,24,39,0.1); width:100%;
}
.main_construction_cas_tab>h4{
	cursor:pointer; font-size:14px; font-weight:500; padding:10px 22px 12px;
	border:none; border-radius:0; background:transparent; color:rgba(17,24,39,0.38);
	white-space:nowrap; letter-spacing:-0.01em; position:relative;
	-webkit-transition:color .2s ease; transition:color .2s ease;
}
.main_construction_cas_tab>h4:after{
	content:''; position:absolute; bottom:-1.5px; left:0; right:0; height:2px;
	background:#111827; border-radius:2px 2px 0 0;
	transform:scaleX(0); -webkit-transition:transform .22s ease; transition:transform .22s ease;
}
.main_construction_cas_tab>h4:hover{color:rgba(17,24,39,0.72); background:none;}
.main_construction_cas_tab>h4.active{ color:#111827; font-weight:700; background:none; box-shadow:none;}
.main_construction_cas_tab>h4.active:after{transform:scaleX(1);}
.main_construction_case_list{margin-top:40px; }
.main_construction_case_list>ul{display:flex; flex-wrap:wrap; gap:40px 30px;}
.main_construction_case_list>ul>li{width:calc(33.3333% - 20px); position:relative;}
.main_construction_case_list>ul>li>img{width:100%;}
.main_construction_case_list>ul>li>a{
	position:absolute; left:0; top:0; right:0; bottom:0; width:100%; height:100%;
	padding:20px; background:linear-gradient(180deg,rgba(10,14,26,0) 40%,rgba(10,14,26,0.72) 100%);
	color:#ffffff; display:flex; flex-direction:column; justify-content:flex-end;
	row-gap:8px; align-items:flex-start; font-size:17px; opacity:0;
	-webkit-transition:opacity 0.28s ease; transition:opacity 0.28s ease;
}
.main_construction_case_list>ul>li .case_view{
	position:absolute; top:16px; right:16px; width:36px; height:36px; border-radius:50%;
	background:rgba(255,255,255,0.15); backdrop-filter:blur(8px); -webkit-backdrop-filter:blur(8px);
	border:1px solid rgba(255,255,255,0.28); display:flex; align-items:center; justify-content:center;
	-webkit-transition:all 0.25s ease; transition:all 0.25s ease;
}
.main_construction_case_list>ul>li .case_view:before{
	content:''; display:block; width:14px; height:14px;
	background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cline x1='7' y1='17' x2='17' y2='7'/%3E%3Cpolyline points='7 7 17 7 17 17'/%3E%3C/svg%3E");
	background-repeat:no-repeat; background-size:contain; background-position:center;
}
.main_construction_case_list>ul>li>a:hover{box-shadow:none; opacity:1;}
.main_construction_case_list>ul>li:hover .case_view{
	background:rgba(255,255,255,0.9); border-color:rgba(255,255,255,0.9); transform:translate(2px,-2px);
}
.main_construction_case_list>ul>li:hover .case_view:before{
	background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23111827' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cline x1='7' y1='17' x2='17' y2='7'/%3E%3Cpolyline points='7 7 17 7 17 17'/%3E%3C/svg%3E");
}
@keyframes Case{
	0%{opacity:0; transform:translateY(8px);}
	100%{opacity:1; transform:translateY(0);}
}

/*main_cs_center_wrap*/
.main_cs_center_wrap{padding:80px 0; background:url("../images/main/bg_banner02.jpg")no-repeat 0 0; background-size:cover;}
.main_cs_center_title{color:#ffffff; text-align:center; font-weight:500; font-size:22px;}
.main_cs_center_title h3{color:#ffffff; margin-top:15px;}
.main_map_counselling_wrap{display:flex; flex-wrap:wrap; flex-direction:row-reverse; gap:50px 30px; margin-top:40px;}
.main_map_counselling_wrap>*{width:calc(50% - 15px); box-shadow:0 0 15px rgba(0,0,0,0.4);}
.main_map_wrap .cont{display:none;}
.main_online_counselling_wrap{background-color:#ffc000; padding:40px 35px; font-size:16px; color:#201f1d;}
.main_online_counselling_wrap input[type=text]{border:none; background-color:transparent; font-size:15px; width:100%;}
.main_online_counselling_wrap select{background-color:#ffc000; border:none; width:100%; text-align:center; font-size:16px; color:#3c3b37;}
.main_online_counselling_wrap select option{background-color:#ffffff; font-size:15px; color:#3c3b37;}
.main_online_counselling_wrap textarea{border:none; width:100%; overflow-y:auto; font-size:15px; text-align:left; padding:10px 10px;
    min-height:90px; vertical-align:top;}
.main_online_counselling_list>div{display:flex; flex-wrap:wrap; column-gap:30px;}
.main_online_counselling_list>div>*{width:calc(50% - 15px);}
.main_consult_form{display:flex; align-items:center; padding:13px 2px; border-bottom:1px solid rgba(255,255,255,0.5); letter-spacing:-1px;}  
.main_consult_form dt{font-weight:600; width:75px; }
.main_consult_form dd{width:calc(100% - 75px);}
.main_online_counselling_wrap .main_estimate_privacy_wrap{margin-top:25px; display:flex; flex-wrap:wrap; gap:8px;}
.main_online_counselling_wrap .main_estimate_privacy_wrap>*{width:auto;}
.main_agreement_check{font-weight:500;}
.main_agreement_check input[type=checkbox]{display:none !important;}
.main_agreement_check input[type=checkbox]+label{cursor:pointer; display:inline-block; line-height:20px; padding-left:26px; 
		background:url("../images/common/check_box.png")no-repeat 0 0; background-size:20px auto;} 
.main_agreement_check input[type=checkbox]:checked+label{background-image:url("../images/common/check_box_on.png"); background-size:20px auto;}
.main_privacy_agreement_wrap button{border:none; font-size:14px; text-decoration:underline; background-color:transparent;}
.main_privacy_agreement_wrap button:hover{font-weight:500; color:#385d8a;}
.main_counselling_btn_wrap{text-align:right; margin-top:30px;}
.main_counselling_btn_wrap button{border:none; font-size:16px; font-weight:600; color:#ffffff; background-color:#385d8a; border-radius:40px; padding:11px 40px;
		-webkit-transition:all 0.3s ease; -ms-transition:all 0.3s ease; -o-transition:all 0.3s ease; transition:all 0.3s ease;}
.main_counselling_btn_wrap button:hover{box-shadow:0 0 8px rgba(0,0,0,0.4);}

/*footer*/
.company_info02{font-size:14px;}
.company_info02 ul{display:flex; flex-wrap:wrap; justify-content:center; column-gap:40px; }
.company_info02 dl{display:flex; column-gap:6px;}
.company_info02 dd{color:#ffffff;}
.company_info02>p{font-size:13px; text-align:center; margin-top:20px; padding-top:20px; border-top:1px solid rgba(255, 255, 255, 0.1);}

/*.top_btn*/
.top_btn{position:fixed; bottom:20px; right:15px; cursor:pointer; background-color:#92d050; width:50px; height:50px; border-radius:50%; color:#000000;
		font-weight:600; font-size:16px; line-height:50px; text-align:center; box-shadow:0 0 8px rgba(0,0,0,0.2); z-index:480;}  

/*1400*/
@media screen and (max-width:1400px){
.wrap{min-width:1200px;}
.inner{width:100%;}
.header_wrap01{min-width:1200px;} 
}

@media screen and (max-width:1200px){
.wrap{min-width:320px;}
.inner02{width:100%;}
.header_wrap01{display:none;}
.header_wrap02{display:flex;}
.main_ptoducts_list{gap:40px 9px;}
.main_ptoducts_list>li{width:calc(33.3333% - 6px);}
.main_about{padding:60px 30px 60px 40px;}
.main_construction_case_list>ul{gap:12px;}
.main_construction_case_list>ul>li{width:calc(33.3333% - 8px);}
.main_map_counselling_wrap>*{width:100%;} 
}

@media screen and (max-width:1024px){
.main_visual{height:680px;}
.company_info02 ul{justify-content: space-between;}
}

@media screen and (max-width:768px){
.main_container{padding-top:100px;} 
.main_container:before{left:10px; top:20px; font-size:36px;}
.main_visual{height:640px;}
.main_visual_txt{align-items:center; text-align:center; padding-bottom:170px; letter-spacing:-1px;}
.main_contact_information_list{right:auto; left:50%; bottom:130px; -webkit-transform:translate(-50%,0); -ms-transform:translate(-50%,0); transform:translate(-50%,0); width:max-content; align-items:center;}

/* 제품소개 - 모바일 2열 */
.main_ptoducts_list{
	flex-direction:row;
	flex-wrap:wrap;
	gap:12px;
}
.main_ptoducts_list>li{
	width:calc(50% - 6px);
	max-width:none;
}

/*main_about_wrap*/
.main_about_wrap{padding:350px 0 80px;}
.main_about_wrap:before{width:100%; height:calc(100% - 350px); left:0; top:350px;}
.main_about{width:100%; padding-left:0; padding-top:40px; text-align:center;}

/* 시공사례 이미지 - 2열 */
.main_construction_case_list>ul>li{width:calc(50% - 6px) !important;} 

.company_info02 ul{justify-content:center; flex-direction:column; align-items:center; }
.company_info02 dl{justify-content:center;}
}

@media screen and (max-width:600px){
.main_container>*+*{margin-top:50px;}
.main_container h3{font-size:32px;}
.main_container .main_more{top:1px; width:30px; height:30px;} 
.main_visual{height:640px;}
.main_visual_txt{row-gap:15px; font-size:16px; }
.main_visual_txt p:first-child{font-size:28px;}
.main_visual_txt p:first-child strong{font-size:30px; }
.main_contact_information_list{bottom:110px;}
.main_contact_information_list>li{font-size:13px; padding:11px 18px;}
.main_contact_information_list>li.main_visual_hp{font-size:16px;}

/* 제품소개 - 600px 이하도 2열 유지 */
.main_ptoducts_list{
	flex-direction:row;
	flex-wrap:wrap;
	gap:10px;
}
.main_ptoducts_list>li{
	width:calc(50% - 5px);
	max-width:none;
}
.main_ptoducts_img>p{font-size:16px;}
.main_ptoducts_contents{margin-top:0; padding:12px 12px 16px;}
.main_ptoducts_contents strong{font-size:17px;}

/*main_about_wrap*/
.main_about_wrap{padding:300px 0 50px;}
.main_about_wrap:before{height:calc(100% - 300px); top:300px;}
.main_about{font-size:15px;}
.main_about h2{font-size:18px;}
.main_about h1{font-size:30px;}
.main_about p:nth-child(3){font-size:22px;}
.main_about p:nth-child(4){margin-top:12px;}
.btn_main_about{margin-top:30px;}
.btn_main_about>a{font-size:16px; line-height:38px; padding:0 20px;}

/* 시공사례 탭 - 2행 2열로 줄바꿈 (가로스크롤 제거) */
.main_construction_cas_tab{
	flex-wrap:wrap;
	overflow-x:visible;
	border-bottom:none;
	gap:0;
	margin-top:24px;
}
.main_construction_cas_tab>h4{
	flex:1 1 calc(50% - 0px);
	text-align:center;
	font-size:13px;
	padding:9px 6px 11px;
	white-space:nowrap;
	border-bottom:1.5px solid rgba(17,24,39,0.1);
}
.main_construction_cas_tab>h4:after{
	bottom:-1.5px;
}
.main_construction_case_list{margin-top:24px;}
.main_construction_case_list>ul{gap:10px;}

/* 시공사례 이미지 - 600px 이하도 2열 유지 */
.main_construction_case_list>ul>li{width:calc(50% - 5px) !important;} 
.main_construction_case_list>ul>li>a{font-size:14px; row-gap:6px; padding:14px;} 
.main_construction_case_list>ul>li .case_view{width:28px; height:28px;}

/*main_cs_center_wrap*/
.main_cs_center_wrap{padding:50px 0;}
.main_cs_center_title{font-size:16px;}
.main_map_counselling_wrap{margin-top:30px; row-gap:40px;}
.main_online_counselling_wrap{padding:20px 15px 30px; font-size:14px;}
.main_online_counselling_wrap input[type=text]{font-size:14px;}
.main_online_counselling_wrap select{font-size:14px;}
.main_online_counselling_wrap select option{font-size:14px;}
.main_online_counselling_wrap textarea{font-size:14px;}
.main_online_counselling_list>div>*{width:100%;}
.main_consult_form{padding:8px 2px;}
.main_consult_form dt{width:65px; }
.main_consult_form dd{width:calc(100% - 65px);}
.main_agreement_check input[type=checkbox]+label{font-size:15px;}
.main_counselling_btn_wrap{text-align:center;}
.main_counselling_btn_wrap button{font-size:15px; padding:10px 30px;} 
.top_btn{width:36px; height:36px; font-size:15px; line-height:36px;}  
}

/* 420px 이하 - 2열 유지 override */
@media screen and (max-width:420px){
.main_ptoducts_list>li{
	width:calc(50% - 5px);
	max-width:none;
}
.main_construction_case_list>ul>li{
	width:calc(50% - 5px) !important;
}
}

/*2026 visual refresh*/
html{scroll-behavior:smooth;}
body{
	background:
		radial-gradient(circle at top left, rgba(216,194,160,0.18), transparent 28%),
		linear-gradient(180deg, #f8f5ef 0%, var(--color-bg) 46%, #efe7db 100%);
	color:var(--color-ink-soft);
}
a{transition:color .35s var(--ease-out), opacity .35s var(--ease-out), transform .35s var(--ease-out);}
::selection{background:rgba(185,151,91,0.22); color:var(--color-ink);}

footer{
	background:linear-gradient(180deg, #1f232d 0%, #13171e 100%);
	color:rgba(255,255,255,0.72);
}
.main_container:before{
	color:rgba(143,114,66,0.16);
	font-family:'Noto Serif KR', serif;
	font-size:76px;
	letter-spacing:0.02em;
}
.main_container h3{
	color:var(--color-ink);
	font-family:'Noto Serif KR', serif;
	font-size:48px;
	font-weight:700;
	letter-spacing:-0.03em;
}
.main_container .main_more{width:40px; height:40px; top:0;}
.main_container .main_more:hover{transform:translateY(-1px);}

.header_wrap01,
.header_wrap02{
	background-color:rgba(250,247,241,0.84);
	backdrop-filter:blur(18px); -webkit-backdrop-filter:blur(18px);
	border-bottom:1px solid rgba(31,36,48,0.06);
}
.header_wrap01{padding:18px 0 0;}
.header_wrap01.header_up,
.header_wrap02.header_up02{
	box-shadow:0 12px 34px rgba(17,24,39,0.1);
	background-color:rgba(250,247,241,0.92);
}
.gnb{column-gap:42px;}
.gnb>li>a{color:var(--color-ink); font-size:18px; font-weight:500; padding:16px 8px 30px;}
.gnb>li>a strong:before{
	height:3px; border-radius:999px;
	background:linear-gradient(90deg, var(--color-brand), var(--color-brand-soft));
	bottom:-8px;
}
.gnb>li:hover>a{color:var(--color-brand-deep);}
.gnb_2depth_menu{
	top:72px; padding:18px 0; border:none; border-radius:6px;
	background:rgba(255,255,255,0.96); box-shadow:0 24px 45px rgba(17,24,39,0.16);
}
.gnb_2depth_menu>li>a{font-size:15px; color:var(--color-ink-soft);}
.gnb>li:hover .gnb_2depth_menu>li>a:hover{color:var(--color-brand-deep);}
.kakao_link>a,
.tm_kakao_link>a{
	background:linear-gradient(135deg, #ffe978 0%, #ffd028 100%);
	box-shadow:0 10px 24px rgba(255,208,40,0.28);
}
.btn_total_nav_open{
	background:linear-gradient(135deg, var(--color-brand) 0%, var(--color-brand-deep) 100%);
	box-shadow:0 12px 30px rgba(143,114,66,0.26);
}
#total_category{
	background:linear-gradient(180deg, #f5efe5 0%, #e9decd 100%);
	box-shadow:-18px 0 40px rgba(17,24,39,0.16);
}
.total_category_list h3,
.total_category_list h3>a{color:var(--color-ink);}
.total_2depth>li>a{color:var(--color-ink-soft);}
.total_2depth>li>a:hover,
.total_category_list h3>a:hover{color:var(--color-brand-deep);}

.main_visual{height:min(860px, calc(100vh - 20px)); min-height:760px;}
.main_visual_wrap{position:relative;}
.main_visual_wrap:before{
	content:''; position:absolute; inset:0;
	background:
		linear-gradient(90deg, rgba(8,12,22,0.88) 0%, rgba(8,12,22,0.62) 42%, rgba(8,12,22,0.12) 100%),
		linear-gradient(180deg, rgba(8,11,17,0.12) 0%, rgba(8,11,17,0.48) 100%);
	z-index:2; pointer-events:none;
}
.main_slide_list>li>.background_visual_img{
	transform:scale(1.08);
	filter:saturate(0.9) contrast(1.05) brightness(0.78);
}
.main_slide_list>li.swiper-slide-active>div.background_visual_img{
	animation:scale 5.8s var(--ease-out) forwards;
}
@keyframes scale{
	0%{transform:scale(1.08);}
	100%{transform:scale(1);}
}
.main_slide_list .inner{z-index:3;}
.main_visual_txt{
	max-width:800px; row-gap:22px; padding:80px 0 110px;
	font-size:22px; font-weight:400; line-height:1.75; letter-spacing:-0.03em;
}
.main_visual_txt p:first-child{
	font-family:'Noto Serif KR', serif; font-size:62px; font-weight:700;
	line-height:1.22; letter-spacing:-0.04em; color:#ffffff;
	text-shadow:0 4px 24px rgba(0,0,0,0.32);
}
.main_visual_txt p:first-child strong{
	display:block;
	background:linear-gradient(120deg, #f5c842 0%, #f9a825 40%, #e8854a 100%);
	-webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text;
	font-size:80px; font-weight:800; letter-spacing:-0.05em; line-height:1.1;
	filter:drop-shadow(0 6px 18px rgba(245,200,66,0.28));
}
.main_visual_txt p:nth-child(2){
	max-width:580px; color:rgba(255,255,255,0.72); font-size:19px; font-weight:300;
	letter-spacing:0.01em; line-height:1.8; border-left:3px solid rgba(245,200,66,0.6); padding-left:14px;
}
.swiper-slide-active p:first-child{animation:Up 1.3s var(--ease-out) forwards;}
.swiper-slide-active p:nth-child(2){animation:Up02 1.7s var(--ease-out) forwards;}
@keyframes Up{
	0%{opacity:0; transform:translateY(34px);}
	100%{opacity:1; transform:translateY(0);}
}
@keyframes Up02{
	0%{opacity:0; transform:translateY(28px);}
	100%{opacity:1; transform:translateY(0);}
}
.main_visual.swiper-container-horizontal>.swiper-pagination-bullets{bottom:34px;}
.main_visual.swiper-container-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet{
	width:10px; height:10px; margin:0 8px; background-color:rgba(255,255,255,0.52);
}
.main_visual.swiper-container-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet-active{
	width:42px; height:10px; border:none; border-radius:999px;
	background:linear-gradient(90deg, var(--color-brand), #ecdac0);
}
.main_visual.swiper-container-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet-active:before{display:none;}
.main_contact_information_list{row-gap:12px; bottom:100px;}
.main_visual_scroll{
	bottom:74px; letter-spacing:0.28em; color:rgba(255,255,255,0.76);
	animation:mScroll 3.2s ease-in-out infinite;
}
.main_visual_scroll:before{
	height:44px; top:-46px;
	background:linear-gradient(to bottom, transparent, rgba(255,255,255,0.82));
}
@keyframes mScroll{
	0%,100%{transform:translateY(0); opacity:.72;}
	50%{transform:translateY(-5px); opacity:1;}
}

.main_scroll_on{transition:opacity .9s var(--ease-out), transform .9s var(--ease-out);}
.main_scroll_on.main_type_bottom{transform:translate(0, 70px);}

.main_ptoducts_list{margin-top:48px; gap:42px 28px;}
.main_ptoducts_list>li>a{
	padding:14px; border-radius:6px; background:rgba(255,255,255,0.64);
	border:1px solid rgba(255,255,255,0.68); box-shadow:var(--shadow-soft);
	backdrop-filter:blur(10px); -webkit-backdrop-filter:blur(10px);
}
.main_ptoducts_img{overflow:hidden; border-radius:4px;}
.main_ptoducts_img>img{transition:transform .8s var(--ease-out), filter .8s var(--ease-out);}
.main_ptoducts_img:before{
	background:linear-gradient(180deg, rgba(25,29,39,0.08) 0%, rgba(31,36,48,0.7) 100%);
}
.main_ptoducts_img>p{font-size:22px; font-weight:500; letter-spacing:-0.03em;}
.main_ptoducts_contents{margin-top:18px; padding:0 6px 6px;}
.main_ptoducts_contents strong{font-size:30px; font-weight:600; color:var(--color-ink); letter-spacing:-0.04em;}
.main_ptoducts_list>li>a:hover{color:var(--color-brand-deep); transform:translateY(-8px); box-shadow:var(--shadow-card);}
.main_ptoducts_list>li>a:hover .main_ptoducts_img>img{transform:scale(1.06); filter:saturate(0.92);}

.main_about_wrap{
	margin:0 24px; border-radius:10px; overflow:hidden; padding:130px 0;
}
.main_about_wrap:before{
	width:58%; right:0; left:auto;
	background:linear-gradient(105deg, rgba(8,12,24,0) 0%, rgba(8,12,24,0.72) 28%, rgba(8,12,24,0.96) 100%);
}
.main_about{width:58%; padding:60px 60px 60px 80px;}
.main_about h2{color:rgba(245,200,66,0.9); font-size:13px; letter-spacing:0.22em;}
.main_about h1{margin-top:10px; color:#ffffff; font-family:'Pretendard','Noto Sans KR',sans-serif; font-size:54px; font-weight:800; letter-spacing:-0.045em;}
.main_about p:nth-child(3){color:#ffffff; font-size:22px; font-weight:600; margin-top:24px;}
.main_about p:nth-child(4){margin-top:16px; font-size:16px;}
.btn_main_about{justify-content:flex-start;}
.btn_main_about>a{border:1.5px solid rgba(245,200,66,0.7); background:rgba(245,200,66,0.08); color:#f5c842; box-shadow:none;}
.btn_main_about>a:hover{background:#f5c842; color:#111827; border-color:#f5c842; transform:translateY(-2px); box-shadow:0 8px 24px rgba(245,200,66,0.32);}

.main_construction_cas_tab{
	margin-top:32px; gap:0; padding:0; background:none; border:none; border-radius:0;
	border-bottom:1.5px solid rgba(17,24,39,0.1); display:flex; width:100%;
}
.main_construction_cas_tab>h4{
	cursor:pointer; padding:10px 24px 13px; font-size:15px; font-weight:500;
	border:none; border-radius:0; background:transparent; color:rgba(17,24,39,0.36);
	box-shadow:none; letter-spacing:-0.015em; position:relative; transition:color .2s ease; white-space:nowrap;
}
.main_construction_cas_tab>h4:after{
	content:''; position:absolute; bottom:-1.5px; left:0; right:0;
	height:2.5px; background:#111827; border-radius:2px 2px 0 0;
	transform:scaleX(0); transition:transform .22s ease;
}
.main_construction_cas_tab>h4:hover{color:rgba(17,24,39,0.7); background:none; transform:none;}
.main_construction_cas_tab>h4.active{background:none; color:#111827; font-weight:700; box-shadow:none; border:none; transform:none;}
.main_construction_cas_tab>h4.active:after{transform:scaleX(1);}
.main_construction_case_list{margin-top:42px;}
.main_construction_case_list>ul{gap:28px;}
.main_construction_case_list>ul>li{
	border-radius:6px; overflow:hidden; box-shadow:var(--shadow-soft); background:#d9d2c4;
}
.main_construction_case_list>ul>li>img{transition:transform .7s var(--ease-out), filter .7s var(--ease-out);}
.main_construction_case_list>ul>li>a{
	padding:24px;
	background:linear-gradient(180deg, rgba(10,14,26,0) 40%, rgba(10,14,26,0.68) 100%);
	justify-content:flex-end; align-items:flex-start; row-gap:8px;
}
.main_construction_case_list>ul>li .case_view{
	width:36px; height:36px; background-color:rgba(255,255,255,0.15); background-image:none;
	border-radius:50%; box-shadow:none; border:1px solid rgba(255,255,255,0.28);
	backdrop-filter:blur(8px); -webkit-backdrop-filter:blur(8px);
}
.main_construction_case_list>ul>li>a p{font-size:18px; letter-spacing:-0.025em; font-weight:600;}
.main_construction_case_list>ul>li:hover>img{transform:scale(1.05); filter:brightness(0.9);}
.main_construction_case_list>ul>li>a:hover{opacity:1; box-shadow:none;}
.main_construction_case_list>ul>li>a:hover>div,
.main_construction_case_list>ul>li>a:hover>p{animation:Case .7s var(--ease-out) forwards;}
@keyframes Case{
	0%{opacity:0; transform:translateY(14px);}
	100%{opacity:1; transform:translateY(0);}
}

.main_cs_center_wrap{
	position:relative; padding:96px 0; background-position:center; background-attachment:fixed;
}
.main_cs_center_wrap:before{
	content:''; position:absolute; inset:0;
	background:linear-gradient(180deg, rgba(15,19,26,0.72) 0%, rgba(15,19,26,0.82) 100%);
}
.main_cs_center_wrap>*{position:relative; z-index:1;}
.main_cs_center_title{font-size:21px; color:rgba(255,255,255,0.76);}
.main_cs_center_title h3{color:#fff; font-size:50px;}
.main_map_counselling_wrap{margin-top:50px; gap:36px 30px;}
.main_map_counselling_wrap>*{border-radius:30px; overflow:hidden; box-shadow:0 28px 55px rgba(0,0,0,0.22);}
.main_online_counselling_wrap{
	background:linear-gradient(180deg, rgba(251,248,242,0.98) 0%, rgba(241,233,221,0.98) 100%);
	padding:46px 38px; color:var(--color-ink);
}
.main_online_counselling_wrap input[type=text],
.main_online_counselling_wrap select,
.main_online_counselling_wrap textarea{color:var(--color-ink);}
.main_online_counselling_wrap input[type=text]::placeholder,
.main_online_counselling_wrap textarea::placeholder{color:rgba(31,36,48,0.42);}
.main_online_counselling_wrap select{background-color:transparent;}
.main_consult_form{padding:16px 4px; border-bottom:1px solid rgba(31,36,48,0.12);}
.main_consult_form dt{color:var(--color-ink-soft); font-weight:600;}
.main_agreement_check input[type=checkbox]+label{color:var(--color-ink);}
.main_privacy_agreement_wrap button{color:var(--color-brand-deep);}
.main_counselling_btn_wrap{margin-top:34px;}
.main_counselling_btn_wrap button{
	padding:13px 38px;
	background:linear-gradient(135deg, var(--color-brand) 0%, var(--color-brand-deep) 100%);
	box-shadow:0 18px 30px rgba(143,114,66,0.22);
}
.main_counselling_btn_wrap button:hover{transform:translateY(-2px);}

.company_info02 dd{color:#fff;}
.company_info02>p{border-top:1px solid rgba(255,255,255,0.08); color:rgba(255,255,255,0.52);}
.top_btn{
	background:linear-gradient(135deg, var(--color-brand) 0%, var(--color-brand-deep) 100%);
	color:#fffaf2; box-shadow:0 18px 30px rgba(17,24,39,0.2);
}

@media screen and (max-width:1200px){
	.main_visual{height:760px; min-height:760px;}
	.main_visual_txt p:first-child{font-size:50px;}
	.main_visual_txt p:first-child strong{font-size:64px;}
	.main_about_wrap{margin:0; border-radius:0;}
}

@media screen and (max-width:768px){
	.main_container:before{font-size:42px; left:14px;}
	.main_container h3{font-size:36px;}
	.main_visual{height:700px; min-height:700px;}
	.main_visual_wrap:before{background:linear-gradient(180deg, rgba(16,21,30,0.52) 0%, rgba(16,21,30,0.74) 100%);}
	.main_visual_txt{max-width:none; padding:40px 0 160px; row-gap:18px; font-size:17px;}
	.main_visual_txt p:first-child{font-size:38px;}
	.main_visual_txt p:first-child strong{font-size:50px;}
	.main_visual_txt p:nth-child(2){max-width:100%; font-size:15px; padding-left:10px;}
	.main_ptoducts_list>li>a{padding:12px;}
	.main_about_wrap{padding:300px 0 60px;}
	.main_about_wrap:before{width:100%; height:calc(100% - 300px); right:0; left:0; top:300px;}
	.main_about{width:100%; padding:36px 20px 20px;}
	.btn_main_about{justify-content:flex-start;}
	.main_cs_center_wrap{padding:72px 0; background-attachment:scroll;}
	.main_cs_center_title h3{font-size:38px;}
}

@media screen and (max-width:600px){
	.main_container h3{font-size:30px;}
	.main_visual{height:640px; min-height:640px;}
	.main_visual_txt{font-size:15px;}
	.main_visual_txt p:first-child{font-size:28px;}
	.main_visual_txt p:first-child strong{font-size:38px;}
	.main_contact_information_list>li.main_visual_hp{font-size:18px;}
	.main_ptoducts_contents strong{font-size:22px;}
	.main_about h1{font-size:34px;}
	.main_about p:nth-child(3){font-size:17px;}
	.main_construction_case_list>ul{gap:14px;}
	.main_construction_case_list>ul>li>a p{font-size:20px;}
	.main_online_counselling_wrap{padding:24px 18px 30px;}
	.main_cs_center_title h3{font-size:30px;}
}

@media (prefers-reduced-motion: reduce){
	html{scroll-behavior:auto;}
	*{animation-duration:0.01ms !important; animation-iteration-count:1 !important; transition-duration:0.01ms !important; scroll-behavior:auto !important;}
}

/*2026 visual refresh v2*/
body{font-family:'Pretendard','Noto Sans KR',sans-serif; background:#f6f7f8; color:#2a2f36;}
.wrap{
	font-family:'Pretendard','Noto Sans KR',sans-serif;
	background:linear-gradient(180deg, #ffffff 0, #ffffff 760px, #f6f7f8 760px, #f6f7f8 100%);
}
.header_wrap01,
.header_wrap02,
.header_wrap01.header_up,
.header_wrap02.header_up02{
	background:#ffffff; backdrop-filter:none; -webkit-backdrop-filter:none;
	border-bottom:1px solid rgba(20,24,28,0.08); box-shadow:0 8px 24px rgba(15,23,42,0.05);
}
.header_wrap01{position:relative; z-index:900;}
.header_wrap01>div, .header_wrap02{position:relative; z-index:2;}
.header_wrap01 .inner, .gnb, .gnb>li{overflow:visible;}
.gnb{column-gap:34px;}
.gnb>li>a{padding:16px 8px 28px; font-size:18px; font-weight:600; color:#1f2937;}
.gnb>li>a strong:before{bottom:-6px; height:2px; background:#111827;}
.gnb>li:hover>a,
.gnb>li:focus-within>a{color:#111827;}
.gnb_2depth_menu{
	display:none; top:62px; width:220px; padding:14px 0;
	border:1px solid rgba(17,24,39,0.08); border-radius:6px; background:#ffffff;
	box-shadow:0 18px 40px rgba(15,23,42,0.12); z-index:950;
}
.gnb_2depth_menu>li>a{padding:8px 18px; text-align:left; font-size:15px; font-weight:500; color:#4b5563;}
.gnb>li:hover .gnb_2depth_menu>li>a:hover,
.gnb>li:focus-within .gnb_2depth_menu>li>a:hover{color:#111827; background:#f8fafc;}
.kakao_link>a, .tm_kakao_link>a{box-shadow:none;}
.btn_total_nav_open{background:#111827; box-shadow:none;}
#total_category{background:#ffffff; box-shadow:-16px 0 36px rgba(15,23,42,0.14);}
.total_category_list h3, .total_category_list h3>a, .total_2depth>li>a{color:#111827;}
.total_2depth>li>a:hover, .total_category_list h3>a:hover{color:#2563eb;}

.btn_tm_nav_open{width:34px; height:34px; padding-top:8px;}
.btn_tm_nav_open span{height:2px; background:#111827;}
.btn_tm_nav_open.on{position:relative; left:auto; top:auto; z-index:5601;}
.page_cover02{background:rgba(15,23,42,0.38); z-index:5490;}
.tm_gnb_wrap{width:84%; max-width:360px; left:-110%; z-index:5500; box-shadow:22px 0 40px rgba(15,23,42,0.16);}
.tm_gnb_wrap>h1{padding:24px 20px 18px; border-bottom:1px solid rgba(17,24,39,0.08); background:#ffffff;}
.tm_gnb{padding-top:8px;}
.tm_gnb>li{border-bottom:1px solid rgba(17,24,39,0.06);}
.tm_gnb>li:first-child>a{background:#f8fafc; border-top:none;}
.tm_gnb>li strong,
.tm_gnb>li>a strong{padding:16px 20px; font-size:16px; color:#111827;}
.tm_gnb>li .m_more{right:20px; top:20px;}
.tm_gnb>li .m_more:before{border-color:#4b5563;}
.tm_gnb_2depth{background:#f8fafc; padding:10px 0 14px; box-shadow:none;}
.tm_gnb_2depth>li>a{padding:8px 20px; color:#4b5563;}

.main_visual_wrap:before{content:none;}
.main_visual{height:760px; min-height:760px;}
.main_slide_list>li>.background_visual_img{filter:none; transform:scale(1);}
.main_slide_list>li.swiper-slide-active>div.background_visual_img{animation:none;}
.main_slide_list .inner{z-index:5;}
.main_visual_txt{
	padding:0 0 90px; row-gap:18px; font-size:22px; font-weight:400; line-height:1.6;
	font-family:'Pretendard','Noto Sans KR',sans-serif;
	text-shadow:0 2px 12px rgba(0,0,0,0.24);
}
.main_visual_txt p:first-child{
	font-family:'Pretendard','Noto Sans KR',sans-serif;
	font-size:58px; font-weight:800; letter-spacing:-0.04em;
}
.main_visual_txt p:first-child strong{
	font-family:'Pretendard','Noto Sans KR',sans-serif;
	font-size:58px; font-weight:800; color:#ffffff;
	text-shadow:0 2px 12px rgba(0,0,0,0.24);
}
.main_visual_txt p:nth-child(2){max-width:560px; color:rgba(255,255,255,0.92);}
.main_visual.swiper-container-horizontal>.swiper-pagination-bullets{bottom:28px;}
.main_visual.swiper-container-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet{
	width:10px; height:10px; margin:0 6px; background:rgba(255,255,255,0.72);
}
.main_visual.swiper-container-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet-active{
	width:26px; height:10px; border-radius:999px; background:#ffffff;
}
.main_contact_information_list{bottom:78px;}
.main_contact_information_list>li{
	background:#ffffff; border:none; box-shadow:0 10px 24px rgba(15,23,42,0.12);
	color:#111827; backdrop-filter:none; -webkit-backdrop-filter:none;
}
.main_visual_scroll{bottom:62px; color:rgba(255,255,255,0.88); letter-spacing:0.18em;}

.main_container{padding-top:120px;}
.main_container:before{content:none;}
.main_container h3{font-family:'Pretendard','Noto Sans KR',sans-serif; font-size:42px; font-weight:800; color:#111827;}
.main_container .main_more{width:40px; height:40px;}
.main_container .main_more:hover{transform:translateY(-1px);}
.main_scroll_on.main_type_bottom{transform:translate(0, 36px);}

.main_ptoducts_wrap .inner,
.main_construction_case_wrap .inner{position:relative;}
.main_ptoducts_list{margin-top:32px; gap:24px;}
.main_ptoducts_list>li{width:calc(25% - 18px);}
.main_ptoducts_list>li>a{
	padding:0; border:none; border-radius:6px; background:#ffffff;
	box-shadow:0 16px 36px rgba(15,23,42,0.07); overflow:hidden;
}
.main_ptoducts_img{border-radius:0;}
.main_ptoducts_img:before{background:linear-gradient(180deg, rgba(15,23,42,0.04) 0%, rgba(15,23,42,0.52) 100%);}
.main_ptoducts_img>p{font-size:18px; font-weight:700;}
.main_ptoducts_contents{margin-top:0; padding:24px 24px 28px;}
.main_ptoducts_contents strong{display:block; font-size:26px; font-weight:700; line-height:1.35; color:#111827;}
.main_ptoducts_list>li>a:hover{transform:translateY(-6px); color:#111827; box-shadow:0 22px 44px rgba(15,23,42,0.12);}

.main_about_wrap{
	margin:0; padding:130px 0; border-radius:0; box-shadow:none;
	background-attachment:fixed; background-position:center center; background-size:cover;
	overflow:hidden; position:relative;
}
.main_about_wrap:before{
	width:58%; right:0; left:auto;
	background:linear-gradient(105deg, rgba(8,12,24,0) 0%, rgba(8,12,24,0.72) 28%, rgba(8,12,24,0.96) 100%);
	backdrop-filter:none; -webkit-backdrop-filter:none;
}
.main_about{width:58%; padding:60px 60px 60px 80px; font-size:17px; line-height:1.8; color:rgba(255,255,255,0.72);}
.main_about h2, .main_about h1{font-family:'Pretendard','Noto Sans KR',sans-serif;}
.main_about h2{font-size:11px; font-weight:700; letter-spacing:0.32em; color:rgba(245,200,66,0.92);}
.main_about h1{margin-top:10px; font-size:52px; font-weight:800; color:#ffffff; letter-spacing:-0.045em;}
.main_about p:nth-child(3){font-size:22px; font-weight:600; color:#ffffff; margin-top:24px;}
.main_about p:nth-child(4){font-size:16px;}
.btn_main_about>a{border:1.5px solid rgba(245,200,66,0.7); background:rgba(245,200,66,0.08); color:#f5c842; box-shadow:none;}
.btn_main_about>a:hover{background:#f5c842; color:#111827; border-color:#f5c842;}

.main_construction_cas_tab{
	margin-top:32px; gap:0; padding:0; background:none; border:none; border-radius:0;
	border-bottom:1.5px solid rgba(17,24,39,0.1); display:flex; flex-wrap:nowrap; width:100%;
}
.main_construction_cas_tab>h4{
	padding:10px 24px 13px; font-size:15px; font-weight:500; border:none; border-radius:0;
	background:transparent; color:rgba(17,24,39,0.36); box-shadow:none;
	letter-spacing:-0.015em; position:relative; transition:color .2s ease; white-space:nowrap;
}
.main_construction_cas_tab>h4:after{
	content:''; position:absolute; bottom:-1.5px; left:0; right:0;
	height:2.5px; background:#111827; border-radius:2px 2px 0 0;
	transform:scaleX(0); transition:transform .22s ease;
}
.main_construction_cas_tab>h4:hover{color:rgba(17,24,39,0.7); background:none; transform:none;}
.main_construction_cas_tab>h4.active{background:none; color:#111827; font-weight:700; box-shadow:none; border:none; transform:none;}
.main_construction_cas_tab>h4.active:after{transform:scaleX(1);}
.main_construction_case_list{margin-top:28px;}
.main_construction_case_list>ul{gap:20px; align-items:flex-start;}
.main_construction_case_list>ul>li{
	width:calc(33.3333% - 14px); aspect-ratio:1 / 0.72; overflow:hidden; border-radius:6px; box-shadow:0 16px 36px rgba(15,23,42,0.08);
}
.main_construction_case_list>ul>li>img{
	width:100%; height:100%; object-fit:cover; object-position:center center;
}
.main_construction_case_list>ul>li>a{
	padding:24px;
	background:linear-gradient(180deg, rgba(15,23,42,0.02) 10%, rgba(15,23,42,0.62) 100%);
	align-items:flex-start; justify-content:flex-end;
}
.main_construction_case_list>ul>li .case_view{
	width:36px; height:36px; background-color:rgba(255,255,255,0.15); background-image:none;
	border-radius:50%; border:1px solid rgba(255,255,255,0.28); box-shadow:none;
}
.main_construction_case_list>ul>li>a p{font-size:17px; font-weight:600;}

.main_cs_center_wrap{padding:88px 0; background-position:center center; background-attachment:scroll;}
.main_cs_center_wrap:before{background:linear-gradient(180deg, rgba(15,23,42,0.62) 0%, rgba(15,23,42,0.74) 100%);}
.main_cs_center_title{font-size:20px;}
.main_cs_center_title h3{font-family:'Pretendard','Noto Sans KR',sans-serif; font-size:44px; font-weight:800;}
.main_map_counselling_wrap{margin-top:32px; gap:28px 24px;}
.main_map_counselling_wrap>*{border-radius:8px; box-shadow:0 20px 44px rgba(15,23,42,0.16);}
.main_online_counselling_wrap{background:#ffffff; padding:40px 32px;}
.main_consult_form{padding:14px 0;}
.main_counselling_btn_wrap button{background:#111827; box-shadow:none;}
.main_counselling_btn_wrap button:hover{background:#1f2937;}
.top_btn{background:#111827; box-shadow:0 10px 20px rgba(15,23,42,0.16);}

@media screen and (max-width:1200px){
	.main_visual_txt p:first-child,
	.main_visual_txt p:first-child strong{font-size:48px;}
	.main_ptoducts_list>li{width:calc(25% - 18px);}
	.main_about{width:56%;}
	.main_about_wrap:before{width:56%;}
}

@media screen and (max-width:768px){
	.main_visual{height:680px; min-height:680px;}
	.main_visual_txt{padding:0 0 150px; font-size:17px;}
	.main_visual_txt p:first-child,
	.main_visual_txt p:first-child strong{font-size:38px;}
	.main_container{padding-top:90px;}

	/* 제품소개 2열 (v2 override) */
	.main_ptoducts_list>li{width:calc(50% - 12px);}

	.main_about_wrap{padding:340px 0 72px;}
	.main_about_wrap:before{
		width:100%; left:0; right:auto; height:calc(100% - 340px); top:340px;
		background:linear-gradient(180deg, rgba(255,255,255,0.82) 0%, rgba(255,255,255,0.96) 100%);
	}
	.main_about{width:100%; padding-left:0;}

	/* 시공사례 탭 2열 */
	.main_construction_cas_tab{
		flex-wrap:wrap; overflow-x:visible; border-bottom:none; gap:0;
	}
	.main_construction_cas_tab>h4{
		flex:1 1 50%; text-align:center; font-size:13px; padding:9px 6px 11px;
		white-space:nowrap; border-bottom:1.5px solid rgba(17,24,39,0.1);
	}
	.main_construction_cas_tab>h4:after{bottom:-1.5px;}

	/* 시공사례 이미지 2열 */
	.main_construction_case_list>ul>li{width:calc(50% - 10px) !important;}
}

@media screen and (max-width:600px){
	.main_visual{height:620px; min-height:620px;}
	.main_visual_txt p:first-child,
	.main_visual_txt p:first-child strong{font-size:30px;}
	.main_visual_txt p:nth-child(2){font-size:14px;}
	.main_container h3{font-size:32px;}

	/* 제품소개 2열 유지 */
	.main_ptoducts_list{flex-direction:row; flex-wrap:wrap; gap:10px;}
	.main_ptoducts_list>li{width:calc(50% - 5px); max-width:none;}
	.main_ptoducts_contents strong{font-size:17px;}
	.main_ptoducts_contents{padding:14px 14px 18px;}

	/* 시공사례 탭 2열 유지 */
	.main_construction_cas_tab{flex-wrap:wrap; overflow-x:visible;}
	.main_construction_cas_tab>h4{
		flex:1 1 50%; text-align:center; font-size:12px; padding:8px 4px 10px;
		white-space:nowrap; border-bottom:1.5px solid rgba(17,24,39,0.1);
	}

	/* 시공사례 이미지 2열 유지 */
	.main_construction_case_list>ul>li{width:calc(50% - 5px) !important;}

	.main_about h1{font-size:34px;}
	.main_about p:nth-child(3){font-size:22px;}
	.main_cs_center_title h3{font-size:32px;}
}

/* 420px 이하 - 2열 유지 최종 override */
@media screen and (max-width:420px){
	.main_ptoducts_list{flex-direction:row; flex-wrap:wrap; gap:8px;}
	.main_ptoducts_list>li{width:calc(50% - 4px); max-width:none;}
	.main_construction_case_list>ul>li{width:calc(50% - 4px) !important;}
}

/*2026 visual refresh v3*/
.main_container>*+*{margin-top:120px;}
.main_ptoducts_wrap{position:relative;}
.main_ptoducts_wrap>div{
	padding:34px 36px 4px; border-radius:8px;
	background:linear-gradient(180deg, #ffffff 0%, #fbfcfd 100%);
	box-shadow:0 18px 42px rgba(15,23,42,0.06);
}
.main_ptoducts_wrap h3{padding-right:84px;}
.main_ptoducts_wrap>div:before{
	content:''; position:absolute; left:36px; right:36px; top:118px; height:1px;
	background:linear-gradient(90deg, rgba(15,23,42,0.12), rgba(15,23,42,0.04));
}
.main_ptoducts_list{margin-top:36px;}
.main_container .main_more{top:10px; right:10px; width:40px; height:40px;}
.main_ptoducts_img{
	aspect-ratio:1.26 / 1;
}
.main_ptoducts_img>img{
	width:100%;
	height:100%;
	object-fit:cover;
}

.main_about_wrap{
	margin-top:120px; padding:160px 0; background-attachment:fixed;
	background-position:center center; background-size:cover; overflow:hidden; position:relative;
}
.main_about_wrap:after{
	content:''; position:absolute; inset:0;
	background:linear-gradient(100deg,
		rgba(8,12,24,0.45) 0%,
		rgba(8,12,24,0.28) 30%,
		rgba(8,12,24,0.04) 52%,
		rgba(8,12,24,0) 100%
	);
	z-index:2;
}
.main_about_wrap:before{
	top:0; height:100%; width:52%; right:0; left:auto;
	background:linear-gradient(108deg,
		rgba(10,14,28,0) 0%,
		rgba(10,14,28,0.55) 20%,
		rgba(10,14,28,0.88) 42%,
		rgba(10,14,28,0.94) 100%
	);
	z-index:3;
}
.main_about{
	position:relative; z-index:4; width:52%; padding:56px 64px 56px 72px;
	color:rgba(255,255,255,0.62); font-family:'Pretendard','Noto Sans KR',sans-serif;
	font-size:16px; line-height:1.9;
}
.main_about h2{
	display:inline-flex; align-items:center; column-gap:12px;
	font-family:'Pretendard','Noto Sans KR',sans-serif;
	font-size:11px; font-weight:700; letter-spacing:0.32em; text-transform:uppercase;
	color:rgba(245,200,66,0.92);
}
.main_about h2:before{
	content:''; display:inline-block; width:32px; height:1.5px;
	background:rgba(245,200,66,0.92); border-radius:2px;
}
.main_about h1{
	margin-top:14px; font-family:'Pretendard','Noto Sans KR',sans-serif;
	font-size:58px; font-weight:800; color:#ffffff; letter-spacing:-0.045em; line-height:1.05;
	text-shadow:0 2px 20px rgba(0,0,0,0.3);
}
.main_about p:nth-child(3){
	color:rgba(255,255,255,0.95); font-family:'Pretendard','Noto Sans KR',sans-serif;
	font-size:19px; font-weight:600; margin-top:30px; line-height:1.65; letter-spacing:-0.025em;
	padding-left:18px; border-left:2.5px solid rgba(245,200,66,0.85);
}
.main_about p:nth-child(4){
	margin-top:18px; max-width:460px; font-size:15px; color:rgba(255,255,255,0.5);
	padding-left:21px; letter-spacing:-0.01em; line-height:1.8;
}
.btn_main_about{margin-top:40px; padding-left:21px;}
.btn_main_about>a{
	column-gap:10px; padding:14px 34px;
	border:1.5px solid rgba(245,200,66,0.6); background:rgba(245,200,66,0.08);
	color:rgba(245,200,66,0.95); font-family:'Pretendard','Noto Sans KR',sans-serif;
	font-size:15px; font-weight:700; letter-spacing:0.04em; border-radius:999px;
	box-shadow:0 4px 18px rgba(245,200,66,0.08);
}
.btn_main_about>a:hover{
	column-gap:18px; background:#f5c842; color:#111218; border-color:#f5c842;
	transform:translateY(-3px); box-shadow:0 10px 28px rgba(245,200,66,0.34);
}

@media screen and (max-width:768px){
	.main_container>*+*{margin-top:84px;}
	.main_ptoducts_wrap>div{padding:24px 20px 4px; border-radius:6px;}
	.main_ptoducts_wrap>div:before{left:20px; right:20px; top:92px;}
	.main_ptoducts_wrap h3{padding-right:68px;}
	.main_container .main_more{top:22px; right:20px; width:44px; height:44px;}

	/* 제품소개 2열 최종 */
	.main_ptoducts_list{flex-direction:row; flex-wrap:wrap; gap:10px;}
	.main_ptoducts_list>li{width:calc(50% - 5px); max-width:none;}
	.main_ptoducts_contents{padding:14px 14px 16px;}
	.main_ptoducts_contents strong{font-size:17px;}

	/* 시공사례 - 제목+탭 한 줄 flex */
	.case_title_tab_row{
		display:flex;
		align-items:center;
		gap:10px;
		width:100%;
		border-bottom:1.5px solid rgba(17,24,39,0.1);
	}
	.case_title_tab_row > h3{
		flex-shrink:0;
		font-size:24px !important;
		line-height:1;
		white-space:nowrap;
		padding-bottom:10px;
	}
	.case_title_tab_row .main_construction_cas_tab{
		flex:1;
		min-width:0;
		margin-top:0 !important;
		border-bottom:none !important;
		flex-wrap:nowrap !important;
		overflow-x:auto;
		-webkit-overflow-scrolling:touch;
		scrollbar-width:none;
		-ms-overflow-style:none;
	}
	.case_title_tab_row .main_construction_cas_tab::-webkit-scrollbar{display:none;}
	.case_title_tab_row .main_construction_cas_tab > h4{
		flex:0 0 auto !important;
		font-size:12px !important;
		padding:8px 10px 10px !important;
		white-space:nowrap;
		border-bottom:none !important;
	}
	.case_title_tab_row .main_construction_cas_tab > h4:after{
		bottom:0;
	}

	/* 시공사례 이미지 2열 */
	.main_construction_case_list>ul{gap:10px !important;}
	.main_construction_case_list>ul>li{width:calc(50% - 5px) !important;}

	.main_about_wrap{margin-top:80px; padding:320px 0 60px; background-attachment:scroll;}
	.main_about_wrap:after{background:linear-gradient(180deg, rgba(8,12,24,0.7) 0%, rgba(8,12,24,0.3) 30%, rgba(8,12,24,0) 50%);}
	.main_about_wrap:before{
		width:100%; height:calc(100% - 320px); top:320px; right:0; left:0;
		background:linear-gradient(180deg, rgba(8,12,24,0) 0%, rgba(8,12,24,0.92) 20%, rgba(8,12,24,0.97) 100%);
	}
	.main_about{width:100%; padding:40px 20px 20px;}
	.main_about h1{font-size:40px;}
	.main_about p:nth-child(3){font-size:18px;}
}

/* 420px 이하 최종 override */
@media screen and (max-width:420px){
	.main_ptoducts_list{gap:8px;}
	.main_ptoducts_list>li{width:calc(50% - 4px);}
	.case_title_tab_row > h3{font-size:20px !important;}
	.case_title_tab_row .main_construction_cas_tab > h4{font-size:11px !important; padding:8px 8px 10px !important;}
	.main_construction_case_list>ul{gap:8px !important;}
	.main_construction_case_list>ul>li{width:calc(50% - 4px) !important;}
}
/* =========================================
   모바일 회사소개 배너 높이 축소
   ========================================= */
@media screen and (max-width:768px){
	.main_about_wrap{
		padding-top:220px !important;
	}
	.main_about_wrap:before,
	.main_about_wrap:after{
		height:calc(100% - 220px) !important;
		top:220px !important;
	}
}
@media screen and (max-width:600px){
	.main_about_wrap{
		padding-top:200px !important;
	}
	.main_about_wrap:before,
	.main_about_wrap:after{
		height:calc(100% - 200px) !important;
		top:200px !important;
	}
}

/* ==============================================
   모바일 드로어 개선
   - main_contact_information_list z-index 수정
   - 드로어 헤더(로고+닫기버튼) 스타일
   ============================================== */

/* HP/Email 연락처 박스가 드로어 위로 올라오지 않도록 */
.main_contact_information_list {
	z-index: 30 !important;
}

/* 드로어 z-index 확실히 위로 */
.tm_gnb_wrap {
	z-index: 5500 !important;
}
.page_cover02 {
	z-index: 5490 !important;
}

/* ── 드로어 헤더 (로고 + 닫기버튼) ── */
.tm_gnb_header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 18px 20px 16px;
	border-bottom: 1px solid rgba(17,24,39,0.08);
	background: #ffffff;
	position: sticky;
	top: 0;
	z-index: 10;
}
.tm_gnb_header h1 {
	padding: 0;
	margin: 0;
	border-bottom: none;
}
.tm_gnb_header h1 img {
	width: 140px;
	display: block;
}

/* ── 닫기 버튼 ── */
.btn_tm_nav_close {
	position: relative;
	width: 36px;
	height: 36px;
	border: none;
	border-radius: 50%;
	background: #f1f5f9;
	cursor: pointer;
	flex-shrink: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: background .2s ease, transform .2s ease;
	padding: 0;
}
.btn_tm_nav_close:hover {
	background: #e2e8f0;
	transform: rotate(90deg);
}
.btn_tm_nav_close span {
	display: block;
	position: absolute;
	width: 18px;
	height: 2px;
	background: #1a1f2e;
	border-radius: 2px;
	left: 50%;
	top: 50%;
}
.btn_tm_nav_close span:nth-child(1) {
	transform: translate(-50%, -50%) rotate(45deg);
}
.btn_tm_nav_close span:nth-child(2) {
	transform: translate(-50%, -50%) rotate(-45deg);
}

/* 기존 tm_gnb_wrap>h1 패딩 제거 (헤더로 대체) */
.tm_gnb_wrap > h1 { display: none; }

/* ==============================================
   GNB 완전 리디자인 - Final
   ============================================== */

/* ── 헤더 기반 ── */
.header_wrap01,
.header_wrap01.header_up {
	background: #ffffff !important;
	border-bottom: 1px solid rgba(15,23,42,0.07) !important;
	box-shadow: 0 2px 24px rgba(15,23,42,0.07) !important;
	padding-top: 0 !important;
}
.header_wrap01 > div {
	align-items: center !important;
}
.header_wrap01 > div > h1 {
	width: 285px;
	flex: 0 0 285px;
}

/* ── GNB 리스트 ── */
.gnb {
	column-gap: 0 !important;
	align-items: center !important;
}
.gnb > li {
	position: relative;
}

/* ── 1depth 링크 초기화 & 재정의 ── */
.gnb > li > a {
	display: flex !important;
	align-items: center !important;
	padding: 28px 28px !important;
	min-height: 88px !important;
	font-size: 17px !important;
	font-weight: 600 !important;
	color: #1a1f2e !important;
	letter-spacing: -0.025em !important;
	position: relative;
	transition: color .2s ease !important;
	overflow: hidden;
}
.header_wrap01.header_up .gnb > li > a {
	padding: 23px 28px !important;
	min-height: 78px !important;
}

/* strong 래퍼 */
.gnb > li > a strong {
	display: block;
	position: relative;
	z-index: 1;
	transition: transform .22s cubic-bezier(.22,1,.36,1);
}

/* 기존 ::before 밑줄 제거 */
.gnb > li > a strong:before { display: none !important; }

/* ── 호버 배경 pill ── */
.gnb > li > a::before {
	content: '' !important;
	display: block !important;
	position: absolute !important;
	inset: 10px 8px !important;
	border-radius: 10px !important;
	background: #f1f5f9 !important;
	opacity: 0 !important;
	transform: scale(0.84) !important;
	transition: opacity .22s ease, transform .26s cubic-bezier(.22,1,.36,1) !important;
	z-index: 0 !important;
	width: auto !important;
	height: auto !important;
	border-radius: 10px !important;
	bottom: auto !important;
	left: 8px !important;
	right: 8px !important;
	top: 10px !important;
}
.gnb > li:hover > a::before,
.gnb > li:focus-within > a::before {
	opacity: 1 !important;
	transform: scale(1) !important;
}

/* ── 하단 슬라이드 바 ── */
.gnb > li > a::after {
	content: '' !important;
	display: block !important;
	position: absolute !important;
	bottom: 0 !important;
	left: 8px !important;
	right: 8px !important;
	height: 2.5px !important;
	border-radius: 2px 2px 0 0 !important;
	background: #1a1f2e !important;
	transform: scaleX(0) !important;
	transform-origin: left center !important;
	transition: transform .28s cubic-bezier(.22,1,.36,1) !important;
	width: auto !important;
	top: auto !important;
	opacity: 1 !important;
}
.gnb > li:hover > a::after,
.gnb > li:focus-within > a::after {
	transform: scaleX(1) !important;
}

/* 호버 텍스트 색 + 살짝 위로 */
.gnb {
	column-gap: 42px !important;
}
.gnb > li:hover > a,
.gnb > li:focus-within > a {
	color: #111827 !important;
}
.gnb > li:hover > a strong,
.gnb > li:focus-within > a strong {
	transform: translateY(-1px);
}

/* ── 2depth 드롭다운 ── */
.gnb_2depth_menu {
	display: block !important;
	visibility: hidden !important;
	opacity: 0 !important;
	pointer-events: none !important;
	position: absolute !important;
	left: 50% !important;
	top: 100% !important;
	transform: translateX(-50%) translateY(-6px) !important;
	width: 230px !important;
	padding: 6px !important;
	background: #ffffff !important;
	border: none !important;
	border-radius: 14px !important;
	box-shadow:
		0 0 0 1px rgba(15,23,42,0.07),
		0 8px 16px rgba(15,23,42,0.06),
		0 20px 40px rgba(15,23,42,0.10) !important;
	z-index: 9999 !important;
	transition:
		opacity .2s ease,
		transform .24s cubic-bezier(.22,1,.36,1),
		visibility .2s !important;
}

/* 드롭다운 꼭지 삼각형 */
.gnb_2depth_menu::before {
	content: '' !important;
	display: block !important;
	position: absolute !important;
	top: -5px !important;
	left: 50% !important;
	transform: translateX(-50%) rotate(45deg) !important;
	width: 10px !important;
	height: 10px !important;
	background: #ffffff !important;
	border-radius: 2px 0 0 0 !important;
	box-shadow: -1px -1px 0 rgba(15,23,42,0.06) !important;
	z-index: 1 !important;
	opacity: 1 !important;
	bottom: auto !important;
	right: auto !important;
}

/* 드롭다운 ::after 초기화 */
.gnb_2depth_menu::after {
	display: none !important;
}

/* 호버 시 표시 */
.gnb > li:hover .gnb_2depth_menu,
.gnb > li:focus-within .gnb_2depth_menu {
	visibility: visible !important;
	opacity: 1 !important;
	pointer-events: auto !important;
	transform: translateX(-50%) translateY(0) !important;
}

/* ── 2depth 아이템 ── */
.gnb_2depth_menu > li {
	margin: 0 !important;
}
.gnb_2depth_menu > li + li {
	margin-top: 0 !important;
}
.gnb_2depth_menu > li > a {
	display: flex !important;
	align-items: center !important;
	gap: 0 !important;
	padding: 10px 16px !important;
	font-size: 14px !important;
	font-weight: 500 !important;
	color: #4b5563 !important;
	text-align: left !important;
	letter-spacing: -0.01em !important;
	word-break: keep-all !important;
	white-space: nowrap !important;
	border-radius: 8px !important;
	background: transparent !important;
	transition: background .16s ease, color .16s ease, padding-left .18s ease !important;
	position: relative;
}

/* 왼쪽 도트 인디케이터 */
.gnb_2depth_menu > li > a::before {
	content: '' !important;
	display: inline-block !important;
	width: 5px !important;
	height: 5px !important;
	border-radius: 50% !important;
	background: #d1d5db !important;
	flex-shrink: 0 !important;
	margin-right: 10px !important;
	transition: background .16s ease, transform .16s ease !important;
	position: relative !important;
	inset: auto !important;
	transform: none !important;
	opacity: 1 !important;
	left: auto !important;
	right: auto !important;
	top: auto !important;
	bottom: auto !important;
	border: none !important;
	box-shadow: none !important;
}
.gnb_2depth_menu > li > a::after {
	display: none !important;
}
.gnb_2depth_menu > li > a:hover {
	background: #f8fafc !important;
	color: #111827 !important;
	padding-left: 18px !important;
}
.gnb_2depth_menu > li > a:hover::before {
	background: #111827 !important;
	transform: scale(1.3) !important;
}

/* ==============================================
   모바일 드로어 열릴 때 비주얼 contact 박스 숨김
   backdrop-filter 요소는 z-index로 해결 불가
   body에 클래스 방식으로 제어
   ============================================== */
body.drawer-open .main_contact_information_list {
	display: none !important;
}
body.drawer-open .main_visual_scroll {
	display: none !important;
}

/* ==============================================
   footer refresh
   ============================================== */
.site_footer{
	padding:56px 0 92px;
	background:
		radial-gradient(circle at top left, rgba(185,151,91,0.16), transparent 26%),
		linear-gradient(180deg, #1e232d 0%, #131820 100%);
	color:rgba(255,255,255,0.72);
}
.site_footer .inner{position:relative;}
.footer_shell{
	display:grid;
	grid-template-columns:minmax(0,1.2fr) 0.72fr 0.92fr;
	gap:32px;
	padding:34px 38px;
	border:1px solid rgba(255,255,255,0.08);
	border-radius:32px;
	background:linear-gradient(180deg, rgba(255,255,255,0.05) 0%, rgba(255,255,255,0.02) 100%);
	box-shadow:0 24px 50px rgba(0,0,0,0.18);
	backdrop-filter:blur(10px);
	-webkit-backdrop-filter:blur(10px);
}
.footer_brand,
.footer_links,
.footer_contact{min-width:0;}
.footer_logo{
	display:inline-flex;
	align-items:center;
	max-width:260px;
}
.footer_logo img{width:100%; height:auto;}
.footer_brand_text{
	margin-top:18px;
	font-size:15px;
	line-height:1.9;
	color:rgba(255,255,255,0.72);
	word-break:keep-all;
}
.footer_title{
	display:block;
	margin-bottom:18px;
	font-size:12px;
	font-weight:800;
	letter-spacing:.22em;
	text-transform:uppercase;
	color:rgba(233,222,205,0.92);
}
.footer_cta{
	margin-top:22px;
	display:flex;
	flex-wrap:wrap;
	gap:10px;
}
.footer_cta a{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	min-height:44px;
	padding:0 18px;
	border-radius:999px;
	font-size:14px;
	font-weight:700;
}
.footer_cta_call{
	background:#ffffff;
	color:#131820;
}
.footer_cta_kakao{
	background:linear-gradient(135deg, #ffe978 0%, #ffd028 100%);
	color:#231f20;
}
.footer_links ul{display:grid; gap:12px;}
.footer_links a{
	display:inline-flex;
	align-items:center;
	color:rgba(255,255,255,0.78);
	font-size:15px;
}
.footer_links a:before{
	content:'';
	width:6px;
	height:6px;
	margin-right:10px;
	border-radius:50%;
	background:linear-gradient(135deg, #d8c2a0 0%, #b9975b 100%);
}
.footer_contact{display:grid; gap:12px;}
.footer_contact dl,
.footer_meta_info dl{
	display:grid;
	grid-template-columns:96px 1fr;
	gap:10px;
}
.footer_contact dt,
.footer_meta_info dt{
	color:rgba(255,255,255,0.5);
	font-weight:600;
}
.footer_contact dd,
.footer_meta_info dd,
.footer_contact a{
	color:#ffffff;
}
.footer_meta{
	margin-top:20px;
	padding:20px 4px 0;
	border-top:1px solid rgba(255,255,255,0.08);
}
.footer_meta_info{
	display:flex;
	flex-wrap:wrap;
	gap:10px 28px;
}
.footer_meta_info dl{
	min-width:220px;
}
.footer_meta_info dl.is-wide{
	flex:1 1 100%;
	max-width:100%;
}
.footer_copy{
	margin-top:16px;
	font-size:13px;
	letter-spacing:.04em;
	color:rgba(255,255,255,0.46);
}

@media screen and (max-width:1200px){
	.footer_shell{
		grid-template-columns:1fr 1fr;
	}
	.footer_brand{
		grid-column:1 / -1;
	}
}

@media screen and (max-width:768px){
	.site_footer{
		padding:40px 0 86px;
	}
	.footer_shell{
		grid-template-columns:1fr;
		gap:24px;
		padding:26px 20px;
		border-radius:24px;
	}
	.footer_brand_text{
		font-size:14px;
		line-height:1.8;
	}
	.footer_cta{
		flex-direction:column;
	}
	.footer_cta a{
		width:100%;
	}
	.footer_links ul,
	.footer_contact{
		gap:10px;
	}
	.footer_contact dl,
	.footer_meta_info dl{
		grid-template-columns:84px 1fr;
	}
	.footer_meta{
		margin-top:16px;
		padding-top:16px;
	}
	.footer_meta_info{
		display:grid;
		gap:10px;
	}
	.footer_meta_info dl{
		min-width:0;
	}
	.footer_copy{
		line-height:1.7;
	}
}

@media screen and (max-width:480px){
	.footer_shell{
		padding:22px 16px;
	}
	.footer_logo{
		max-width:210px;
	}
	.footer_title{
		margin-bottom:14px;
	}
	.footer_links a,
	.footer_contact dd,
	.footer_meta_info dd{
		font-size:14px;
	}
	.footer_contact dt,
	.footer_meta_info dt{
		font-size:13px;
	}
}

/* ==============================================
   main online inquiry form refresh
   ============================================== */
.main_online_counselling_wrap{
	background:linear-gradient(180deg, rgba(255,255,255,0.98) 0%, rgba(249,246,240,0.98) 100%) !important;
	padding:42px 34px !important;
}
.main_online_counselling_list{display:grid; gap:14px;}
.main_online_counselling_list > div{column-gap:24px !important; row-gap:14px;}
.main_consult_form{
	align-items:flex-start;
	padding:10px 0 !important;
	border-bottom:none !important;
	gap:14px;
}
.main_consult_form dt{
	width:78px;
	padding-top:13px;
	font-size:15px;
	font-weight:700;
	color:#394150 !important;
	letter-spacing:-0.02em;
}
.main_consult_form dd{width:calc(100% - 78px);}
.main_online_counselling_wrap input[type=text],
.main_online_counselling_wrap select,
.main_online_counselling_wrap textarea{
	width:100%;
	border:1px solid rgba(17,24,39,0.12) !important;
	background:#fbfaf8 !important;
	border-radius:16px;
	padding:14px 16px !important;
	font-size:15px !important;
	line-height:1.5;
	color:#1f2430 !important;
	box-shadow:inset 0 1px 0 rgba(255,255,255,0.72), 0 8px 20px rgba(17,24,39,0.04);
	transition:border-color .24s ease, box-shadow .24s ease, background-color .24s ease;
	appearance:none;
	-webkit-appearance:none;
}
.main_online_counselling_wrap input[type=text]:hover,
.main_online_counselling_wrap select:hover,
.main_online_counselling_wrap textarea:hover{
	border-color:rgba(185,151,91,0.34) !important;
	background:#ffffff !important;
}
.main_online_counselling_wrap input[type=text]:focus,
.main_online_counselling_wrap select:focus,
.main_online_counselling_wrap textarea:focus{
	outline:none;
	border-color:rgba(143,114,66,0.72) !important;
	background:#ffffff !important;
	box-shadow:0 0 0 4px rgba(185,151,91,0.14), 0 14px 26px rgba(143,114,66,0.10);
}
.main_online_counselling_wrap input[type=text]::placeholder,
.main_online_counselling_wrap textarea::placeholder{
	color:rgba(85,94,110,0.58) !important;
}
.main_online_counselling_wrap select{
	padding-right:44px !important;
	background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%23515b6d' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E") !important;
	background-repeat:no-repeat !important;
	background-position:right 16px center !important;
	background-size:14px 14px !important;
	text-align:left !important;
}
.main_online_counselling_wrap textarea{
	min-height:132px !important;
	resize:vertical;
}
.main_online_counselling_wrap .main_estimate_privacy_wrap{
	margin-top:18px !important;
	align-items:center;
}
.main_agreement_check input[type=checkbox]+label{
	line-height:22px;
	padding-left:30px;
	background-position:0 1px;
}
.main_counselling_btn_wrap{
	margin-top:28px !important;
}

@media screen and (max-width:768px){
	.main_online_counselling_wrap{
		padding:24px 18px 28px !important;
	}
	.main_consult_form{
		gap:10px;
	}
	.main_consult_form dt{
		width:72px;
		padding-top:12px;
		font-size:14px;
	}
	.main_consult_form dd{
		width:calc(100% - 72px);
	}
	.main_online_counselling_wrap input[type=text],
	.main_online_counselling_wrap select,
	.main_online_counselling_wrap textarea{
		padding:13px 14px !important;
		font-size:14px !important;
		border-radius:14px;
	}
}

/* ==============================================
   inquiry form compact tuning
   ============================================== */
.main_map_counselling_wrap{align-items:stretch;}
.main_map_counselling_wrap > *{display:flex;}
.main_map_wrap,
.main_online_counselling_wrap{height:100%;}
.main_map_wrap .root_daum_roughmap{width:100% !important;}
.main_online_counselling_wrap{
	padding:34px 30px !important;
	display:flex;
	flex-direction:column;
	justify-content:space-between;
}
.main_online_counselling_list{gap:10px !important;}
.main_online_counselling_list > div{column-gap:20px !important; row-gap:10px !important;}
.main_consult_form{
	padding:7px 0 !important;
	gap:12px !important;
}
.main_consult_form dt{
	width:74px !important;
	padding-top:10px !important;
	font-size:14px !important;
}
.main_consult_form dd{width:calc(100% - 74px) !important;}
.main_online_counselling_wrap input[type=text],
.main_online_counselling_wrap select,
.main_online_counselling_wrap textarea{
	padding:12px 14px !important;
	font-size:14px !important;
	border-radius:14px !important;
}
.main_online_counselling_wrap textarea{
	min-height:108px !important;
}
.main_online_counselling_wrap .main_estimate_privacy_wrap{
	margin-top:12px !important;
}
.main_agreement_check input[type=checkbox]+label{
	font-size:15px;
}
.main_counselling_btn_wrap{
	margin-top:22px !important;
}
.main_counselling_btn_wrap button{
	padding:12px 32px !important;
}

@media screen and (max-width:768px){
	.main_map_counselling_wrap > *{display:block;}
	.main_online_counselling_wrap{
		height:auto;
		padding:22px 16px 24px !important;
	}
	.main_online_counselling_list{gap:8px !important;}
	.main_consult_form{
		padding:6px 0 !important;
		gap:8px !important;
	}
	.main_consult_form dt{
		width:68px !important;
		padding-top:9px !important;
		font-size:13px !important;
	}
	.main_consult_form dd{
		width:calc(100% - 68px) !important;
	}
	.main_online_counselling_wrap input[type=text],
	.main_online_counselling_wrap select,
	.main_online_counselling_wrap textarea{
		padding:10px 12px !important;
		font-size:13px !important;
		border-radius:12px !important;
	}
	.main_online_counselling_wrap textarea{
		min-height:96px !important;
	}
}

/* ==============================================
   main contact dual titles
   ============================================== */
.main_cs_center_title h3{display:none !important;}
.main_cs_center_title p{
	margin-bottom:0;
}
.main_map_wrap,
.main_online_counselling_wrap{
	padding-top:28px;
	min-height:548px;
}
.main_map_wrap{
	background:#ffffff;
	flex-direction:column;
}
.main_map_wrap > .root_daum_roughmap{
	display:block;
	flex:1 1 auto;
	min-height:430px;
}
.main_dual_section_title{
	display:flex;
	align-items:center;
	min-height:54px;
	padding:0 30px 18px;
}
.main_dual_section_title h4{
	font-family:'Pretendard','Noto Sans KR',sans-serif;
	font-size:28px;
	font-weight:800;
	letter-spacing:-0.04em;
	color:#111827;
	line-height:1.2;
}
.main_map_wrap .main_dual_section_title{
	border-bottom:1px solid rgba(17,24,39,0.08);
}
.main_online_counselling_wrap .main_dual_section_title{
	padding:0 0 18px;
}
.main_online_counselling_wrap{
	padding:31px 30px 36px !important;
}
.main_online_counselling_wrap form{
	display:flex;
	flex-direction:column;
	flex:1 1 auto;
}
.main_online_counselling_wrap fieldset{
	display:flex;
	flex-direction:column;
	flex:1 1 auto;
	min-height:0;
}
.main_online_counselling_list{
	gap:8px !important;
	flex:1 1 auto;
}
.main_online_counselling_list > div{
	row-gap:8px !important;
}
.main_consult_form{
	padding:7px 0 !important;
}
.main_online_counselling_wrap textarea{
	min-height:126px !important;
}
.main_map_wrap .wrap_map{
	display:block !important;
	width:100% !important;
	height:430px !important;
	min-height:430px !important;
}
.main_map_wrap .cont,
.main_map_wrap .wrap_map,
.main_map_wrap .wrap_controllers{display:block;}
.main_map_wrap .wrap_btn_roadview,
.main_map_wrap .wrap_btn_roadmap,
.main_map_wrap .map_border,
.main_map_wrap .map_info,
.main_map_wrap .wrap_controllers + div{
	display:none !important;
}

/* ==============================================
   PC case tab emphasis
   ============================================== */
@media screen and (min-width:769px){
	.main_construction_cas_tab{
		gap:10px;
		padding:6px 0 10px;
		border-bottom:1px solid rgba(17,24,39,0.08);
	}
	.main_construction_cas_tab>h4{
		padding:11px 16px 13px;
		border-radius:999px;
		color:rgba(17,24,39,0.46);
		font-weight:600;
		transition:color .22s ease, background-color .22s ease, box-shadow .22s ease, transform .22s ease;
	}
	.main_construction_cas_tab>h4:after{
		left:16px;
		right:16px;
		bottom:6px;
		height:2px;
		background:linear-gradient(90deg, #b9975b 0%, #8f7242 100%);
		border-radius:999px;
	}
	.main_construction_cas_tab>h4:hover{
		color:#111827;
		background:rgba(185,151,91,0.08);
		transform:translateY(-1px);
	}
	.main_construction_cas_tab>h4.active{
		color:#111827;
		background:linear-gradient(180deg, rgba(185,151,91,0.18) 0%, rgba(185,151,91,0.08) 100%);
		box-shadow:0 10px 20px rgba(143,114,66,0.12);
		transform:translateY(-2px);
	}
	.main_construction_cas_tab>h4.active:before{
		content:'';
		position:absolute;
		left:10px;
		top:50%;
		width:6px;
		height:6px;
		border-radius:50%;
		background:linear-gradient(135deg, #b9975b 0%, #8f7242 100%);
		transform:translateY(-50%);
		box-shadow:0 0 0 6px rgba(185,151,91,0.12);
	}
	.main_construction_cas_tab>h4.active{
		padding-left:26px;
	}
}

/* ==============================================
   main hero size tuning
   ============================================== */
.main_visual{
	height:820px !important;
	min-height:820px !important;
}

@media screen and (max-width:1200px){
	.main_visual{
		height:780px !important;
		min-height:780px !important;
	}
}

/* ==============================================
   main about section refinement
   ============================================== */
.main_about_wrap{
	padding:110px 0 !important;
}
.main_about_wrap:before{
	width:56% !important;
	background:linear-gradient(108deg, rgba(8,12,24,0) 0%, rgba(8,12,24,0.68) 24%, rgba(8,12,24,0.94) 100%) !important;
}
.main_about{
	width:56% !important;
	padding:52px 54px 52px 72px !important;
	font-size:18px !important;
	line-height:1.9 !important;
}
.main_about h2{
	display:inline-flex;
	align-items:center;
	gap:10px;
	padding:10px 18px;
	border-radius:999px;
	background:rgba(245,200,66,0.08);
	box-shadow:0 10px 24px rgba(245,200,66,0.08);
}
.main_about h2:before{
	content:'';
	width:32px;
	height:1px;
	background:rgba(245,200,66,0.9);
}
.main_about h1{
	font-size:58px !important;
	letter-spacing:-0.05em !important;
	text-shadow:0 8px 28px rgba(0,0,0,0.22);
}
.main_about p:nth-child(3){
	position:relative;
	margin-top:26px !important;
	padding:20px 24px 20px 28px;
	font-size:26px !important;
	line-height:1.55 !important;
	border-radius:24px;
	background:linear-gradient(180deg, rgba(255,255,255,0.05) 0%, rgba(255,255,255,0.02) 100%);
	box-shadow:0 18px 36px rgba(0,0,0,0.14);
}
.main_about p:nth-child(3):before{
	content:'';
	position:absolute;
	left:16px;
	top:22px;
	bottom:22px;
	width:3px;
	border-radius:999px;
	background:linear-gradient(180deg, #f5c842 0%, #d39b2f 100%);
}
.main_about p:nth-child(4){
	margin-top:18px !important;
	font-size:17px !important;
	color:rgba(255,255,255,0.78) !important;
}

@media screen and (max-width:1200px){
	.main_about_wrap{
		padding:104px 0 !important;
	}
	.main_about,
	.main_about_wrap:before{
		width:58% !important;
	}
	.main_about{
		padding:44px 40px 44px 54px !important;
	}
	.main_about h1{
		font-size:50px !important;
	}
	.main_about p:nth-child(3){
		font-size:23px !important;
		padding:18px 20px 18px 24px;
	}
}

@media screen and (max-width:768px){
	.main_about_wrap{
		padding:300px 0 56px !important;
	}
	.main_about{
		width:100% !important;
		padding:34px 18px 16px !important;
		font-size:15px !important;
		line-height:1.8 !important;
	}
	.main_about h2{
		padding:8px 14px;
		gap:8px;
	}
	.main_about h2:before{
		width:22px;
	}
	.main_about h1{
		font-size:38px !important;
	}
	.main_about p:nth-child(3){
		font-size:19px !important;
		padding:16px 18px 16px 22px;
		border-radius:18px;
	}
	.main_about p:nth-child(3):before{
		left:12px;
		top:18px;
		bottom:18px;
	}
	.main_about p:nth-child(4){
		font-size:15px !important;
	}
}

@media screen and (max-width:768px){
	.main_visual{
		height:700px !important;
		min-height:700px !important;
	}
}

/* ==============================================
   mobile about section final fix
   - 상단 이미지가 과하게 비지 않도록 높이 축소
   - 오버레이가 섹션 전체를 자연스럽게 덮도록 재정의
   ============================================== */
@media screen and (max-width:768px){
	.main_about_wrap{
		padding:240px 0 56px !important;
		background-position:center top !important;
	}
	.main_about_wrap:after{
		inset:0 !important;
		top:0 !important;
		height:auto !important;
		background:linear-gradient(180deg,
			rgba(8,12,24,0.28) 0%,
			rgba(8,12,24,0.52) 28%,
			rgba(8,12,24,0.78) 58%,
			rgba(8,12,24,0.92) 100%
		) !important;
	}
	.main_about_wrap:before{
		top:240px !important;
		height:calc(100% - 240px) !important;
		width:100% !important;
		left:0 !important;
		right:0 !important;
		background:linear-gradient(180deg,
			rgba(8,12,24,0) 0%,
			rgba(8,12,24,0.88) 26%,
			rgba(8,12,24,0.96) 100%
		) !important;
	}
	.main_about{
		padding:30px 18px 18px !important;
	}
}

@media screen and (max-width:600px){
	.main_about_wrap{
		padding:220px 0 52px !important;
	}
	.main_about_wrap:before{
		top:220px !important;
		height:calc(100% - 220px) !important;
	}
}

@media screen and (max-width:600px){
	.main_visual{
		height:650px !important;
		min-height:650px !important;
	}
}

@media screen and (max-width:768px){
	.main_map_wrap,
	.main_online_counselling_wrap{
		padding-top:20px;
		min-height:0;
	}
	.main_dual_section_title{
		min-height:auto;
		padding:0 16px 14px;
	}
	.main_online_counselling_wrap .main_dual_section_title{
		padding:0 0 14px;
	}
	.main_dual_section_title h4{
		font-size:22px;
	}
	.main_online_counselling_wrap{
		padding:20px 16px 22px !important;
	}
	.main_online_counselling_wrap form,
	.main_online_counselling_wrap fieldset{
		display:block;
	}
	.main_online_counselling_wrap textarea{
		min-height:90px !important;
	}
	.main_map_wrap > .root_daum_roughmap{
		min-height:300px;
	}
	.main_map_wrap .wrap_map{
		height:300px !important;
		min-height:300px !important;
	}
}
