.contact-page{
    padding:90px 0;
    background:#f8fbff;
}

.contact-grid{
    display:grid;
    grid-template-columns:0.9fr 1.1fr;
    gap:35px;
    align-items:start;
}

.contact-info,
.contact-form{
    background:#fff;
    border:1px solid var(--border);
    border-radius:24px;
    padding:35px;
    box-shadow:0 15px 40px rgba(15,23,42,.07);
}

.contact-box{
    display:flex;
    gap:18px;
    margin-bottom:26px;
}

.contact-box i{
    font-size:24px;
    color:var(--accent);
    width:32px;
    margin-top:5px;
}

.contact-box h3{
    color:var(--primary);
    margin-bottom:6px;
}

.contact-box p{
    color:var(--muted);
}

.form-row{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:15px;
}

.contact-form input,
.contact-form textarea{
    width:100%;
    padding:15px 16px;
    margin-bottom:15px;
    border:1px solid var(--border);
    border-radius:12px;
    font-family:inherit;
    font-size:15px;
    outline:none;
}

.contact-form input:focus,
.contact-form textarea:focus{
    border-color:var(--accent);
}

.captcha-row{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:15px;
    align-items:center;
}

.captcha-row label{
    font-weight:800;
    color:var(--primary);
}

.contact-form button{
    border:0;
    cursor:pointer;
}

.map-box{
    margin-top:40px;
    border-radius:24px;
    overflow:hidden;
    box-shadow:0 15px 40px rgba(15,23,42,.08);
}

@media(max-width:900px){
    .contact-grid,
    .form-row,
    .captcha-row{
        grid-template-columns:1fr;
    }
}