html{
    scroll-behavior: smooth;
}
*{
    margin:0;
    padding:0;
    box-sizing: border-box;
}
img{
    display:block;
    width:100%;
    height: auto;
}
.container{
    width:100%;
    max-width:90%;
    margin:0 auto;
}
body{
    font-family: "Montserrat", sans-serif;
    overflow-x: hidden;
    -webkit-font-smoothing: antialiased;
}
.logo_col img, .logo_col_footer img{
    max-width: 140px;
    filter: brightness(1.5);
}
section:not(.hero_banner,.hero_video_wrapper){
    padding:40px 0;
}
.main_page_wrap{
    background:#151d28;
}
.btn-wrap{
    text-align:center;
    margin-top: 30px;
}
a.main_link{
    font-size: 17px;
    line-height: 29px;
    color: #fff;
    text-decoration: none;
}
a.main_btn{
    font-size: 16px;
    text-transform: uppercase;
    color: #fff;
    display: inline-block;
    text-align: center;
    text-decoration: none;
    padding: 10px 50px;
    border: 1px solid #fff;
    border-radius: 50px;
    font-weight:400;
}
.sub_head{
    font-size: 20px;
    color: #aeaeae;
    font-weight: 400;
    text-align: center;
    margin-bottom: 20px;
}
.main_head{
    font-size: 30px;
    text-transform: uppercase;
    color: #aeaeae;
    font-weight: 800;
    text-align: center;
    margin-bottom: 10px;
}
.main_para, .work_content ul li{
    font-size: 17px;
    line-height: 29px;
    color: #aeaeae;
    text-align: center;
}
/* hero banner css start */
.banner_col{
    position:relative;
}
.banner_text{
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background: linear-gradient(to top, #00000000, #0000004f, #00000000);
    padding: 20vh 50px;
}
.banner_text h3{
    font-size: 23px;
    text-transform: uppercase;
    color: #ffffff;
    font-weight:400;
    text-align: center;
    margin-bottom: 20px;
}
.banner_text h1{
    font-size: 60px;
    text-transform: uppercase;
    color: #ffffff;
    font-weight: 800;
    text-align: center;
    margin-bottom: 20px;
}
.banner_col a.main_btn{
    color:#fff;
    border-color: #fff;
}
/* hero banner css end */

/* index about css start */
.common{
    position: relative;
}
section.common::before {
    content: "";
    position: absolute;
    top: 0;
    left: 50%;
    width: 1px;
    height: 80px;
    background-color: #61656b;
}
.content_wrapper{
    width: 100%;
    max-width: 50%;
    margin: 0 auto;
    padding-top: 60px;
}
.about-wrapper p:not(.contact-form p){
    margin-top:30px;
    margin-bottom: 30px;

}
/* index about css end */

/* clients css satrt */
.client_image{
    margin-top:40px;
}

.client_image ul{
    display: flex;
    align-items: center;
    justify-content: space-around;
    list-style: none;
    max-width: 80%;
    margin: 0 auto;
    flex-wrap: wrap;
    gap: 40px;
}
.client_image ul li {
    max-width: 187px;
    max-height: 69px;
    margin-bottom: 0px;
}
.client_image ul li img{
        max-width: 100px;
    max-height: 39px;
    object-fit: contain;
    margin: 0 auto;
    opacity: 0.6;
}
/* clients css start */

/* Services css start */
.about-wrapper .btn-wrap{
    display: flex;
    justify-content: center;
    column-gap: 20px;
}
.cord_row_wrapper{
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    column-gap: 20px;
    margin-top: 80px;
}
.card_col {
    background: #0f171f;
    padding: 20px;
    position: relative;
    z-index: 1;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}
.card_col h2 {
    font-size: 50px;
    text-transform: uppercase;
    font-weight: 400;
    color: #aeaeae;
    margin-bottom: 10px;
}
.card_col h3 {
    font-size: 30px;
    color: #aeaeae;
    font-weight: 400;
    margin-bottom: 60px;
}

.card_col p {
    text-align: left;
    margin-top: 0;
    /* min-height:250px; */
}
/* .card_col:after {
    content: '';
    background-image: url(../images/arrow-image.png);
    position: absolute;
    bottom: 8%;
    left: 20px;
    height: 20px;
    width: 50px;
    background-repeat: no-repeat;
    z-index: 99;
    background-size: contain;
    cursor: pointer;
} */
.card_col a[href^="mailto"] {
    text-decoration: underline;
}
/* Services css end */

/* work css start */
.work_col{
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    column-gap: 50px;
    margin-block: 50px;
    align-items: center;
}
.work_col:last-child{
    margin-bottom: 0;
}
.work_col:nth-child(even) .work_img{
    order:2;
}
.work_content h2,.work_content p{
    text-align:left;
}
.work_content .btn-wrap{
    justify-content:left;
}
h3.stills,h3.motion{
    font-size: 16px;
    text-transform: uppercase;
    color: #aeaeae;
    margin-bottom: 10px;
    position:relative;
    padding-left: 30px;
}
h3.stills:before,h3.motion:before{
    content: '';
    background-image: url(../images/camera-logo.png);
    position: absolute;
    top: 0;
    left: 0px;
    height: 20px;
    width: 30px;
    background-repeat: no-repeat;
}
h3.motion:before{
    background-image: url(../images/motion_logo.png);
}
.work_content h4{
    font-size: 20px;
    color: #aeaeae;
    line-height: normal;
    font-weight: 400;
}
.double_heading{
    display: flex;
    column-gap: 30px;
}
/* review css start */

.review .content_wrapper{
    max-width:80%;
}
.content_wrapper h4{
    font-size: 45px;
    color: #aeaeae;
    font-weight: 800;
    text-align: center;
    margin: 40px auto 30px auto;
}
.review p.main_para{
    max-width: 70%;
    margin: 0 auto;
}
.review .btn-wrap {
    margin-top: 20px;
} 
.review .btn-wrap a.main_btn{
    color: #fff;
    background: transparent;
    font-weight: 400;
}  
/* review css end */

/* talk to us css start */
.talk_to_us .h2{
    text-transform:none;
}
.contact-form{
    max-width: 30%;
    margin: 50px auto 0 auto;
}
.contact-form input,.contact-form textarea {
    display: block;
    /* margin: 0 auto 40px auto; */
    margin: 0 auto 0 auto;
    /* padding: 30px 0 10px 0; */
    background: unset;
    width: 100%;
    border: none;
    border-bottom: 1px solid #aeaeae;
    padding-bottom: 10px;
    resize: none;
    font-family: "Montserrat", sans-serif;
    font-weight: 300;
}
.contact-form input::placeholder,.contact-form textarea::placeholder{
    font-size: 16px;
    line-height: normal;
    color: #aeaeae;
    font-weight: 300;
}
.contact-form button{
    display: block;
    margin: 0 auto;
    font-size: 16px;
    text-transform: uppercase;
    color: #fff;
    text-align: center;
    text-decoration: none;
    padding: 10px 50px;
    font-weight: 300;
    border: 1px solid #fff;
    border-radius: 50px;
    background: transparent;
}
.talk_to_us .content_wrapper{
    max-width: 70%;
}
.talk_to_us .content_wrapper h2{
    text-transform: none;
}
/* talk to us css end */
.service.common .card_arrow {
    opacity: 0;
}
@media screen and (max-width: 767px){
    .container{
        max-width: 100%;
        padding: 0 15px;
    }
    section:not(.hero_banner,.hero_video_wrapper){
        padding: 30px 0;
    }

 /* banner css start  */
.banner_col img{
    min-height: 50vh;
    object-fit: cover;
}
.banner_text{
    width: 100%;
    padding: 0 15px;
}
.banner_text h1{
    font-size: 30px;
}
.banner_text h3{
    font-size: 14px;
}
a.main_btn{
    font-size: 13px;
    padding: 10px 20px;
}
 /* banner css start end */

 /* vision section start  */
.main_page_wrap .content_wrapper{
    max-width: 100%;
    padding-top: 30px;
}
section.common::before{
    height: 50px;
}
/* vision section start end */

/* clients section start  */
 .client_image ul{
    overflow-x: auto;
    flex-wrap: nowrap;
    scrollbar-width: none;
    max-width: 100%;
    column-gap: 20px;
    justify-content: flex-start;
 }
 .client_image ul li{
    min-width: 25%;
 }
 .client_image ul li img{
    max-height: 30px;
    margin: 0 auto;
    aspect-ratio: 3 / 2;
 }
 /* clients section start end */

 /* what we do section start  */

.about-wrapper .btn-wrap{
    gap: 20px;
    flex-wrap: wrap;
}
.about-wrapper .btn-wrap a{
    width: 100%;
    max-width: calc(50% - 10px);
}
.cord_row_wrapper{
    overflow-x: auto;
    scrollbar-width: none;
    display: flex;
}
.card_col{
    min-width: 80%;
}

/* what we do section end */

/* work section start  */

 .work_col{
    gap: 20px;
    grid-template-columns: auto;
 }
 .work_col:nth-child(even) .work_img{
    order: unset;
 }
 /* work section end */

 /* reviews section start  */
 .review p.main_para, .contact-form{
    max-width: 100%;
 }
  .content_wrapper h4{
    font-size: 25px;
  }
 /* reviews section end */

 /* form section start  */

 /* form section end */

 /* more work seection start  */
 div.work_row_wrap{
    display: flex;
    justify-content: flex-start;
    overflow-x: auto;
    scrollbar-width: none;
 }
.work_content{
    min-width: 80%;
}
 /* more work seection end */




 .banner_text{
background: linear-gradient(to top, #0000001a, #00000085, #00000024);
padding: 0px;
width: 89%;
 }
}
/* updated css start */

.talk_form button{cursor: pointer;}
.contact-form button {margin-top: 30px;}
.main_contct_form input:focus {outline: none;}
.main_contct_form input {color: white;}
.main_contct_form textarea {color: white;}
.main_contct_form textarea:focus {outline: none;}
.input-group-form {margin-bottom: 40px;}
.input-group-form p{color: red;font-size: 13px;padding-top: 10px;}
.card_col img{height: auto;width: 100%;max-width: 32px;}
.card_content{min-height: 250px;}

/* updated css end */