/* ========================= */
/* CONTACT PAGE */
/* ========================= */

#contact{

    background:#f7f8fa;

    padding:90px 0;

}

#contact .inner{

    max-width:1400px;

    margin:auto;

    display:grid;

    grid-template-columns:68% 32%;

}
/* ========================= */
/* LEFT */
/* ========================= */

#contact form{

    background:#fff;

    padding:45px;

    border-radius:50px;

    box-shadow:0 20px 40px rgba(0,0,0,.08);

}

#contact .fields{

    display:grid;

    grid-template-columns:1fr 1fr;

    gap:25px;

}

#contact .field{

    display:flex;

    flex-direction:column;

}

#contact .field:last-child{

    grid-column:1/3;

}

#contact label{

    margin-bottom:10px;

    font-weight:700;

    color:#2f5c88;

    text-transform:none;

    letter-spacing:0;

}

#contact input,
#contact textarea{

    width:100%;

    background:#f8f8f8;

    border:1px solid #ddd;

    padding:18px;

    font-size:18px;

    border-radius:0;

    box-shadow:none;

}

#contact textarea{

    resize:none;

}

#contact input:focus,
#contact textarea:focus{

    border-color:#df3c24;

    outline:none;

    box-shadow:none;

}

/* ========================= */
/* BUTTON */
/* ========================= */

#contact .actions{

    margin-top:30px;

    display:flex;

    gap:15px;

    list-style:none;

    padding:0;

}

#contact input[type=submit]{

    background:#df3c24;

    color:#fff;

    border:none;

    border-radius:10px;

    padding:15px 35px;

    cursor:pointer;

    font-weight:bold;

    transition:.3s;

}

#contact input[type=submit]:hover{

    background:#b72e18;

    transform:translateY(-3px);

}

#contact input[type=submit],
#contact input[type=reset]{

    height:58px;

    padding:0 35px;

    border-radius:0;

    text-transform:uppercase;

    letter-spacing:3px;

    font-size:14px;

}

/* ========================= */
/* RIGHT */
/* ========================= */

.split{

    display:flex;

    flex-direction:column;

    gap:25px;

}

.contact-method{

    display:flex;

    align-items:center;

    gap:25px;

    background:#fff;

    padding:40px;

    border-radius:18px;

    box-shadow:0 10px 25px rgba(0,0,0,.08);

    transition:.35s;

}

.contact-method:hover{

    transform:translateY(-8px);

    box-shadow:0 20px 40px rgba(0,0,0,.15);

}

.contact-method .icon{

    width:70px;

    height:70px;

    border-radius:50%;

    border:2px solid #ddd;

    display:flex;

    justify-content:center;

    align-items:center;

    font-size:28px;

    color:#777;

    transition:.35s;

    animation:iconFloat 3s ease-in-out infinite;

}

.contact-method:hover .icon{

    background:#df3c24;

    color:#fff;

    border-color:#df3c24;

    transform:scale(1.1);

}

.contact-method h3{

    margin:0 0 10px;

    font-size:28px;

    color:#2f5c88;

}

.contact-method span,
.contact-method a{

    color:#666;

    line-height:1.8;

    text-decoration:none;

}

@keyframes iconFloat{

    0%,100%{

        transform:translateY(0);

    }

    50%{

        transform:translateY(-4px);

    }

}

#contact .inner{

    max-width:1400px;

    margin:auto;

    display:grid;

    grid-template-columns:68% 32%;

    gap:45px;      /* расстояние между колонками */

}

/* ========================= */
/* MOBILE */
/* ========================= */

@media(max-width:900px){

    #contact .inner{

        grid-template-columns:1fr;

    }

    #contact .fields{

        grid-template-columns:1fr;

    }

    #contact .field:last-child{

        grid-column:auto;

    }

}


.contact-title{

    grid-column:1/-1;

    text-align:center;

    margin-bottom:20px;

}

.contact-title h1{

    font-size:42px;

    color:#2f5c88;

    margin-bottom:15px;

}

.contact-title p{

    font-size:18px;

    color:#666;

    max-width:700px;

    margin:auto;

}

/* ========================= */
/* SUCCESS MESSAGE */
/* ========================= */

.success-message{

    display:none;

    align-items:center;

    gap:18px;

    background:#e9f9ef;

    border-left:6px solid #28a745;

    color:#1b5e20;

    padding:18px 22px;

    margin-bottom:25px;

    border-radius:10px;

    animation:fadeDown .4s;

}

.success-message i{

    font-size:34px;

    color:#28a745;

}

.success-message.show{

    display:flex;

}

@keyframes fadeDown{

    from{

        opacity:0;

        transform:translateY(-10px);

    }

    to{

        opacity:1;

        transform:translateY(0);

    }

}



/* ===========================
   Contact Form Mobile
=========================== */

@media (max-width:768px){

    #contact{
        padding:50px 20px;
    }

    #contact .inner{
        width:100%;
    }

    .contact-title{
        text-align:center;
        margin-bottom:35px;
    }

    .contact-title h1{
        font-size:2rem;
        margin-bottom:12px;
    }

    .contact-title p{
        font-size:1rem;
        line-height:1.7;
    }

    .fields{
        display:flex;
        flex-direction:column;
        gap:18px;
    }

    .field.half{
        width:100%;
    }

    input,
    textarea{
        width:100%;
        font-size:16px;
    }

    textarea{
        min-height:170px;
    }

    .actions{
        display:flex;
        flex-direction:column;
        gap:15px;
        margin-top:25px;
    }

    .actions li{
        width:100%;
    }

    .actions input{
        width:100%;
    }

}

/* ===========================
   Contact Info Mobile
=========================== */

@media (max-width:768px){

    #contact .split{

        display:flex;
        flex-direction:column;
        gap:18px;

        margin-top:40px;

    }

    #contact .split > section{

        width:100%;

    }

    .contact-method{

        display:flex;
        align-items:center;

        padding:18px 20px;

        background:#fff;

        border-radius:18px;

        box-shadow:0 8px 18px rgba(0,0,0,.08);

    }

    .contact-method .icon{

        width:60px;
        height:60px;

        min-width:60px;

        margin-right:18px;

        border-radius:50%;

        display:flex;
        justify-content:center;
        align-items:center;

        font-size:22px;

    }

    .contact-method h3{

        margin:0 0 6px;

        font-size:1.35rem;

    }

    .contact-method a,
    .contact-method span{

        font-size:.95rem;

        line-height:1.7;

        word-break:break-word;

    }

}