/*
 * Site-wide overrides moved from inc/head.asp for browser caching and maintainability.
 * Keep this file loaded after custom.css to preserve the existing cascade order.
 */

/* PC 메인 대메뉴 가독성 보정 */
@media (min-width: 992px) {
	.primary-menu.style-ecommerce > .menu-container > .menu-item > .menu-link > div {
		font-size: 17px;
		font-weight: 700;
	}
}

    .btn{border-radius: 4px;}
	/* 타이틀 하단 서브 텍스트(span) 색상을 더 진하게 변경*/
	.heading-block span {
		color: #222 !important;
	}
	/* 타임세일 카운트다운 배지형 버튼 스타일 */
	.timedeal-countdown-wrap {
		display: inline-flex;
		align-items: center;
		justify-content: center; /* 가로 가운데 정렬 (width:100% 사용 시 필수) */
		gap: 6px;
		border: 2px solid #dc3545;
		border-radius: 15px;
		padding: 8px 14px;
		margin: 10px 0;
		color: #dc3545;
		font-size: 1.5rem;
		font-weight: 700;
		letter-spacing: 1px;
		background-color: #fff8f8;
		/* width: 100%; */
		box-sizing: border-box; /* width:100%가 border 포함해 계산되도록 */  
	}
	.timedeal-countdown-wrap i {
		font-size: 1.4rem;
	}
	/* 메인 기획 상품 섹션 제목 */
	.showcase-heading {
		margin-bottom: 32px !important;
	}
	.showcase-heading h3 {
		margin: 0 0 8px;
		color: #1d2633;
		font-size: 28px;
		font-weight: 800;
		letter-spacing: -1px;
	}
	.showcase-heading p {
		margin: 0;
		color: #75808f;
		font-size: 15px;
		line-height: 1.6;
	}
	.showcase-heading::after {
		content: "";
		display: block;
		width: 32px;
		height: 3px;
		margin: 16px auto 0;
		background: #ffd83d;
		border-radius: 10px;
	}
	/* 메인 상품 이미지가 로드되기 전에도 카드 영역을 미리 확보해 레이아웃 이동을 방지 */
	.main-showcase-carousel .product-image {
		aspect-ratio: 1 / 1;
		overflow: hidden;
	}
	@media (max-width: 575.98px) {
		.showcase-heading { margin-bottom: 24px !important; }
		.showcase-heading h3 { font-size: 24px; }
		.showcase-heading p { font-size: 14px; }
	}
	/* 기획 상품 이미지가 원본 비율과 관계없이 영역 중앙에 오도록 정렬 */
	@media (min-width: 992px) {
		#oc-products .product-image {
			display: flex;
			align-items: center;
			justify-content: center;
			height: 310px;
			background-color: #fff;
		}
		#oc-products .product-image > a {
			display: flex;
			align-items: center;
			justify-content: center;
			width: 100%;
			height: 100%;
		}
		#oc-products .product-image img {
			width: auto;
			height: auto;
			max-width: 100%;
			max-height: 100%;
			object-fit: contain;
		}
	}
	/* 메인 배너의 블루/옐로 분위기를 잇는 타임세일 프로모션 영역 */
	.timedeal-section {
		position: relative;
		isolation: isolate;
		overflow: hidden;
		padding: 46px 0 52px !important;
		background:
			url("/assets/images/timedeal-pattern.svg") center / cover no-repeat,
			linear-gradient(135deg, #edf8ff 0%, #d8efff 48%, #c9e8ff 100%) !important;
		border-top: 1px solid #d4ebff;
		border-bottom: 1px solid #b9dcfb;
	}
	.timedeal-section .timedeal-intro {
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: flex-start;
		padding: 28px 24px !important;
		color: #fff;
		background: linear-gradient(145deg, #4895f5 0%, #175bc8 100%);
		border-radius: 22px;
		box-shadow: 0 8px 20px rgba(30, 91, 176, .12);
	}
	.timedeal-section .timedeal-intro h2 {
		color: #fff !important;
		font-size: 32px;
		font-weight: 800;
		letter-spacing: -1.5px;
	}
	.timedeal-section .timedeal-intro h5 {
		color: #fff !important;
		margin: 10px 0 22px;
		font-weight: 600;
		line-height: 1.55;
	}
	.timedeal-section .timedeal-intro h4 {
		color: #ddecff !important;
	}
	.timedeal-section .timedeal-countdown-wrap {
		width: auto;
		min-width: 260px;
		margin: 15px 0 0;
		padding: 12px 18px;
		gap: 8px;
		color: #163f91;
		background: linear-gradient(180deg, #fff676, #ffd735);
		border: 1px solid rgba(225, 176, 18, .45);
		border-radius: 14px;
		box-shadow: inset 0 1px 0 rgba(255,255,255,.75), 0 5px 12px rgba(3, 45, 112, .12);
		font-size: 1.45rem;
		text-shadow: 0 1px 0 rgba(255,255,255,.55);
	}
	.timedeal-section .timedeal-countdown-wrap > span {
		flex: 0 0 auto;
		width: auto;
		padding: 0;
	}
	.timedeal-section .timedeal-countdown-wrap .countdown-separator {
		margin: 0 1px;
		opacity: .72;
	}
	.timedeal-section #oc-timedeal .owl-item {
		padding: 0 7px;
		box-sizing: border-box;
	}
	.timedeal-section #oc-timedeal .product {
		padding: 14px !important;
		background: rgba(255,255,255,.96);
		border: 1px solid rgba(91, 159, 224, .16);
		border-radius: 18px;
		box-shadow: 0 4px 12px rgba(42, 104, 169, .08);
		transition: transform .25s ease, box-shadow .25s ease;
	}
	.timedeal-section #oc-timedeal .product:hover {
		transform: translateY(-3px);
		box-shadow: 0 8px 18px rgba(31, 91, 157, .13);
	}
	.timedeal-section #oc-timedeal .showcase-target-images {
		border-radius: 12px;
	}
	.timedeal-section #oc-timedeal .product-price .text-warning {
		color: #f18a00 !important;
	}
	@media (max-width: 991.98px) {
		.timedeal-section { padding: 30px 0 38px !important; }
		.timedeal-section .timedeal-intro {
			flex: 0 0 calc(100% - 60px);
			max-width: calc(100% - 60px);
			margin: 0 30px 24px;
			text-align: center;
			align-items: center;
		}
		.timedeal-section .timedeal-countdown-wrap { min-width: 260px; max-width: 100%; }
	}
	@media (max-width: 575.98px) {
		.timedeal-section .timedeal-intro { padding: 24px 18px !important; }
		.timedeal-section .timedeal-intro h2 { font-size: 27px; }
		.timedeal-section .timedeal-countdown-wrap { width: 100%; }
	}
	/* PC/모바일 전용 줄바꿈 클래스 */ 
	br.m-br {
		display: none;
	}
	/* 좌우 스크롤 차단 (PC 100vw 메가메뉴 및 모바일 화면 터짐 방지) */
	html, body {
		max-width: 100% !important;
		overflow-x: clip !important; /* overflow-x: hidden 대신 clip을 사용하여 sticky 동작 방해 최소화 */
	}
    .full-img {
      width: 100%;
      height: 100%;
      object-fit: cover; /* 비율 유지하며 꽉 채우기 */
    }

	/* 모바일에서 카테고리 서브메뉴(2depth, 3depth) 들여쓰기 */
	@media (max-width: 991.98px) {
		#wrapper {
			overflow: visible !important; /* wrapper의 overflow: hidden으로 인한 sticky 오작동 방지 */
		}
		#gotoTop {
			bottom: 75px !important; /* 모바일 하단 네비게이션 바(60px) 위로 배치 */
		}
		br.m-br {
			display: inline !important;
		}
		br.pc-br {
			display: none !important;
		}
      .heading-block span {
        margin-bottom:20px;
      }
		#allcate-sub .mega-menu-title > .menu-link {
			padding-left: 20px !important;
			font-weight: bold !important;
		}
		#allcate-sub .mega-menu-title .sub-menu-container .menu-link {
			padding-left: 40px !important;
		}
		#allcate-sub .mega-menu-title .sub-menu-container .menu-link,
		#allcate-sub .mega-menu-title .sub-menu-container .menu-link div {
			font-size: 15px !important;
		}
		#allcate-sub .mega-menu-title .sub-menu-container .menu-link div::before {
			content: "· ";
			font-weight: bold;
			margin-right: 4px;
		}
		/* 첫 번째 메뉴(카테고리)만 하단 여백 추가하여 라인과 간격 조절 */
		.primary-menu .menu-container > .menu-item.mega-menu > .menu-link {
			padding-top: 5px !important;
			padding-bottom: 5px !important;
		}
		/* 햄버거 메뉴 아이콘 브랜드 블루(#3a6caf) 동그란 입체 버튼 스타일 */
		#primary-menu-trigger {
			display: flex !important;
			justify-content: center !important;
			align-items: center !important;
			background-color: #3a6caf !important;
			border-radius: 10% !important;
			width: 40px !important;
			height: 40px !important;
			margin: auto 0 !important; /* 세로 가운데 정렬 */
			/* box-shadow: 0 1px 1px rgba(58, 108, 175, 0.3) !important; */
			transition: all 0.3s ease !important;
		}
		#primary-menu-trigger .svg-trigger {
			width: 24px !important;
			height: 24px !important;
		}
		#primary-menu-trigger .svg-trigger path {
			stroke: #fff !important; /* 흰색 아이콘 선 */
			stroke-width: 9px !important; /* 선 두께 살짝 보완 */
		}
		/* 서브 메뉴가 아래 콘텐츠를 밀어내지 않고 덮도록 절대 배치(absolute) 설정 */
		#allcate-sub {
			position: absolute !important;
			top: 100% !important;
			left: 0 !important;
			width: 100% !important;
			z-index: 1000 !important;
			background-color: #fff !important;
			border-bottom: 2px solid #eee !important;
		} 

		/* 모바일 메뉴가 열렸을 때 하단 컨텐츠 숨기기 및 배경 채우기 */
		body.primary-menu-open #content,
		body.primary-menu-open #content--,
		body.primary-menu-open #slider,
		body.primary-menu-open .slider-element,
		body.primary-menu-open #footer {
			display: none !important;
		}
		body.primary-menu-open .primary-menu .menu-container {
			min-height: 100vh !important;
			background-color: #fff !important;
			border-top: 1px solid #ddd !important; /* 상단 검색바와의 구분을 위한 구분선 추가 */
		}
		/* 모바일 로고 상하 여백 조절 */
		.top-logo-wrap {
			padding-top: 15px !important;
			padding-bottom: 15px !important;
		}
		/* 모바일 상단 유저 메뉴 하단 테두리 추가 */
		.top-user-menu {
			border-bottom: 1px solid #eee !important;
			padding-bottom: 8px !important;
		}
		/* 모바일 헤더(햄버거 메뉴 바) 상하 테두리 추가 */
		#header, #header-wrap {
			border-top: 1px solid #fefefe !important;
			border-bottom: 1px solid #eee !important;
		}
		/* N 배지 모바일 화면 터짐 방지 및 우측 정렬 */
		.button-badge {
			position: absolute !important;
			top: 50% !important;
			bottom: auto !important;
			right: 20px !important;
			left: auto !important;
			transform: translateY(-50%) !important;
		}
		/* 모바일 헤더 메뉴바(header-misc) 하단 여백 추가 */
		.header-misc {
			margin-bottom: 10px !important;
		}
		/* 모바일 섹션 상하 여백 축소 */  
		.section {
			padding: 20px 0px !important; 
		}
		/* 모바일 배너 배경이미지 고정 높이(500px) → 비율 기반 높이로 변경 */
		.banner-bg-section {
			padding-bottom: 65vw !important; /* 이미지 비율에 맞게 조정 가능 */
			background-position: center center !important;
		}
		/* 모바일 상품 쇼케이스 및 리스트 이미지 높이 균일 정렬 */
		.products-carousel .product-image,
		.shop .product-image {
			height: 160px !important;
			display: flex !important;
			justify-content: center !important;
			align-items: center !important;
			background-color: #fff !important;
		}
		.products-carousel .product-image a,
		.shop .product-image a {
			display: flex !important;
			justify-content: center !important;
			align-items: center !important;
			width: 100% !important;
			height: 100% !important;
		}
		.products-carousel .product-image img,
		.shop .product-image img {
			max-width: 100% !important;
			max-height: 100% !important;
			width: auto !important;
			height: auto !important;
			object-fit: contain !important;
		}
		/* 모바일 푸터 로고 상단 여백 추가 */
		.footer-logo-wrap {
			display: inline-block !important;
			margin-top: 20px !important;
		} 
		/* 모바일 페이지 타이틀 및 브레드크럼(breadcrumb) 최적화 */
		#page-title {
			padding: 0.8rem 0 !important; /* 상하 여백 축소 */
		}
		#page-title .breadcrumb {
			justify-content: flex-start !important; /* 모바일에서 좌측 정렬 */
			margin-top: 1px !important; /* 브레드크럼 상단 여백 축소 */
		}
		/* 모바일 상품 정렬 필터(등록일순 등) 1열 일렬 배치 및 테두리 추가 */
		.grid-filter {
			flex-wrap: nowrap !important; /* 줄바꿈 방지 */
			justify-content: center !important;
			margin-bottom: 2.0rem !important; /* 하단 여백 축소 */
			border: 1px solid #ddd !important; /* 전체 테두리 추가 */
		}
		.grid-filter li {
			width: auto !important;
			flex: 1 1 auto !important; /* 균등 분할 및 자동 크기 조절 */
			border-right: 1px solid #ddd !important; /* 각 탭 사이 구분 테두리 추가 */
		}
		.grid-filter li:last-child {
			border-right: none !important; /* 마지막 탭의 우측 테두리 제거 */
		}
		.grid-filter li a {
			padding: 8px 5px !important; /* 내부 여백 축소 */
			font-size: 0.8rem !important; /* 글자 크기 축소 */
			white-space: nowrap !important; /* 단어 줄바꿈 방지 */
		}
		/* 모바일 상품 리스트 상품명 폰트 크기 및 두께 조정 */
		.product-title h3,
		.product-title h3 a {
			font-size: 0.9rem !important;
			font-weight: normal !important;
		}
		/* 모바일 타임세일 섹션 내부 여백 축소 */
		.section .col-lg-3 h3.pt-4 {
			padding-top: 4px !important; /* pt-4(16px) → 4px */
		}
		.section .col-lg-3 h1.my-4 {
			margin-top: 6px !important;  /* my-4(16px) → 6px */
			margin-bottom: 6px !important;
			font-size: 1.6rem !important; /* 카운트다운 숫자 크기도 살짝 축소 */
		}
		/* 모바일 상품 가격 크기 및 하단 여백 조정 */
		.product-price {
			font-size: 1.3rem !important;
        text-align:right !important;
			margin-bottom: 16px !important;
		}
		/* 모바일 장바구니/찜 버튼 가로 꽉 차게 50%씩 분할 */
		.product-desc .d-flex.justify-content-end {
			justify-content: space-between !important;
			width: 100% !important;
			margin: 0 !important;
			padding: 0 !important;
			gap: 6px !important; /* 버튼 사이의 미세한 간격 */
		}
		.product-desc .d-flex.justify-content-end a.btn {
			flex: 1 1 50% !important; /* 각각 50% 균등 분할 */
			margin: 0 !important; /* 기존 마진 제거 */
			text-align: center !important;
			display: inline-flex !important;
			align-items: center !important;
			justify-content: center !important;
			height: 36px !important; /* 터치 영역 개선을 위한 세로 크기 지정 */
		}
		/* 모바일 상품 상세 버튼 4개(바로구매/장바구니/찜/상품문의) 1행 처리 */ 
		.single-product .py-3.row.px-1 {
			flex-wrap: nowrap !important; /* 줄바꿈 방지 */
			gap: 0 !important;
		}
		.single-product .py-3.row.px-1 > [class*="col-"] {
			flex: 1 1 auto !important; /* 동적 너비 */
			width: auto !important;
			padding-left: 3px !important;
			padding-right: 3px !important;
		}
		.single-product .py-3.row.px-1 .add-to-cart {
			padding-top: 8px !important;
			padding-bottom: 8px !important;
			padding-left: 4px !important;
			padding-right: 4px !important;
			font-size: 0.75rem !important; /* 글자 크기 축소 */
			white-space: nowrap !important; /* 텍스트 줄바꿈 방지 */
		}
	}
	/* 모바일 배너 원본 비율(768:640)을 실제 슬라이더 너비 기준으로 유지 */
	@media (max-width: 767.98px) {      
		#slider {
			height: auto !important;
			min-height: 0 !important;
			aspect-ratio: 768 / 640;
		}
		#slider .swiper-container, 
		#slider .swiper-slide {
			height: 100% !important;
			min-height: 0 !important;
		}
		#slider .mobile-only {
			display: block !important;
			width: 100% !important;
			height: 100% !important;
		}
		#slider .mobile-only img {
			display: block !important;
			width: 100% !important;
			height: 100% !important;
			object-fit: cover !important;
		}
	}
		/* 모바일에서 상세정보/배송반품 탭 메뉴 너비 균등 분할(50%씩) */
		.tab-nav li {
			flex-grow: 1 !important;
			flex-basis: 0 !important;
			max-width: 100% !important;
		}
		/* 모바일 장바구니 리스트 카드 아이템 그리드 최적화 (왼쪽 이미지, 오른쪽 정보) */ 
		.cart-page-table .cart_item {
			display: grid !important;
			grid-template-columns: 110px 1fr !important;
			grid-template-rows: auto auto auto !important;
			grid-template-areas: 
				"thumb name"
				"thumb qty"
				"thumb subtotal" !important;
			column-gap: 15px !important;
			row-gap: 6px !important;
			margin-bottom: 1.0rem !important;
			padding: 3.0rem 1.0rem 1.0rem 1.0rem !important; /* 상단 여백 확보로 체크박스/삭제버튼 중첩 방지 */
			position: relative !important;
		}
		/* 장바구니 모바일 체크박스 좌측 상단 정렬 */
		.cart-page-table .cart_item .cart-product-remove- {
			display: block !important;
			position: absolute !important;
			top: 1.0rem !important;
			left: 1.0rem !important;
			right: auto !important;
			width: 1.25rem !important;
			height: 1.25rem !important;
			padding: 0 !important;
			border: 0 !important;
			text-align: left !important;
			z-index: 10 !important;
		}
		/* 장바구니 모바일 삭제 버튼 우측 상단 정렬 */
		.cart-page-table .cart_item .cart-product-remove {
			display: block !important;
			position: absolute !important;
			top: 1.0rem !important;
			right: 1.0rem !important;
			left: auto !important;
			width: 1.25rem !important;
			height: 1.25rem !important;
			z-index: 10 !important;
		}
		/* 각 요소 그리드 영역 배치 */
		.cart-page-table .cart-product-thumbnail {
			grid-area: thumb !important;
			margin: 0 !important;
			padding: 0 !important;
			align-self: start !important;
		}
		.cart-page-table .cart-product-name {
			grid-area: name !important;
			margin: 0 !important;
			padding: 0 !important;
			text-align: left !important;
		}
		.cart-page-table .cart-product-quantity {
			grid-area: qty !important;
			margin: 0 !important;
			padding: 0 !important;
			text-align: left !important;
			display: flex !important;
			flex-wrap: wrap !important;
			align-items: center !important;
			gap: 8px !important;
		}
		.cart-page-table .cart-product-subtotal {
			grid-area: subtotal !important;
			margin: 0 !important;
			padding: 0 !important;
			text-align: left !important;
		}
		/* 모바일 이미지 크기 및 정렬 */
		.cart-page-table .cart-product-thumbnail img {
			width: 100px !important;
			height: 100px !important;
			margin-top: 0 !important;
			margin-left: 0 !important;
			margin-right: 0 !important;
			object-fit: contain !important;
		}

		/* 모바일 주문결제(checkout.asp) 상품 리스트 카드 최적화 */
		.checkout-page-table .cart_item {
			display: grid !important;
			grid-template-columns: 110px 1fr !important;
			grid-template-rows: auto auto !important;
			grid-template-areas: 
				"thumb name"
				"thumb subtotal" !important;
			column-gap: 15px !important;
			row-gap: 6px !important;
			margin-bottom: 1.0rem !important;
			padding: 1.0rem !important; /* 체크박스/삭제버튼이 없으므로 상단 여백 최소화 */
			position: relative !important;
		}
		.checkout-page-table .cart-product-thumbnail {
			grid-area: thumb !important;
			margin: 0 !important;
			padding: 0 !important;
			align-self: start !important;
		}
		.checkout-page-table .cart-product-name {
			grid-area: name !important;
			margin: 0 !important;
			padding: 0 !important;
			text-align: left !important;
		}
		.checkout-page-table .cart-product-subtotal {
			grid-area: subtotal !important;
			margin: 0 !important;
			padding: 0 !important;
			text-align: left !important;
		}
		.checkout-page-table .cart-product-thumbnail img {
			width: 100px !important;
			height: 100px !important;
			margin-top: 0 !important;
			margin-left: 0 !important;
			margin-right: 0 !important;
			object-fit: contain !important;
		}
		/* 모바일 장바구니 테이블 헤더(수량 글자 등) 전체 숨김 */
		.cart thead {
			display: none !important;
		}
		/* 모바일 수량 조절 버튼 및 입력란 크기 30% 축소 (장바구니 전용) */
		.cart-page-table .quantity .qty {
			width: 30px !important;
			height: 28px !important;
			line-height: 28px !important;
			font-size: 0.75rem !important;
		}
		.cart-page-table .quantity .plus,
		.cart-page-table .quantity .minus {
			width: 24px !important;
			height: 28px !important;
			line-height: 28px !important;
			font-size: 0.75rem !important;
		}
		/* 모바일 [변경] 버튼 크기 축소 */
		.cart_item .chgQ {
			height: 28px !important;
			line-height: 28px !important;
			padding: 0 10px !important;
			font-size: 0.75rem !important;
			display: inline-flex !important;
			align-items: center !important;
			justify-content: center !important;
		}

		/* 모바일에서 장바구니 하단 버튼 크기 축소 */
		#content a.button.button-lg {
			padding-top: 10px !important;
			padding-bottom: 10px !important;
			padding-left: 18px !important;
			padding-right: 18px !important;
			font-size: 0.9rem !important;
		}
		
		/* 모바일 전용 스타일 스코프 */
		@media (max-width: 767.98px) {
			/* 모바일에서 기존 최근본상품/장바구니 하단 고정바는 무조건 숨김 */
			.mobile-recent-bar {
				display: none !important;
			}
			
			/* 모바일 네비게이션 바 기본 노출 */
			.mobile-nav-bar {
				display: block !important;
			}
			
			/* 모바일 상품 상세페이지인 경우 네비게이션 바 숨김 (대신 sticky buy bar 노출) */
			body.product-detail-page .mobile-nav-bar {
				display: none !important;
			}
			
			/* 하단 고정 바가 있으므로 콘텐츠가 겹치지 않게 하단 여백 추가 */
			body {
				padding-bottom: 60px !important;
			}

		/* 모바일 헤더에서 불필요한 요소(탑바, 마이페이지, 찜바구니, 장바구니) 및 햄버거 메뉴 버튼 숨김 */
		#top-bar,
		.header-mypage-icon, 
		.header-wishlist-icon, 
		#top-cart, 
		#primary-menu-trigger {
			display: none !important;
		}

		/* 모바일 헤더에서 검색바가 100% 너비로 차고 네이버처럼 둥근 테두리 스타일 적용 */
		.header-row {
			width: 100% !important;
			display: flex !important;
			justify-content: center !important;
			padding: 0 !important;
        margin-bottom:10px;
		}
		.header-misc {
			width: 100% !important;
			margin: 0 !important;
			padding: 0 !important; /* 모바일에서 기본 패딩 제거 */
			display: flex !important;
			align-items: center !important;
			justify-content: center !important;
			flex: 1 1 100% !important;
		}
		#top-search-wrapper {
			display: none; /* 평상시 숨김 */
			width: 100%;
			padding: 5px 0px !important;
		}
		#top-search {
		}
		/* 장바구니 모바일 체크박스 좌측 상단 정렬 */
		.cart-page-table .cart_item .cart-product-remove- {
			display: block !important;
			position: absolute !important;
			top: 1.0rem !important;
			left: 1.0rem !important;
			right: auto !important;
			width: 1.25rem !important;
			height: 1.25rem !important;
			padding: 0 !important;
			border: 0 !important;
			text-align: left !important;
			z-index: 10 !important;
		}
		/* 장바구니 모바일 삭제 버튼 우측 상단 정렬 */
		.cart-page-table .cart_item .cart-product-remove {
			display: block !important;
			position: absolute !important;
			top: 1.0rem !important;
			right: 1.0rem !important;
			left: auto !important;
			width: 1.25rem !important;
			height: 1.25rem !important;
			z-index: 10 !important;
		}
		/* 각 요소 그리드 영역 배치 */
		.cart-page-table .cart-product-thumbnail {
			grid-area: thumb !important;
			margin: 0 !important;
			padding: 0 !important;
			align-self: start !important;
		}
		.cart-page-table .cart-product-name {
			grid-area: name !important;
			margin: 0 !important;
			padding: 0 !important;
			text-align: left !important;
		}
		.cart-page-table .cart-product-quantity {
			grid-area: qty !important;
			margin: 0 !important;
			padding: 0 !important;
			text-align: left !important;
			display: flex !important;
			flex-wrap: wrap !important;
			align-items: center !important;
			gap: 8px !important;
		}
		.cart-page-table .cart-product-subtotal {
			grid-area: subtotal !important;
			margin: 0 !important;
			padding: 0 !important;
			text-align: left !important;
		}
		/* 모바일 이미지 크기 및 정렬 */
		.cart-page-table .cart-product-thumbnail img {
			width: 100px !important;
			height: 100px !important;
			margin-top: 0 !important;
			margin-left: 0 !important;
			margin-right: 0 !important;
			object-fit: contain !important;
		}

		/* 모바일 주문결제(checkout.asp) 상품 리스트 카드 최적화 */
		.checkout-page-table .cart_item {
			display: grid !important;
			grid-template-columns: 110px 1fr !important;
			grid-template-rows: auto auto !important;
			grid-template-areas: 
				"thumb name"
				"thumb subtotal" !important;
			column-gap: 15px !important;
			row-gap: 6px !important;
			margin-bottom: 1.0rem !important;
			padding: 1.0rem !important; /* 체크박스/삭제버튼이 없으므로 상단 여백 최소화 */
			position: relative !important;
		}
		.checkout-page-table .cart-product-thumbnail {
			grid-area: thumb !important;
			margin: 0 !important;
			padding: 0 !important;
			align-self: start !important;
		}
		.checkout-page-table .cart-product-name {
			grid-area: name !important;
			margin: 0 !important;
			padding: 0 !important;
			text-align: left !important;
		}
		.checkout-page-table .cart-product-subtotal {
			grid-area: subtotal !important;
			margin: 0 !important;
			padding: 0 !important;
			text-align: left !important;
		}
		.checkout-page-table .cart-product-thumbnail img {
			width: 100px !important;
			height: 100px !important;
			margin-top: 0 !important;
			margin-left: 0 !important;
			margin-right: 0 !important;
			object-fit: contain !important;
		}
		/* 모바일 장바구니 테이블 헤더(수량 글자 등) 전체 숨김 */
		.cart thead {
			display: none !important;
		}
		/* 모바일 수량 조절 버튼 및 입력란 크기 30% 축소 (장바구니 전용) */
		.cart-page-table .quantity .qty {
			width: 30px !important;
			height: 28px !important;
			line-height: 28px !important;
			font-size: 0.75rem !important;
		}
		.cart-page-table .quantity .plus,
		.cart-page-table .quantity .minus {
			width: 24px !important;
			height: 28px !important;
			line-height: 28px !important;
			font-size: 0.75rem !important;
		}
		/* 모바일 [변경] 버튼 크기 축소 */
		.cart_item .chgQ {
			height: 28px !important;
			line-height: 28px !important;
			padding: 0 10px !important;
			font-size: 0.75rem !important;
			display: inline-flex !important;
			align-items: center !important;
			justify-content: center !important;
		}

		/* 모바일에서 장바구니 하단 버튼 크기 축소 */
		#content a.button.button-lg {
			padding-top: 10px !important;
			padding-bottom: 10px !important;
			padding-left: 18px !important;
			padding-right: 18px !important;
			font-size: 0.9rem !important;
		}
		
		/* 모바일에서 기존 최근본상품/장바구니 하단 고정바는 무조건 숨김 */
		.mobile-recent-bar {
			display: none !important;
		}
		
		/* 모바일 네비게이션 바 기본 노출 */
		.mobile-nav-bar {
			display: block !important;
		}
		
		/* 모바일 상품 상세페이지인 경우 네비게이션 바 숨김 (대신 sticky buy bar 노출) */
		body.product-detail-page .mobile-nav-bar {
			display: none !important;
		}
		
		/* 하단 고정 바가 있으므로 콘텐츠가 겹치지 않게 하단 여백 추가 */
		body {
			padding-bottom: 60px !important;
		}

		/* 모바일 헤더에서 불필요한 요소(탑바, 마이페이지, 찜바구니, 장바구니) 및 햄버거 메뉴 버튼 숨김 */
		#top-bar,
		.header-mypage-icon, 
		.header-wishlist-icon, 
		#top-cart, 
		#primary-menu-trigger {
			display: none !important;
		}

		/* 모바일 헤더에서 검색바가 100% 너비로 차고 네이버처럼 둥근 테두리 스타일 적용 */
		.header-row {
			width: 100% !important;
			display: flex !important;
			justify-content: center !important;
			padding: 0 !important;
			margin: 0 !important;
		}
		.header-misc {
			width: 100% !important;
			margin: 0 !important;
			padding: 0 !important; /* 모바일에서 기본 패딩 제거 */
			display: flex !important;
			align-items: center !important;
			justify-content: center !important;
			flex: 1 1 100% !important;
		}
		#top-search-wrapper {
			display: none; /* 평상시 숨김 */
			width: 100%;
			padding: 5px 0px !important;
		}
		#top-search {
			display: flex !important;
			align-items: center !important;
			width: 100% !important;
			max-width: 100% !important;
			margin: 0 !important;
			border: 2px solid #3a6caf !important; /* 브랜드 블루 테두리 */
			border-radius: 8px !important; /* 둥글게 */
			background-color: #fff !important;
			height: 44px !important;
			padding: 0 15px !important;
			box-shadow: none !important;
		}
		#qsearch {
			flex-grow: 1 !important;
			border: none !important;
			background-color: transparent !important;
			height: 100% !important;
			padding: 0 !important;
			margin: 0 !important;
			font-size: 15px !important;
			box-shadow: none !important;
		}

		#qsearch:focus {
			outline: none !important;
			border: none !important;
			box-shadow: none !important;
		}
		.topsearch-btn {
			border: none !important;
			background: transparent !important;
			padding: 0 !important;
			margin-left: 10px !important;
			color: #3a6caf !important;
			font-size: 1.25rem !important;
			cursor: pointer !important;
			display: flex !important;
			align-items: center !important;
		}

		/* 모바일 메뉴 2depth 세부 메뉴 간격 축소 */
		.primary-menu .menu-container .sub-menu-container .sub-menu-container .menu-link {
			padding-top: 6px !important;
			padding-bottom: 6px !important;
		}
 
		/* 모바일에서 기존 breadcrumbs 영역(#page-title) 완전히 숨김 */
		#page-title {
			display: none !important;
		}
      
      
      #mypage .card-body h2,#customer-services .card-body h2{ font-size:1.1rem;}
      
      /* 모바일 섹션 타이틀(heading-block) 노출 및 크기/여백 최적화 */
      .heading-block {
        display: block !important;
        margin-top: 10px !important;
        margin-bottom: 16px !important;
      }
      .heading-block h3 {
        font-size: 1.25rem !important;
        font-weight: 700 !important;
        margin-bottom: 4px !important;
        line-height: 1.3 !important;
      }
      .heading-block span {
        font-size: 0.85rem !important;
        margin-bottom: 0 !important;
        display: block !important;
      }
      /* 모바일 일반 섹션 상하 여백 줄임 */
      .section {
        padding-top: 24px !important;
        padding-bottom: 24px !important;
        margin-top: 0 !important;
        margin-bottom: 0 !important;
      }

		/* 모바일 상품 제목 2줄 강제 제한 및 높이 고정 (가격 라인 수평 정렬) */
		.product-desc .product-title {
			height: 2.8em !important;
			overflow: hidden !important;
			margin-bottom: 5px !important;
		}
		.product-desc .product-title h3 {
			display: -webkit-box !important;
			-webkit-line-clamp: 2 !important;
			-webkit-box-orient: vertical !important;
			overflow: hidden !important;
			text-overflow: ellipsis !important;
			line-height: 1.4em !important;
			font-size: 14px !important;
			height: 2.8em !important;
			margin: 0 !important;
		}

		/* 모바일 전용 G마켓 스타일 GNB 상단 가로 1줄 스크롤 대메뉴 바 */
		.mobile-gnb-bar {
			width: 100% !important;
			max-width: 100% !important;
			background-color: #ffffff !important;
			border-bottom: 0px solid #eee !important;
			position: relative !important;
			z-index: 99 !important;
			overflow: hidden !important;
			margin: 0 !important;
		}
		.mobile-gnb-scroll {
			display: flex !important;
			flex-wrap: nowrap !important;
			align-items: center !important;
			overflow-x: auto !important;
			overflow-y: hidden !important;
			white-space: nowrap !important;
			-webkit-overflow-scrolling: touch !important;
			padding: 0 6px !important;
			width: 100% !important;
			box-sizing: border-box !important;
			scrollbar-width: none !important;
		}
		.mobile-gnb-scroll::-webkit-scrollbar {
			display: none !important;
			width: 0 !important;
			height: 0 !important;
		}
		.mobile-gnb-scroll .gnb-item {
			display: inline-flex !important;
			align-items: center !important;
			justify-content: center !important;
			padding: 10px 14px !important;
			font-size: 15px !important;
			font-weight: 500 !important;
			color: #333333 !important;
			text-decoration: none !important;
			position: relative !important;
			flex-shrink: 0 !important;
			white-space: nowrap !important;
			letter-spacing: -0.4px !important;
		}
		.mobile-gnb-scroll .gnb-item .gnb-icon {
			height: 16px !important;
			width: auto !important;
			margin-right: 4px !important;
			vertical-align: middle !important;
		}
		.mobile-gnb-scroll .gnb-item.active {
			font-weight: 700 !important;
			color: #3a6caf !important;
		}
		.mobile-gnb-scroll .gnb-item.active::after {
			content: '' !important;
			position: absolute !important;
			bottom: 0 !important;
			left: 12px !important;
			right: 12px !important;
			height: 3px !important;
			background-color: #3a6caf !important;
			border-radius: 2px 2px 0 0 !important;
		}

		/* Top으로 이동 버튼 위치 우측 밀착 및 하단 여백 대칭 보정 */
		#gotoTop {
			right: 15px !important;
			bottom: 68px !important;
		}

		/* 모바일 카드 리스트 가로 100% 확장 (카드 내부 패딩 보존) 및 상단 검은선 100% 제거 */
		table,
		table.table,
		table.table-bbs,
		.table-responsive,
		.table-responsive .table,
		.table-responsive table,
		.table-responsive tbody,
		.table-bbs,
		.table-bbs thead,
		.table-bbs tbody,
		.table-bbs tr,
		.table-bbs th,
		.table-bbs td {
			border: none !important;
			border-top: none !important;
			border-bottom: none !important;
			border-left: none !important;
			border-right: none !important;
			border-color: transparent !important;
			box-shadow: none !important;
		}

		.table-responsive,
		.table-responsive .table,
		.table-responsive table,
		.table-responsive tbody,
		.table-bbs,
		.table-bbs tbody,
		tr.mobile-only,
		tr.mobile-only > td {
			display: block !important;
			width: 100% !important;
			max-width: 100% !important;
			box-sizing: border-box !important;
		}
		tr.mobile-only > td > .card {
			width: 100% !important;
			max-width: 100% !important;
			box-sizing: border-box !important;
		}

		/* 모바일 전용 G마켓 스타일 1열 가로 카드 리스트 (사진 | 내용) */
		#shop,
		.shop {
			padding-left: 0 !important;
			padding-right: 0 !important;
			margin-left: 0 !important;
			margin-right: 0 !important;
			width: 100% !important;
			max-width: 100% !important;
		}
		#shop .product,
		.shop .product {
			width: 100% !important;
			max-width: 100% !important;
			flex: 0 0 100% !important;
			padding-left: 0 !important;
			padding-right: 0 !important;
			padding-top: 0 !important;
			padding-bottom: 0 !important;
			margin-left: 0 !important;
			margin-right: 0 !important;
			margin-top: 0 !important;
			margin-bottom: 10px !important;
			box-sizing: border-box !important;
		}
		#shop .product .grid-inner,
		.shop .product .grid-inner {
			display: flex !important;
			flex-direction: row !important;
			align-items: center !important;
			background-color: #ffffff !important;
			border-radius: 12px !important;
			padding: 12px !important;
			border: 1px solid #eee !important;
			box-shadow: 0 2px 8px rgba(0,0,0,0.03) !important;
			width: 100% !important;
			max-width: 100% !important;
			box-sizing: border-box !important;
		}
		#shop .product .product-image,
		.shop .product .product-image {
			width: 110px !important;
			height: 110px !important;
			min-width: 110px !important;
			max-width: 110px !important;
			border-radius: 8px !important;
			overflow: hidden !important;
			margin-right: 12px !important;
			background-color: #f9f9f9 !important;
			display: flex !important;
			align-items: center !important;
			justify-content: center !important;
		}
		#shop .product .product-image img,
		.shop .product .product-image img {
			width: 100% !important;
			height: 100% !important;
			object-fit: cover !important;
		}
		#shop .product .product-desc,
		.shop .product .product-desc {
			flex: 1 !important;
			min-width: 0 !important;
			padding: 0 !important;
			display: flex !important;
			flex-direction: column !important;
			justify-content: center !important;
			text-align: left !important;
		}
		#shop .product .product-title h3,
		.shop .product .product-title h3 {
			font-size: 14px !important;
			font-weight: 600 !important;
			color: #222 !important;
			line-height: 1.4 !important;
			padding-top: 2px !important;
			margin-bottom: 4px !important;
			display: -webkit-box !important;
			-webkit-line-clamp: 2 !important;
			-webkit-box-orient: vertical !important;
			overflow: hidden !important;
			white-space: normal !important;
		}
		#shop .product .product-price,
		.shop .product .product-price {
			font-size: 15px !important;
			font-weight: 700 !important;
			color: #222 !important;
			margin-bottom: 4px !important;
		}
		#shop .product .product-price ins,
		.shop .product .product-price ins {
			text-decoration: none !important;
			color: #3a6caf !important;
			font-size: 16px !important;
			font-weight: 700 !important;
		}
		#shop .product .product-price del,
		.shop .product .product-price del {
			font-size: 12px !important;
			color: #999 !important;
			margin-right: 4px !important;
		}
		#shop .product .product-rating,
		.shop .product .product-rating {
			font-size: 11px !important;
			color: #ffb703 !important;
			margin-bottom: 4px !important;
		}
		#shop .product .d-flex.justify-content-end,
		.shop .product .d-flex.justify-content-end {
			margin-top: 4px !important;
			justify-content: flex-end !important;
		}
		#shop .product .d-flex.justify-content-end .btn,
		.shop .product .d-flex.justify-content-end .btn {
			width: 32px !important;
			height: 32px !important;
			min-width: 32px !important;
			max-width: 32px !important;
			padding: 0 !important;
			margin: 0 0 0 6px !important;
			display: inline-flex !important;
			align-items: center !important;
			justify-content: center !important;
			font-size: 14px !important;
			border-radius: 6px !important;
			line-height: 1 !important;
		}
	}

	@media (min-width: 768px) {
		#top-bar {
			display: block !important;
		}
		/* 데스크톱에서는 모바일 네비게이션 바 숨김 */
		.mobile-nav-bar {
			display: none !important;
		}
		/* 데스크톱에서는 최근본상품 바 노출 */
		.mobile-recent-bar {
			display: block !important;
		}
		/* 데스크톱에서는 검색 영역 상시 노출 및 수평 정렬 보정 */
		#top-search-wrapper {
			display: flex !important;
			align-items: center !important;
			height: 100% !important;
		}
	}
	/* PC 상단 최근 공지 3건 플립 전환 */
	#top-bar .top-news-rotator {
		position: relative;
		width: min(720px, 100%);
		height: 24px;
		margin: 0 auto;
		overflow: hidden;
		perspective: 600px;
		line-height: 24px;
	}
	#top-bar .top-news-item {
		position: absolute;
		inset: 0;
		display: block;
		overflow: hidden;
		color: #fff !important;
		text-overflow: ellipsis;
		white-space: nowrap;
		opacity: 0;
		transform: translateY(70%);
		animation: top-news-flip 9s cubic-bezier(.4, 0, .2, 1) infinite;
		animation-delay: calc(var(--top-news-index) * 3s);
	}
	@keyframes top-news-flip {
		0% {
			opacity: 0;
			transform: translateY(70%);
		}
		5%, 28% {
			opacity: 1;
			transform: translateY(0);
		}
		38%, 100% {
			opacity: 0;
			transform: translateY(-70%);
		}
	}
	@media (prefers-reduced-motion: reduce) {
		#top-bar .top-news-item {
			display: none;
			animation: none;
		}
		#top-bar .top-news-item:first-child {
			display: block;
			opacity: 1;
			transform: none;
		}
	}
	@media (max-width: 767.98px) {
		/* 모바일에서도 최근 공지를 한 줄로 표시 */
		#top-bar {
			display: block !important;
		}
		#top-bar .container {
			padding: 8px 12px !important;
		}
		#top-bar .top-news-rotator {
			width: 100%;
			height: 22px;
			line-height: 22px;
		}
		#top-bar .top-news-item {
			width: 100%;
			padding: 0 4px;
			font-size: 13px;
			line-height: 22px;
			overflow: hidden;
			text-overflow: ellipsis;
			white-space: nowrap;
		}
	}
	/* 플로팅 고객지원 메뉴 스타일 */
	.support-sub-buttons {
		display: none;
		flex-direction: column;
		align-items: flex-end;
		gap: 10px;
		margin-bottom: 5px;
	}
	.support-sub-buttons.active {
		display: flex !important;
	}
	/* 모바일에서 상단 유저 메뉴 텍스트 일렬 정렬을 위해 폰트 크기 및 자간 축소 (unnested) */
	@media (max-width: 576px) {
		.top-user-menu {
			font-size: 15px !important; 
		}
		.top-user-menu small {
			font-size: 13px !important;
			letter-spacing: -0.5px !important;
		}
	}
	/* PC 전용 카테고리 메가메뉴 가로폭 100vw 전체 확장 (unnested) */
	@media (min-width: 992px) {
		#allcate-sub {
			position: absolute !important;
			top: 100% !important;
			left: calc(-50vw + 50%) !important;
			width: 100vw !important;
			max-width: none !important;
			transform: none !important;
			margin: 0 !important;
			background-color: #fff !important;
			border-bottom: 2px solid #eee !important;
			z-index: 1000 !important;
		}
	}

	/* 실시간 검색어 제안 창 스타일 */
	#search-suggest-dropdown {
		position: absolute !important;
		top: 100% !important;
		left: 0 !important;
		width: 100% !important;
		background-color: #fff !important;
		border: 1px solid #ddd !important;
		border-radius: 8px !important;
		box-shadow: 0 10px 25px rgba(0,0,0,0.1) !important;
		z-index: 2000 !important;
		max-height: 380px !important;
		overflow-y: auto !important;
		margin-top: 8px !important;
		padding: 5px 0 !important;
		box-sizing: border-box !important;
	}
	.suggest-item {
		display: flex !important;
		align-items: center !important;
		padding: 8px 12px !important;
		cursor: pointer !important;
		border-bottom: 1px solid #f2f4f6 !important;
		transition: background-color 0.2s ease !important;
		text-align: left !important;
	}
	.suggest-item:hover {
		background-color: #f8f9fa !important;
	}
	.suggest-item:last-child {
		border-bottom: none !important;
	}
	.suggest-img {
		width: 34px !important;
		height: 34px !important;
		object-fit: cover !important;
		border-radius: 4px !important;
		margin-right: 10px !important;
		background-color: #f8f9fa !important;
		border: 1px solid #eee !important;
		flex-shrink: 0 !important;
	}
	.suggest-info {
		flex-grow: 1 !important;
		display: flex !important;
		flex-direction: column !important;
		overflow: hidden !important;
	}
	.suggest-name {
		font-size: 13px !important;
		font-weight: 500 !important;
		color: #333 !important;
		line-height: 1.4 !important;
		white-space: nowrap !important;
		overflow: hidden !important;
		text-overflow: ellipsis !important;
	}
	.suggest-price {
		font-size: 11px !important;
		color: #888 !important;
		margin-top: 2px !important;
		font-weight: bold !important;
	}
	.suggest-empty {
		padding: 15px !important;
		text-align: center !important;
		color: #999 !important;
		font-size: 13px !important;
	}

	/* 상품 리스트 뱃지 (SALE/NEW/BEST) 상품명 앞 인라인 정렬 */
	.product-title h3 .badge {
		vertical-align: middle !important;
		margin-top: 0 !important;
		margin-bottom: 2px !important;
		padding: 3px 6px !important;
		font-size: 0.7rem !important;
		font-weight: 700 !important;
		line-height: 1 !important;
		display: inline-block !important;
		border-radius: 4px !important;
	}
	}
	.banner-card-item:hover {
		gap: 8px;
		transition: all 0.25s ease;
		z-index: 2;
	}
	.banner-card-item:hover .banner-cta-btn {
		background: #2563eb;
		color: #ffffff;
		border-color: #2563eb;
		box-shadow: 0 6px 20px rgba(37, 99, 235, 0.35);
	}
	.banner-cta-btn i {
		transition: transform 0.25s ease;
	}
	.banner-card-item:hover .banner-cta-btn i {
		transform: translateX(4px);
	}
	@media (max-width: 767.98px) {
		.banner-card-item {
			border-radius: 0;
			box-shadow: none;
		}
		.banner-cta-btn {
			bottom: 12px;
			right: 12px;
			padding: 7px 16px;
			font-size: 12px;
		}
		/* 모바일 이벤트 배너 상하 패딩 및 마진 완벽 제거 */
		.event-banner-section {
			margin-top: 0 !important;
			margin-bottom: 0 !important;
			padding-top: 0 !important;
			padding-bottom: 0 !important;
		}
		.event-banner-section .container {
			padding-top: 0 !important;
			padding-bottom: 0 !important;
		}
	}

	/* 메인 슬라이더 웹접근성 도트 인디케이터 & 재생/정지 컨트롤 바 (30% 확대) */
	#slider .slider-arrow-left,
	#slider .slider-arrow-right {
		width: 60px !important;
		height: 60px !important;
		line-height: 60px !important;
		font-size: 26px !important;
		border-radius: 50% !important;
	}
	#slider .slider-arrow-left i,
	#slider .slider-arrow-right i {
		font-size: 26px !important;
	}

	.slider-controls-wrap {
		position: absolute;
		bottom: 24px;
		right: 30px;
		left: auto;
		transform: none;
		z-index: 10;
		display: inline-flex;
		align-items: center;
		gap: 14px;
		background: rgba(0, 0, 0, 0.55);
		padding: 8px 20px;
		border-radius: 40px;
		backdrop-filter: blur(6px);
		-webkit-backdrop-filter: blur(6px);
		box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2);
	}
	.slider-controls-wrap .swiper-pagination {
		position: static !important;
		display: flex !important;
		align-items: center !important;
		gap: 8px !important;
		width: auto !important;
	}
	.slider-controls-wrap .swiper-pagination-bullet {
		width: 14px;
		height: 14px;
		margin: 0 !important;
		background: rgba(255, 255, 255, 0.6);
		opacity: 1;
		transition: all 0.25s ease;
		border-radius: 50%;
		cursor: pointer;
	}
	.slider-controls-wrap .swiper-pagination-bullet-active {
		background: #ffffff;
		width: 30px;
		border-radius: 12px;
	}
	.slider-play-pause-btn {
		background: transparent;
		border: none;
		color: #ffffff;
		font-size: 18px;
		padding: 0;
		margin: 0;
		display: inline-flex;
		align-items: center;
		justify-content: center;
		cursor: pointer;
		width: 26px;
		height: 26px;
		line-height: 1;
		transition: color 0.2s ease;
	} 
	.slider-play-pause-btn:hover {
		color: #a3e4f6;
	}
	/* 메인 슬라이더 높이를 PC 배너 비율(1140:456)에 맞춰 아래 여백 방지 */
	#slider {
		min-height: 0 !important;
		height: min(40vw, 518.4px) !important;
	}
	/* 메인 슬라이드 이미지는 기본 컨테이너의 실제 콘텐츠 폭(1320px - 좌우 패딩)에 맞춰 중앙 배치 */
	#slider .swiper-slide picture > img {
		width: 100% !important;
		height: auto !important;
		max-width: 1296px !important;
		max-height: 100% !important;
		object-fit: contain;
	}
	@media (max-width: 767.98px) {
		/* 위의 PC용 40vw 높이를 덮어쓰고 모바일 원본 비율(768:640) 적용 */
		#slider {
			height: auto !important;
			min-height: 0 !important;
			max-height: none;
			aspect-ratio: 768 / 640;
		}
		#slider .slider-arrow-left,
		#slider .slider-arrow-right {
			width: 42px !important;
			height: 42px !important;
			line-height: 42px !important;
			font-size: 20px !important;
		}
		#slider .slider-arrow-left i,
		#slider .slider-arrow-right i {
			font-size: 20px !important;
		}
		.slider-controls-wrap {
			bottom: 14px;
			right: 15px;
			left: auto;
			transform: none;
			padding: 6px 14px;
			gap: 10px;
		}
		.slider-controls-wrap .swiper-pagination-bullet {
			width: 10px;
			height: 10px;
		}
	}
	/* 타임세일 상품 이미지 영역의 높이를 고정해 상품명 시작선을 통일 */
	#oc-timedeal .showcase-target-images {
		width: 100% !important;
		height: 230px !important;
		min-height: 230px !important;
		max-height: 230px !important;
		background-color: #ffffff !important;
		display: flex !important;
		align-items: center !important;
		justify-content: center !important;
		overflow: hidden !important;
		margin-bottom: 12px !important;
		box-sizing: border-box !important;
	}
	#oc-timedeal .showcase-target-images img {
		max-width: 100% !important;
		max-height: 100% !important;
		width: auto !important;
		height: auto !important;
		object-fit: contain !important;
	}
	#oc-timedeal .product-title h3 {
		font-size: 14px !important;
		line-height: 1.4 !important;
		height: 2.8em !important; /* 상품명 2줄 고정 높이 */
		display: -webkit-box !important;
		-webkit-line-clamp: 2 !important;
		-webkit-box-orient: vertical !important;
		overflow: hidden !important;
		text-overflow: ellipsis !important;
		margin-bottom: 8px !important;
	}
	#oc-timedeal .product-desc {
		display: flex !important;
		flex-direction: column !important;
		display: flex !important;
		flex-direction: column !important;
		justify-content: space-between !important;
	}
	#oc-timedeal .product-price {
		margin-top: auto !important;
	}
	@media (max-width: 767.98px) {
		#oc-timedeal .showcase-target-images {
			height: 160px !important;
			min-height: 160px !important;
			max-height: 160px !important;
		}
	}

	/* 모바일 게시판 상세 페이지 타이틀 글자 크기 강제 축소 */
	@media (max-width: 767.98px) {
		#content h2,
		#content h2.my-3,
		.board-view-title,
		section#content h2 {
			font-size: 1.05rem !important; /* 모바일 전용 콤팩트 크기 (약 16.8px) */
			line-height: 1.45 !important;
			font-weight: 700 !important;
			margin-top: 12px !important;
			margin-bottom: 12px !important;
			letter-spacing: -0.5px !important;
			word-break: keep-all !important;
		}
	}
	@media (min-width: 768px) {
		#content h2,
		#content h2.my-3,
		.board-view-title,
		section#content h2 {
			font-size: 1.35rem !important;
			line-height: 1.4 !important;
			font-weight: 700 !important;
		}
	}

	/* 전역 테이블, 게시판 목록 및 카드 박스 테두리 모서리 4px 통일 디자인 시스템 */
	.table,
	.table-responsive,
	.table-bbs,
	.table-bordered,
	.card,
	.card-header,
	.card-body,
	.card-footer,
	.list-group,
	.detail-spec-group,
	.faq-modern-tabs-container {
		border-radius: 4px !important;
	}
	.table-responsive {
		border: 1px solid #eeeeee !important;
		border-radius: 4px !important;
		overflow: hidden !important;
	}

	/* 메인 이벤트 띠배너 PC에서만 둥근 모서리 (rounded-md-5) 보장 */
	@media (min-width: 768px) {
		.rounded-md-5 {
			border-radius: 1.5rem !important;
		}
	}
	@media (max-width: 767.98px) {
		.event-banner-section img {
			border-radius: 0 !important;
		}
	}
	/* 메인 2개 하단 배너 카드 래퍼 및 절대위치 버튼 (.banner-cta-btn) 안쪽 안착 디자인 */
	.banner-card-item {
		position: relative !important;
		overflow: hidden !important;
		border-radius: 8px !important;
	}
	.banner-card-item a {
		display: block !important;
		position: relative !important;
	}
	.banner-card-item a > picture {
		display: block;
		aspect-ratio: 16 / 9;
		overflow: hidden;
	}
	.banner-card-item .banner-img {
		width: 100% !important;
		height: 100% !important;
		object-fit: cover;
		display: block !important;
		border-radius: 8px !important;
      transition: transform 0.5s ease-in-out !important;
	}
    .banner-card-item:hover .banner-img {
		transform: scale(1.06) !important;
	}
	.banner-cta-btn {
		position: absolute !important;
		bottom: 18px !important;
		right: 18px !important;
		left: auto !important;
		z-index: 5 !important;
		display: inline-flex !important;
		align-items: center !important;
		justify-content: center !important;
		width: auto !important;
		gap: 8px !important;
		padding: 11px 18px !important;
		border-radius: 50px !important; /* 둥근 알약 모서리 효과 */
		border: 1px solid rgba(255, 255, 255, 0.7) !important;
		border-radius: 10px !important;
		background: linear-gradient(135deg, #ff7a45 0%, #f4511e 100%) !important;
		color: #ffffff !important;
		font-size: 14px !important;
		font-weight: 700 !important;
		line-height: 1 !important;
		letter-spacing: -0.02em !important;
		box-shadow: 0 6px 18px rgba(180, 55, 18, 0.3) !important;
		transition: all 0.3s ease !important;
		text-decoration: none !important;
		white-space: nowrap !important;
	}
	.banner-cta-btn:hover {
		background: linear-gradient(135deg, #f46732 0%, #d84315 100%) !important;
		transform: translateY(-2px) !important;
		box-shadow: 0 9px 22px rgba(180, 55, 18, 0.38) !important;
		color: #ffffff !important;
	}
	.banner-cta-btn i {
		margin-left: 0 !important;
		transition: transform 0.3s ease !important;
	}
	.banner-cta-btn:hover i {
		transform: translateX(4px) !important;
	}
	.banner-cta-btn .banner-cta-cart {
		font-size: 16px !important;
	}
	.banner-cta-btn:hover .banner-cta-cart {
		transform: none !important;
	}
	/* 메인 쇼케이스 상품 이미지 수직 중앙정렬 (오픈 전 임시 인라인 스타일) */
	@media (min-width: 992px) {
		.main-showcase-carousel .product-image > a {
			display: flex !important;
			align-items: center !important;
			justify-content: center !important;
			height: 100% !important;
		}
		.main-showcase-carousel .product-image > a:nth-of-type(2) {
			bottom: 0 !important;
		}
		.main-showcase-carousel .product-image img {
			width: 100% !important;
			height: 100% !important;
			object-fit: contain !important;
		}
	}
	@media (max-width: 767.98px) {
		/* 메인 공통 상품 캐러셀: 오른쪽의 다음 상품만 살짝 노출 */
		.main-showcase-carousel .product-image {
			height: auto !important;
			min-height: 0 !important;
			aspect-ratio: 1 / 1;
		}
		.main-showcase-carousel .product-image > a {
			width: 100% !important;
			height: 100% !important;
		}
		.main-showcase-carousel .product-image img {
			width: 100% !important;
			height: 100% !important;
			max-width: none !important;
			max-height: none !important;
			object-fit: contain !important;
		}
		.main-showcase-carousel .owl-stage-outer {
			overflow: hidden !important;
		}
		.main-showcase-carousel .owl-item {
			transition: opacity 0.25s ease !important;
		}
		.main-product-banner-section > .container {
			padding-left: 14px !important;
			padding-right: 14px !important;
		}
		.banner-cta-btn {
			bottom: 14px !important;
			right: 14px !important;
			left: auto !important;
			width: auto !important;
			padding: 10px 14px !important;
			font-size: 13px !important;
			gap: 7px !important;
		}
	}

	/* 메인 하단 고객센터: 정보 밀도를 높인 요약 레이아웃 */
	.main-service-section {
		padding-top: 28px !important;
		padding-bottom: 24px !important;
		margin-bottom: 0 !important;
	}
	.main-service-section .bottom-link > .row {
		align-items: flex-start !important;
	}
	.main-service-section .bottom-link h1 {
		font-size: 2rem !important;
		line-height: 1.1 !important;
		margin: 10px 0 12px !important;
	}
	.main-service-section .bottom-link h3 {
		font-size: 1.25rem !important;
		margin: 0 0 10px !important;
	}
	.main-service-section .bottom-link h4 {
		font-size: 0.95rem !important;
		line-height: 1.55 !important;
		margin-bottom: 16px !important;
	}
	.main-service-section .bottom-link > .row > .col-md-5 > .row {
		margin: 0 0 8px !important;
		align-items: center !important;
	}
	.main-service-section .border-ccc {
		padding: 10px 6px !important;
		border-radius: 6px !important;
		background: #f8f9fa !important;
	}
	.main-service-section h5 {
		font-size: 0.82rem !important;
		line-height: 1.45 !important;
		margin: 0 !important;
		padding-top: 0 !important;
	}
	.main-service-section p.py-3 {
		padding: 4px 0 !important;
		margin-bottom: 12px !important;
		line-height: 1.55 !important;
	}

	@media (max-width: 767.98px) {
		.main-service-section {
			padding: 18px 0 14px !important;
		}
		.main-service-section .bottom-link h1 {
			font-size: 1.75rem !important;
			margin: 8px 0 10px !important;
		}
		.main-service-section .bottom-link h3 {
			font-size: 1.15rem !important;
			margin-bottom: 8px !important;
		}
		.main-service-section .bottom-link h4 {
			font-size: 0.84rem !important;
			line-height: 1.45 !important;
			margin-bottom: 12px !important;
		}
		.main-service-section .bottom-link > .row > .col-md-5 > .row {
			margin-bottom: 7px !important;
		}
		.main-service-section .bottom-link > .row > .col-md-5 > .row > .col-4 {
			padding-right: 4px !important;
		}
		.main-service-section .bottom-link > .row > .col-md-5 > .row > .col-8 {
			padding-left: 8px !important;
		}
		.main-service-section .border-ccc {
			padding: 9px 4px !important;
			font-size: 12px !important;
		}
		.main-service-section h5 {
			font-size: 0.76rem !important;
			line-height: 1.35 !important;
		}
		.main-service-section .bottom-link > .row > .col-md-3 {
			margin-top: 12px !important;
			padding-top: 14px !important;
			border-top: 1px solid #e9ecef !important;
		}
		/* 모바일 하단 메뉴와 중복되는 주문/고객센터/개인정보 링크는 생략 */
		.main-service-section .bottom-link > .row > .col-md-4 {
			display: none !important;
		}
		.main-service-section .sns-30 {
			width: 26px !important;
			height: 26px !important;
		}
		#footer .footer-widgets-wrap {
			padding: 14px 0 16px !important;
		}
		#footer .footer-logo-wrap {
			display: none !important;
			margin: 0 !important;
		}
		#footer small {
			line-height: 1.55 !important;
		}
	}

	/* 전역 모든 버튼류 border-radius 4px 통일 디자인 시스템 */
	.btn,
	.button,
	.btn-sm,
	.btn-lg,
	.movebtn,
	.movebtnsu,
	.movebtnre,
	button,
	input[type="button"],
	input[type="submit"],
	input[type="reset"] {
		border-radius: 4px !important;
	}

	/* 전역 페이징(Pagination) 모서리 4px 라운딩 통일 시스템 */
	.pagination {
		gap: 4px !important;
	}
	.pagination .page-item .page-link,
	.pagination .page-link,
	.pagination li a,
	.pagination li span,
	.pagination .page-item:first-child .page-link,
	.pagination .page-item:last-child .page-link {
		border-radius: 4px !important;
	}

/* ==========================================================================
   장바구니/관심상품 (cart.asp, zzim-list.asp) 반응형 테이블 & 카드 리디자인
   ========================================================================== */

/* ==========================================================================
   장바구니/관심상품 (cart.asp, zzim-list.asp) 반응형 테이블 & 카드 리디자인
   ========================================================================== */

/* PC 전용 (min-width: 768px) 칼같이 완벽히 들어맞는 명품 테이블 레이아웃 */
@media (min-width: 768px) {
#content table.cart,
table.cart,
.cart-page-table {
	display: table !important;
	width: 100% !important;
	border-collapse: collapse !important;
	table-layout: fixed !important;
	margin-bottom: 2.5rem !important;
	border: 1px solid #e9ecef !important;
	border-radius: 4px !important;
	background-color: #ffffff !important;
}

#content table.cart thead,
table.cart thead {
	display: table-header-group !important;
	background-color: #f8f9fa !important;
}

#content table.cart thead tr,
table.cart thead tr {
	display: table-row !important;
	background-color: #f8f9fa !important;
}

#content table.cart thead th,
table.cart thead th {
	display: table-cell !important;
	background-color: #f8f9fa !important;
	color: #333333 !important;
	font-weight: 700 !important;
	font-size: 15px !important;
	padding: 16px 8px !important;
	border-bottom: 2px solid #dee2e6 !important;
	border-top: none !important;
	border-left: none !important;
	border-right: none !important;
	vertical-align: middle !important;
	text-align: center !important;
	height: 52px !important;
	box-sizing: border-box !important;
}

#content table.cart thead th.cart-product-name,
table.cart thead th.cart-product-name {
	text-align: left !important;
	padding-left: 15px !important;
}

#content table.cart tbody,
table.cart tbody {
	display: table-row-group !important;
}

#content table.cart tbody tr.cart_item,
table.cart tbody tr.cart_item {
	display: table-row !important;
	border-bottom: 1px solid #e9ecef !important;
	background-color: #ffffff !important;
}

#content table.cart tbody tr.cart_item:hover,
table.cart tbody tr.cart_item:hover {
	background-color: #fafbfc !important;
}

#content table.cart tbody td,
table.cart tbody td {
	display: table-cell !important;
	vertical-align: middle !important;
	text-align: center !important;
	padding: 24px 8px !important; /* 상하 24px 시원한 공백 여백 */
	border-top: none !important;
	border-bottom: none !important;
	box-sizing: border-box !important;
}

#content table.cart tbody td.cart-product-name,
table.cart tbody td.cart-product-name {
	text-align: left !important;
	padding-left: 15px !important;
}

/* 칼같은 컬럼 고정 너비 지정 (합계 100%) */
table.cart .cart-product-chk,
table.cart .cart-product-remove- { width: 5% !important; }
table.cart .cart-product-thumbnail { width: 11% !important; }
table.cart .cart-product-name { width: 38% !important; }
table.cart .cart-product-price { width: 14% !important; }
table.cart .cart-product-quantity { width: 16% !important; }
table.cart .cart-product-subtotal { width: 11% !important; }
table.cart .cart-product-remove { width: 5% !important; }

/* 썸네일 이미지 크기 및 수직 정렬 */
table.cart .cart-product-thumbnail img {
	width: 75px !important;
	height: 75px !important;
	object-fit: contain !important;
	border: 1px solid #eee !important;
	border-radius: 6px !important;
	margin: 0 auto !important;
	display: block !important;
}

table.cart .cart-product-name a {
	font-weight: 600 !important;
	color: #222222 !important;
	font-size: 15px !important;
	line-height: 1.4 !important;
	display: inline-block !important;
}

/* 수량 박스 및 변경 버튼 완전 중앙 정렬 */
table.cart td.cart-product-quantity .quantity {
	float: none !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	vertical-align: middle !important;
	margin: 0 !important;
	height: 36px !important;
}

table.cart td.cart-product-quantity .quantity input.qty {
	height: 36px !important;
	width: 40px !important;
	line-height: 36px !important;
	margin: 0 1px !important;
	text-align: center !important;
	border: 1px solid #ced4da !important;
	border-radius: 3px !important;
	font-size: 14px !important;
}

table.cart td.cart-product-quantity .quantity input.minus,
table.cart td.cart-product-quantity .quantity input.plus {
	height: 36px !important;
	width: 30px !important;
	line-height: 36px !important;
	padding: 0 !important;
	margin: 0 !important;
	vertical-align: middle !important;
	border-radius: 3px !important;
	background-color: #f1f3f5 !important;
	border: 1px solid #ced4da !important;
}

table.cart td.cart-product-quantity .chgQ {
	vertical-align: middle !important;
	display: inline-block !important;
	margin-left: 6px !important;
	margin-top: 0 !important;
	margin-bottom: 0 !important;
	height: 36px !important;
	line-height: 34px !important;
	padding: 0 10px !important;
	font-size: 13px !important;
}
}

/* 모바일 전용 (max-width: 767.98px) G마켓 스타일 럭셔리 카드 레이아웃 */
@media (max-width: 767.98px) {
table.cart,
.cart-page-table {
	display: block !important;
	width: 100% !important;
	border: none !important;
}
table.cart thead,
.cart-page-table thead {
	display: none !important;
}
table.cart tbody,
.cart-page-table tbody {
	display: block !important;
	width: 100% !important;
}
table.cart tr.cart_item,
.cart-page-table tr.cart_item {
	display: block !important;
	width: 100% !important;
	background-color: #ffffff !important;
	border: 1px solid #e5e7eb !important;
	border-radius: 8px !important;
	padding: 14px !important;
	margin-bottom: 12px !important;
	position: relative !important;
	box-sizing: border-box !important;
	min-height: 120px !important;
}
table.cart td,
.cart-page-table td {
	display: block !important;
	padding: 0 !important;
	border: none !important;
	text-align: left !important;
}
table.cart td.cart-product-chk,
table.cart td.cart-product-remove- {
	position: absolute !important;
	top: 14px !important;
	left: 14px !important;
	z-index: 2 !important;
}
table.cart td.cart-product-remove {
	position: absolute !important;
	top: 12px !important;
	right: 14px !important;
	z-index: 2 !important;
}
table.cart td.cart-product-thumbnail {
	float: left !important;
	margin-left: 28px !important;
	width: 75px !important;
	height: 75px !important;
}
table.cart td.cart-product-thumbnail img {
	width: 75px !important;
	height: 75px !important;
	object-fit: contain !important;
	border: 1px solid #eee !important;
	border-radius: 6px !important;
}
table.cart td.cart-product-name {
	margin-left: 115px !important;
	padding-right: 28px !important;
	margin-bottom: 6px !important;
}
table.cart td.cart-product-name a {
	font-size: 14px !important;
	line-height: 1.4 !important;
	word-break: keep-all !important;
}
table.cart td.cart-product-price {
	display: none !important;
}
table.cart td.cart-product-quantity {
	margin-left: 115px !important;
	margin-bottom: 6px !important;
}
table.cart td.cart-product-subtotal {
	margin-left: 115px !important;
	font-size: 16px !important;
	font-weight: 700 !important;
	color: #356bb3 !important;
}
}
