@charset "utf-8";

/* 제품 1뎁스(허브) 본문 영역 리뉴얼 — body.product-hub-page */
body.product-hub-page #container.sub #contWrap #content {
	/* 사이드바(218px) 이후 29pt 여백 + 본문 1070px */
	margin-left: 218px;
	padding-left: 29pt !important;
	padding-right: 0 !important;
	padding-bottom: 200px !important;
	width: calc(1070px + 29pt);
	box-sizing: border-box;
}

body.product-hub-page #container.sub #contWrap #content .wrap {
	width: 100%;
	max-width: 1040px;
	margin: 42px auto 0;
}

/* 히어로 배너 */
body.product-hub-page #content > .product-hub-hero {
	position: relative;
	width: 100%;
	max-width: 1070px;
	margin: 0;
	overflow: hidden;
	box-sizing: border-box;
}

body.product-hub-page .product-hub-hero img {
	display: block;
	width: 100%;
	height: 600px;
	object-fit: cover;
}

body.product-hub-page .product-hub-hero__overlay {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 170px;
	background: rgba(0, 0, 0, 0.6);
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 0;
	box-sizing: border-box;
}

body.product-hub-page .product-hub-hero__title {
	margin: 0;
	width: 100%;
	text-align: center;
	font-family: "Pretendard", "Noto Sans KR", sans-serif;
	font-size: 25px;
	font-weight: 700;
	line-height: 1.4;
	color: #ffffff;
}

/* 탭 — 형태는 구버전(테두리·float), 색상·폰트는 리뉴얼 유지 */
body.product-hub-page #contWrap #content #tab {
	border-bottom: 1px solid #d1d1d1 !important;
	margin: 0;
	text-align: center;
}

body.product-hub-page #contWrap #content #tab.active {
	position: fixed;
	width: 1040px;
	top: 0;
	left: calc(50% - 426px + 29pt);
	margin-left: 0;
	z-index: 10;
	background-color: #ffffff;
	text-align: center;
}

body.product-hub-page #contWrap #content #tab ul {
	margin: 0 auto !important;
	overflow: hidden;
	border-top: 1px solid #d1d1d1 !important;
	background: #ffffff !important;
	display: inline-flex !important;
	width: 100% !important;
	max-width: 1040px;
	vertical-align: top;
	box-sizing: border-box;
}

body.product-hub-page #contWrap #content #tab ul.p2,
body.product-hub-page #contWrap #content #tab ul.p3,
body.product-hub-page #contWrap #content #tab ul.p4,
body.product-hub-page #contWrap #content #tab ul.p5 {
	width: 100% !important;
	max-width: 1040px !important;
}

body.product-hub-page #contWrap #content #tab ul.p2 li,
body.product-hub-page #contWrap #content #tab ul.p3 li,
body.product-hub-page #contWrap #content #tab ul.p4 li,
body.product-hub-page #contWrap #content #tab ul.p5 li {
	flex: 1 1 0;
	float: none !important;
	width: auto !important;
	min-width: 0;
	border-right: 1px solid #d1d1d1 !important;
}

body.product-hub-page #contWrap #content #tab li:first-child {
	border-left: 1px solid #d1d1d1 !important;
}

body.product-hub-page #contWrap #content #tab li a {
	display: block;
	padding: 9px 0 !important;
	border-bottom: 0 !important;
	background: #ffffff !important;
	font-family: "Pretendard", "Noto Sans KR", sans-serif;
	font-size: 16px;
	font-weight: 500;
	color: #a5a5a5 !important;
	text-align: center;
}

body.product-hub-page #contWrap #content #tab li.active a,
body.product-hub-page #contWrap #content #tab li:hover a,
body.product-hub-page #contWrap #content #tab li a:focus {
	background: #f9f9f9 !important;
	color: #424242 !important;
	border-bottom: 0 !important;
}

/* 제품 카드 — 공통 */
body.product-hub-page #section_1 {
	margin: 0;
	padding: 0;
}

body.product-hub-page #section_1 .box {
	display: flex;
	flex-direction: row;
	align-items: stretch;
	gap: 0;
	margin: 0 0 42px !important;
	padding: 0 !important;
	border: 0 !important;
	position: relative;
	min-height: 220px;
	background: transparent;
}

body.product-hub-page #section_1 .box:last-child {
	margin-bottom: 0 !important;
}

body.product-hub-page #section_1 .box .img_title {
	display: none !important;
}

/* 구버전 s2_X 카드 규칙 리셋 — 1뎁스 허브 전 페이지 */
body.product-hub-page #container.sub #contWrap #section_1 .box h3 {
	margin-bottom: 30px !important;
	font-weight: 700 !important;
	font-size: 20px !important;
	color: #424242 !important;
}

body.product-hub-page #container.sub #contWrap #section_1 .box p {
	width: 100% !important;
	color: #606060 !important;
}

body.product-hub-page #container.sub #contWrap #section_1 .box .btn {
	margin-top: 0 !important;
}

body.product-hub-page #container.sub #contWrap #section_1 .box .img {
	margin-top: 0 !important;
}

body.product-hub-page #container.sub #contWrap #section_1 .box.type1 .img,
body.product-hub-page #container.sub #contWrap #section_1 .box.type2 .img {
	position: relative !important;
	top: auto !important;
	right: auto !important;
}

/* 카드 — .left 래퍼 구조 (인테리어스톤 등) */
body.product-hub-page #section_1 .box:has(.left) {
	width: 100%;
	max-width: 1040px;
	overflow: visible;
}

body.product-hub-page #section_1 .box .left {
	flex: 0 0 500px;
	width: 500px;
	max-width: 500px;
	height: 220px;
	min-height: 220px;
	margin: 0;
	padding: 24px 40px !important;
	box-sizing: border-box;
	position: relative;
	background: #f9f9f9 !important;
	display: flex;
	flex-direction: column;
}

body.product-hub-page #section_1 .box .left h3 {
	margin: 0 0 30px !important;
	width: 100% !important;
	max-width: 100% !important;
	flex: 0 0 auto;
	position: relative;
	z-index: 1;
}

body.product-hub-page #section_1 .box .left p {
	flex: 1 1 auto;
	align-self: stretch;
	width: 100% !important;
	max-width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	background: transparent !important;
	box-sizing: border-box;
	position: relative;
	z-index: 1;
	min-height: 0;
}

body.product-hub-page #section_1 .box .left .btn {
	flex: 0 0 auto;
	width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	background: transparent !important;
	box-sizing: border-box;
	position: relative;
	z-index: 1;
}

body.product-hub-page #section_1 .box .left .img {
	position: absolute !important;
	top: 0 !important;
	bottom: auto !important;
	right: -540px !important;
	left: auto !important;
	width: 540px !important;
	height: 220px !important;
	margin: 0 !important;
	padding: 0;
	overflow: hidden;
}

body.product-hub-page #section_1 .box .left .img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

/* 카드 — 직접 배치 구조 (창호 등) */
body.product-hub-page #section_1 .box > h3,
body.product-hub-page #section_1 .box > p,
body.product-hub-page #section_1 .box > .btn {
	grid-column: 1;
	max-width: 500px;
}

body.product-hub-page #section_1 .box:not(:has(.left)) {
	display: grid;
	grid-template-columns: 500px 540px;
	grid-template-rows: auto 1fr auto;
	min-height: 220px;
	column-gap: 0;
	position: relative;
}

body.product-hub-page #section_1 .box:not(:has(.left))::before {
	content: "";
	grid-row: 1 / span 3;
	grid-column: 1;
	width: 500px;
	min-height: 220px;
	height: 100%;
	background: #f9f9f9;
	z-index: 0;
}

body.product-hub-page #section_1 .box:not(:has(.left)) > h3 {
	grid-row: 1;
	grid-column: 1;
	align-self: start;
	margin: 0 !important;
	margin-bottom: 30px !important;
	padding: 24px 40px 0;
	background: transparent;
	font-family: "Pretendard", "Noto Sans KR", sans-serif;
	font-size: 20px;
	font-weight: 700;
	color: #424242;
	position: relative;
	z-index: 1;
}

body.product-hub-page #section_1 .box:not(:has(.left)) > p {
	grid-row: 2;
	grid-column: 1;
	align-self: start;
	width: 100% !important;
	max-width: 100% !important;
	margin: 0 !important;
	padding: 0 40px !important;
	background: transparent;
	font-family: "Pretendard", "Noto Sans KR", sans-serif;
	font-size: 12px;
	font-weight: 400;
	line-height: 1.6;
	color: #606060;
	box-sizing: border-box;
	position: relative;
	z-index: 1;
	overflow: visible;
}

body.product-hub-page #section_1 .box:not(:has(.left)) > .btn {
	grid-row: 3;
	grid-column: 1;
	align-self: end;
	margin: 0 !important;
	padding: 0 40px 24px !important;
	background: transparent;
	box-sizing: border-box;
	position: relative;
	z-index: 1;
}

body.product-hub-page #section_1 .box:not(:has(.left)) > .img {
	grid-column: 2;
	grid-row: 1 / span 3;
	align-self: start;
	width: 540px !important;
	height: 220px !important;
	margin: 0 !important;
	position: relative !important;
	top: auto !important;
	right: auto !important;
	overflow: hidden;
}

body.product-hub-page #section_1 .box:not(:has(.left)) > .img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

/* 카드 타이포·버튼 공통 */
body.product-hub-page #section_1 .box h3 {
	margin: 0 0 30px;
	width: 100% !important;
	max-width: 100% !important;
	font-family: "Pretendard", "Noto Sans KR", sans-serif;
	font-size: 20px !important;
	font-weight: 700 !important;
	color: #424242 !important;
}

body.product-hub-page #section_1 .box p {
	width: 100% !important;
	max-width: 100% !important;
	margin: 0 !important;
	font-family: "Pretendard", "Noto Sans KR", sans-serif;
	font-size: 12px;
	font-weight: 400;
	line-height: 1.6;
	color: #606060 !important;
	box-sizing: border-box;
}

body.product-hub-page #section_1 .box .btn {
	margin-top: 0;
	padding-top: 0;
	width: 100%;
}

body.product-hub-page #section_1 .box .btn a {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-width: 110px;
	height: 36px !important;
	padding: 0 16px !important;
	margin-right: 8px;
	border: 1px solid #bdbdbd;
	background: #ffffff;
	font-family: "Pretendard", "Noto Sans KR", sans-serif;
	font-size: 14px;
	font-weight: 500;
	line-height: 1 !important;
	color: #424242;
	text-decoration: none;
	box-sizing: border-box;
	vertical-align: middle;
}

body.product-hub-page #section_1 .box .btn a img {
	display: none !important;
	width: 0 !important;
	height: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
}

body.product-hub-page #section_1 .box .btn a[href*="/product/contents"]::before,
body.product-hub-page #section_1 .box .btn a[href^="/product"]::before {
	content: "자세히 보기";
}

body.product-hub-page #section_1 .box .btn a[target="_blank"]::before {
	content: "브랜드 사이트";
}

/* 브로셔 / 인증서 섹션 */
body.product-hub-page #section_2,
body.product-hub-page #section_3 {
	margin-top: 50px !important;
	min-height: auto;
}

body.product-hub-page #contWrap .section h3.type1 {
	margin: 0 0 50px !important;
	padding: 0 !important;
	border: 0;
	background: none !important;
	font-family: "Pretendard", "Noto Sans KR", sans-serif;
	font-size: 20px !important;
	font-weight: 500 !important;
	color: #424242 !important;
}

body.product-hub-page #contWrap .section h3.type1 span {
	padding: 0 !important;
	background: transparent !important;
}

body.product-hub-page #contWrap .section h3.type1 em {
	display: none !important;
}

body.product-hub-page #contWrap .section table {
	width: 100%;
	border-collapse: collapse;
	border-top: 0 !important;
}

body.product-hub-page #contWrap .section table thead th {
	padding: 14px 10px;
	border-top: 0 !important;
	border-bottom: 0 !important;
	background: #f9f9f9 !important;
	font-family: "Pretendard", "Noto Sans KR", sans-serif;
	font-size: 14px;
	font-weight: 500;
	color: #424242;
	text-align: center;
}

body.product-hub-page #contWrap .section table tbody td {
	padding: 14px 10px;
	border-bottom: 1px solid #e5e5e5;
	font-family: "Pretendard", "Noto Sans KR", sans-serif;
	font-size: 14px;
	color: #606060;
	text-align: center;
}

body.product-hub-page #contWrap .section table tbody td a img {
	display: block;
	width: 25px !important;
	height: 25px !important;
	margin: 0 auto;
	object-fit: contain;
}

body.product-hub-page #contWrap .section.b_cert table {
	margin-top: 0 !important;
}

body.product-hub-page #contWrap .section .paging {
	margin: 30px 0 0;
	padding-top: 0;
	border-top: 0;
	text-align: center;
}

body.product-hub-page #contWrap .section .paging em {
	display: inline-block;
	position: relative;
	height: 29px;
	margin: 3px;
	border: 1px solid #e8e8e8;
	vertical-align: bottom;
}

body.product-hub-page #contWrap .section .paging em a {
	display: inline-block;
	padding: 8px 11px;
	font-family: "Pretendard", "Noto Sans KR", sans-serif;
	font-size: 14px;
	line-height: 13px;
	color: #bdbdbd;
	text-decoration: none;
}

body.product-hub-page #contWrap .section .paging em.active {
	border-color: #e8e8e8;
}

body.product-hub-page #contWrap .section .paging em.active a {
	background-color: #d8d8d8 !important;
	color: #424242 !important;
	font-weight: 500;
}

body.product-hub-page #contWrap .section .paging em.arrow {
	width: 29px;
	height: 29px;
	background-repeat: no-repeat;
	background-position: 50% 50%;
}

body.product-hub-page #contWrap .section .paging em.arrow a {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	padding: 0 !important;
	margin: 0;
	border: 0;
	font-size: 0 !important;
	line-height: 0 !important;
	color: transparent !important;
	overflow: hidden;
	text-indent: -9999px;
	white-space: nowrap;
}

body.product-hub-page #contWrap .section .paging em.arrow.first {
	background-image: url("/images/front/sub_obj_paging_first.jpg");
}

body.product-hub-page #contWrap .section .paging em.arrow.prev {
	background-image: url("/images/front/sub_obj_paging_prev.jpg");
}

body.product-hub-page #contWrap .section .paging em.arrow.next {
	background-image: url("/images/front/sub_obj_paging_next.jpg");
}

body.product-hub-page #contWrap .section .paging em.arrow.last {
	background-image: url("/images/front/sub_obj_paging_last.jpg");
}

body.product-hub-page #contWrap .section.b_cert .cert.searchbox {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: nowrap;
	gap: 8px;
	width: 100%;
	height: auto !important;
	margin: 0 0 20px !important;
	padding: 0 5pt;
	box-sizing: border-box;
	position: relative !important;
	text-align: center;
}

body.product-hub-page #contWrap .section.b_cert .cert.searchbox .txt {
	position: static !important;
	top: auto !important;
	left: auto !important;
	flex: 0 0 200px;
	display: flex;
	align-items: center;
	margin: 0;
}

body.product-hub-page #contWrap .section.b_cert .cert.searchbox .txt select,
body.product-hub-page #contWrap .section.b_cert .cert.searchbox .txt select#searchBrand {
	width: 100% !important;
	height: 40px !important;
	padding: 0 32px;
	border: 1px solid #d1d1d1 !important;
	border-color: #d1d1d1 !important;
	outline: none;
	box-shadow: none !important;
	accent-color: #d8d8d8;
	font-family: "Pretendard", "Noto Sans KR", sans-serif;
	font-size: 14px;
	font-weight: 500;
	color: #646464 !important;
	text-align: center;
	text-align-last: center;
	background-color: #ffffff !important;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath fill='%23a5a5a5' d='M1 1l4 4 4-4'/%3E%3C/svg%3E") !important;
	background-repeat: no-repeat !important;
	background-position: right 12px center !important;
	box-sizing: border-box;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}

body.product-hub-page #contWrap .section.b_cert .cert.searchbox .txt select option {
	background-color: #ffffff;
	color: #646464;
}

body.product-hub-page #contWrap .section.b_cert .cert.searchbox .txt select option:hover,
body.product-hub-page #contWrap .section.b_cert .cert.searchbox .txt select option:checked,
body.product-hub-page #contWrap .section.b_cert .cert.searchbox .txt select option:focus {
	background-color: #d8d8d8 !important;
	color: #646464 !important;
}

body.product-hub-page #contWrap .section.b_cert .cert.searchbox:not(:has(.txt select#searchBrand)) .btn {
	gap: 0;
}

body.product-hub-page #contWrap .section.b_cert .cert.searchbox:not(:has(.txt select#searchBrand)) .btn input {
	border-right: none !important;
}

body.product-hub-page #contWrap .section.b_cert .cert.searchbox:has(.txt select#searchBrand) .btn {
	gap: 8px;
}

body.product-hub-page #contWrap .section.b_cert .cert.searchbox:has(.txt select#searchBrand) .btn input {
	border-right: 1px solid #d1d1d1 !important;
}

body.product-hub-page #contWrap .section.b_cert .cert.searchbox .btn {
	position: static !important;
	top: auto !important;
	right: auto !important;
	flex: 1 1 auto;
	min-width: 0;
	display: flex;
	align-items: stretch;
	gap: 0;
}

body.product-hub-page #contWrap .section.b_cert .cert.searchbox .btn span {
	display: flex;
	flex: 1 1 auto;
	min-width: 0;
	align-items: stretch;
}

body.product-hub-page #contWrap .section.b_cert .cert.searchbox .btn input,
body.product-hub-page #contWrap .section.b_cert .cert.searchbox .btn input[name="searchKeyword"],
body.product-hub-page #contWrap .section.b_cert .cert.searchbox .btn input#certKeyword,
body.product-hub-page #contWrap .section.b_cert .cert.searchbox input {
	width: 100% !important;
	height: 40px !important;
	padding: 0 12px;
	border: 1px solid #d1d1d1 !important;
	border-color: #d1d1d1 !important;
	border-radius: 0;
	outline: none !important;
	box-shadow: none !important;
	font-family: "Pretendard", "Noto Sans KR", sans-serif;
	font-size: 14px;
	font-weight: 500;
	color: #424242 !important;
	text-align: center;
	background: #ffffff !important;
	box-sizing: border-box;
	-webkit-appearance: none;
	appearance: none;
}

body.product-hub-page #contWrap .section.b_cert .cert.searchbox .btn input::placeholder {
	font-family: "Pretendard", "Noto Sans KR", sans-serif;
	font-size: 14px;
	font-weight: 500;
	color: #8e8e8e;
	opacity: 1;
	text-align: center;
}

body.product-hub-page #contWrap .section.b_cert .cert.searchbox .btn button,
body.product-hub-page #contWrap .section.b_cert .cert.searchbox .btn button.certSearch {
	flex: 0 0 200px;
	width: 200px !important;
	height: 40px !important;
	padding: 0;
	margin: 0 !important;
	border: 1px solid #d1d1d1 !important;
	border-color: #d1d1d1 !important;
	border-radius: 0;
	outline: none !important;
	box-shadow: none !important;
	background-color: #d8d8d8 !important;
	background-image: none !important;
	background-repeat: no-repeat !important;
	font-family: "Pretendard", "Noto Sans KR", sans-serif;
	font-size: 14px !important;
	font-weight: 500;
	color: #646464 !important;
	line-height: 40px;
	text-align: center;
	cursor: pointer;
	box-sizing: border-box;
	-webkit-appearance: none;
	appearance: none;
}

/* 인테리어 점착형 필름 (50F6011F) — product_detail_renewal #tab ul.p3 규칙과 동일 */
body.product-film-sub-page.product-detail-page #container.sub.s2_6_1 #contWrap #content #tab {
	border-bottom: 1px solid #d1d1d1 !important;
	max-width: 1070px;
	width: 100%;
	text-align: center !important;
}

body.product-film-sub-page.product-detail-page #container.sub.s2_6_1 #contWrap #content #tab ul,
body.product-film-sub-page #container.sub.s2_6_1 #contWrap #content #tab ul {
	border-bottom: 0 !important;
}
