/**
 * 문의(/contact) — 2차 재퍼블리싱 CSS (2026-07-05).
 * 폼 위젯(57b953c) 블록은 마크업 원문 보존 — 관련 규칙은 post-5223에서 스코프만 치환해 이관.
 * 뷰포트: D 기본 / T ≤1024 / M ≤767.
 */

.contact-sec { background: #F6F8FB; padding: 160px 15px 0; }
.contact-inner { max-width: 1280px; margin: 0 auto; display: flex; gap: 20px; } /* e-con 기본 아이템 간격 */

/* ── 좌측 정보 칼럼 (원본 debccfd, 33.33%) ── */
.contact-info { width: calc((100% - 20px) / 3); padding-bottom: 160px; display: flex; flex-direction: column; gap: 20px; }
.contact-info .contact-label { margin: 0; }
.contact-info .contact-title { margin: 0; font-size: 60px; font-weight: 500; line-height: 1.2; }
.contact-info .contact-lead { margin: 10px 0 0; font-size: 18px; font-weight: 500; }
.contact-info .contact-desc { margin: 0 0 10px; font-size: 16px; font-weight: 500; color: #666; }
.contact-info .contact-desc p { margin: 0; }
.contact-channels {
	margin: 0;
	background: #fff;
	border-radius: 10px;
	padding: 24px;
	display: grid;
	grid-template-columns: 2fr 5fr;
	gap: 14px 10px;
	font-weight: 500;
}
.contact-channels dt { color: #888; }
.contact-channels dd { margin: 0; color: #212121; }
.contact-info .contact-note { margin: 0 0 10px; font-size: 13px; font-weight: 500; color: #666; }

/* ── 우측 폼 칼럼 (원본 1becd3f, 66.66%) ── */
.contact-form-col { width: calc((100% - 20px) / 3 * 2); padding-left: 50px; margin-bottom: 160px; }
.contact-form-card { background: #fff; border-radius: 20px; padding: 60px 60px 80px; } /* 하단 +20: 원본 카드 내 html 위젯 자리 gap */

/* ── 폼 위젯 규칙 (post-5223 원문, .elementor-5223 → .contact 스코프 치환) ── */
.contact .elementor-element-57b953c .elementor-field-group { padding-right: calc(20px/2); padding-left: calc(20px/2); margin-bottom: 40px; }
.contact .elementor-element-57b953c .elementor-form-fields-wrapper { margin-left: calc(-20px/2); margin-right: calc(-20px/2); margin-bottom: -40px; }
.contact .elementor-element-57b953c .elementor-field-group.recaptcha_v3-bottomleft, .contact .elementor-element-57b953c .elementor-field-group.recaptcha_v3-bottomright { margin-bottom: 0; }
body:not(.rtl) .contact .elementor-element-57b953c .elementor-labels-inline .elementor-field-group > label { padding-right: 14px; }
body .contact .elementor-element-57b953c .elementor-labels-above .elementor-field-group > label { padding-bottom: 14px; }
.contact .elementor-element-57b953c .elementor-field-group > label { font-size: 20px; font-weight: 700; }
.contact .elementor-element-57b953c .elementor-field-group:not(.elementor-field-type-upload) .elementor-field:not(.elementor-select-wrapper) { background-color: #F6F8FB; border-color: #00000009; border-width: 0; border-radius: 5px; }
.contact .elementor-element-57b953c .elementor-field-group .elementor-select-wrapper select { background-color: #F6F8FB; border-color: #00000009; border-width: 0; border-radius: 5px; }
.contact .elementor-element-57b953c .elementor-button { font-size: 18px; font-weight: 700; border-radius: 8px; }
.contact .elementor-element-57b953c .elementor-button[type="submit"] { color: #fff; }
.contact .elementor-element-57b953c .elementor-button[type="submit"]:hover { color: #fff; }

/* ── html 위젯 인라인 <style> 이관 (폼 세부) ── */
#form-field-field_10 { width: 18px !important; height: 18px !important; }
.elementor-field-option { display: flex; align-items: center !important; gap: 6px; }
#file-upload-button { padding: 20px; }
.open-privacy { float: right; color: #1b62ed; }
.left-span { padding-right: 10px; }
.t-blue { color: #1B62ED; }
@media screen and (max-width: 599px) {
	.left-span { font-size: 14px; }
	.right-span { font-size: 12px; }
}

/* ── reCAPTCHA 배지 좌하단 배치(2026-07-11 대표님 요청 — 우하단 기본값이 카카오 플로팅과 겹침) ──
   구글 인라인은 right 슬라이드(접힘 -186px)라 좌측 미러 불가(로고가 배지 왼쪽) →
   좌측 고정 + 폭 70px(로고만, 인라인 overflow:hidden 활용) 접힘, hover 시 폭 확장으로 재현. */
.grecaptcha-badge { right: auto !important; left: 0 !important; width: 70px !important; transition: width 0.3s ease !important; }
.grecaptcha-badge:hover { width: 256px !important; }

@media (max-width: 1024px) {
	.contact-info .contact-title { font-size: 36px; }
	.contact-channels { padding: 16px; }
	.contact-channels dd { font-size: 14px; }
	.contact-form-col { padding-left: 20px; }
	.contact .elementor-element-57b953c .elementor-field-group > label { font-size: 16px; }
}

@media (max-width: 767px) {
	.contact-sec { padding: 60px 15px 65px; }
	.contact-inner { flex-direction: column; }
	.contact-info { width: 100%; padding-bottom: 0; }
	.contact-form-col { width: 100%; }
	.contact-info .contact-title { font-size: 28px; }
	.contact-channels { border-radius: 20px; grid-template-columns: 1fr; }
	.contact-channels dd { line-height: 22.5px; } /* 원본 M 카드 316px 실측 정합 */
	.contact-form-col { padding-left: 0; margin-bottom: 80px; }
	.contact-form-card { padding: 20px 20px 40px; }
}
