/* contact page 전용 — 딥네이비 배경 풀폭 폼 */
.contact-page { background: #1c2d4a; padding: 100px 0; min-height: 70vh; display:flex; align-items:center; }
.contact-page .wrap { display:grid; grid-template-columns: 1fr 1.1fr; gap:60px; align-items:center; }
.contact-page .c-copy .eyebrow { color:#b9967b; font-size:13px; font-weight:700; letter-spacing:2px; }
.contact-page .c-copy h1 { color:#fff; font-size:clamp(32px,4vw,48px); font-weight:800; line-height:1.2; margin:16px 0; }
.contact-page .c-copy p { color:rgba(255,255,255,.7); font-size:16px; line-height:1.7; }
.contact-page .c-copy .kakao-link { display:inline-block; margin-top:24px; color:#b9967b; font-weight:600; text-decoration:none; }
.contact-card { background:#fff; border-radius:20px; padding:44px; }
.contact-card .form-grid { display:grid; grid-template-columns:1fr 1fr; gap:18px; }
.contact-card .field { display:flex; flex-direction:column; }
.contact-card .field.full { grid-column:1/-1; }
.contact-card label { font-size:13px; font-weight:600; color:#374151; margin-bottom:7px; }
.contact-card label .req { color:#dc2626; }
.contact-card input, .contact-card select { padding:13px 15px; border:1.5px solid #dde2ea; border-radius:9px; font-size:14px; font-family:inherit; background:#f8f9fc; outline:none; transition:border-color .2s; box-sizing:border-box; width:100%; }
.contact-card input:focus, .contact-card select:focus { border-color:#b9967b; background:#fff; }
.contact-card .btn-submit { width:100%; margin-top:24px; padding:16px; background:#1c2d4a; color:#fff; border:none; border-radius:10px; font-size:16px; font-weight:700; cursor:pointer; font-family:inherit; }
.contact-card .btn-submit:hover { background:#24395e; }
.contact-card .form-note { text-align:center; margin-top:14px; font-size:12.5px; color:#9ca3af; }
.contact-success { text-align:center; padding:30px 0; }
.contact-success .big-ck { width:64px; height:64px; line-height:64px; margin:0 auto 16px; background:#1c2d4a; color:#fff; border-radius:50%; font-size:30px; }
.contact-success h3 { font-size:20px; font-weight:800; color:#1c2d4a; margin-bottom:10px; }
.contact-success p { color:#6b7280; line-height:1.7; }
.contact-card .field.err input, .contact-card .field.err select { border-color:#dc2626; background:#fef4f3; }
.contact-card .form-error { margin-top:14px; font-size:13px; font-weight:600; color:#dc2626; text-align:center; display:none; }
.contact-card .form-error.on { display:block; }
.contact-card .agree-row { grid-column:1/-1; display:flex; align-items:flex-start; gap:8px; margin-top:6px; font-size:13px; color:#374151; }
.contact-card .agree-row input[type=checkbox] { width:16px; height:16px; margin-top:2px; flex-shrink:0; accent-color:#1c2d4a; }
.contact-card .agree-row a { color:#b9967b; font-weight:600; text-decoration:underline; }
.contact-card .agree-row.err { color:#dc2626; }
@media (max-width:860px){ .contact-page .wrap{ grid-template-columns:1fr; gap:32px; } .contact-card .form-grid{ grid-template-columns:1fr; } }
