/* 모바일·태블릿 보완 (2026-10)
   - 폼 칸의 고정 너비(40rem=640px) 때문에 휴대폰에서 화면이 좌우로 밀리던 문제 수정
   - 어떤 요소가 넓어져도 화면 전체가 좌우로 움직이지 않도록 막음
   - 팝업은 이 파일이 아니라 popup/popup_layer.php 안에서 휴대폰용으로 따로 처리 */

@media screen and (max-width: 1024px) {
	html { overflow-x: hidden; }
	body { max-width: 100%; }
	img, video, iframe, canvas { max-width: 100%; }
	table { max-width: 100%; }
	pre, code { white-space: pre-wrap; word-break: break-all; }
}

@media screen and (max-width: 768px) {
	/* 제품문의·견적요청 폼 */
	.form-box { width: 100% !important; box-sizing: border-box; padding: 1.5rem 1rem !important; border-radius: 16px !important; gap: 1.25rem !important; }
	.form-section { flex-direction: column !important; align-items: stretch !important; gap: 0.4rem !important; width: 100% !important; }
	.form-section h6 { width: auto !important; text-align: left !important; padding-top: 0 !important; margin: 0; }
	.form-section div { width: 100% !important; }
	.form-section select,
	.form-section input,
	.form-section textarea { width: 100% !important; box-sizing: border-box; font-size: 16px; } /* 16px 미만이면 아이폰이 입력 때 화면을 확대함 */
	.form-btn-box { width: 100% !important; box-sizing: border-box; }
	.km-privacy-integrated-box { width: 100% !important; box-sizing: border-box; padding: 1.25rem !important; }
	.privacy-detail-text { font-size: 0.9rem !important; line-height: 1.7 !important; }

	/* 긴 제목·주소가 화면 밖으로 나가지 않게 */
	h1, h2, h3, h4, h5, h6, p, li, td, th, a { overflow-wrap: anywhere; }
	.common-section { padding-left: 1rem !important; padding-right: 1rem !important; box-sizing: border-box; }

	/* 게시판 표(공지사항·입찰 정보)가 좁은 화면에서 넘치면 표 안에서만 움직이게 */
	.tbl_head01, .tbl_wrap { max-width: 100%; overflow-x: auto; -webkit-overflow-scrolling: touch; }

	/* 게시판 목록(공지사항·입찰 정보): 번호·등록자 칸은 숨기고 제목과 날짜만 한 줄씩 보여 줌 */
	table.brdlist { width: 100%; table-layout: auto; }
	table.brdlist col { width: auto !important; }
	table.brdlist th:nth-child(1), table.brdlist td:nth-child(1),
	table.brdlist th:nth-child(3), table.brdlist td:nth-child(3) { display: none; }
	table.brdlist th:nth-child(4), table.brdlist td:nth-child(4) { white-space: nowrap; width: 5.2rem; font-size: .82rem; text-align: right; padding-left: 4px; padding-right: 6px; }
	table.brdlist td:nth-child(2) { word-break: keep-all; overflow-wrap: anywhere; text-align: left; }
	table.brdlist td, table.brdlist th { height: auto; padding-top: 12px; padding-bottom: 12px; }
}

/* 모바일 하단(푸터) 연락처: 숫자·주소가 글자 단위로 끊겨 내려가지 않게, 한 줄에 하나씩 가운데 정렬 */
@media screen and (max-width: 768px) {
	.ft-content { text-align: center; }
	.ft-content p, .ft-content a, .ft-content span, .ft-content label { overflow-wrap: normal !important; word-break: keep-all; }
	.ft-content > p:first-of-type { font-size: .95rem; line-height: 1.5; }
	.ft-content .tel-box { flex-direction: column; align-items: center; gap: .35rem; margin: .9rem 0 1rem; }
	.ft-content .tel-box .line { display: none; }
	.ft-content .tel-box a, .ft-content .tel-box span { white-space: nowrap; font-size: 1rem; }
	.ft-content .session { flex-direction: column; align-items: center; gap: .4rem; font-size: .85rem; line-height: 1.5; }
	.ft-content .session .line { display: none; }
}
