/* 공통 스타일 */
.item_box, .prd_box {
	position: relative;
	background-color: #fff;
	margin-bottom: 23px;
	display: flex;
	flex-direction: column;
}
.item_box:hover {
	border-radius: 20px;
}

.prd_box > div {
	display: flex;
	flex-direction: column;
	height: 100%;
}

.prd_box > div > a {
	flex: 1;
	display: flex;
	flex-direction: column;
}

.item_box > div, .prd_box > div {/* position: absolute; *//* width: 100%; */}
.prd_box > div > a > img {top: 0px;}

.item_box > div > a > div, .prd_box > div > a > div {
	display: contents;
	width: 100%;
	height: auto;
	overflow: hidden;
	margin-top: 7px;
}
.item_box > div > a > div > img, .prd_box > div > a > div > img {
	display: table-cell; margin: 0px auto; object-fit: contain;
}
.item_box > div > div, .prd_box > div > div {margin: 20px auto 20px; margin-top: 10px;}

.item_box2, .prd_box2 {text-align: center;/* color: var(--dz-primary,#0A0A0A); */width: 100%;}
.item_box2_name, .prd_box2_name {
	width: 80%;
	padding: 5px;
	margin: 0px auto;
	min-height: 52px;
	max-height: 63px;
	overflow: hidden;
	font-size: 14px;
	display: -webkit-box;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
	text-overflow: ellipsis;
	word-break: break-word;
}
.item_box2_price, .prd_box2_price {
	width: 80%;
	/* min-height: 80px; */
	height: 40px;
	overflow: visible;
	margin: 0px auto;
	font-size: 16px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
}
.item_box2_name > h1, .item_box2_price > h1,
.prd_box2_name > h1, .prd_box2_price > h1 {font-family: 'Lato-Regular';}
.item_box3, .prd_box3 {
	width: 100%;
	height: auto;
	min-height: 60px;
	padding: 15px 0px;
	text-align: center;
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 8px;
	background: #fff;
	border-top: 1px solid #f0f0f0;
	margin-top: auto;
	transition: all 0.3s ease;
}

@media (min-width: 769px) {
	.item_box3, .prd_box3 {
		min-height: 70px;
		gap: 10px;
	}
}

/* 상품 카드 hover : 파일 하단 「상품 카드 hover」 섹션 참고 */

/* 품절 배지 - 모던 디자인 */
.soldout_badge {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 6px;
	height: 42px;
	padding: 0 16px;
	background: linear-gradient(135deg, #e74c3c 0%, #c0392b 100%);
	color: #fff;
	border-radius: 12px;
	font-size: 14px;
	font-weight: 700;
	letter-spacing: 0.5px;
	box-shadow: 0 3px 12px rgba(231, 76, 60, 0.25);
	transition: all 0.3s ease;
}

.soldout_badge i {
	font-size: 1.2em;
}

.soldout_badge:hover {
	transform: translateY(-2px);
	box-shadow: 0 5px 16px rgba(231, 76, 60, 0.35);
}

@media (max-width: 768px) {
	.soldout_badge {
		font-size: 12px;
		height: 42px;
		padding: 0 12px;
		gap: 4px;
		border-radius: 10px;
	}

	.soldout_badge i {
		font-size: 1.1em;
	}
}

@media (min-width: 769px) {
	.soldout_badge {
		height: 48px;
		font-size: 15px;
	}
}

.item_box2_name h3, .prd_box2_name h3 {line-height: 1.25em;}

/* 입력 및 버튼 공통 스타일 */
.item_box > div > div > div > input[type=text] {
	margin-left: 15%;
	width: 42px;
	border: 1px solid #a0a2ab;
	height: 42px;
	text-align: center;
	font-size: 18px;
	margin-right: 3px;
	border-radius: 5px;
}

@media (min-width: 769px) {
	.item_box > div > div > div > input[type=text] {
		width: 50px;
		height: 48px;
	}
}
.prd_box3 > button, .item_box > div > div > button, .prd_box > button {
	font-weight: 600;
	height: 42px;
	border: 1px solid var(--dz-primary,#0A0A0A);
	border-radius: 5px;
}

@media (min-width: 769px) {
	.prd_box3 > button, .item_box > div > div > button, .prd_box > button {
		height: 48px;
	}
}

.item_box > div > div > div > input[type=text]:hover,
.prd_box > div > div > div > input[type=text]:hover {border: 1px solid var(--dz-primary,#0A0A0A);}

.item_box > div > div > div > input[type=button] {
	font-weight: 600; float: left; width: calc(70% - 47px); height: 42px;
	background-color: #fff; color: var(--dz-primary,#0A0A0A); border: 1px solid var(--dz-primary,#0A0A0A); border-radius: 5px;
}

@media (min-width: 769px) {
	.item_box > div > div > div > input[type=button] {
		height: 48px;
		width: calc(70% - 55px);
	}
}
.item_box > div > div > div > input[type=button]:hover {background-color: var(--dz-primary,#0A0A0A); color: #fff;}






.item_box > div > div > button:hover, .prd_box > div > div > button:hover {
	background-color: var(--dz-primary,#0A0A0A); color: #fff;
}

/* 모바일 스타일 */
@media all and (max-width: 450px) {
	.item_box, .prd_box {min-height: 370px;}
	.item_box > div > a > div > img, .prd_box > div > a > div > img {width: 90%;}
}

@media all and (min-width: 450px) and (max-width: 768px) {
	.item_box, .prd_box {/* min-height: 370px; */}
	.item_box > div > a > div > img, .prd_box > div > a > div > img {width: 195px;}
}

@media all and (max-width: 768px) {
	.item_box > div > a > img, .prd_box > div > a > img {
		position: absolute;
		width: 32%;
		max-width: 110px;
		margin-top: 8px;
		margin-left: 0px;
		left: 8px;
	}

	.item_box {
			width: 100%;
			min-height: 320px;
			position: relative;
			background-color: #fff;
			margin-top: 20px;
	}
	.prd_box {
			width: calc(50% - 2px);
			min-height: 420px;
			position: relative;
			background-color: #fff;
			margin-top: 20px;
	}
	.item_box > div, .prd_box > div {position: relative;}
	.item_box2_name, .item_box2_price, .prd_box2_name, .prd_box2_price {
			width: 94%;
			/* height: auto; */
			overflow: visible;
			font-size: 12px;
	}

	.nav_search_mid_right_div_view > div {font-size: 11px; width: calc(100% / 2);}
	.nav_search_mid_left, .nav_search_mid_right {width: 100%;}
	.nav_search_mid_right {margin-top: 0px;}
	.nav_search_mid_right_div_name, .middle_homepage_path {display: none;}
	.main_search_sidebox_div_checkbox_box h3 {font-size: 14px; padding-top: 3px;}
	.bigchk > label {width: 16px; height: 16px;}
	.main_search_sidebox_div_checkbox_box {margin: 5px 5%; vertical-align: top;}
	#searchForm .main_search_sidebox_div:nth-child(1) .main_search_sidebox_div_checkbox li {width: 100%;}

	.nav_search_mid_right_div_name {font-size: 20px;}
	.main_search_sidebox_div_name {padding: 0 15px; box-sizing: border-box;}
	.main_search_sidebox_div .main_search_sidebox_div_checkbox li {width: 50%; float: left;}
}

/* 데스크탑 스타일 */
@media all and (min-width: 768px) {
	.item_box > div > a > img, .prd_box > div > a > img {
		position: absolute;
		width: 32%;
		max-width: 120px;
		margin-top: 8px;
		/* margin-left: -11px; */
		left: 8px;
	}

	.item_box {width: 90%;padding-top: 10px;}
	.item_box > div > a > div > img {width: 90%;}

	.prd_box {min-height: 550px;}
	.prd_box > div > a > div > img {width: 85%;/* height: 300px; */}

	.nav_search_mid {max-width: 90%;}

	/* 기존 hover 애니메이션 제거 */
	#product_area .prd_box > div:hover {
		background-color: #fff;
		z-index: 3;
		box-sizing: border-box;
		transition: all 0.3s ease;
	}
	#product_area {padding-bottom: 50px;}
	.pg_wrap {padding: 50px 0 0;}

	.nav_search_mid_right_div_view > div {font-size: 14px; width: calc(100% / 3);}
	.nav_search_mid_left {width: 20%;}
	.nav_search_mid_right {width: 80%;}
	.nav_search_mid_right_div, #product_area {margin-left: 20px;}

	.main_nav_search_list_box1 {height: auto; overflow: hidden; float: left; margin-right: 20px;}
	.main_nav_search_list_box > div > a > img {
			position: absolute; width: 50px; margin-left: 15px; margin-top: -6px;
	}
	.main_nav_search_list_box > div > a > div > img {
			width: 100%; object-fit: contain; margin: 0px auto;
	}
	.main_nav_search_list_box2 {
			display: block; height: auto; overflow: hidden; float: left; color: var(--dz-primary,#0A0A0A);
	}
	.main_nav_search_list_box2_name {width: 100%; font-size: 20px; margin: 20px 0;}
	.main_nav_search_list_box2_price {width: 100%; font-size: 16px; margin-bottom: 20px;}
	.main_nav_search_list_box3 {
			height: 100px; overflow: hidden; float: right; margin-top: 10px;
			color: var(--dz-primary,#0A0A0A); text-align: right;
	}
	.main_nav_search_list_box3_qty {display: inline-block;}
	.main_nav_search_list_box3_qty > h1 {float: left; font-size: 20px; margin-top: 7px;}
	.main_nav_search_list_box3_qty > input[type=text] {
			border: 1px solid #dfdfdf; width: 60px; height: 34px; font-size: 18px;
			text-align: right; padding-right: 10px; border-radius: 5px;
	}
	.main_nav_search_list_box3_qty > input[type=text]:hover {border: 2px solid var(--dz-primary,#0A0A0A);}

	.main_nav_search_list_box3_submit {margin-left: 4px; display: inline-block;}
	.main_nav_search_list_box3_submit > input[type=button] {
			width: 160px; height: 40px; border: 1px solid var(--dz-primary,#0A0A0A); background-color: #fff;
			border-radius: 5px; color: var(--dz-primary,#0A0A0A);
	}
	.main_nav_search_list_box3_submit > input[type=button]:hover {
			background-color: var(--dz-primary,#0A0A0A); color: #fff;
	}
	.main_nav_search_list_box > div > div > button {
			font-weight: 600; width: 50%; height: 34.2px; background-color: #fff;
			color: var(--dz-primary,#0A0A0A); border: 1px solid var(--dz-primary,#0A0A0A); border-radius: 5px;
	}
	.main_nav_search_list_box > div > div > button:hover {
			background-color: var(--dz-primary,#0A0A0A); color: #fff;
	}
}

@media all and (min-width: 768px) and (max-width: 1400px) {
	.prd_box {width: calc(100% / 4);}
}
@media all and (min-width: 1400px) {
	.prd_box {width: calc(100% / 6);}
}

@media all and (min-width: 768px) and (max-width: 1200px) {
	.main_nav_search_list_box1 {width: 270px;}
	.main_nav_search_list_box2, .main_nav_search_list_box3 {width: calc(100% - 290px);}
}

@media all and (min-width: 1200px) {
	.main_nav_search_list_box1 {width: 300px;}
	.main_nav_search_list_box2, .main_nav_search_list_box3 {width: calc(100% - 320px);}
}

/* 레이아웃 */
#product_area {
	position: relative;
	display: flex;
	flex-wrap: wrap;
	width: 100%;
	margin: 0px auto;
	height: auto;
	padding: 1%;
	gap: 0;
}
.nav_search {width: 100%; height: auto; overflow: hidden;}
.nav_search_mid {position: block; margin: 0px auto;}
.nav_search_mid_mob_left_btn {display: none;}
.nav_search_mid_left {
	box-sizing: border-box; display: block; height: auto; float: right; margin-top: 50px;
}
.nav_search_mid_right {
	display: block; height: auto; overflow: hidden; background-color: #fff;
	float: right; margin-top: 50px;
}
.nav_search_mid_right_div {display: block; width: calc(100% - 20px); height: auto; overflow: hidden;}
.nav_search_mid_right_div_name {
	font-family: 'Montserrat-Regular'; font-size: 34px; margin-left: 10px;
	margin-bottom: 10px; color: var(--dz-primary,#0A0A0A);
}

.nav_search_mid_right_div_view {
	width: 100%; height: 70px; line-height: 70px; background-color: #f7f7f7;
	font-family: 'Lato-Regular'; text-align: center;
}
.nav_search_mid_right_div_view > div {
	vertical-align: middle; display: inline-block; float: left;
	font-weight: 600; color: #a0a2ab;
}
.nav_search_mid_right_div_view > div > select {
	border: 0; background-color: #fff; width: calc(100% - 30px); height: 40px;
	font-size: 14px; margin: 15px; color: #a0a2ab; font-family: 'Lato-Regular';
	padding: 0 10px;
}
.nav_search_mid_right_div_view > div > select:hover {border: 1px solid #a0a2ab;}
.nav_search_mid_right_div_view > div > img {
	opacity: 0.5; float: right; width: 30px; margin: 20px 10px;
}

.goods_detail_mid_right_specifications:hover {border-radius: 0px;}

/* 상품 이미지 오버레이 스펙 정보 */
.prd_box1 {
	position: relative;
	overflow: hidden;
}

.prd_box_overlay {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: linear-gradient(to bottom, rgba(0,0,0,0) 0%, rgba(0,0,0,0.1) 40%, rgba(10,10,10,0.98) 75%);
	opacity: 0;
	transition: opacity 0.4s ease;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	padding: 20px;
	color: white;
	pointer-events: none;
	border-radius: 10px;
}

.prd_box1:hover .prd_box_overlay {
	opacity: 1;
}

.prd_overlay_title {
	font-size: 14px;
	font-weight: 700;
	margin-bottom: 12px;
	text-align: center;
	color: #fff;
	text-transform: uppercase;
	letter-spacing: 1px;
	border-bottom: 2px solid rgba(255,255,255,0.3);
	padding-bottom: 8px;
}

.prd_overlay_info {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 8px 12px;
	font-size: 12px;
	line-height: 1.6;
}

.prd_overlay_item {
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.prd_overlay_label {
	font-weight: 600;
	color: rgba(255,255,255,0.85);
	font-size: 11px;
}

.prd_overlay_value {
	font-weight: 700;
	color: #fff;
	text-align: right;
	font-size: 12px;
}

/* 모바일에서는 스펙 오버레이 숨김 */
@media all and (max-width: 768px) {
	.prd_box_overlay {
		display: none;
	}
}

/* 버튼 스타일 - 모던 컴팩트 UI */
.btn_cart {
	flex: 0 0 auto;
	width: 42px;
	height: 42px;
	background: var(--dz-primary,#0A0A0A);
	color: #fff;
	border: none;
	border-radius: 8px;
	font-size: 1.3em;
	font-weight: 600;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: all 0.25s ease;
	cursor: pointer;
}

@media (min-width: 769px) {
	.btn_cart {
		width: 48px;
		height: 48px;
		font-size: 1.4em;
	}
}

.btn_cart:hover {
	background: var(--dz-primary,#0A0A0A);
	transform: scale(1.05);
	box-shadow: 0 3px 10px rgba(10,10,10, 0.25);
}

.btn_qna {
	flex: 1;
	max-width: 120px;
	height: 42px;
	border-radius: 8px;
	font-size: 13px;
	font-weight: 600;
	background: var(--dz-primary,#0A0A0A);
	color: #fff;
	border: none;
	transition: all 0.25s ease;
	cursor: pointer;
}

@media (min-width: 769px) {
	.btn_qna {
		height: 48px;
		font-size: 14px;
	}
}

.btn_qna:hover {
	background: var(--dz-primary,#0A0A0A);
	transform: scale(1.02);
	box-shadow: 0 3px 10px rgba(10,10,10, 0.25);
}

.btn_fav {
	flex: 0 0 auto;
	width: 42px;
	height: 42px;
	background: #fff;
	color: #e74c3c;
	border: 2px solid #ffebee;
	border-radius: 8px;
	font-size: 1.2em;
	font-weight: 600;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: all 0.25s ease;
	cursor: pointer;
}

@media (min-width: 769px) {
	.btn_fav {
		width: 48px;
		height: 48px;
		font-size: 1.3em;
	}
}

.btn_fav:hover {
	background: #ffebee;
	color: #e74c3c;
	border-color: #e74c3c;
	transform: scale(1.05);
}

/* 수량 입력 필드 */
.prd_box3 > input[type=text] {
	flex: 0 0 auto;
	width: 42px;
	height: 42px;
	border: 2px solid #e5e7eb;
	border-radius: 8px;
	text-align: center;
	font-size: 15px;
	font-weight: 600;
	color: var(--dz-primary,#0A0A0A);
	transition: all 0.25s ease;
	margin: 0;
}

@media (min-width: 769px) {
	.prd_box3 > input[type=text] {
		width: 50px;
		height: 48px;
		font-size: 16px;
	}
}

.prd_box3 > input[type=text]:focus {
	border-color: var(--dz-primary,#0A0A0A);
	outline: none;
	box-shadow: 0 0 0 3px rgba(10,10,10, 0.08);
}

.prd_box3 > input[type=text]:hover {
	border-color: #cbd5e1;
}

/* 품절 아이콘 */
.prd_box3 > img {
	height: 30px;
	margin: 0 auto;
}

/* 애니메이션 */
@-webkit-keyframes movingPara {
	100% {
			height: auto; background-color: #fff;
			-moz-box-shadow: 0 0 300px 10px #e5e5e5;
			-webkit-box-shadow: 0 0 300px 10px #e5e5e5;
			box-shadow: 0 0 300px 10px #e5e5e5;
			-ms-filter: "progid:DXImageTransform.Microsoft.Shadow(Strength=4, Direction=135, Color='#e5e5e5')";
			filter: progid:DXImageTransform.Microsoft.Shadow(Strength=4, Direction=135, Color='#e5e5e5');
	}
}

/* 검색 박스 */
.main_nav_search_list_box {
	position: relative; width: calc(100% - 20px); overflow: hidden;
	float: left; margin: 10px; padding-bottom: 30px;
}
.main_nav_search_list_box > div {position: relative;}
.main_nav_search_list_box > div:hover {z-index: 3; box-sizing: border-box;}

.main_search_sidebox_div {
	width: 100%; height: auto; margin-bottom: 30px; overflow: hidden;
	font-family: 'Montserrat-Regular';
}
.main_search_sidebox_div_name {width: 100%; height: 30px; line-height: 30px; color: var(--dz-primary,#0A0A0A);}
.main_search_sidebox_div_name > h1 {
	font-size: 17px; margin-left: 10px; font-weight: 600; font-family: 'Montserrat-Regular';
}
.main_search_sidebox_div_checkbox {width: 100%; height: auto; overflow: hidden;}
.main_search_sidebox_div_checkbox_box {width: 90%; height: auto; overflow: hidden; margin: 5%;}
.main_search_sidebox_div_checkbox_box > h1 {
	font-family: 'Montserrat-Regular'; color: #a0a2ab; font-size: 14px;
	line-height: 23px; margin: 0 0 0 30px;
}
.main_search_sidebox_div_checkbox_box > input[type=text] {
	width: calc(100% - 20px); padding: 10px; float: left; border: 0; background-color: #f7f7f7;
}
.main_search_sidebox_div_end {width: 20%; font-size: 12px; float: right;}
.main_search_sidebox_div_checkbox_box > input[type=checkbox] {
	display: none; float: left; width: 20px; height: 20px; background-color: #fff;
}

#btn_search:hover {cursor: pointer;}
.main_search_sidebox_menu a {cursor: pointer;}
.main_search_sidebox_hide {display: visible;}

.bigchk > input[type=checkbox] {
	display: none; float: left; width: 20px; height: 20px; background-color: #fff;
}
.bigchk > input[type="checkbox"]:checked + label {background-color: #666666;}
.bigchk > label {
	display: inline-block; float: left; width: 20px; height: 20px;
	border: 2px solid #bcbcbc; cursor: pointer;
}

/* 페이지네이션 */
.pg_wrap {
	width: 100%;
	/* margin: 0px auto; */
	text-align: center;
	margin-bottom: 130px;
	font-family: 'Lato-Regular';
}
.pg_page, .pg_current {
	width: 30px; height: 30px; line-height: 30px; display: inline-block;
	margin: 0px 2px; color: #545454; letter-spacing: 0; vertical-align: middle;
}
.pg a:focus, .pg a:hover {text-decoration: none; cursor: pointer;}
.pg_page {background: #fff; text-decoration: none;}
.pg_current {
	display: inline-block; background: #213652; color: #fff;
	font-weight: normal; border-radius: 18px;
}

.item_dtl_mark {width: 120px; margin-left: 0px;}

/* 장바구니 알림 */
.cart_alert_box {
	display: none; position: absolute; width: 100%; height: 1025px;
	top: 0; left: 0; z-index: 100000; background-color: #fff;
}
.cart_alert_box .next-overlay-backdrop {
	position: fixed; z-index: 1001; top: 0; left: 0; width: 100%; height: 100%;
	background: #000; transition: opacity .3s; opacity: .6;
}
.next-dialog {
	position: fixed; z-index: 1001; background: #fff; border: 1px solid #d8d8d8;
	border-radius: 8px; box-shadow: 0 2px 14px 0 rgb(220 136 136 / 20%);
	text-align: left; padding: 10px; left: 50%; top: 50%; transform: translate(-50%, -50%);
}

@media all and (max-width: 768px) {
	.next-dialog {width: 320px;}
}
@media all and (min-width: 768px) {
	.next-dialog {width: 550px;}
}

.cart_sec1 {width: 100%; float: left; margin-bottom: 10px;}
.cart_sec2 {width: 100%; float: left; text-align: center;}
.cart_item_img {float: left; width: 60px; height: 60px; margin-right: 5px;}
.cart_item_img img {width: 100%; height: 100%;}
.cart_item_name {float: left;}
.cart_item_name h4 {margin: 6px;}
.top_x {float: right;}

/* 카테고리 헤더 배너 */
.category_header_banner {
	background-size: cover !important;
	background-position: center !important;
	background-repeat: no-repeat !important;
	position: relative;
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	margin-top: 30px;
	margin-bottom: 30px;
	border-radius: 16px;
	overflow: hidden;
	box-shadow: 0 4px 16px rgba(0, 0, 0, 0.15);
}

.category_header_banner h1 {
	position: relative;
	z-index: 1;
	color: #fff;
	font-weight: 700;
	text-align: center;
	text-shadow: 0 4px 12px rgba(0, 0, 0, 0.5);
	letter-spacing: 2px;
	margin: 0;
}

/* 반응형 - 모바일 */
@media all and (max-width: 700px) {
	.category_header_banner {
		height: 150px;
		border-radius: 12px;
		margin-bottom: 20px;
	}

	.category_header_banner h1 {
		font-size: 32px;
		letter-spacing: 1px;
		padding: 0 20px;
	}
}

/* 반응형 - 데스크톱 */
@media all and (min-width: 700px) {
	.category_header_banner {
		height: 200px;
	}

	.category_header_banner h1 {
		font-size: 48px;
	}
}

/* 카테고리 - 미니멀 언더라인 스타일 (Amazon/Nike) */
@media all and (max-width: 700px) {
	.prd_container {position: relative; margin-top: 40px; text-align: center;}
	.prd_container .prd_container_title {position: relative; width: 100%; display: inline-block;}
	.cate_set:not(.presale_cate) {
		width: 100%;
		margin: 25px 0;
		padding: 0;
		list-style: none;
		display: flex;
		flex-wrap: wrap;
		gap: 6px;
		background: transparent;
		border-bottom: 2px solid #e5e7eb;
	}
	.cate_set:not(.presale_cate) li {
		flex: 1 1 calc(50% - 3px);
		min-width: calc(50% - 3px);
		margin: 0;
	}
	.cate_set:not(.presale_cate) li a {
		font-size: 14px;
		padding: 14px 10px;
		display: block;
		text-align: center;
		background: transparent;
		color: #6b7280;
		font-weight: 600;
		transition: all 0.2s ease;
		position: relative;
		letter-spacing: 0.3px;
	}

	/* 언더바 - 동일한 위치 */
	.cate_set:not(.presale_cate) li a::after {
		content: '';
		position: absolute;
		bottom: -2px;
		left: 0;
		width: 0;
		height: 3px;
		background: var(--dz-primary,#0A0A0A);
		transition: width 0.3s ease;
	}

	.cate_set:not(.presale_cate) li a:hover {
		color: var(--dz-primary,#0A0A0A);
		background: rgba(10,10,10, 0.03);
	}

	.cate_set:not(.presale_cate) li a:hover::after {
		width: 100%;
	}

	.cate_set:not(.presale_cate) li.on a {
		color: var(--dz-primary,#0A0A0A);
		font-weight: 700;
	}

	.cate_set:not(.presale_cate) li.on a::after {
		width: 100%;
	}
	.filter_set {
		width: 88%;
		border-top: 1px solid #ececec;
		border-bottom: 1px solid #ececec;
		margin-top: 5px;
		padding: 0 1px;
		display: inline-block;
	}
	.filter_set li a {
		font-size: 12px;
		padding: 10px 0px 10px 6px;
		display: block;
		text-align: center;
	}
	.filter_set li a:hover:before, .filter_set li.on a:before {
		content: '☞ ';
		font-weight: 900;
		color: red;
	}
}

@media all and (min-width: 700px) {
	.prd_container {
		width: 90%;
		margin: 0px auto;
		text-align: center;
	}
	.prd_container .prd_container_title {
		position: relative;
		width: 100%;
		display: inline-block;
	}
	.cate_set:not(.presale_cate) {
		width: 100%;
		margin: 30px 0 0 0;
		padding: 0;
		list-style: none;
		display: flex;
		justify-content: center;
		gap: 0;
		background: transparent;
		border-bottom: 2px solid #e5e7eb;
		box-sizing: border-box;
	}
	.cate_set:not(.presale_cate) li {
		flex: 0 0 auto;
		margin: 0;
		position: relative;
	}
	.cate_set:not(.presale_cate) li a {
		display: inline-block;
		padding: 18px 32px;
		text-align: center;
		background: transparent;
		color: #6b7280;
		font-size: 15px;
		font-weight: 600;
		transition: all 0.25s ease;
		position: relative;
		letter-spacing: 0.5px;
		text-transform: uppercase;
		white-space: nowrap;
	}

	/* 언더바 효과 - 모든 상태에서 같은 위치 */
	.cate_set:not(.presale_cate) li a::after {
		content: '';
		position: absolute;
		bottom: -2px;
		left: 0;
		width: 0;
		height: 3px;
		background: linear-gradient(90deg, var(--dz-primary,#0A0A0A) 0%, var(--dz-primary,#0A0A0A) 100%);
		transition: width 0.3s cubic-bezier(0.4, 0, 0.2, 1);
	}

	.cate_set:not(.presale_cate) li a:hover {
		color: var(--dz-primary,#0A0A0A);
		background: rgba(10,10,10, 0.04);
	}

	.cate_set:not(.presale_cate) li a:hover::after {
		width: 100%;
	}

	/* 활성 상태 */
	.cate_set:not(.presale_cate) li.on a {
		color: var(--dz-primary,#0A0A0A);
		font-weight: 700;
	}

	.cate_set:not(.presale_cate) li.on a::after {
		width: 100%;
		background: var(--dz-primary,#0A0A0A);
	}

	/* 활성 상태 추가 인디케이터 */
	.cate_set:not(.presale_cate) li.on a::before {
		content: '';
		position: absolute;
		top: 50%;
		left: 10px;
		transform: translateY(-50%);
		width: 4px;
		height: 4px;
		background: var(--dz-primary,#0A0A0A);
		border-radius: 50%;
	}

	.filter_set {
		width: 100%;
		border-top: 1px solid #ececec;
		border-bottom: 1px solid #ececec;
		margin-top: 5px;
		padding: 0 1px;
		display: inline-block;
	}
	.filter_set li a {
		padding: 10px 10px;
		display: block;
		text-align: center;
	}
	.filter_set li a:hover:before, .filter_set li.on a:before {
		content: '☞ ';
		font-weight: 900;
		color: red;
	}
}

@media all and (min-width: 1024px) {
	.prd_container {width: 95%;text-align: center;margin: 0px auto;}
}



@media all and (min-width:0px) and (max-width:700px) {
	.main_title{
		/*width:900px;height:100px;background:url('/img/todayex_title_pc.jpg') no-repeat;*/
		width:331px;
		height:240px;
		background-image: url('/img/todayex_title_m.jpg');
		background-position: center;
		background-repeat : no-repeat;
		background-size : contain;
		margin:0px auto;
	}

	.nav_today_mid {position:relative; margin-top:40px; }
	.nav_today_mid .nav_today_mid_title {position:relative; width:100%; display:inline-block}

	.cate_set:not(.presale_cate) {width:98%; margin-top:25px; margin:0px auto; padding:0 1px; vertical-align:top;}
	.cate_set:not(.presale_cate) li {float:left; width:25%;margin-right: -2px;}
	.cate_set:not(.presale_cate) li a {font-size:12px;border:1px solid #ececec; width:99%; padding:14px 0px; display:block;text-align:center;}
	.cate_set:not(.presale_cate) li a:hover, .cate_set:not(.presale_cate) li.on a {background:var(--dz-primary,#0A0A0A);border:1px solid var(--dz-primary,#0A0A0A);color:#fff}

	.filter_set {width:100%; border-top:1px solid #ececec; border-bottom:1px solid #ececec; margin-top:5px; padding:0 1px; display:inline-block;}
	/*.filter_set li {float:left; }*/
	.filter_set li a {font-size:12px;padding:10px 0px 10px 6px; display:block;text-align:center;}
	.filter_set li a:hover:before, .filter_set li.on a:before {content:'☞ ';font-weight:900;color:red;}
}

@media all and (min-width:700px) {
	.main_title {
		width:100%;
		height:240px;
		background-position: center;
		background-repeat : no-repeat;
		background-size : contain;
		margin:0px auto;
	}
	.main_title.TD {background-image: url('/img/todayex_title_pc.jpg'); }
	.main_title.GL {background-image: url('/img/gl_title_pc.png'); }
	.main_title.SL {background-image: url('/img/sl_title_pc.png'); }
	.main_title.OM {background-image: url('/img/om_title_pc.png'); }
	.main_title.SU {background-image: url('/img/om_title_pc.png'); }

	.nav_today_mid {position:relative; margin-top:40px; }
	.nav_today_mid .nav_today_mid_title {position:relative; width:100%; display:inline-block}

	.cate_set:not(.presale_cate) {width:100%; margin-top:25px; padding:0 1px; display:inline-block;}
	.cate_set:not(.presale_cate) li {float:left; width:20%;margin-right: -2px;}
	.cate_set:not(.presale_cate) li a {border:1px solid #ececec; width:99%; padding:14px 0px; display:block;text-align:center;}
	.cate_set:not(.presale_cate) li a:hover, .cate_set:not(.presale_cate) li.on a {background:var(--dz-primary,#0A0A0A);border:1px solid var(--dz-primary,#0A0A0A);color:#fff}

	.filter_set {width:100%; border-top:1px solid #ececec; border-bottom:1px solid #ececec; margin-top:5px; padding:0 1px; display:inline-block;}
	/*.filter_set li {float:left; }*/
	.filter_set li a {padding:10px 10px; display:block;text-align:center;}
	.filter_set li a:hover:before, .filter_set li.on a:before {content:'☞ ';font-weight:900;color:red;}
}

/*@media all and (min-width:0px) and (max-width:1024px) {*/
/*	.nav_today_mid {*/
/*		position: block;*/
/*		margin: 0px auto;*/
/*		width: 98%;*/
/*		padding-top: 10px;*/
/*	}*/
/*}*/
@media all and (min-width:1024px) {
	.nav_today_mid {
		margin: 0px auto;
		width: 90%;
	}
}


/* =====================================================================
   상품목록 공통 카드 — #product_area .prd_box
   카테고리(ajax_product_list.php) · 예약주문(main_nav_presale.php) · 딜(main_nav_deal.php) 공통
   - 고정 높이(550/420/370px) 해제 → 내용만큼만 차지
   - 태그 → 상품명 → 부제목 → 가격 → 부가정보 → 하단(버튼/상태) 순서
   ===================================================================== */
#product_area .prd_box {
	min-height: 0;
}
#product_area .prd_box > div {
	position: relative;
	height: 100%;
	border-radius: 12px;
	box-shadow: 0 0 0 1px transparent;
	transition: box-shadow 0.25s ease, transform 0.25s ease;
}
/* 이벤트·품절 마크가 이미지 위로 오도록 */
#product_area .prd_box > div > a > img {
	z-index: 3;
}

/* 이미지 */
#product_area .prd_box .prd_box1 {
	display: block;
	position: relative;
	overflow: hidden;
	border-radius: 12px 12px 0 0;
}
#product_area .prd_box .prd_box_img {
	display: block;
	width: 74%;
	aspect-ratio: 1 / 1;
	object-fit: contain;
	margin: 22px auto 10px;
	transition: transform 0.35s ease;
}

/* 텍스트 묶음 */
#product_area .prd_box .prd_box2 {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 6px;
	width: 100%;
	padding: 0 14px 16px;
	box-sizing: border-box;
}
#product_area .prd_box .prd_box2_name {
	width: 100%;
	padding: 0;
	margin: 0;
	min-height: 2.9em;
	max-height: 2.9em;
	font-size: 14px;
	line-height: 1.45;
	-webkit-line-clamp: 2;
	overflow: hidden;
	color: #222;
	transition: color 0.2s ease;
}
#product_area .prd_box .prd_box2_price {
	width: 100%;
	height: auto;
	margin: 0;
	gap: 2px;
}
#product_area .prd_box .prd_box2_price h3 {
	margin: 0;
	font-size: 18px;
	line-height: 1.3;
}

/* 상품명 위 태그 (딜 제목 · 무료배송 · 위탁판매) */
.prd_tags {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 4px;
}
.prd_tag {
	display: inline-block;
	padding: 3px 8px;
	border-radius: 4px;
	background: #eef2f8;
	color: var(--dz-primary,#0A0A0A);
	font-size: 11.5px;
	font-weight: 700;
	line-height: 1.4;
	word-break: keep-all;
}
.prd_tag.is_red {
	background: #fdecec;
	color: #d32f2f;
}

/* 부제목 · 판매단위 안내 */
.prd_sub_title,
.prd_unit_notice {
	font-size: 12px;
	font-weight: 600;
	line-height: 1.4;
	color: #e53935;
	word-break: keep-all;
}

/* 딜 가격 (정가 취소선 + 할인가) */
#product_area .prd_box .prd_box2_price .prd_price_old {
	font-size: 13px;
	font-weight: 400;
	color: #9ca3af;
	text-decoration: line-through;
}
#product_area .prd_box .prd_box2_price .prd_price_sale {
	color: #e53935;
}
#product_area .prd_box .prd_box2_price .prd_price_note {
	font-size: 12px;
	font-weight: 700;
	color: #e53935;
}

/* 가격 아래 부가정보 (할인율 · g당 가격 · 관리자 정보) */
.prd_meta {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 0 8px;
	width: 100%;
	font-size: 12px;
	line-height: 1.5;
	color: #6b7280;
	text-align: center;
}
.prd_meta:empty {
	display: none;
}
.prd_meta .prd_sale {
	color: #e53935;
	font-weight: 700;
}
.prd_meta .prd_admin {
	width: 100%;
	font-size: 11px;
	color: #9ca3af;
}

/* 하단 영역 (수량·장바구니·찜 / 품절 / 문의하기 / 입고예정일 · 남은시간) */
#product_area .prd_box .prd_box3 {
	box-sizing: border-box;
	width: 100%;
	margin: auto 0 0;
	padding: 0 14px 16px;
	min-height: 0;
	gap: 6px;
	flex-wrap: wrap;
	border-top: 0;
	background: transparent;
}
#product_area .prd_box .prd_foot .btn_qna {
	flex: 1 1 100%;
	box-sizing: border-box;
	width: 100%;
	max-width: none;
	height: 40px;
	margin: 0;
	border-radius: 6px;
	font-size: 13.5px;
}
#product_area .prd_box .prd_foot .btn_qna:hover {
	transform: none;
}
.prd_status {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	width: 100%;
	padding: 9px 10px;
	border-radius: 6px;
	background: #f3f6fa;
	line-height: 1.3;
	box-sizing: border-box;
}
.prd_status span {
	font-size: 12px;
	font-weight: 600;
	color: #6b7280;
}
.prd_status strong,
.prd_status .nav_deal_mid_time {
	font-family: inherit;
	font-size: 14px;
	font-weight: 800;
	color: var(--dz-primary,#0A0A0A);
}

/* hover : 카드 전체에 얇은 남색 테두리 + 은은한 그림자 */
#product_area .prd_box > div > a:hover {
	color: inherit;
}
@media (hover: hover) and (min-width: 769px) {
	#product_area .prd_box > div:hover {
		background-color: #fff;
		box-shadow: 0 0 0 1px var(--dz-primary,#0A0A0A), 0 12px 28px rgba(10,10,10, 0.10);
		transform: translateY(-2px);
	}
	#product_area .prd_box:hover .prd_box_img {
		transform: scale(1.04);
	}
	#product_area .prd_box:hover .prd_box2_name {
		color: var(--dz-primary,#0A0A0A);
	}
}

@media all and (max-width: 768px) {
	#product_area .prd_box {
		margin-top: 6px;
		margin-bottom: 6px;
	}
	#product_area .prd_box .prd_box_img {
		width: 82%;
		margin: 16px auto 8px;
	}
	#product_area .prd_box .prd_box2 {
		padding: 0 8px 12px;
		gap: 5px;
	}
	#product_area .prd_box .prd_box2_name {
		font-size: 13px;
	}
	#product_area .prd_box .prd_box2_price h3 {
		font-size: 16px;
	}
	#product_area .prd_box .prd_box3 {
		padding: 0 8px 12px;
	}
	.prd_status {
		flex-direction: column;
		gap: 2px;
		padding: 7px 6px;
	}
}


/* =====================================================================
   목록 상단 배너 · 안내문 — 예약주문 / 딜 페이지
   ===================================================================== */
.list_banner {
	justify-content: flex-start;
	background-position: center right !important;
}
.list_banner::before {
	content: '';
	position: absolute;
	top: 0; right: 0; bottom: 0; left: 0;
	background: linear-gradient(90deg, rgba(8, 22, 48, 0.78) 0%, rgba(8, 22, 48, 0.45) 38%, rgba(8, 22, 48, 0) 68%);
}
.list_banner_text {
	position: relative;
	z-index: 1;
	text-align: left;
	color: #fff;
}
.list_banner_label {
	display: inline-block;
	margin-bottom: 6px;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.32em;
	color: rgba(255, 255, 255, 0.75);
}
.category_header_banner.list_banner h1 {
	text-align: left;
	padding: 0;
}
.list_banner_text p {
	margin: 10px 0 0;
	font-size: 15px;
	color: rgba(255, 255, 255, 0.85);
	word-break: keep-all;
}
#product_area.list_area {
	margin-top: 30px;
}
.list_area .nav_deal_mid_text {
	width: 100%;
	height: auto;
}

/* 예약주문 안내문 */
.presale_notice {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	margin: 0;
	text-align: left;
	background: #fff;
	border-top: 2px solid var(--dz-primary,#0A0A0A);
	border-bottom: 1px solid #e5e7eb;
}
.presale_notice_item {
	padding: 22px 26px;
}
.presale_notice_item + .presale_notice_item {
	border-left: 1px solid #e5e7eb;
}
.presale_notice_item h3 {
	margin: 0 0 8px;
	font-size: 15px;
	font-weight: 700;
	color: var(--dz-primary,#0A0A0A);
}
.presale_notice_item p {
	margin: 0;
	font-size: 13.5px;
	line-height: 1.75;
	color: #4b5563;
	word-break: keep-all;
}
.presale_notice_item b {
	color: var(--dz-primary,#0A0A0A);
}

/* 커밍순 마크 (main_nav_deal.css .itemmark 덮어쓰기) */
#product_area .prd_box .itemmark {
	position: absolute;
	top: 0;
	left: 50%;
	width: 85%;
	height: auto;
	transform: translateX(-50%);
	z-index: 2;
	pointer-events: none;
}
#product_area .prd_box .itemmark img {
	width: 100%;
	height: auto;
}

@media all and (max-width: 768px) {
	.presale_notice {
		grid-template-columns: 1fr;
	}
	.presale_notice_item {
		padding: 16px 6px;
	}
	.presale_notice_item + .presale_notice_item {
		border-left: 0;
		border-top: 1px solid #e5e7eb;
	}
	.list_banner_text {
		padding: 0 22px;
	}
	.category_header_banner.list_banner h1 {
		font-size: 30px;
	}
	.list_banner_text p {
		font-size: 13px;
	}
	.list_banner {
		background-position: 70% center !important;
	}
}
@media all and (min-width: 769px) {
	.list_banner_text {
		padding-left: 56px;
	}
}

/* =====================================================================
   위탁판매 목록 — /product/main_consignment.php (+ ajax_p2p_list.php)
   ===================================================================== */
/* 배너 안 '위탁판매 가이드' 링크 */
.consign_container .list_banner {
	margin-top: 30px;
}
.category_header_banner.list_banner .list_banner_link {
	display: inline-block;
	margin-top: 14px;
	padding: 8px 16px;
	border: 1px solid rgba(255, 255, 255, 0.6);
	border-radius: 4px;
	color: #fff;
	font-size: 13px;
	font-weight: 700;
	text-decoration: none;
	transition: background-color .15s ease, color .15s ease;
}
.category_header_banner.list_banner .list_banner_link:hover {
	background: #fff;
	color: var(--dz-primary,#0A0A0A);
}

/* 섹션 구분 (프리미엄 노출 상품 / 위탁상품 목록) */
.consign_container .line_break {
	width: 100%;
	margin: 36px 0 0;
	clear: both;
}
.consign_container .line_break_content {
	display: flex;
	align-items: center;
	gap: 16px;
}
.consign_container .line_break_line {
	flex: 1;
	height: 1px;
	background: #e5e7eb;
}
.consign_container .line_break_text {
	color: var(--dz-primary,#0A0A0A);
	font-size: 15px;
	font-weight: 800;
	letter-spacing: 0.02em;
	white-space: nowrap;
}

@media all and (max-width: 768px) {
	.list_banner_link {
		margin-top: 10px;
		padding: 6px 12px;
		font-size: 12px;
	}
	.consign_container .line_break {
		margin-top: 24px;
	}
}


/* =====================================================================
   마이페이지 찜 목록 — mypage/favorite_list.php
   - .profile_right(가변 폭) 안에서 열 수를 컨테이너 폭 기준으로 자동 결정
     (기존: 화면 폭 기준 4/6열 + 1400px 이상 !important 4열 → 좁은 칸에 4열이 끼던 문제)
   - 카드 마크업·버튼은 상품목록 공통 카드(#product_area .prd_box)와 동일
   ===================================================================== */
.fav_screen {
	box-sizing: border-box;
	width: 100%;
	padding: 0 0 60px;
}
.fav_head {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 12px;
	margin-bottom: 20px;
	padding: 4px 0 14px;
	border-bottom: 2px solid var(--dz-primary,#0A0A0A);
}
.fav_title {
	margin: 0;
	font-size: 22px;
	font-weight: 800;
	letter-spacing: -0.02em;
	color: var(--dz-primary,#0A0A0A);
}
.fav_count {
	font-size: 13px;
	font-weight: 600;
	color: #6b7280;
	white-space: nowrap;
}
.fav_count strong {
	color: var(--dz-primary,#0A0A0A);
	font-weight: 800;
}

.fav_screen #product_area.fav_list {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
	gap: 16px;
	box-sizing: border-box;
	width: 100%;
	margin: 0;
	padding: 0;
}
.fav_screen #product_area .prd_box {
	width: auto;
	min-width: 0;
	margin: 0;
}
.fav_screen #product_area .prd_box > div {
	display: flex;
	flex-direction: column;
	height: 100%;
	border: 1px solid #eef0f4;
	background: #fff;
}
.fav_screen #product_area .prd_box > div > a {
	flex: 1 1 auto;
}

/* 하단 : 수량 · 장바구니 · 찜 제외 / 문의하기 · 품절 + 찜 제외를 한 줄로 */
.fav_screen #product_area .prd_foot {
	flex-wrap: nowrap;
	justify-content: center;
	min-height: 0;
}
.fav_screen #product_area .prd_foot .btn_qna,
.fav_screen #product_area .prd_foot .soldout_badge {
	flex: 1 1 auto;
	min-width: 0;
	width: auto;
	max-width: none;
	height: 48px;
	margin: 0;
	border-radius: 8px;
	box-shadow: none;
	transform: none;
}
.fav_screen #product_area .prd_foot .soldout_badge {
	box-sizing: border-box;
	padding: 0 10px;
	background: #f3f4f6;
	color: #6b7280;
	font-size: 14px;
}

/* 찜한 상품이 없을 때 */
.fav_empty {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 6px;
	padding: 72px 20px;
	border: 1px dashed #d6dbe3;
	border-radius: 12px;
	text-align: center;
	color: #6b7280;
	font-size: 14px;
	word-break: keep-all;
}
.fav_empty strong {
	font-size: 17px;
	font-weight: 800;
	color: var(--dz-primary,#0A0A0A);
}
.fav_empty a {
	display: inline-block;
	margin-top: 14px;
	padding: 12px 26px;
	border-radius: 6px;
	background: var(--dz-primary,#0A0A0A);
	color: #fff;
	font-weight: 700;
	text-decoration: none;
}
.fav_empty a:hover {
	background: var(--dz-primary,#0A0A0A);
	color: #fff;
}

@media all and (max-width: 768px) {
	.fav_screen {
		padding: 0 12px 40px;
	}
	.fav_title {
		font-size: 19px;
	}
	.fav_head {
		margin-bottom: 14px;
	}
	.fav_screen #product_area.fav_list {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 10px;
	}
	.fav_screen #product_area .prd_foot {
		gap: 5px;
	}
	.fav_screen #product_area .prd_foot .btn_qna,
	.fav_screen #product_area .prd_foot .soldout_badge {
		height: 42px;
		font-size: 12.5px;
	}
}
