@charset "utf-8";

/**
 * /ca/ vertical responsive overrides only.
 * PC (1200px+): 기존 레이아웃 유지 (today.new.css + frame 인라인 CSS 그대로)
 * 태블릿/모바일: 미디어쿼리 안에서만 레이아웃 변경
 */

body.site-calendar {
	overflow-x: hidden;
}

/* ===== 상품 상세 ccl01 (div 레이아웃) ===== */
body.site-calendar .pdt-detail-wrap {
	width: 100%;
	max-width: 1200px;
	margin: 0 auto;
	box-sizing: border-box;
}

body.site-calendar .pdt-detail-nav {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
	padding: 50px 10px 0;
	gap: 8px;
}

body.site-calendar .pdt-detail-nav__divider,
body.site-calendar .pdt-detail-sub__divider {
	height: 5px;
	background: #CCCCCC;
	margin-top: 20px;
}

body.site-calendar .pdt-detail-line {
	height: 1px;
	background: #D1D1D1;
	margin: 1px 0;
}

body.site-calendar .pdt-detail-main {
	display: flex;
	flex-wrap: wrap;
	gap: 15px;
	margin-top: 15px;
}

body.site-calendar .pdt-detail-image {
	flex: 0 0 405px;
	max-width: 100%;
	text-align: center;
}

body.site-calendar .pdt-detail-image img {
	max-width: 100%;
	height: auto;
}

body.site-calendar .pdt-detail-info {
	flex: 1 1 360px;
	min-width: 0;
}

body.site-calendar .pdt-detail-spec {
	width: 100%;
}

body.site-calendar .pdt-detail-row {
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
	width: 100%;
	min-height: 32px;
}

body.site-calendar .pdt-detail-row--title {
	min-height: 43px;
	align-items: center;
}

body.site-calendar .pdt-detail-row--title .pdt-detail-value.det_name {
	flex: 1 1 100%;
	padding: 0;
}

body.site-calendar .pdt-detail-label {
	flex: 0 0 113px;
	width: 113px;
	max-width: 113px;
	min-width: 113px;
	display: flex;
	align-items: center;
	justify-content: center;
	background: #F9F9F9;
	padding: 0 5px;
	box-sizing: border-box;
	min-height: 32px;
	white-space: nowrap;
}

body.site-calendar .pdt-detail-label--alt {
	background: #F6F3EE;
}

body.site-calendar .pdt-detail-value {
	flex: 1 1 200px;
	display: flex;
	align-items: center;
	padding: 6px 10px;
	box-sizing: border-box;
	min-width: 0;
}

body.site-calendar .pdt-detail-value--price-table {
	flex: 1 1 200px;
	flex-direction: column;
	align-items: flex-start;
	padding: 10px;
	min-width: 0;
}

body.site-calendar .pdt-detail-row--price-table {
	align-items: stretch;
}

body.site-calendar .pdt-detail-row--price-table .pdt-detail-label {
	align-self: stretch;
}

body.site-calendar .pdt-detail-divider {
	width: 100%;
	height: 3px;
	background: url('/images/calendar/det_info_section_dot.gif') repeat-x left center;
}

body.site-calendar .pdt-detail-row--qty {
	align-items: center;
}

body.site-calendar .pdt-detail-qty {
	display: flex;
	align-items: center;
	gap: 8px;
	flex-wrap: wrap;
}

body.site-calendar .pdt-detail-qty-btn {
	border: none;
	background: transparent;
	padding: 0;
	cursor: pointer;
	line-height: 0;
}

body.site-calendar .pdt-detail-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin-top: 20px;
	padding-bottom: 10px;
}

body.site-calendar .pdt-detail-btn {
	flex: 1 1 140px;
	max-width: 152px;
	min-height: 37px;
	border: 1px solid #A4A4A4;
	background: #FFFFFF;
	display: flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
}

body.site-calendar .pdt-detail-btn--buy {
	border-color: #A8311C;
	background: #C5442E;
}

body.site-calendar .pdt-detail-btn a {
	display: block;
	width: 100%;
	text-align: center;
	line-height: 35px;
}

body.site-calendar .pdt-detail-sub {
	width: 100%;
}

body.site-calendar .pdt-detail-sub__body {
	padding: 30px 10px;
	text-align: center;
}

body.site-calendar .pdt-detail-spec select.form_solid {
	max-width: 100%;
	width: 100%;
}

/* 구매수량별 단가표 (Handsontable / introTableDiv) — 공통 */
body.site-calendar .pdt-detail-row--price-table .widget1,
body.site-calendar .pdt-detail-row--price-table #container {
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
}

body.site-calendar #introTableDiv {
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
}

body.site-calendar #introTableDiv tbody tr td,
body.site-calendar #introTableDiv .handsontable td {
	text-align: center;
	white-space: nowrap;
	cursor: pointer;
	touch-action: manipulation;
}

body.site-calendar #introTableDiv tbody tr:first-child > td,
body.site-calendar #introTableDiv .handsontable tbody tr:first-child > td {
	background-color: #f3f3f3;
	font-weight: bold;
}

body.site-calendar #introTableDiv tbody tr:not(:first-child) > td:first-child,
body.site-calendar #introTableDiv .handsontable tbody tr:not(:first-child) > td:first-child {
	background-color: #fdf6d5;
}

body.site-calendar #introTableDiv .handsontable td.current {
	background-color: #dceeff !important;
}

/* LiveFeed 상담채팅 트리거: 모바일 기본값(middle) → 하단 고정 */
body.site-calendar #_LF_CHAT_TRIGGER,
#_LF_CHAT_TRIGGER._LF_MOBILE {
	top: auto !important;
	bottom: 10px !important;
	margin-top: 0 !important;
}

@supports (bottom: env(safe-area-inset-bottom)) {
	body.site-calendar #_LF_CHAT_TRIGGER,
	#_LF_CHAT_TRIGGER._LF_MOBILE {
		bottom: calc(10px + env(safe-area-inset-bottom)) !important;
	}
}

/* 네이버 검색 배너 — PC/태블릿 기본 1행 (구 table-cell 레이아웃) */
body.site-calendar .list-naver-banner-inner {
	display: table;
	width: 100%;
	max-width: 1200px;
	margin: 0 auto;
	line-height: 36px;
}

body.site-calendar .list-naver-col {
	display: table-cell;
	vertical-align: middle;
}

body.site-calendar .list-naver-col:first-child {
	width: 286px;
	text-align: right;
	padding-right: 20px;
	white-space: nowrap;
}

body.site-calendar .list-naver-col--search {
	width: 344px;
	background-repeat: no-repeat;
	background-position: left center;
	background-size: auto 36px;
}

body.site-calendar .list-naver-col--search .det_name {
	padding-left: 140px;
}

body.site-calendar .list-naver-col:last-child {
	text-align: left;
	padding-left: 20px;
}

/* ca/dr 하이브리드 hnavi — PC 드롭다운 / 모바일 flat (§5.2) */
body.site-calendar .hnaviDiv--desktop {
	display: block;
}

body.site-calendar .hnaviDiv--mobile {
	display: none;
}

/* ===== PC/태블릿 (768px+): 헤더 스크롤 고정 (fixed + spacer, 페이지 끝까지 유지) ===== */
@media (min-width: 768px) {
	body.site-calendar #header_section,
	body.site-calendar .header {
		overflow: visible;
	}

	body.site-calendar .hnavi {
		overflow: visible;
	}

	body.site-calendar .hnaviDiv--desktop {
		display: block !important;
	}

	body.site-calendar .hnaviDiv--mobile {
		display: none !important;
	}

	body.site-calendar .header .hmenu.fix {
		position: fixed !important;
		top: 0 !important;
		left: 0 !important;
		right: 0 !important;
		width: 100% !important;
		z-index: 1002 !important;
		height: auto;
		min-height: 40px;
		background: #fff;
	}

	body.site-calendar .header .hnavi.fix {
		position: fixed !important;
		left: 0 !important;
		right: 0 !important;
		width: 100% !important;
		z-index: 1001 !important;
		background: #fff;
	}

	/* 상품 상세 ccl01 — PC 기존 table 레이아웃에 맞춤 */
	body.site-calendar .pdt-detail-main {
		align-items: stretch;
	}

	body.site-calendar .pdt-detail-image {
		display: flex;
		align-items: center;
		justify-content: center;
		align-self: stretch;
	}

	/* 단가표 PC: 영역 꽉 채움, 스크롤 없음 */
	body.site-calendar .pdt-detail-row--price-table .widget1,
	body.site-calendar .pdt-detail-row--price-table #container,
	body.site-calendar #introTableDiv {
		overflow: hidden;
	}

	body.site-calendar #introTableDiv .handsontable {
		width: 100% !important;
		overflow: hidden;
	}

	body.site-calendar #introTableDiv .wtHolder {
		overflow: hidden !important;
		height: auto !important;
		width: 100% !important;
		max-width: 100% !important;
	}

	body.site-calendar #introTableDiv .wtHider,
	body.site-calendar #introTableDiv .wtSpreader {
		height: auto !important;
		width: 100% !important;
		max-width: 100% !important;
	}

	body.site-calendar #introTableDiv .handsontable table.htCore {
		width: 100% !important;
		max-width: 100% !important;
		table-layout: fixed;
	}

	body.site-calendar #introTableDiv tbody tr td,
	body.site-calendar #introTableDiv .handsontable td {
		font-size: 9pt;
		line-height: 21px;
		height: 24px;
		padding: 0 4px !important;
	}
}

/* ===== PC (1200px 이상): 의도적으로 오버라이드 없음 ===== */

/* ===== 태블릿 (768px ~ 1199px) ===== */
@media (max-width: 1199px) {
	body.site-calendar table[width="1200"],
	body.site-calendar table[width="960"] {
		width: 100% !important;
		max-width: 1200px;
	}

	body.site-calendar #main_content {
		width: 100%;
		max-width: 1200px;
		margin: 0 auto;
		padding: 0 12px;
		box-sizing: border-box;
	}

	body.site-calendar .best5,
	body.site-calendar .list {
		width: 100%;
		max-width: 100%;
	}

	body.site-calendar .hmenu-inner,
	body.site-calendar .hmain-inner {
		width: 100% !important;
		max-width: 1200px;
		padding-left: 12px;
		padding-right: 12px;
		box-sizing: border-box;
	}

	body.site-calendar .hnavi {
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
	}

	body.site-calendar .hnavi-bar--mobile {
		width: 100% !important;
		max-width: 100% !important;
	}

	/* 태블릿: 카테고리 메뉴 우선 확보 */
	body.site-calendar .hnavi-menu {
		flex: 627 1 0;
	}

	body.site-calendar .hnavi-links--mobile {
		flex: 523 1 0;
	}

	/* PC/태블릿(768px+): hmenu/hnavi fixed + spacer — JS updateHeaderFix */

	body.site-calendar .mobile-hero-inner {
		max-width: 1200px;
		margin: 0 auto;
	}

	body.site-calendar #slides {
		width: 100% !important;
		max-width: 100%;
		overflow: hidden;
	}

	body.site-calendar #slides img:first-of-type {
		width: 100% !important;
		height: auto !important;
		display: block;
	}

	body.site-calendar #slides img:not(:first-of-type) {
		display: none !important;
	}

	body.site-calendar .list_main_mobile,
	body.site-calendar .list_main_cal,
	body.site-calendar [style*="width:1200px"] {
		width: 100% !important;
		max-width: 1200px;
		padding-left: 12px !important;
		padding-right: 12px !important;
		box-sizing: border-box;
	}

	/* 상품 그리드: 4열 */
	body.site-calendar .best5_tab > ul,
	body.site-calendar .best5_rank > ul,
	body.site-calendar .best5_contents > ul,
	body.site-calendar .list_contents > ul {
		width: 100% !important;
		max-width: 1200px;
		display: flex !important;
		flex-wrap: wrap;
		height: auto !important;
		line-height: normal !important;
		padding: 0 4px;
		box-sizing: border-box;
	}

	body.site-calendar .best5_tab > ul > li {
		float: none !important;
		flex: 1 1 20%;
		width: auto !important;
		background-size: 100% 40px !important;
	}

	body.site-calendar .best5_rank > ul > li {
		float: none !important;
		flex: 1 1 20%;
		width: auto !important;
	}

	body.site-calendar .best5_contents > ul > li,
	body.site-calendar .list_contents > ul > li {
		float: none !important;
		flex: 0 0 calc(25% - 10px);
		width: calc(25% - 10px) !important;
		line-height: normal !important;
		clear: none !important;
	}

	body.site-calendar .item_thumb > a > img {
		width: auto !important;
		max-width: 100% !important;
		height: auto !important;
		display: block;
		margin: 0 auto;
	}

	body.site-calendar .item_thumb > a > img:hover {
		width: auto !important;
		max-width: 100% !important;
		height: auto !important;
		opacity: 0.85;
	}

	body.site-calendar #main_content #pImage {
		max-width: 100%;
		height: auto !important;
	}
}

/* ===== 모바일 (767px 이하) ===== */
@media (max-width: 767px) {
	/* 빠른견적 팝업 — PC 절대좌표(left:750px)가 모바일 레이아웃 깨짐 → 숨김 (§5.10) */
	body.site-calendar #divpop {
		display: none !important;
		visibility: hidden !important;
		pointer-events: none !important;
	}

	body.site-calendar #header_section {
		position: sticky;
		top: 0;
		left: 0;
		right: 0;
		width: 100% !important;
		max-width: 100% !important;
		z-index: 1000;
		background: #fff;
		box-sizing: border-box;
	}

	body.site-calendar .header,
	body.site-calendar .hmenu,
	body.site-calendar .hmain,
	body.site-calendar .hnavi,
	body.site-calendar #body_section,
	body.site-calendar #body_main,
	body.site-calendar #main_content,
	body.site-calendar .best5,
	body.site-calendar .list,
	body.site-calendar .best5_tab,
	body.site-calendar .best5_tab > ul,
	body.site-calendar .best5_container,
	body.site-calendar .best5_contents,
	body.site-calendar .list_container,
	body.site-calendar .list_contents {
		width: 100% !important;
		max-width: 100% !important;
		box-sizing: border-box;
	}

	body.site-calendar #main_content {
		padding-left: 0 !important;
		padding-right: 0 !important;
		margin: 0 !important;
	}

	/* 메인 배너: div 구조, 슬라이드 1장만 표시 */
	body.site-calendar .mobile-hero,
	body.site-calendar .mobile-hero-inner {
		width: 100% !important;
		max-width: 100% !important;
	}

	body.site-calendar #slides {
		width: 100% !important;
		max-width: 100%;
		height: auto !important;
		line-height: 0;
	}

	body.site-calendar #slides .slidesjs-container,
	body.site-calendar #slides .slidesjs-control,
	body.site-calendar #slides .slidesjs-slide {
		width: 100% !important;
		height: auto !important;
		position: static !important;
	}

	body.site-calendar #slides img:first-of-type {
		width: 100% !important;
		height: auto !important;
		display: block !important;
	}

	body.site-calendar #slides img:not(:first-of-type) {
		display: none !important;
	}

	body.site-calendar img {
		max-width: 100%;
		height: auto;
	}

	body.site-calendar .hmenu {
		height: auto;
		min-height: 40px;
	}

	body.site-calendar .hmenu-inner {
		flex-wrap: wrap;
		height: auto;
		padding-top: 4px;
		padding-bottom: 4px;
	}

	body.site-calendar .hmenu-user {
		flex-wrap: wrap;
		gap: 6px;
		font-size: 11px;
		order: 2;
		width: 100%;
		justify-content: flex-end;
	}

	body.site-calendar .hmenu-search.show {
		order: 3;
		width: 100%;
		margin-left: 0;
		margin-top: 4px;
	}

	body.site-calendar .hmenu-search input[type="text"] {
		width: 100%;
		max-width: none;
	}

	body.site-calendar .hmain-inner {
		flex-wrap: wrap;
		height: auto;
		min-height: 70px;
		padding-top: 8px;
		padding-bottom: 8px;
		justify-content: center;
	}

	body.site-calendar .hmain-banner {
		display: none;
	}

	body.site-calendar .hmain-logo {
		width: 100%;
		justify-content: center;
	}

	body.site-calendar .hmain-logo img {
		max-width: 180px;
		width: auto;
		height: auto;
	}

	body.site-calendar .hnavi .txt16 {
		font-size: 13px;
	}

	body.site-calendar .hnavi {
		overflow-x: visible;
	}

	body.site-calendar .hnavi-bar--mobile {
		flex-wrap: wrap;
		height: auto;
		min-height: 50px;
		align-items: flex-start;
	}

	body.site-calendar .hnavi-home {
		flex: 0 0 50px;
		height: 50px;
		align-self: flex-start;
	}

	body.site-calendar .hnavi-links--mobile {
		display: none;
	}

	body.site-calendar .hnavi-menu {
		flex: 1 1 calc(100% - 50px);
		max-width: calc(100% - 50px);
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		align-content: center;
		overflow-x: visible;
		white-space: normal;
		height: auto;
		min-height: 50px;
		padding: 4px 8px 4px 4px;
		box-sizing: border-box;
	}

	body.site-calendar .hnavi-menu a {
		flex: 0 0 auto;
		white-space: nowrap;
		margin: 3px 6px;
		font-size: 13px;
	}

	/* 푸터: 세로 스택 */
	body.site-calendar .footer-links,
	body.site-calendar .footer-main {
		min-width: 0 !important;
	}

	body.site-calendar .footer-links {
		height: auto;
		min-height: 48px;
		padding: 10px 0;
		box-sizing: border-box;
	}

	body.site-calendar .footer-main-inner {
		width: 100% !important;
		max-width: 1200px;
		padding: 0 12px;
		box-sizing: border-box;
		flex-direction: column;
	}

	/* cs 링크줄은 가로 wrap — column 상속 시 흰 글자가 footer-main(흰 배경)으로 넘어가 숨음 */
	body.site-calendar .footer-links .footer-main-inner {
		flex-direction: row;
		flex-wrap: wrap;
		gap: 8px;
		justify-content: center;
		align-items: center;
		text-align: center;
	}

	body.site-calendar .footer-links a {
		display: inline-block;
		margin: 2px 4px;
	}

	body.site-calendar .footer-links img[src*="cs_section"] {
		display: none;
	}

	body.site-calendar .footer-col {
		min-width: 0;
		width: 100%;
	}

	body.site-calendar .footer-banner {
		flex: 1 1 100%;
		align-items: center;
	}

	/* 베스트 탭 */
	body.site-calendar .best5_tab > ul > li {
		flex: 1 1 33.33%;
		font-size: 11px;
		line-height: 36px !important;
	}

	body.site-calendar .best5_rank > ul {
		display: none !important;
	}

	body.site-calendar div[style*="width:1200px"],
	body.site-calendar div[style*="width: 1200px"] {
		width: 100% !important;
		max-width: 100% !important;
		box-sizing: border-box;
	}

	/* 리스트 섹션 제목 — today.new.css 36px/line-height 80px 축소 */
	body.site-calendar .list_main_cal {
		font-size: 30px !important;
		line-height: 1.25 !important;
		letter-spacing: -0.5px !important;
		padding: 6px 12px !important;
		box-sizing: border-box;
	}

	/* 상품 그리드: 2열 (인라인 frame CSS보다 우선) */
	body.site-calendar .best5_tab > ul,
	body.site-calendar .best5_contents > ul,
	body.site-calendar .list_contents > ul,
	body.site-calendar .list .list_contents > ul {
		display: flex !important;
		flex-wrap: wrap !important;
		width: 100% !important;
		max-width: 100% !important;
		height: auto !important;
		margin: 0 auto !important;
		padding: 0 4px !important;
		box-sizing: border-box !important;
	}

	body.site-calendar .best5_contents > ul > li,
	body.site-calendar .best5_contents > ul > li:nth-of-type(5n-4),
	body.site-calendar .best5_contents > ul > li:not(:nth-of-type(5n-4)),
	body.site-calendar .list_contents > ul > li,
	body.site-calendar .list_contents>ul>li,
	body.site-calendar .list .list_contents > ul > li,
	body.site-calendar .list .list_contents > ul > li:nth-of-type(5n-4),
	body.site-calendar .list .list_contents > ul > li:not(:nth-of-type(5n-4)),
	body.site-calendar .list_contents>ul>li:nth-of-type(5n-4),
	body.site-calendar .list_contents>ul>li:not(:nth-of-type(5n-4)) {
		display: block !important;
		float: none !important;
		clear: none !important;
		flex: 0 0 calc(50% - 8px) !important;
		width: calc(50% - 8px) !important;
		max-width: calc(50% - 8px) !important;
		line-height: normal !important;
		vertical-align: top !important;
		padding: 4px !important;
		padding-left: 4px !important;
		margin-top: 12px !important;
		box-sizing: border-box !important;
	}

	body.site-calendar .best5 .item_thumb,
	body.site-calendar .best5 .item_thumb > a,
	body.site-calendar .list .item_thumb,
	body.site-calendar .list .item_thumb > a {
		display: block !important;
		width: 100% !important;
		line-height: normal !important;
	}

	body.site-calendar .list-naver-banner-inner {
		display: flex !important;
		flex-wrap: wrap !important;
		justify-content: center !important;
		align-items: center !important;
		width: 100% !important;
		max-width: 100% !important;
		line-height: 1.5 !important;
	}

	body.site-calendar .list-naver-col {
		display: block !important;
		width: auto !important;
		max-width: none !important;
		flex: 0 0 auto !important;
		padding: 4px 8px !important;
		box-sizing: border-box !important;
		text-align: center !important;
	}

	body.site-calendar .list-naver-col:first-child {
		flex: 1 1 100% !important;
		width: 100% !important;
		padding: 0 8px 0 !important;
		text-align: center !important;
	}

	body.site-calendar .list-naver-col:first-child .det_name {
		font-size: clamp(16px, 3vw, 18px) !important;
		line-height: 1.3 !important;
	}

	body.site-calendar .list-naver-col--search {
		display: flex !important;
		align-items: center !important;
		justify-content: flex-start !important;
		width: min(344px, 92vw) !important;
		max-width: 344px !important;
		min-width: 0 !important;
		height: 32px !important;
		min-height: 32px !important;
		margin: 8px auto !important;
		padding-right: 32px !important;
		box-sizing: border-box !important;
		background-size: 100% 32px !important;
		background-position: left center !important;
		background-repeat: no-repeat !important;
	}

	body.site-calendar .list-naver-col--search .det_name {
		padding-left: 41% !important;
		padding-right: 4px !important;
		white-space: nowrap !important;
		overflow: hidden !important;
		text-overflow: ellipsis !important;
		font-size: clamp(13px, 3.6vw, 15px) !important;
		line-height: 32px !important;
	}

	body.site-calendar .list-naver-col:last-child {
		flex: 1 1 100% !important;
		width: 100% !important;
		text-align: center !important;
		padding: 6px 12px 0 !important;
	}

	body.site-calendar .list-naver-col:last-child .det_name {
		font-size: clamp(16px, 2.7vw, 18px) !important;
		line-height: 1.35 !important;
	}

	body.site-calendar .list .item_caption {
		line-height: 1.4 !important;
		padding: 6px 2px;
	}

	body.site-calendar .best5_contents .item_thumb > a > img,
	body.site-calendar .best5_contents .item_thumb > a > img:hover,
	body.site-calendar .list .item_thumb > a > img,
	body.site-calendar .list .item_thumb > a > img:hover {
		width: 100% !important;
		height: auto !important;
		max-width: 100% !important;
	}

	body.site-calendar .item_thumb {
		width: 100%;
		line-height: normal !important;
		display: block;
		position: relative;
	}

	body.site-calendar .item_thumb .size-badge {
		left: 6px;
		bottom: 6px;
		padding: 3px 7px;
		font-size: 10px;
		max-width: calc(100% - 12px);
	}

	body.site-calendar .item_caption {
		line-height: 1.4 !important;
		padding: 6px 2px;
	}

	/* 리스트 정렬 탭 */
	body.site-calendar #main_content table[width="1200"] td[background*="list_tab"] {
		display: inline-block;
		width: auto !important;
		min-width: 80px;
		padding: 8px 10px !important;
		background-size: cover !important;
	}

	body.site-calendar #main_content table[width="1200"] tr:has(td[background*="list_tab"]) {
		display: flex;
		flex-wrap: wrap;
		gap: 4px;
	}

	/* 상품 상세 ccl01 모바일 */
	body.site-calendar .pdt-detail-nav {
		padding-top: 20px;
	}

	body.site-calendar .pdt-detail-image,
	body.site-calendar .pdt-detail-info {
		flex: 1 1 100%;
		width: 100% !important;
		max-width: 100% !important;
	}

	body.site-calendar .pdt-detail-label {
		flex: 0 0 100%;
		width: auto;
		max-width: none;
		min-width: 0;
		justify-content: flex-start;
		padding: 0 5px;
	}

	body.site-calendar .pdt-detail-value {
		flex: 1 1 100%;
	}

	body.site-calendar .pdt-detail-row--qty .pdt-detail-label,
	body.site-calendar .pdt-detail-row--qty .pdt-detail-value {
		flex: 1 1 100%;
	}

	/* 단가표 모바일: #introTableDiv 한 곳만 가로 스크롤 (중첩 scroll이 탭 무시 방지) */
	body.site-calendar .pdt-detail-row--price-table .widget1,
	body.site-calendar .pdt-detail-row--price-table #container {
		overflow: visible;
	}

	body.site-calendar #introTableDiv {
		overflow-x: auto;
		overflow-y: hidden;
		-webkit-overflow-scrolling: touch;
		touch-action: pan-x;
	}

	body.site-calendar #introTableDiv .handsontable {
		width: auto !important;
		min-width: 100%;
		overflow: visible;
	}

	body.site-calendar #introTableDiv .wtHolder {
		overflow: visible !important;
		height: auto !important;
		width: auto !important;
		max-width: none !important;
	}

	body.site-calendar #introTableDiv .wtHider,
	body.site-calendar #introTableDiv .wtSpreader {
		width: auto !important;
		height: auto !important;
	}

	body.site-calendar #introTableDiv .handsontable table.htCore {
		width: auto !important;
		min-width: 100%;
		table-layout: auto;
	}

	body.site-calendar #introTableDiv tbody tr td,
	body.site-calendar #introTableDiv .handsontable td {
		font-size: 10px;
		line-height: 1.35;
		padding: 5px 3px !important;
		min-width: 52px;
		height: auto;
	}

	body.site-calendar .pdt-detail-actions {
		justify-content: center;
	}

	body.site-calendar .pdt-detail-btn {
		flex: 1 1 calc(50% - 10px);
		max-width: none;
	}

	body.site-calendar #sub_content,
	body.site-calendar .pdt-detail-sub {
		width: 100% !important;
		max-width: 100% !important;
	}

	body.site-calendar [style*="display:table-cell"][style*="width:600px"] {
		display: block !important;
		width: 100% !important;
	}

	body.site-calendar [style*="height:300px"][style*="background-image"] {
		height: auto !important;
		min-height: 180px;
		background-size: cover;
	}

	/* §5.16 프로모 배너 list_main_bnr — 모바일 타이포 */
	body.site-calendar .list_main_bnr1 {
		font-size: 14px;
		line-height: 1.4;
	}

	body.site-calendar .list_main_bnr2l,
	body.site-calendar .list_main_bnr2b {
		font-size: clamp(22px, 6vw, 26px);
		line-height: 1.25;
		letter-spacing: -0.5px;
	}

	body.site-calendar .list_main_bnr3 {
		font-size: 13px;
		line-height: 1.45;
	}

	body.site-calendar [style*="padding-bottom:65px"] {
		padding-bottom: 16px !important;
	}

	body.site-calendar [style*="display:table-cell"][style*="width:600px"] img[width="600"] {
		display: block;
		width: 100%;
		max-width: 100%;
		height: auto;
	}

	/* ca/dr 하이브리드 hnavi — 모바일 flat 바 표시 */
	body.site-calendar .hnaviDiv--desktop {
		display: none !important;
	}

	body.site-calendar .hnaviDiv--mobile {
		display: flex !important;
	}

	body.site-calendar .hnavi {
		height: auto !important;
	}
}
