/*=========================================
1400px
=========================================*/

@media (max-width:1400px){

    /* Hero */

    .cp-title{
        font-size:52px;
    }

    .cp-description{
        font-size:17px;
    }

    .cp-hero-image{
        max-width:560px;
    }

    /* Shared Headings */

    .cp-form-title,
    .cp-map-title,
    .cp-process-title{
        font-size:46px;
    }

    /* Form */

    .cp-form-content{
        max-width:500px;
    }

    /* Process */

    .cp-process-heading{
        max-width:700px;
    }

}

/*=========================================
1200px
=========================================*/

@media (max-width:1199.98px){

    /* Hero */

    .cp-hero{
        padding:50px 0;
    }

    .cp-hero .row{
        min-height:auto;
    }

    .cp-title{
        font-size:46px;
    }

    .cp-description{
        font-size:16px;
        line-height:1.8;
    }

    .cp-hero-image{
        max-width:500px;
    }

    .cp-btn{
        min-width:190px;
        height:54px;
        font-size:16px;
    }


    /* Contact Info */

    .cp-info-card{
        padding:32px 24px;
    }

    .cp-info-icon{
        width:75px;
        height:75px;
        font-size:30px;
        margin-bottom:22px;
    }

    .cp-info-card h3{
        font-size:22px;
    }


    /* Contact Form */

    .cp-contact-form-section{
        padding:60px 0;
    }

    .cp-form-title{
        font-size:42px;
    }

    .cp-form-card{
        padding:35px;
    }


    /* Map */

    .cp-map-section{
        padding:90px 0;
    }

    .cp-map-wrapper iframe{
        height:480px;
    }


    /* Process */

    .cp-process{
        padding:60px 0;
    }

    .cp-process-title{
        font-size:42px;
    }

    .cp-process-card{
        padding:30px 24px;
    }

    .cp-process-icon{
        width:80px;
        height:80px;
        font-size:30px;
    }

}

/*=========================================
992px
=========================================*/

@media (max-width:991.98px){

    /* Hero */

    .cp-hero{
        padding:70px 0 60px;
        text-align:center;
    }

    .cp-hero .row{
        row-gap:60px;
    }

    .cp-hero-content{
        max-width:100%;
        margin:auto;
    }

    .cp-breadcrumb,
    .cp-tag,
    .cp-buttons{
        justify-content:center;
    }

    .cp-title{
        font-size:42px;
    }

    .cp-description{
        max-width:700px;
        margin:0 auto 35px;
    }

    .cp-hero-image{
        max-width:480px;
    }

    .cp-hero-content::before,
    .cp-hero-content::after{
        display:none;
    }


    /* Contact Info */

    .cp-contact-info{
        padding:60px 0;
    }

    .cp-info-card{
        padding:35px 25px;
    }


    /* Contact Form */

    .cp-contact-form-section{
        padding:70px 0;
    }

    .cp-form-content{
        max-width:100%;
        text-align:center;
        margin-bottom:20px;
    }

    .cp-form-feature{
        justify-content:center;
    }

    .cp-form-title{
        font-size:40px;
    }


    /* Map */

    .cp-map-section{
        padding:70px 0;
    }

    .cp-map-heading{
        margin-bottom:45px;
    }

    .cp-map-title{
        font-size:40px;
    }

    .cp-map-wrapper iframe{
        height:420px;
    }


    /* Process */

    .cp-process{
        padding:70px 0;
    }

    .cp-process-heading{
        margin-bottom:50px;
    }

    .cp-process-title{
        font-size:40px;
    }

    .cp-process-card::after{
        display:none;
    }

}

/*=========================================
768px
=========================================*/

@media (max-width:767.98px){

    /* Hero */

    .cp-hero{
        padding:60px 0 50px;
    }

    .cp-title{
        font-size:36px;
        line-height:1.2;
    }

    .cp-description{
        font-size:16px;
        margin-bottom:30px;
    }

    .cp-tag{
        padding:10px 18px;
        font-size:14px;
    }

    .cp-breadcrumb{
        font-size:14px;
        margin-bottom:18px;
    }

    .cp-buttons{
        flex-direction:column;
        gap:15px;
    }

    .cp-btn{
        width:100%;
        min-width:100%;
    }

    .cp-hero-image{
        max-width:380px;
    }

    .cp-image-wrapper::before{
        width:320px;
        height:320px;
    }

    .cp-image-wrapper::after{
        display:none;
    }


    /* Contact Info */

    .cp-contact-info{
        padding:50px 0;
    }

    .cp-info-card{
        padding:30px 22px;
    }

    .cp-info-icon{
        width:70px;
        height:70px;
        font-size:28px;
    }

    .cp-info-card h3{
        font-size:20px;
    }


    /* Contact Form */

    .cp-contact-form-section{
        padding:60px 0;
    }

    .cp-form-title{
        font-size:34px;
    }

    .cp-form-description{
        font-size:16px;
    }

    .cp-form-card{
        padding:28px;
        border-radius:22px;
    }


    /* Map */

    .cp-map-section{
        padding:60px 0;
    }

    .cp-map-title{
        font-size:34px;
    }

    .cp-map-wrapper{
        border-radius:20px;
    }

    .cp-map-wrapper iframe{
        height:360px;
    }


    /* Process */

    .cp-process{
        padding:60px 0;
    }

    .cp-process-title{
        font-size:34px;
    }

    .cp-process-card{
        padding:28px 22px;
    }

    .cp-process-icon{
        width:75px;
        height:75px;
        font-size:28px;
    }

    .cp-process-card h3{
        font-size:22px;
    }

}

/*=========================================
576px
=========================================*/

@media (max-width:575.98px){

    /* Hero */

    .cp-hero{
        padding:50px 0 40px;
    }

    .cp-title{
        font-size:30px;
    }

    .cp-description{
        font-size:15px;
        line-height:1.8;
    }

    .cp-tag{
        padding:8px 16px;
        font-size:13px;
    }

    .cp-breadcrumb{
        font-size:13px;
        gap:6px;
    }

    .cp-hero-image{
        max-width:300px;
    }

    .cp-image-wrapper::before{
        width:250px;
        height:250px;
    }


    /* Contact Info */

    .cp-contact-info{
        padding:45px 0;
    }

    .cp-info-card{
        padding:25px 20px;
        border-radius:20px;
    }

    .cp-info-icon{
        width:65px;
        height:65px;
        font-size:24px;
        margin-bottom:18px;
    }

    .cp-info-card h3{
        font-size:19px;
    }

    .cp-info-card p,
    .cp-info-card a,
    .cp-info-card span{
        font-size:15px;
    }


    /* Contact Form */

    .cp-contact-form-section{
        padding:50px 0;
    }

    .cp-form-title{
        font-size:30px;
    }

    .cp-form-description{
        font-size:15px;
    }

    .cp-form-card{
        padding:22px;
    }

    .contact-form .form-control,
    .contact-form .form-select{
        height:54px;
        font-size:15px;
    }

    .contact-form textarea.form-control{
        height:150px;
    }

    .contact-btn{
        height:56px;
        font-size:16px;
    }


    /* Map */

    .cp-map-section{
        padding:50px 0;
    }

    .cp-map-title{
        font-size:30px;
    }

    .cp-map-description{
        font-size:15px;
    }

    .cp-map-wrapper iframe{
        height:300px;
    }


    /* Process */

    .cp-process{
        padding:50px 0;
    }

    .cp-process-title{
        font-size:30px;
    }

    .cp-process-description{
        font-size:15px;
    }

    .cp-process-card{
        padding:25px 20px;
    }

    .cp-process-icon{
        width:65px;
        height:65px;
        font-size:24px;
    }

    .cp-process-card h3{
        font-size:20px;
    }

    .cp-process-card p{
        font-size:15px;
    }

}

/*=========================================
400px
=========================================*/

@media (max-width:400px){

    /* Hero */

    .cp-title{
        font-size:26px;
        line-height:1.25;
    }

    .cp-description{
        font-size:14px;
    }

    .cp-tag{
        padding:8px 14px;
        font-size:12px;
    }

    .cp-breadcrumb{
        font-size:12px;
        justify-content:center;
        flex-wrap:wrap;
    }

    .cp-btn{
        height:52px;
        font-size:15px;
    }

    .cp-hero-image{
        max-width:260px;
    }

    .cp-image-wrapper::before{
        width:220px;
        height:220px;
    }


    /* Contact Info */

    .cp-info-card{
        padding:22px 18px;
    }

    .cp-info-icon{
        width:60px;
        height:60px;
        font-size:22px;
    }

    .cp-info-card h3{
        font-size:18px;
    }

    .cp-info-card p,
    .cp-info-card a,
    .cp-info-card span{
        font-size:14px;
    }


    /* Contact Form */

    .cp-form-title{
        font-size:26px;
    }

    .cp-form-description{
        font-size:14px;
    }

    .cp-form-card{
        padding:20px;
        border-radius:18px;
    }

    .contact-form .form-control,
    .contact-form .form-select{
        height:50px;
        font-size:14px;
    }

    .contact-form textarea.form-control{
        height:140px;
    }

    .contact-btn{
        height:52px;
        font-size:15px;
    }


    /* Map */

    .cp-map-title{
        font-size:26px;
    }

    .cp-map-description{
        font-size:14px;
    }

    .cp-map-wrapper iframe{
        height:260px;
    }


    /* Process */

    .cp-process-title{
        font-size:26px;
    }

    .cp-process-description{
        font-size:14px;
    }

    .cp-process-card{
        padding:22px 18px;
    }

    .cp-process-icon{
        width:60px;
        height:60px;
        font-size:22px;
    }

    .cp-process-card h3{
        font-size:18px;
    }

    .cp-process-card p{
        font-size:14px;
    }

}

/*=========================================
320px
=========================================*/

@media (max-width:320px){

    /* Hero */

    .cp-hero{
        padding:40px 0 35px;
    }

    .cp-title{
        font-size:22px;
        line-height:1.3;
    }

    .cp-description{
        font-size:13px;
        line-height:1.7;
    }

    .cp-tag{
        padding:7px 12px;
        font-size:11px;
    }

    .cp-breadcrumb{
        font-size:11px;
        gap:4px;
    }

    .cp-btn{
        height:48px;
        font-size:14px;
        border-radius:40px;
    }

    .cp-hero-image{
        max-width:220px;
    }

    .cp-image-wrapper::before{
        width:180px;
        height:180px;
    }


    /* Contact Info */

    .cp-contact-info{
        padding:40px 0;
    }

    .cp-info-card{
        padding:18px 15px;
        border-radius:16px;
    }

    .cp-info-icon{
        width:55px;
        height:55px;
        font-size:20px;
        margin-bottom:16px;
    }

    .cp-info-card h3{
        font-size:17px;
    }

    .cp-info-card p,
    .cp-info-card a,
    .cp-info-card span{
        font-size:13px;
    }


    /* Contact Form */

    .cp-contact-form-section{
        padding:40px 0;
    }

    .cp-form-title{
        font-size:22px;
    }

    .cp-form-description{
        font-size:13px;
    }

    .cp-form-feature{
        font-size:14px;
        gap:10px;
    }

    .cp-form-feature i{
        font-size:18px;
    }

    .cp-form-card{
        padding:16px;
        border-radius:16px;
    }

    .contact-form label{
        font-size:13px;
    }

    .contact-form .form-control,
    .contact-form .form-select{
        height:46px;
        font-size:13px;
        padding:0 14px;
    }

    .contact-form textarea.form-control{
        height:120px;
        padding:14px;
    }

    .contact-btn{
        height:48px;
        font-size:14px;
    }


    /* Map */

    .cp-map-section{
        padding:40px 0;
    }

    .cp-map-title{
        font-size:22px;
    }

    .cp-map-description{
        font-size:13px;
    }

    .cp-map-wrapper{
        border-radius:16px;
    }

    .cp-map-wrapper iframe{
        height:220px;
    }


    /* Process */

    .cp-process{
        padding:40px 0;
    }

    .cp-process-title{
        font-size:22px;
    }

    .cp-process-description{
        font-size:13px;
    }

    .cp-process-card{
        padding:18px 15px;
        border-radius:18px;
    }

    .cp-process-icon{
        width:55px;
        height:55px;
        font-size:20px;
        border-radius:16px;
    }

    .cp-process-card h3{
        font-size:17px;
    }

    .cp-process-card p{
        font-size:13px;
    }

}