:root { --theme: #ee2d30; --theme-hover: #c51114; --theme-secondary: #000; --font: 'Proxima Nova', sans-serif; --body-color: #282c3f; --font-2:'Poppins', sans-serif; --gr: linear-gradient(to right, #e5f8ff, #ffecd1); --border: #d3d3d3; --secondary-color: #474a56; }

/*fonts*/

/*fonts*/
@font-face { font-family: 'Proxima Nova'; src: url('../fonts/ProximaNova-Regular.woff2') format('woff2'), url('../fonts/ProximaNova-Regular.woff') format('woff'); font-weight: normal; font-style: normal; font-display: swap; }
@font-face { font-family: 'Proxima Nova'; src: url('../fonts/ProximaNova-Black.woff2') format('woff2'), url('../fonts/ProximaNova-Black.woff') format('woff'); font-weight: 900; font-style: normal; font-display: swap; }
@font-face { font-family: 'Proxima Nova'; src: url('../fonts/ProximaNova-Light.woff2') format('woff2'), url('../fonts/ProximaNova-Light.woff') format('woff'); font-weight: 300; font-style: normal; font-display: swap; }
@font-face { font-family: 'Proxima Nova'; src: url('../fonts/ProximaNova-Semibold.woff2') format('woff2'), url('../fonts/ProximaNova-Semibold.woff') format('woff'); font-weight: 600; font-style: normal; font-display: swap; }
@font-face { font-family: 'Proxima Nova'; src: url('../fonts/ProximaNova-Bold.woff2') format('woff2'), url('../fonts/ProximaNova-Bold.woff') format('woff'); font-weight: bold; font-style: normal; font-display: swap; }

/*fonts*/
body { font-size: 20px; font-family: var(--font); color: var(--body-color); }
a { text-decoration: inherit; color: inherit; }
.container { max-width: 1500px; }
.btn-primary { background: var(--theme); border: none; box-shadow: none !important; }
.btn-primary:hover { background: var(--theme-hover); }
section { padding: 80px 0; }
img { max-width: 100%; height: auto; }

/*header*/
.site_header { display: inline-block; width: 100%; position: fixed; top: 0px; left: 0px; box-shadow: 0px 0px 10px 0px rgb(0 0 0 / 23%); z-index: 112; }
.header_top .container { display: flex; align-items: center; justify-content: space-between; }
.icon-a { display: flex; align-items: center; }
.icon-a p,
.icon-a a { margin-bottom: 0px; margin-right: 30px; display: flex; align-items: center; }
.icon-a a:hover { color: #fff; }
.icon-a p i,
.icon-a a i { margin-right: 20px; font-size: 25px; }
.social-links { display: flex; align-items: center; }
.social-links a { display: flex; justify-content: center; align-items: center; width: 36px; height: 36px; text-align: center; font-size: 19px; margin-left: 10px; border: 1px solid; border-radius: 50%; transition: 0.5s all; }
.social-links a:hover { background: var(--theme); color: #ffff; border-color: var(--theme); }
.header_top { background: #1e479d; padding: 15px 0; color: #ffff; }
.navigations { list-style: none; display: flex; align-items: center; padding: 0px; margin: 0px; }
.header-middle .container { display: flex; align-items: center; justify-content: space-between; }
.navigations li { margin-left: 10px; position: relative; }
.navigations li ul { position: absolute; margin: 0; padding: 0; list-style: none; background: #fff; left: -150px; top: 37px; min-width: 450px; padding: 10px 0; display: none; padding-top: 35px; box-shadow: 0px 40px 10px 0px rgb(0 0 0 / 43%); }
.navigations li:hover ul { display: block; }
.navigations li ul li { margin-bottom: 0px; margin-left: 0px; }
.navigations li ul li a { width: 100%; display: flex; padding: 10px 30px; font-weight: normal; }
.navigations li a { padding: 10px 20px; font-weight: 700; }
.navigations li a .mdi-chevron-down { margin-left: 5px; }
.navigations li a.active { color: var(--theme); }
.navigations li:hover .mdi-chevron-down:before { content: '\F0143' }
.header-middle { padding: 20px 0; background: #fff; }
.navigations li .btn-colors { background: var(--theme); color: #fff; border-radius: 5px; }

/*header*/
.main-container { margin-top: 163px; display: inline-block; width: 100%; }

/*banner*/
.banner { display: inline-block; width: 100%; position: relative; padding: 0; min-height: 700px; }
.banner .item-full { padding: 50px 0; display: flex; align-items: center; min-height: 700px; background-size: cover; position: relative; }
.banner .item-full:before { content: ''; width: 80%; height: 100%; position: absolute; left: 0px; top: 0px; background: linear-gradient(to right, rgb(41 46 73 / 86%), rgb(83 105 118 / 0%)); }
.banner .content { width: 100%; display: inline-block; max-width: 650px; position: relative; z-index: 1; }
.h1-1 { font-size: 60px; font-weight: 700; margin-bottom: 15px; color: #fff }
.h1-1 span { color: var(--theme); }
.banner .content p { font-size: 25px; margin-bottom: 25px; color: #fff }
.banner .btn-primary { padding: 10px 35px; font-size: 25px; font-weight: 500; }
.about-us { font-size: 22px; }
.h2-1 { font-size: 50px; font-weight: 700; margin-bottom: 25px; }
.h2-1 span { color: var(--theme); }
.about-us .btn-primary { padding: 10px 25px; font-size: inherit; font-weight: 600; }
.about-us .row { align-items: center; }
.about-us .row { --bs-gutter-x: 2.5rem; }
.our-services .title-1 .badge-1 { font-size: 24px; text-transform: uppercase; }
.our-services .box { display: inline-block; width: 100%; border-radius: 5px; background: #fff; box-shadow: 0 1px 3px rgb(0 0 0 / 12%), 0 1px 2px rgb(0 0 0 / 24%); min-height: 100%; position: relative; overflow: hidden; float: left; }
.our-services .box .content { padding: 20px; }
.our-services .box h3 { font-weight: 600; font-size: 25px; position: absolute; left: 0; bottom: 0px; color: #fff; width: 100%; padding: 30px 25px; }
.our-services { background: #fff url(../images/bg-pattern.jpg) no-repeat center; background-size: cover; }
.title-1 { display: inline-block; width: 100%; margin-bottom: 50px; }
.our-services .title-1 { text-align: center; }
.our-services .title-1 h2 { margin-bottom: 0px; }
.our-services .box i { font-size: 55px; color: var(--theme); margin-bottom: 5px; display: inline-block; }
.pos-relative { position: relative; }
.experience { display: inline-flex; align-items: center; text-align: left; background: #fff; padding: 25px 45px; box-shadow: 0px 0px 10px 0px rgb(0 0 0 / 15%); border-radius: 85px; position: absolute; left: 105px; bottom: 70px; }
.experience h2 { margin-right: 20px; margin-bottom: 0; font-size: 45px; font-weight: 600; color: var(--theme); }
.experience h3 { margin-bottom: 0px; }
.our-services .box:before { content: ''; width: 100%; height: 50%; position: absolute; left: 0px; bottom: 0px; background: linear-gradient(to bottom, rgb(255 255 255 / 0%), rgb(18 32 82 / 85%)); }
.our-services .box a { position: absolute; left: 0px; top: 0px; width: 100%; display: inline-block; width: 100%; height: 100%; }
.insutry-flex { display: flex; flex-wrap: wrap; gap: 25px; }
.insutry-flex .box { width: 22%; text-align: center; padding: 20px; border-radius: 5px; box-shadow: 0 1px 3px rgb(0 0 0 / 12%), 0 1px 2px rgb(0 0 0 / 24%); background: #fff; display: flex; align-items: center; flex-direction: column; justify-content: center; }
.insutry-flex .box p { margin: 0; font-size: 20px; font-weight: 600; }
.insutry-flex .box .icon { display: inline-flex; width: 100px; height: 100px; background: var(--theme); border-radius: 50%; padding: 15px; margin-bottom: 20px; }
.industries .row { align-items: center; }
.industries { background: #fff; font-size: 24px; }
.insutry-flex .box .icon img { filter: brightness(0) saturate(100%) invert(100%) sepia(0%) saturate(1009%) hue-rotate(341deg) brightness(111%) contrast(101%); }

/*call to acrion*/
.call-to-action { display: inline-block; width: 100%; background: url(../images/success.jpg) no-repeat fixed; background-size: cover; position: relative; text-align: center; }
.call-to-action:before { content: ''; width: 100%; height: 100%; position: absolute; left: 0px; top: 0px; background: rgb(30 71 157 / 56%); display: inline-block; }
.call-to-action h2 { text-align: center; font-size: 50px; color: #fff; font-weight: 600; margin-bottom: 25px; }
.call-to-action .container { max-width: 900px; position: relative; z-index: 1 }
.call-to-action p { color: #fff; margin-bottom: 20px; }
.call-to-action .flex-btn { display: flex; align-items: center; justify-content: center; gap: 20px; }
.call-to-action .flex-btn .btn { font-size: inherit; padding: 10px 25px; font-weight: 600; }
.call-to-action .flex-btn .btn-second { background: #0b4bd3 }
.client-flex { display: flex; flex-wrap: wrap; gap: 50px; }
.client-flex .box { width: calc(33% - 50px); display: flex; justify-content: center; align-items: center; }
.our-partners .row { align-items: center; }
.our-partners .title-1 { margin-bottom: 0px; }
.our-partners .h2-1 { margin-bottom: 0px; }
.our-works { display: inline-block; width: 100%; background: url(../images/portfolio.jpg) no-repeat center; background-size: cover; }
.our-works .box { display: inline-block; width: 100%; position: relative; box-shadow: 0 1px 3px rgb(0 0 0 / 12%), 0 1px 2px rgb(0 0 0 / 24%); border-radius: 5px; overflow: hidden; float: left; }
.our-works .box:before { content: ''; width: 100%; height: 50%; position: absolute; left: 0px; bottom: 0px; background: linear-gradient(to bottom, rgb(255 255 255 / 0%), rgb(18 32 82 / 85%)); }
.our-works .box h3 { position: absolute; left: 0; bottom: 0; padding: 25px; color: #fff; font-weight: 700; width: 100%; }
.our-works .box h3 span { display: block; font-size: 18px; font-weight: normal; margin-top: 10px; }
.our-works .title-1 .badge-1 { margin-bottom: 10px; }
.our-works .btn-primary { font-size: inherit; padding: 10px 45px; font-weight: 600; margin-top: 40px; }
.our-works .title-1 { margin-bottom: 30px }

/*banner scroll*/
.item-full { }
.banner .owl-carousel .owl-nav { display: inline-flex; align-items: center; position: absolute; bottom: 100px; right: 20%; }
.banner .owl-carousel .owl-nav button { width: 50px; height: 50px; display: flex; justify-content: center; align-items: center; background: rgb(0 0 0 / 71%); color: #fff; border-radius: 5px; margin-left: 15px; }
.banner .owl-carousel .owl-nav.disabled { display: none; }
.banner .owl-carousel .owl-dots { display: flex; justify-content: center; align-items: center; position: absolute; bottom: 50px; left: 0px; width: 100%; }
.banner .owl-carousel .owl-dots button { display: inline-block; width: 15px; height: 15px; background: rgb(0 0 0 / 22%); border-radius: 50%; margin: 10px 10px; box-shadow: 0px 0px 0px 4px #fff; transition: 0.5s all; }
.banner .owl-carousel .owl-dots .active { box-shadow: 0px 0px 0px 4px var(--theme); }

/*footer*/
.site_footer { padding: 80px 0; background: #0d1120; position: relative; color: #fff; }
.site_footer h3 { font-size: 25px; font-weight: 700; margin-bottom: 25px; }
.site_footer .social-links a { margin-left: 0px; margin-right: 10px; }
ul.menu { list-style: none; width: 100%; margin: 0px; padding: 0px; }
ul.menu li { width: 100%; display: inline-block; }
ul.menu li a { display: flex; padding: 5px 0; width: 100%; align-items: center; transition: 0.5s all; }
ul.menu li a:before { content: '\F0142'; font-family: "Material Design Icons"; margin-right: 15px; font-size: 22px; transition: 0.5s all; }
ul.menu li a:hover { padding-left: 25px; }
.contact_ul { list-style: none; width: 100%; margin: 0px; padding: 0px; }
.contact_ul li { display: flex; align-items: center; margin-bottom: 15px; }
.contact_ul li i { font-size: 25px; margin-right: 20px; }
.ul_gallery { list-style: none; width: 100%; margin: 0px; padding: 0px; display: flex; flex-wrap: wrap; gap: 20px; }
.ul_gallery li { width: 80px; }
.ul_gallery a { display: inline-block; width: 80px; height: 80px; position: relative; overflow: hidden; border-radius: 5px; }
.ul_gallery a:before { content: '\F0415'; font-family: "Material Design Icons"; position: absolute; left: 0; top: 0; width: 100%; height: 100%; background: rgb(0 0 0 / 34%); display: flex; align-items: center; justify-content: center; font-size: 35px; color: #fff; transition: 0.5s all; transform: scale(0); }
.ul_gallery a:hover:before { transform: scale(1.0); }
.copy-right { margin: 0; margin-top: 55px; }

/*gallery*/
.mfp-with-zoom .mfp-container,
.mfp-with-zoom.mfp-bg { opacity: 0; -webkit-backface-visibility: hidden;	/* ideally, transition speed should match zoom duration */ -webkit-transition: all 0.3s ease-out; -moz-transition: all 0.3s ease-out; -o-transition: all 0.3s ease-out; transition: all 0.3s ease-out; }
.mfp-with-zoom.mfp-ready .mfp-container { opacity: 1; }
.mfp-with-zoom.mfp-ready.mfp-bg { opacity: 0.8; }
.mfp-with-zoom.mfp-removing .mfp-container,
.mfp-with-zoom.mfp-removing.mfp-bg { opacity: 0; }

/*scroll*/
.btn-scroll { width: 50px; height: 50px; border: none; border-radius: 50%; font-size: 30px; position: absolute; right: 100px; bottom: 100px; box-shadow: none; padding: 0; background: #fff; }

/*submenu*/
.sub-banner { background: url(../images/banner.jpg) no-repeat center; padding: 80px 0; position: relative; }
.sub-banner:before { content: ''; width: 100%; height: 100%; position: absolute; left: 0px; top: 0px; background: linear-gradient(to right, rgb(41 46 73 / 86%), rgb(83 105 118 / 45%)); }
.sub-banner .container { position: relative; z-index: 1; max-width: 700px; }
.sub-banner h2 { font-size: 45px; margin: 0; font-weight: 700; color: #fff; text-align: center; }
.sub-banner p { text-align: center; margin-top: 15px; color: #fff; }
.form-control { font-size: inherit; height: 55px; }
textarea.form-control { height: 120px; }
.form-group { margin-bottom: 20px; display: inline-block; width: 100%; }
.contact-form .btn-primary { font-size: inherit; padding: 10px 30px; font-weight: 600; }
.box-contact { display: inline-block; width: 100%; padding-left: 80px; position: relative; margin-bottom: 15px; }
.box-contact span { position: absolute; left: 0px; top: 0px; width: 50px; height: 50px; text-align: center; line-height: 50px; display: inline-block; font-size: 35px; opacity: 0.5; }
.box-contact h3 { font-size: 22px; font-weight: 600 }
.box-contact p,
.industries p,
.about-us p { color: var(--secondary-color); }
.call-to-action { font-size: 24px; }
.site_footer p,
.site_footer a { color: #ddd }
.title-1 p { margin-bottom: 0px; }
iframe { float: left; width: 100%; }
.our-works-nobg { background: #fff; }
.responsive-header img { max-width: 200px; }
.responsive-header { display: none; align-items: center; width: 100%; justify-content: space-between; padding: 10px 15px; background: #fff; position: fixed; left: 0px; top: 0px; z-index: 99 }
.btn-responsive { width: 40px; height: 40px; display: flex; justify-content: center; align-items: center; padding: 0; font-size: 30px; border-radius: 50%; }
.our-works-nobg .box { margin-bottom: 35px; }
.about-us h4 { font-weight: 700; margin-bottom: 25px; }
ul.ul-style li { display: flex; align-items: center; color: inherit; font-weight: 400; transition: 0.5s all; margin-bottom: 10px; }
ul.ul-style li i { margin-right: 15px; font-size: 25px; color: var(--theme); }
ul.ul-style { margin: 0; padding: 0; width: 100%; }
.accordion .accordion-item .accordion-body { padding: 25px 30px; border-top: 1px solid #eaeaea; }
.accordion .accordion-item .accordion-button { background-color: transparent; box-shadow: unset !important; border: 0 !important; border-radius: 0; font-size: 22px; font-weight: 700; padding-top: 25px; padding-left: 30px; padding-right: 30px; padding-bottom: 25px; color: var(--bs-body-color); }
.faq-section .row { align-items: center; }
.accordion .accordion-item { border: 1px solid #ddd; border-radius: 10px; margin-bottom: 25px; background-color: var(--bs-white); }
.about-accordion { background: #fff url(../images/bg-pattern.jpg) no-repeat center; padding: 50px 0 }
.about-accordion .pl-4 { padding-left: 40px; }
.about-accordion .row { align-items: center; }
.about-accordion h2.ab-h2 { font-size: 33px; font-weight: 700; margin-bottom: 20px; }
.bg-indus { background: #ebf6ff }
.intro-service h2 { font-size: 30px; font-weight: 700; margin-bottom: 35px }
.key-feature { background: #fff url(../images/bg-pattern.jpg) no-repeat center; }
.key-feature .box { width: 100%; display: inline-block; padding: 30px; background: #fff; border-radius: 5px; margin-bottom: 0; box-shadow: 0 1px 3px rgb(0 0 0 / 12%), 0 1px 2px rgb(0 0 0 / 24%); min-height: 100%; }
.key-feature .h2-1 { font-size: 35px; }
.key-feature .title-1 p { width: 100%; max-width: 700px; display: inline-block; }
.key-feature .col-md-4 { margin-bottom: 30px; }
.key-feature h3 { font-size: 25px; font-weight: 600; }
.key-feature p { margin-bottom: 0px; }
.call-to-action .flex-btn .btn i { margin-right: 10px; }
.call-to-action .flex-btn .btn-whatsapp { background: #25D366 !important; }
.intro-service-main .row { align-items: center; }
.intro-service-main { background: #f1f1f1 }
.intro-service-main h2 { font-weight: 700; margin-bottom: 25px; }
.error { color: #ff0202 }
.error-page-section h2 { font-size: 30px; font-weight: 700; }
.error-page-section .btn-primary { font-size: 20px; }
