.contact{ word-break: keep-all; }
.contact .flx{align-items: flex-start; gap: 40px;}
.contact .flx .infoBx{
    margin-top: 50px;
}
.contact .flx .txtWrap{ overflow: visible !important; }
.contact .flx .infoBx .row{
    display: flex;
    align-items: center;
    gap: 20px;
    margin-bottom: 25px;
}
.contact .flx .infoBx .row:last-child{
    margin-bottom: 0;
}
.contact .flx .infoBx .row em{
    min-width: 35px;
    min-height: 35px;
    border-radius: 50%;
    background: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #222222;

}
.contact .flx .infoBx .row em i{
    font-size: 16px;color: #fff;
}
.contact .flx .infoBx .row span{
    font-size: 16px;color: #555555;
    line-height: calc(26/16 * 1em);
    letter-spacing: -0.03em;
    white-space: nowrap;
}

.contact .form {
    max-width: 640px;
    width: 100%;
}
.contact .form .inner{
    width: 100%;
}
.contact .formBx .row{width: 100%;margin-bottom: 30px;}
.contact .formBx .row:last-child{margin-bottom: 0;}
.contact .formBx .row label{width: 100%;}
.contact .formBx .row.flx{gap: 20px;}
.contact .formBx .row input{
    width: 100%;
    padding: calc(15 / 17 * 1em) calc(20 / 17 * 1em);
    border-radius: 25px;
    box-sizing: border-box;
    font-size: 17px;
    font-weight: 600;
    color: #222222;
    background-color: #f3f3f3;
    border: none;
    letter-spacing: -0.03em;
}
.contact .formBx .row input::placeholder{
    color: #222222;
    font-weight: 300;
}
.contact .formBx .row textarea{
    width: 100%;
    padding: calc(15 / 17 * 1em) calc(20 / 17 * 1em);
    border-radius: 25px;
    box-sizing: border-box;
    font-size: 17px;
    font-weight: 600;
    color: #222222;
    background-color: #f3f3f3;
    border: none;
    resize: none;
    min-height: 180px;
}
.contact .formBx .row h4{
    display: flex;
    align-items: center;
    gap: 4px;
    margin-bottom: 15px;
}
.contact .formBx .row h4 p{
    font-size: 20px;color: #222222;font-weight: 600;letter-spacing: -0.03em;
}
.contact .formBx .row h4 em{
    color: #0076ff;font-size: 20px;
}
.contact .formBx .row .checkBx{display: flex;flex-wrap: wrap;gap: 20px;}
.contact .formBx .row .checkBx label{width: calc((100% - (20px * 2)) / 3);}
.contact .formBx .row .checkBx label input{display: none;}
.contact .formBx .row .checkBx label div{
    width: 100%;
    text-align: center;
    letter-spacing: -0.03em;
    background-color: #f3f3f3;
    padding: calc(15 / 17 * 1em);
    border-radius: 25px;
    box-sizing: border-box;
    font-size: 17px;
    font-weight: 600;
    color: #222222;
    transition: background-color 0.3s, color 0.3s;
    cursor: pointer;
}

/* 호버 */
@media screen and (min-width: 821px) {
    .contact .formBx .row .checkBx label div:hover{
        background-color: #aaa; color: #fff;
    }
}

/* 체크 */
.contact .formBx .row .checkBx label input:checked + div{
    background-color: #0076ff; color: #fff;
}



/* 개인정보처리 방침 */
.contact .formBx .row.privacy_check {
    cursor: pointer;
    display: flex;
    align-items: flex-start;
    gap: 8px;
    line-height: 1.3;
    box-sizing: border-box;
}

.contact .formBx .row.privacy_check label {
    display: flex;
    align-items: flex-start;
    gap: 3px;
    cursor: pointer;
    justify-content: flex-end;
}

.contact .formBx .row.privacy_check input {
    display: none;
}

.contact .formBx .row.privacy_check .ico {
    height: 1.1em;
    display: flex;
    align-items: center;
    flex-shrink: 0;
}

.contact .formBx .row.privacy_check .ico i {
    color: #555555;
    font-size: 1.25em;
}

/* 체크 전 아이콘 */
.contact .formBx .row.privacy_check .ico i:nth-child(2) {
    display: none;
}

/* 체크 후 아이콘 */
.contact .formBx .row.privacy_check input:checked + .ico i:nth-child(1) {
    display: none;
}

.contact .formBx .row.privacy_check input:checked + .ico i:nth-child(2) {
    display: block;
    color: #000;
}

.contact .formBx .row.privacy_check p {
    font-size: 16px;
    color: #555555;
    font-weight: 400;
    letter-spacing: -0.03em;
}

.contact .formBx .row.privacy_check .privacy_link {
    margin-left: auto;
    font-size: 12px;
    color: rgba(255, 255, 255, 0.5);
    background-color: #555555;
    border-radius: 13px;
    letter-spacing: -0.03em;
    padding: .3em .6em .2em;
    box-sizing: border-box;
    flex-shrink: 0;
    display: flex; align-items: center; justify-content: center;
    text-align: center;
}
.contact .formBx .submitBx{
    display: flex;align-items: center;
    justify-content: flex-end;
}
.contact .formBx .submitBx .btn{
    width: 152px;
    padding: 18px 0;
    border-radius: 28px;
    display: flex;
    justify-content: center;
    align-items: center;
    background: linear-gradient(90deg, #7095f3 0%, #63aef4 100%);
    color: #fff;
    cursor: pointer;
}
.contact .formBx .submitBx .btn span{
    font-size: 16px;
    letter-spacing: -0.03em;
    font-weight: 600;
}
.contact .formBx .submitBx .btn i{
    font-size: 20px;
    margin-left: 17px;
}
@media screen and (max-width: 1680px) {}
@media screen and (max-width: 1440px) {}
@media screen and (max-width: 1280px) {
    .contact .formBx .row{ margin-bottom: 20px; }
    .contact .formBx .row h4 p{font-size: clamp(18px, 18 / 1024 * 100vw, 20px);}
    .contact .formBx .row .checkBx label div{font-size: 16px;}
    .contact .form{
        max-width: clamp(500px, 500 / 1024 * 100vw, 650px);
    }
    .contact .formBx .submitBx .btn{ padding: 15px 0; }
    .contact .formBx .row input{ font-size: 16px; }
}
@media screen and (max-width: 1024px) {
    .contact .form{max-width: clamp(400px, 400 / 820 * 100vw, 500px);}
    .contact .formBx .row .checkBx label {width: calc((100% - (20px * 1)) / 2);}
}
@media screen and (max-width: 820px) {
    .contact .form{max-width: unset;}
    .contact .flx{gap: 80px;}
    .contact .formBx .row h4{ margin-bottom: 10px; }
    .contact .formBx .row h4 p{font-size: clamp(16px, 16 / 1024 * 100vw, 18px);}
    .contact .formBx .row input{ font-size: 14px; }
    .contact .formBx .row.privacy_check p{ font-size: 14px; }
    .contact .formBx .submitBx .btn span{ font-size: 14px; }
    .contact .formBx .row.flx{ gap: 10px; }
}
@media screen and (max-width: 500px) {
    .contact .formBx .submitBx .btn {
        width: 140px;
        padding: 15px 0;
    }
    .contact .formBx .submitBx .btn span{
        font-size: 15px;
    }
    .contact .flx .infoBx .row span{ white-space: wrap !important; }
    .contact .flx .infoBx .row span br{ display: none; }
}
@media screen and (max-width: 360px) {
    .contact .formBx .row.flx{ flex-direction: column; gap: 20px 0; }

    .contact .flx .infoBx .row span{
        font-size: clamp(14px, 14 / 280 * 100vw, 14px);
    }
    .contact .formBx .row h4 p{
        font-size: clamp(16px, 16 / 280 * 100vw, 16px);
    }
    .contact .formBx .row .checkBx label div{
        font-size: clamp(14px, 14 / 280 * 100vw, 14px);
    }
    .contact .formBx .row input {
        font-size: clamp(14px, 14 / 280 * 100vw, 14px);
    }
    .contact .formBx .row textarea{
        font-size: clamp(14px, 14 / 280 * 100vw, 14px);
    }
}

.complete .s1{
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
}

.complete .s1 .txtBx small{
    font-size: 20px;
    color: #222222;
    font-weight: 600;
    font-family: 'poppins';
}
.complete .s1 .txtBx p{
    font-size: 40px;
    color: #222222;
    font-weight: 700;
    line-height: calc(60/40 * 1em);
    margin-top: calc(25/ 40 * 1em);
    margin-bottom: calc(80/ 40 * 1em);
    letter-spacing: -0.045em;
}
.complete .s1 .txtBx p em{
    background: linear-gradient(90deg, #7095f3 0%, #63aef4 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.complete .s1 .btnBx{display: flex;align-items: center;justify-content: center;}
.complete .s1 .btnBx .btn{
    width: 152px;
    padding: 18px 0;
    border-radius: 28px;
    display: flex;
    justify-content: center;
    align-items: center;
    background: linear-gradient(90deg, #7095f3 0%, #63aef4 100%);
    color: #fff;
    cursor: pointer;
}
.complete .s1 .btnBx .btn span{
    font-size: 16px;
    letter-spacing: -0.03em;
    font-weight: 600;
}
.complete .s1 .btnBx .btn i{
    font-size: 20px;
    margin-left: 17px;
}

@media screen and (max-width: 1680px) {}
@media screen and (max-width: 1440px) {}
@media screen and (max-width: 1280px) {
    .complete .s1 .txtBx p{
        font-size: clamp(32px, 32 / 1024 * 100vw, 40px);
    }
}
@media screen and (max-width: 1024px) {}
@media screen and (max-width: 820px) {
    .complete .s1 .txtBx p br{display: none;}
    .complete .s1 .txtBx p{
        font-size: clamp(26px, 26 / 500 * 100vw, 32px);
        word-break: keep-all;
    }
    
}
@media screen and (max-width: 500px) {
    .complete .s1 .txtBx small{
        font-size: clamp(18px, 18 / 360 * 100vw, 20px);
    }
    .complete .s1 .txtBx p{
        font-size: clamp(22px, 22 / 360 * 100vw, 26px);
    }


    .complete .s1 .btnBx .btn {
        width: 140px;
        padding: 15px 0;
    }
    .complete .s1 .btnBx .btn span{
        font-size: 15px;
    }
}
@media screen and (max-width: 360px) {

    .complete .s1 .txtBx small{
        font-size: clamp(16px, 16 / 280 * 100vw, 18px);
    }
    .complete .s1 .txtBx p{
        font-size: clamp(20px, 20 / 280 * 100vw, 22px);
    }
    
} 


