/*================================
 QUEST SAFARI CONTACT SECTION
================================*/

.qsmw-contact-section{
    padding:100px 0;
    background:#f8f8f5;
}


.qsmw-contact-section *{
    box-sizing:border-box;
}


.qsmw-contact-container{
    width:min(1200px,92%);
    margin:auto;
}



/*================================
 SECTION HEADER
================================*/

.qsmw-section-header{
    text-align:center;
    max-width:750px;
    margin:0 auto 60px;
}


.qsmw-section-tag{
    display:inline-block;
    color:#5c4739;
    font-size:13px;
    font-weight:700;
    letter-spacing:2px;
    text-transform:uppercase;
    margin-bottom:18px;
}


.qsmw-section-title{
    font-size:48px;
    line-height:1.2;
    font-weight:700;
    color:#1f2937;
    margin:0 0 20px;
}


.qsmw-section-text{
    color:#6b7280;
    font-size:17px;
    line-height:1.8;
    margin:auto;
}



/*================================
 MAIN LAYOUT
================================*/

.qsmw-contact-grid{

    display:grid;

    grid-template-columns:
    minmax(0,2fr)
    minmax(300px,1fr);

    gap:45px;

    align-items:start;

}



/*================================
 FORM CARD
================================*/


.qsmw-form-wrapper{

    background:#ffffff;

    border-radius:22px;

    padding:45px;

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

}



.qsmw-contact-form{
    width:100%;
}




.qsmw-form-row{

    display:grid;

    grid-template-columns:repeat(2,1fr);

    gap:22px;

    margin-bottom:24px;

}



.qsmw-form-group{
    width:100%;
}




.qsmw-form-group label{

    display:block;

    margin-bottom:9px;

    color:#374151;

    font-size:14px;

    font-weight:600;

}





.qsmw-input,
.qsmw-textarea{


    width:100%;

    border:1px solid #e5e7eb;

    background:#fff;

    border-radius:14px;

    padding:15px 18px;

    font-size:15px;

    color:#374151;

    font-family:inherit;

    outline:none;

    transition:.3s ease;


}





.qsmw-input{

    height:55px;

}





.qsmw-textarea{

    min-height:170px;

    resize:vertical;

}




.qsmw-input:focus,
.qsmw-textarea:focus{


    border-color:#5c4739;

    box-shadow:
    0 0 0 4px rgba(92,71,57,.12);


}




.qsmw-input::placeholder,
.qsmw-textarea::placeholder{

    color:#9ca3af;

}





/*================================
 RADIO OPTIONS
================================*/


.qsmw-contact-options{

    display:flex;

    align-items:center;

    gap:25px;

    min-height:55px;

}




.qsmw-radio{

    display:flex;

    align-items:center;

    gap:8px;

    cursor:pointer;

    color:#4b5563;

    font-size:15px;

}



.qsmw-radio input{

    accent-color:#5c4739;

}





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


.qsmw-submit-btn{


    display:inline-flex;

    justify-content:center;

    align-items:center;


    padding:16px 38px;


    border:none;

    border-radius:14px;


    background:#5c4739;


    color:#ffffff;


    font-size:15px;

    font-weight:700;


    cursor:pointer;


    transition:.35s ease;


}





.qsmw-submit-btn:hover{


    background:#3f3027;

    transform:translateY(-3px);

    box-shadow:
    0 15px 30px rgba(92,71,57,.25);


}




/*================================
 RIGHT CONTACT CARDS
================================*/


.qsmw-contact-info{

    display:flex;

    flex-direction:column;

    gap:22px;

}




.qsmw-info-card{


    background:#ffffff;

    border-radius:22px;

    padding:30px;


    box-shadow:
    0 25px 70px rgba(0,0,0,.07);


    transition:.3s ease;


}



.qsmw-info-card:hover{

    transform:translateY(-4px);

}





.qsmw-card-title{


    margin:0 0 22px;


    color:#1f2937;


    font-size:22px;

    font-weight:700;


}





.qsmw-info-item{


    display:flex;

    align-items:flex-start;


    gap:15px;


    margin-bottom:18px;


}



.qsmw-info-item:last-child{

    margin-bottom:0;

}





.qsmw-icon{


    width:44px;

    height:44px;


    border-radius:50%;


    background:#5c4739;


    color:#ffffff;


    display:flex;


    justify-content:center;


    align-items:center;


    flex-shrink:0;


}





.qsmw-info-text{


    color:#4b5563;

    line-height:1.7;

    font-size:15px;


}



.qsmw-info-text a{


    color:#4b5563;

    text-decoration:none;

    transition:.3s ease;


}



.qsmw-info-text a:hover{

    color:#5c4739;

}



/*================================
 RESPONSIVE
================================*/



@media(max-width:992px){


    .qsmw-contact-grid{

        grid-template-columns:1fr;

    }



    .qsmw-contact-info{

        margin-top:10px;

    }


}





@media(max-width:768px){


    .qsmw-contact-section{

        padding:70px 0;

    }



    .qsmw-section-title{

        font-size:34px;

    }



    .qsmw-form-wrapper{

        padding:30px;

    }



    .qsmw-form-row{

        grid-template-columns:1fr;

        gap:18px;

    }



    .qsmw-contact-options{

        flex-wrap:wrap;

    }


}





@media(max-width:480px){


    .qsmw-section-title{

        font-size:28px;

    }



    .qsmw-form-wrapper{

        padding:22px;

        border-radius:18px;

    }



    .qsmw-info-card{

        padding:22px;

        border-radius:18px;

    }



    .qsmw-submit-btn{

        width:100%;

    }


}