.contact-wrap{
    max-width:1280px;
    margin:0 auto;
    padding:40px 20px 80px;
}

.contact-info-box,
.consult-benefit-box,
.contact-form{
    background:#fff;
    border:1px solid #e5e7eb;
    border-radius:16px;
    padding:28px;
    margin-bottom:24px;
}

.contact-info-list,
.consult-benefit-list{
    list-style:none;
    padding:0;
    margin:0;
}

.contact-info-list li,
.consult-benefit-list li{
    padding:10px 0;
    font-size:15px;
    color:#444;
	word-break: keep-all;
    overflow-wrap: break-word;
}

.contact-info-list li:last-child,
.consult-benefit-list li:last-child{
    margin-bottom:0;
}

.contact-info-list strong,
.consult-benefit-box h3{
    display:block;
    margin:20px 0 5px;
    font-size:18px;
    font-weight:700;
    color:#111;
}
.consult-benefit-box h3{
	margin-bottom:20px;
}
.contact-form{
    padding:32px 28px;
}

.field{
    margin-bottom:20px;
}

.field label{
    display:block;
    margin-bottom:8px;
    font-size:14px;
    font-weight:600;
    color:#222;
}
.field input,
.field textarea {
    width: auto;
    padding: 14px 16px;
    border: 1px solid #ddd;
    border-radius: 8px;
    font-size: 14px;
    background: #fafafa;
    transition: all .2s ease;
}
.contact-form input[type="text"],
.contact-form input[type="email"],
.contact-form select,
.contact-form textarea{
    width:100%;
    height:46px;
    border:1px solid #d9dfe5;
    border-radius:8px;
    padding:0 14px;
    font-size:14px;
    background:#fff;
    box-sizing:border-box;
}

.contact-form textarea{
    height:140px;
    padding:14px;
    resize:vertical;
}

.contact-form input:focus,
.contact-form select:focus,
.contact-form textarea:focus{
    outline:none;
    border-color:#111;
}

.site-check-grid{
    display:grid;
    grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
    gap:12px;
    margin-top:10px;
}

.site-check{
    display:flex !important;
    align-items:center;
    gap:10px;
    padding:14px;
    border:1px solid #d9dfe5;
    border-radius:8px;
    cursor:pointer;
    background:#fff;
    box-sizing:border-box;
}
.site-check:hover {
    border-color: #1f6feb;
}
.site-check input{
    margin:0;
    flex:0 0 auto;
}

.site-check span{
    font-size:14px;
    color:#333;
    line-height:1.4;
}

.privacy-box{
    background:#fafafa;
    border:1px solid #e5e7eb;
    border-radius:12px;
    padding:20px;
    margin-top:8px;
}

.privacy-text strong{
    display:block;
    margin-bottom:8px;
    font-size:15px;
    color:#111;
}

.privacy-text p{
    margin:0;
    font-size:13px;
    line-height:1.7;
    color:#666;
}

.privacy-check{
    margin-top:16px;
}

.check-inline{
    display:flex;
    align-items:center;
    gap:8px;
    font-size:14px;
    color:#333;
    cursor:pointer;
}

.check-inline input{
    margin:0;
}

.contact-form .btn,
.contact-form .btn-primary{
    width:100%;
    height:50px;
    border:0;
    border-radius:8px;
    font-size:15px;
    font-weight:700;
    margin-top:20px;
}

.req{
    color:#e11d48;
}

@media (max-width:768px){
    .contact-info-box,
    .consult-benefit-box,
    .contact-form{
        padding:20px;
    }

    .site-check-grid{
        grid-template-columns:1fr;
    }
}