/*=========================================
            Contact Section
=========================================*/

.cnt-section{

    padding:100px 0;

    background:#ffffff;

}

/*=========================================
            Section Heading
=========================================*/

.cnt-heading{

    max-width:800px;

    margin:0 auto 60px;

}

.cnt-subtitle{

    display:inline-block;

    color:#FDB913;

    font-size:16px;

    font-weight:600;

    text-transform:uppercase;

    letter-spacing:1px;

    margin-bottom:15px;

}

.cnt-title{

    font-size:42px;

    font-weight:700;

    color:#222222;

    margin-bottom:20px;

    line-height:1.3;

}

.cnt-description{

    color:#666666;

    font-size:16px;

    line-height:1.9;

    margin:0;

}

/*=========================================
            Contact Cards
=========================================*/

.cnt-card{

    background:#ffffff;

    border-radius:18px;

    padding:35px 30px;

    text-align:center;

    height:100%;

    box-shadow:0 12px 35px rgba(0,0,0,.08);

    transition:.35s;

    position:relative;

    overflow:hidden;

}

.cnt-card:hover{

    transform:translateY(-8px);

    box-shadow:0 20px 45px rgba(0,0,0,.14);

}

.cnt-card::before{

    content:"";

    position:absolute;

    top:0;

    left:0;

    width:0;

    height:4px;

    background:#FDB913;

    transition:.35s;

}

.cnt-card:hover::before{

    width:100%;

}

.cnt-icon{

    width:75px;

    height:75px;

    background:#FDB913;

    color:#ffffff;

    border-radius:50%;

    margin:0 auto 25px;

    display:flex;

    align-items:center;

    justify-content:center;

    font-size:28px;

}

.cnt-card h3{

    font-size:22px;

    font-weight:600;

    color:#222222;

    margin-bottom:15px;

}

.cnt-card p{

    color:#666666;

    font-size:15px;

    line-height:1.8;

    margin:0;

    word-break:break-word;

}

.cnt-card a{

    color:#159947;

    text-decoration:none;

    font-weight:600;

    font-size:15px;

    word-break:break-word;

    transition:.3s;

}

.cnt-card a:hover{

    color:#0e6d32;

}

/*=========================================
                Google Map
=========================================*/

.cnt-map{

    height:100%;

    min-height:550px;

    border-radius:20px;

    overflow:hidden;

    box-shadow:0 12px 35px rgba(0,0,0,.08);

}

.cnt-map iframe{

    width:100%;

    height:100%;

    border:0;

    display:block;

}

/*=========================================
                Form
=========================================*/

.cnt-form-box{

    background:#ffffff;

    border-radius:20px;

    padding:40px;

    height:100%;

    box-shadow:0 12px 35px rgba(0,0,0,.08);

}

.cnt-form-box h3{

    font-size:30px;

    font-weight:700;

    color:#222222;

    margin-bottom:30px;

}

/*=========================================
            Form Fields
=========================================*/

.cnt-input{

    height:55px;

    border:1px solid #dddddd;

    border-radius:10px;

    padding:12px 18px;

    font-size:15px;

    box-shadow:none;

    transition:.3s;

}

.cnt-input:focus{

    border-color:#FDB913;

    box-shadow:none;

}

.cnt-textarea{

    height:auto;

    resize:none;

    padding-top:15px;

}

/*=========================================
            Submit Button
=========================================*/

.cnt-btn{

    width:100%;

    border:none;

    background:#159947;

    color:#ffffff;

    font-size:16px;

    font-weight:600;

    border-radius:50px;

    padding:15px;

    transition:.35s;

    cursor:pointer;

}

.cnt-btn i{

    margin-right:8px;

}

.cnt-btn:hover{

    background:#0e6d32;

    transform:translateY(-3px);

    box-shadow:0 12px 25px rgba(21,153,71,.30);

}

/*=========================================
        Prevent Overflow
=========================================*/

.cnt-card,
.cnt-form-box,
.cnt-map{

    width:100%;

    overflow:hidden;

}

.cnt-card p,
.cnt-card a{

    overflow-wrap:anywhere;

}

iframe{

    max-width:100%;

}


/*=========================================
            Large Desktop
=========================================*/

@media (min-width:1400px){

    .cnt-title{

        font-size:46px;

    }

}

/*=========================================
                Laptop
=========================================*/

@media (max-width:1199px){

    .cnt-section{

        padding:90px 0;

    }

    .cnt-title{

        font-size:38px;

    }

    .cnt-card{

        padding:30px 25px;

    }

    .cnt-form-box{

        padding:35px;

    }

    .cnt-form-box h3{

        font-size:28px;

    }

    .cnt-map{

        min-height:520px;

    }

}

/*=========================================
                Tablet
=========================================*/

@media (max-width:991px){

    .cnt-section{

        padding:80px 0;

    }

    .cnt-heading{

        margin-bottom:50px;

    }

    .cnt-title{

        font-size:34px;

    }

    .cnt-description{

        font-size:15px;

    }

    .cnt-card{

        padding:28px 22px;

    }

    .cnt-icon{

        width:70px;

        height:70px;

        font-size:26px;

    }

    .cnt-card h3{

        font-size:20px;

    }

    .cnt-map{

        min-height:450px;

    }

    .cnt-form-box{

        padding:30px;

    }

    .cnt-form-box h3{

        font-size:26px;

    }

}

/*=========================================
                Mobile
=========================================*/

@media (max-width:767px){

    .cnt-section{

        padding:70px 0;

    }

    .cnt-heading{

        margin-bottom:40px;

    }

    .cnt-title{

        font-size:30px;

        line-height:1.4;

    }

    .cnt-subtitle{

        font-size:15px;

    }

    .cnt-description{

        font-size:15px;

        line-height:1.8;

    }

    .cnt-card{

        padding:25px 20px;

    }

    .cnt-icon{

        width:65px;

        height:65px;

        font-size:24px;

        margin-bottom:20px;

    }

    .cnt-card h3{

        font-size:20px;

    }

    .cnt-card p,

    .cnt-card a{

        font-size:14px;

        line-height:1.8;

    }

    .cnt-map{

        min-height:380px;

    }

    .cnt-form-box{

        padding:25px;

    }

    .cnt-form-box h3{

        font-size:24px;

        margin-bottom:25px;

    }

    .cnt-input{

        height:50px;

        font-size:14px;

    }

    .cnt-textarea{

        min-height:140px;

    }

    .cnt-btn{

        padding:14px;

        font-size:15px;

    }

}

/*=========================================
            Small Mobile
=========================================*/

@media (max-width:575px){

    .cnt-section{

        padding:60px 0;

    }

    .cnt-heading{

        margin-bottom:35px;

    }

    .cnt-title{

        font-size:27px;

    }

    .cnt-description{

        font-size:14px;

    }

    .cnt-card{

        padding:22px 18px;

    }

    .cnt-icon{

        width:60px;

        height:60px;

        font-size:22px;

    }

    .cnt-card h3{

        font-size:19px;

    }

    .cnt-card p,

    .cnt-card a{

        font-size:14px;

    }

    .cnt-map{

        min-height:320px;

        border-radius:15px;

    }

    .cnt-form-box{

        padding:22px;

        border-radius:15px;

    }

    .cnt-form-box h3{

        font-size:22px;

    }

    .cnt-input{

        height:48px;

        padding:10px 15px;

    }

    .cnt-textarea{

        min-height:130px;

    }

    .cnt-btn{

        font-size:14px;

        padding:13px;

    }

}

/*=========================================
            Extra Small Mobile
=========================================*/

@media (max-width:420px){

    .cnt-section{

        padding:50px 0;

    }

    .cnt-title{

        font-size:24px;

    }

    .cnt-card{

        padding:20px 16px;

    }

    .cnt-icon{

        width:55px;

        height:55px;

        font-size:20px;

    }

    .cnt-card h3{

        font-size:18px;

    }

    .cnt-card p,

    .cnt-card a{

        font-size:13px;

        line-height:1.7;

    }

    .cnt-map{

        min-height:280px;

    }

    .cnt-form-box{

        padding:20px;

    }

    .cnt-form-box h3{

        font-size:20px;

    }

    .cnt-input{

        height:46px;

        font-size:13px;

        padding:10px 14px;

    }

    .cnt-textarea{

        min-height:120px;

    }

    .cnt-btn{

        font-size:13px;

        padding:12px;

        border-radius:40px;

    }

}



