:root {
    --primary-color: #0B1F3B;
    --text-main: #1d1d1f;
    --text-sub: #86868b;
    --bg-light: #f5f5f7;
}

* { margin: 0; padding: 0; box-sizing: border-box; font-family: 'Pretendard', -apple-system, sans-serif; }
body { background-color: #ffffff; color: var(--text-main); line-height: 1.6; }

/* Contact Section - 전체 너비를 1000px로 확장 및 비율 조정 */
.contact-wrapper {
    max-width: 1000px; /* 기존 800px에서 확장 */
    margin: 80px auto;
    padding: 0 40px;
    display: grid;
    grid-template-columns: 0.8fr 1.2fr; /* 왼쪽보다 오른쪽 폼이 더 넓게 설정 */
    gap: 80px; /* 간격 확장 */
}

/* 왼쪽 연락처 정보 정렬 */
.contact-info {
    display: flex !important;
    flex-direction: column !important;
    gap: 0 !important; /* 요소 사이의 기본 간격 제거 */
}

.contact-info h2 { 
    font-size: 2.8rem; 
    margin-bottom: 20px; 
    font-weight: 700; 
    letter-spacing: -1px;
}

.contact-info p {
    margin-bottom: 15px !important; /* 설명 글 아래 여백 축소 */
}

/* 아이콘과 텍스트가 나란히 왼쪽 정렬되도록 수정 */
.info-item {
    display: flex !important;
    align-items: center !important;
    height: 35px !important;    /* 아이템 하나의 높이를 확 줄임 */
    margin-bottom: 5px !important; /* 아이템 사이의 실제 간격 */
    padding: 0 !important;       /* 내부 여백 완전 제거 */
}

.info-item i { 
    width: 24px; 
    margin-right: 12px; 
    color: var(--primary-color); 
    font-size: 1.1rem;
    text-align: center;
}

/* Form Style - 입력 필드 디자인 강화 */
.contact-form-card {
    background: #fff;
    padding: 0; /* 카드 내부 여백 제거 (wrapper에서 관리) */
}

.form-group { margin-bottom: 25px; }

.form-group label { 
    display: block; 
    font-size: 0.9rem; 
    font-weight: 600; 
    margin-bottom: 10px; 
}

.form-group input, .form-group textarea {
    width: 100%;
    padding: 16px; /* 더 넓은 터치/클릭 영역 */
    border: 1px solid #d2d2d7;
    border-radius: 12px; /* 조금 더 부드러운 곡선 */
    background: var(--bg-light);
    font-size: 1rem;
    transition: all 0.2s ease-in-out;
}

.form-group input:focus, .form-group textarea:focus {
    outline: none;
    border-color: var(--primary-color);
    background: #fff;
    box-shadow: 0 0 0 4px rgba(11, 31, 59, 0.1); /* 포커스 시 부드러운 광채 효과 */
}

/* 전송 버튼 */
.btn-send {
    width: 100%;
    padding: 18px;
    background: #000;
    color: #fff;
    border: none;
    border-radius: 12px;
    font-size: 1.1rem;
    font-weight: 600;
    cursor: pointer;
    transition: 0.3s;
}

.btn-send:hover { 
    background: var(--primary-color); 
    transform: translateY(-2px); /* 호버 시 살짝 떠오르는 효과 */
}

/* 반응형 모바일 처리 */
@media (max-width: 850px) {
    .contact-wrapper {
        grid-template-columns: 1fr; /* 모바일에선 한 줄로 */
        gap: 50px;
        padding: 0 20px;
    }
    .contact-info h2 { font-size: 2.2rem; }
}