/* 문의 폼 섹션 공통 */
.sub-title { 
    font-size: 24px; 
    font-weight: 700; 
    padding-bottom: 20px; 
    border-bottom: 1px solid #000; 
    margin-bottom: 60px;
    color:rgba(0, 0, 0, 1);
    
}

.support-form { max-width: 880px; margin: 0 auto; padding-left: 80px;}

.inquiry-form-section {
    padding-top: 100px;
    padding-bottom: 120px;
}

/* 폼 그룹 레이아웃 */
.form-group { 
    display: flex; 
    align-items: center; 
    margin-bottom: 30px; 
}
.form-group.align-start { align-items: flex-start; }

.form-group label { 
    width: 180px; 
    font-size: 16px; 
    font-weight: 700;
    color: #000; 
    flex-shrink: 0;
}
.required { color: #ff4d4f; margin-left: 4px; }

/* 입력 필드 스타일 */
.input-wrap { flex-grow: 1; position: relative;   width: 50%;  }
.input-wrap::after {

    font-family: "bootstrap-icons";
    position: absolute;
        right: 30px;
    top: 50%;
    transform: translateY(-50%);
    pointer-events: none;
       font-size: 18px; /* 추가 */
    color: #999;
    transition: transform 0.3s;
 
}

/* 열렸을 때 회전 */
.input-wrap.active::after {
    transform: translateY(-50%) rotate(180deg);
}

select.form-control {
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
}

.form-control {
	width:50%;
    height: 52px;
    border: 1px solid #ddd;
    padding: 0 16px;
    font-size: 15px;
    transition: all 0.2s;
}

.form-control:focus {
    border-color: #6C3BFF;
    box-shadow: 0 0 0 2px rgba(108,59,255,0.08);
}
.custom-select {
    position: relative;
    width: 100%;
}

/* 박스 */
.select-box {
	   width: 50%;
    height: 52px;
    border: 1px solid #ddd;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 16px;
    cursor: pointer;
    background: #fff;
}

/* 텍스트 */
.selected {
   color: rgba(51, 51, 51, 1);
}

.select-box:hover .selected {
    color: rgba(93, 19, 234, 1);
}
/* 아이콘 */
.select-box i {
    font-size: 18px;
    color: #999;
    transition: transform 0.3s;
}

/* 열렸을 때 */
.custom-select.active .select-box i {
    transform: rotate(180deg);
}

/* 옵션 */

/*after*/

.select-options {
    position: absolute;
    top: 100%;
    left: 0;
    width: 50%;
    border: 1px solid #ddd;
    background: #fff;
    z-index: 10;
   color: #999;
    /* 애니메이션용 */
    max-height: 0;
    overflow: hidden;
    opacity: 0;
    transform: translateY(-10px);
    transition: all 0.3s ease;
}

/* 열렸을 때 */
.custom-select.active .select-options {
    max-height: 300px; /* 충분히 크게 */
    opacity: 1;
    transform: translateY(0);
}



.select-options li {
    padding: 12px 16px;
    cursor: pointer;
}

.select-options li:hover {
   color:rgba(93, 19, 234, 1);
}
.text-area {
	
	width: 100%;
    height: 200px; 
    padding: 15px; 
    resize: none; 

}

.char-count { 
    position: absolute; 
    bottom: 15px; 
    right: 15px; 
    font-size: 12px; 
    color: #ccc; 
}
.text-area {
    height: 220px;
    padding: 16px;
    line-height: 1.6;
}
.text-area::placeholder {
    color: rgba(212, 212, 212, 1);       
    font-size: 14px;   /* 크기 */
    line-height: 1.6;  /* 줄간격 */
    
   font-family: Pretendard;

font-style: Regular;


letter-spacing: 0%;

}

.form-control::placeholder {
	
	    color: rgba(212, 212, 212, 1);       
    font-size: 14px;   /* 크기 */
    line-height: 1.6;  /* 줄간격 */
    
   font-family: Pretendard;

font-style: Regular;


letter-spacing: 0%;
}



/* 파일 업로드 */
.file-upload-wrap { display: flex; align-items: center; gap: 15px; margin-top:25px; }
.btn-file { 
    display: inline-block; 
    padding: 10px 25px; 
    
    background: rgba(244, 244, 244, 1); 
  	
    cursor: pointer; 
    font-size: 14px; 
    font-style: regular;
   font-weight: 300 !important;
    text-align: center;
    color:rgba(51, 51, 51, 1);
    
}


.btn-file:hover { background: #6C3BFF; color: #fff; }


.hidden-file { display: none; }
.file-notice { color: rgba(136, 136, 136, 1); 
				font-style:thin;
				font-size: 11px; }

/* 약관 동의 */
/* 전체 */
.privacy-agreement {
    margin-top: 60px;
    border-top: 1px solid #ddd;
}

/* 헤더 */
.agree-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 20px 0;
    cursor: pointer;


	

    
}

/* 왼쪽 */
.agree-left {
    display: flex;
    align-items: center;
    gap: 10px;
}

/* 체크박스 커스텀 */
.agree-left input {
    width: 18px;
    height: 18px;
    font-weight:10;
    accent-color: #6C3BFF;
}

/* 텍스트 */
.agree-left label {
    font-size: 15px;
    color: #333;
}

/* 아이콘 */
.agree-header i {
    color: #999;
    transition: transform 0.3s;
}

/* 펼침 */
.agree-content {

    padding: 20px 0;
    color: rgba(136, 136, 136, 1); 
    font-size: 14px;
    line-height: 1.6;
    
     max-height: 0;
    overflow: hidden;
    opacity: 0;
    transform: translateY(-8px);
    
    transition: max-height 0.35s ease,
                opacity 0.25s ease,
                transform 0.25s ease;
    
}

/* 활성화 */
.privacy-agreement.active .agree-content {
       max-height: 300px; /* 내용 길이에 맞게 조절 */
    opacity: 1;
    transform: translateY(0);
}

.privacy-agreement.active i {
    transform: rotate(180deg);
}
/* 제출 버튼 */
.form-submit { text-align: center; padding-top:150px; }
.btn-submit { 
    padding: 18px 80px; 
    background: rgba(244, 244, 244, 1); 
    color: #999; 
    border: none; 
    font-size: 18px; 
    font-weight: 400; 
    cursor: pointer;
  
    transition: 0.3s;
}
.btn-submit:hover { background: #6C3BFF; color: #fff; } /* 활성화 시 보라색 */


/**mobile*/
@media (max-width: 768px) {

    /* 전체 패딩 줄이기 */
    .inquiry-form-section {
        padding: 40px 20px;
    }

    .support-form {
        max-width: 100%;
        padding-left: 0;
    }

    /* 세로 스택 구조 */
    .form-group {
        flex-direction: column;
        align-items: flex-start;
        gap: 10px;
    }

    /* 라벨 */
    .form-group label {
        width: 100%;
        font-size: 14px;
    }

    /* input 영역 */
    .input-wrap {
        width: 100%;
    }

    .form-control {
        width: 100%;
        height: 48px;
    }

    /* select */
    .select-box {
        width: 100%;
    }

    .select-options {
        width: 100%;
    }

    /* textarea */
    .text-area {
        width: 100%;
        height: 180px;
    }

    /* 파일 업로드 */
    .file-upload-wrap {
        flex-direction: column;
        align-items: flex-start;
    }

    .btn-file {
        width: 100%;
        text-align: center;
    }

    /* 제출 버튼 */
    .form-submit {
        padding-top: 60px;
    }

    .btn-submit {
        width: 100%;
        padding: 16px;
        font-size: 16px;
    }

    /* hero 텍스트 */
    .hero-text {
        left: 20px;
        top: 75%;
    }

    .hero-text h1 {
        font-size: 28px;
        width: auto;
    }

}

