/*



TemplateMo 574 Mexant



https://templatemo.com/tm-574-mexant



*/



/* ---------------------------------------------

Table of contents

------------------------------------------------

01. font & reset css

02. reset

03. global styles

04. header

05. banner

06. features

07. testimonials

08. contact

09. footer

10. preloader

11. search

12. portfolio



--------------------------------------------- */

/* 

---------------------------------------------

font & reset css

--------------------------------------------- 

*/

@import url("https://fonts.googleapis.com/css?family=Open+Sans:100,200,300,400,500,600,700,800,900");



/* 



---------------------------------------------

reset

--------------------------------------------- 

*/

@font-face {

  font-family: "MatteoMedium";

  src: url('../fonts/MatteoMedium.eot');

  src: url('../fonts/MatteoMedium.eot') format('embedded-opentype'),

    url('../fonts/MatteoMedium.woff2') format('woff2'),

    url('../fonts/MatteoMedium.woff') format('woff'),

    url('../fonts/MatteoMedium.ttf') format('truetype'),

    url('../fonts/MatteoMedium.svg#MatteoMedium') format('svg');

}



*,

*::before,

*::after {

  box-sizing: border-box;

  margin: 0;

  padding: 0

}



:root {

  --bg: #0F1319;

  --bg2: #141920;

  --bg3: #1A2130;

  --bg4: #1E2838;

  --sky: #4A9EE8;

  --sky2: #7EC8F0;

  --sky3: #2A6AAA;

  --sky4: #0D2A44;

  --text: #E4EEF8;

  --text2: #8AAEC8;

  --text3: #506070;

  --border: #1E3050;

  --border2: #2A4060;

  --green: #3DCC8E;

  --red: #E85A5A;

  --nav-h: 68px;

  --silk: cubic-bezier(0.16, 1, 0.3, 1);

  --silk-fast: cubic-bezier(0.25, 1, 0.4, 1);

  --max-w: 1280px;

}



html,

body,

div,

span,

applet,

object,

iframe,

h1,

h2,

h3,

h4,

h5,

h6,

p,

blockquote,

div pre,

a,

abbr,

acronym,

address,

big,

cite,

code,

del,

dfn,

em,

font,

img,

ins,

kbd,

q,

s,

samp,

small,

strike,

strong,

sub,

sup,

tt,

var,

b,

u,

i,

center,

dl,

dt,

dd,

ol,

ul,

li,

figure,

header,

nav,

section,

article,

aside,

footer,

figcaption {

  margin: 0;

  padding: 0;

  border: 0;

  outline: 0;

}



.clearfix:after {

  content: ".";

  display: block;

  clear: both;

  visibility: hidden;

  line-height: 0;

  height: 0;

}



.clearfix {

  display: inline-block;

}



html[xmlns] .clearfix {

  display: block;

  scroll-behavior: smooth;

}



* html .clearfix {

  height: 1%;

}



ul,

li {

  padding: 0;

  margin: 0;

  list-style: none;

}



header,

nav,

section,

article,

aside,

footer,

hgroup {

  display: block;

}



* {

  box-sizing: border-box;

}



html,

body {

  font-family: 'MatteoMedium', sans-serif;

  font-weight: 400;

  background-color: #fff;

  font-size: 16px;

  -ms-text-size-adjust: 100%;

  -webkit-font-smoothing: antialiased;

  -moz-osx-font-smoothing: grayscale;

  scroll-behavior: smooth;

}



a {

  text-decoration: none !important;

}



h1,

h2,

h3,

h4,

h5,

h6 {

  margin-top: 0px;

  margin-bottom: 0px;

  color: #ed1b24;

}



ul {

  margin-bottom: 0px;

}



p {

  font-size: 15px;

  line-height: 26px;

  color: #000;

}



img {

  width: 100%;

  overflow: hidden;

}



/* 

---------------------------------------------

global styles

--------------------------------------------- 

*/

html,

body {

  background: #fff;

  background-image: url("../images/bg.jpg");

  background-repeat: repeat;

  font-family: 'MatteoMedium', sans-serif;

  overflow-x: hidden;

  overflow-y: scroll;

}



::selection {

  background: #ff0000;

  color: #fff;

}



::-moz-selection {

  background: #ff0000;

  color: #fff;

}



@media (max-width: 991px) {



  html,

  body {

    overflow-x: hidden;

  }



  .mobile-top-fix {

    margin-top: 30px;

    margin-bottom: 0px;

  }



  .mobile-bottom-fix {

    margin-bottom: 30px;

  }



  .mobile-bottom-fix-big {

    margin-bottom: 60px;

  }

}



.green-button a {

  font-size: 14px;

  color: #fff;

  background-color: #ff0000;

  padding: 12px 30px;

  display: inline-block;

  border-radius: 5px;

  font-weight: 500;

  text-transform: capitalize;

  letter-spacing: 0.5px;

  transition: all .3s;

}



.green-button a:hover {

  opacity: 0.9;

}



.orange-button a {

  font-size: 14px;

  color: #fff;

  background-color: #ff511a;

  padding: 12px 30px;

  display: inline-block;

  border-radius: 5px;

  font-weight: 500;

  text-transform: capitalize;

  letter-spacing: 0.5px;

  transition: all .3s;

}



.orange-button a:hover {

  opacity: 0.9;

}



section {

  /* margin-top: 120px; */

}



.section-heading {

  position: relative;

  z-index: 2;

  margin-top: 0px;

  text-align: center;

  margin-bottom: 70px;

}



.section-heading h6 {

  font-size: 16px;

  text-transform: uppercase;

  color: #ff0000;

  font-weight: 700;

}



.section-heading h4 {

  margin-top: 10px;

  line-height: 40px;

  font-size: 36px;

  font-weight: 700;

  text-transform: capitalize;

  color: #fff;

}



.section-heading p {

  margin-top: 30px;

}





/* 

---------------------------------------------

header

--------------------------------------------- 

*/

.background-header {





  position: fixed !important;

  top: 0 !important;

  left: 0;

  right: 0;

  box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.15) !important;



}



.header-area {

  background-size: contain;

  background-repeat: no-repeat;

  background-position: center;

  position: absolute;

  background-color: #ffffff;



  top: 0;

  left: 0;

  right: 0;

  z-index: 100;

  -webkit-transition: all .5s ease 0s;

  -moz-transition: all .5s ease 0s;

  -o-transition: all .5s ease 0s;

  transition: all .5s ease 0s;

}



.header-area .main-nav {

  min-height: 92px;

  padding-top: 8px;

  background: transparent;

}



.logo p {

  font-family: 'MatteoMedium';

  font-size: 10.5px;

  letter-spacing: normal;

}



.header-area .main-nav .logo {



  float: left;

  -webkit-transition: all 0.3s ease 0s;

  -moz-transition: all 0.3s ease 0s;

  -o-transition: all 0.3s ease 0s;

  transition: all 0.3s ease 0s;

}



.background-header .main-nav .logo {

  /* line-height: 80px;

  width: 170px;

  padding: 2px 0px 10px 10px; */

}



.background-header .nav {

  margin-top: 18px !important;

}



.header-area .main-nav .nav {

  float: right;

  margin-top: 20px;

  margin-right: 0px;

  background-color: transparent;

  -webkit-transition: all 0.3s ease 0s;

  -moz-transition: all 0.3s ease 0s;

  -o-transition: all 0.3s ease 0s;

  transition: all 0.3s ease 0s;

  position: relative;

  z-index: 999;



}



.header-area .main-nav .nav li {



  margin: 0px 25px;

}



.header-area .main-nav .nav li:last-child {

  padding-right: 0px;

}



h1 {

  color: #000;

  display: inline-block;

  margin: 0;

  text-transform: uppercase;

}



.header-area .main-nav .nav li a:hover:after {

  transform: scaleX(1);

}



.header-area .main-nav .nav li a.fromLeft:after {

  transform-origin: 0% 50%;

}





.header-area .main-nav .nav li a:after {

  display: block;

  content: '';

  border-bottom: solid 3px #ea2129;

  transform: scaleX(0);

  transition: transform 250ms ease-in-out;

}



.header-area .main-nav .nav li a {

  display: block;

  font-weight: normal;

  font-size: 17px;

  text-transform: capitalize;

  color: #000;

  -webkit-transition: all 0.3s ease 0s;

  -moz-transition: all 0.3s ease 0s;

  -o-transition: all 0.3s ease 0s;

  transition: all 0.3s ease 0s;

  height: 40px;



  line-height: 40px;

  border: transparent;

  letter-spacing: 1px;

  padding: 0px 15px;

}



/* .header-area .main-nav .nav li:last-child a {

  font-size: 14px;

  color: #fff;

  background-color: #ff0000;

  padding: 10px 20px !important;

  display: inline-block;

  border-radius: 5px;

  font-weight: 500;

  text-transform: capitalize;

  height: auto;

  line-height: 25px;

  letter-spacing: 0.5px;

  transition: all .3s;

} */



/* .header-area .main-nav .nav li:last-child a:hover {

  color: #fff;

} */



/* .header-area .main-nav .nav li.has-sub ul.sub-menu li:last-child a,

.background-header .main-nav .nav li.has-sub ul.sub-menu li:last-child a {

  margin-left: 0px;

  padding-left: 0px;

  padding-right: 0px;

  border-radius: 0px;

  padding-top: 0px !important;

  height: 40px;

} */





.header-area .main-nav .nav li.has-sub ul.sub-menu li:last-child a:hover,

.background-header .main-nav .nav li.has-sub ul.sub-menu li:last-child a:hover {

  padding-left: 25px !important;

}



.header-area .main-nav .nav li:hover a,

.header-area .main-nav .nav li a.active {

  color: #ff0000;

  background-color: transparent;

}



.background-header .main-nav .nav li:hover a,

.background-header .main-nav .nav li a.active {

  color: #ff0000;

  opacity: 1;

  background-color: transparent;

}



.header-area .main-nav .nav li.has-sub {

  position: relative;

  padding-right: 15px;

}



.header-area .main-nav .nav li.has-sub:after {

  font-family: FontAwesome;

  content: "\f107";

  font-size: 12px;

  color: #ff0000;

  position: absolute;

  right: 2px;

  top: 12px;

}



.header-area .main-nav .nav li.has-sub ul.sub-menu {

  position: absolute;

  width: 250px;

  background-color: #fff;

  box-shadow: 0 2px 28px 0 rgba(0, 0, 0, 0.06);

  overflow: hidden;

  top: 40px;

  border-radius: 5px;

  opacity: 0;

  transition: all .3s;

  transform: translateY(+2em);

  visibility: hidden;

  z-index: -1;

}



.header-area .main-nav .nav li.has-sub ul.sub-menu li {

  margin: 0px !important;

  padding-left: 0px;

  padding-right: 0px;

}



.header-area .main-nav .nav li.has-sub ul.sub-menu li a {

  opacity: 1;

  display: block;

  background: #f7f7f7;

  color: #2a2a2a !important;

  padding-left: 20px;

  height: 40px;

  line-height: 40px;

  -webkit-transition: all 0.3s ease 0s;

  -moz-transition: all 0.3s ease 0s;

  -o-transition: all 0.3s ease 0s;

  transition: all 0.3s ease 0s;

  position: relative;

  font-size: 14px;

  font-weight: 400;

  border-bottom: 1px solid #eee;

}



.header-area .main-nav .nav li.has-sub ul li a:hover {

  background: #fff;

  color: #ff511a !important;

  padding-left: 25px;

}



.header-area .main-nav .nav li.has-sub ul li a:hover:before {

  width: 3px;

}



.header-area .main-nav .nav li.has-sub:hover ul.sub-menu {

  visibility: visible;

  opacity: 1;

  z-index: 1;

  transform: translateY(0%);

  transition-delay: 0s, 0s, 0.3s;

}



.header-area .main-nav .menu-trigger {

  cursor: pointer;

  display: block;

  position: absolute;

  top: 33px;

  width: 32px;

  height: 40px;

  text-indent: -9999em;

  z-index: 99;

  right: 40px;

  display: none;

}



.background-header .main-nav .menu-trigger {

  top: 23px;

}



.header-area .main-nav .menu-trigger span,

.header-area .main-nav .menu-trigger span:before,

.header-area .main-nav .menu-trigger span:after {

  -moz-transition: all 0.4s;

  -o-transition: all 0.4s;

  -webkit-transition: all 0.4s;

  transition: all 0.4s;

  background-color: #FF0000;

  display: block;

  position: absolute;

  width: 30px;

  height: 2px;

  left: 0;

}



.background-header .main-nav .menu-trigger span,

.background-header .main-nav .menu-trigger span:before,

.background-header .main-nav .menu-trigger span:after {

  background-color: #FF0000;

}



.header-area .main-nav .menu-trigger span:before,

.header-area .main-nav .menu-trigger span:after {

  -moz-transition: all 0.4s;

  -o-transition: all 0.4s;

  -webkit-transition: all 0.4s;

  transition: all 0.4s;

  background-color: #FF0000;

  display: block;

  position: absolute;

  width: 30px;

  height: 2px;

  left: 0;

  width: 75%;

}



.background-header .main-nav .menu-trigger span:before,

.background-header .main-nav .menu-trigger span:after {

  background-color: #FF0000;

}



.header-area .main-nav .menu-trigger span:before,

.header-area .main-nav .menu-trigger span:after {

  content: "";

}



.header-area .main-nav .menu-trigger span {

  top: 16px;

}



.header-area .main-nav .menu-trigger span:before {

  -moz-transform-origin: 33% 100%;

  -ms-transform-origin: 33% 100%;

  -webkit-transform-origin: 33% 100%;

  transform-origin: 33% 100%;

  top: -10px;

  z-index: 10;

}



.header-area .main-nav .menu-trigger span:after {

  -moz-transform-origin: 33% 0;

  -ms-transform-origin: 33% 0;

  -webkit-transform-origin: 33% 0;

  transform-origin: 33% 0;

  top: 10px;

}



.header-area .main-nav .menu-trigger.active span,

.header-area .main-nav .menu-trigger.active span:before,

.header-area .main-nav .menu-trigger.active span:after {

  background-color: #ff0000;

  width: 100%;

}



.header-area .main-nav .menu-trigger.active span:before {

  -moz-transform: translateY(6px) translateX(1px) rotate(45deg);

  -ms-transform: translateY(6px) translateX(1px) rotate(45deg);

  -webkit-transform: translateY(6px) translateX(1px) rotate(45deg);

  transform: translateY(6px) translateX(1px) rotate(45deg);

  background-color: #ff0000;

}



.background-header .main-nav .menu-trigger.active span:before {

  background-color: #ff0000;

}



.header-area .main-nav .menu-trigger.active span:after {

  -moz-transform: translateY(-6px) translateX(1px) rotate(-45deg);

  -ms-transform: translateY(-6px) translateX(1px) rotate(-45deg);

  -webkit-transform: translateY(-6px) translateX(1px) rotate(-45deg);

  transform: translateY(-6px) translateX(1px) rotate(-45deg);



}



.background-header .main-nav .menu-trigger.active span:after {

  background-color: #fff;

}



.header-area .background-header .main-nav .nav li a {

  color: #000;

}





.header-area .nav {

  margin-top: 30px;

}



.header-area.header-sticky .nav li a.active {

  color: #ff0000;

  /* background-color: #ff0000; */

  border-radius: 6px;

}



@media (max-width: 1200px) {

  .header-area .main-nav .nav li {

    padding-left: 10px;

    padding-right: 10px;

  }



  .header-area .main-nav:before {

    display: none;

  }

}



@media (max-width: 767px) {

  .header-area .main-nav .logo {

    color: #1e1e1e;

  }



  .header-area.header-sticky .nav li a:hover,

  .header-area.header-sticky .nav li a.active {

    color: #ff0000 !important;

    opacity: 1;

  }



  .header-area.header-sticky .nav li.search-icon a {

    width: 100%;

  }



  .header-area {

    background-color: #f7f7f7;

    padding: 0px 15px;

    height: 100px;

    box-shadow: none;

    text-align: center;

  }



  .header-area .container {

    padding: 0px;

  }



  .header-area .logo {

    margin-left: 0px;

    line-height: 80px;

  }



  .header-area .menu-trigger {

    display: block !important;

  }



  .header-area .main-nav {

    overflow: hidden;

    padding-top: 4px

  }



  .header-area .main-nav .nav {

    float: none;

    width: 100%;

    display: none;

    -webkit-transition: all 0s ease 0s;

    -moz-transition: all 0s ease 0s;

    -o-transition: all 0s ease 0s;

    transition: all 0s ease 0s;

    margin-left: 0px;

  }



  .header-area .main-nav .nav li:first-child {

    border-top: 1px solid #eee;

  }



  .header-area.header-sticky .nav {

    margin-top: 100px !important;

  }



  .background-header.header-sticky .nav {

    margin-top: 80px !important;

  }



  .header-area .main-nav .nav li {

    width: 100%;

    background: #fff;

    border-bottom: 1px solid #eee;

    padding-left: 0px !important;

    padding-right: 0px !important;

  }



  .header-area .main-nav .nav li a {

    height: 50px !important;

    line-height: 50px !important;

    padding: 0px !important;

    text-align: left;

    padding-left: 20px !important;

    border: none !important;

    background: #f7f7f7 !important;

    color: #191a20 !important;

  }



  .header-area .main-nav .nav li a:hover {

    background: #eee !important;

    color: #ff0000 !important;

  }



  .header-area .main-nav .nav li.has-sub ul.sub-menu {

    position: relative;

    visibility: inherit;

    opacity: 1;

    z-index: 1;

    transform: translateY(0%);

    top: 0px;

    width: 100%;

    box-shadow: none;

    height: 0px;

    transition: all 0s;

  }



  .header-area .main-nav .nav li.submenu ul li a {

    font-size: 12px;

    font-weight: 400;

  }



  .header-area .main-nav .nav li.submenu ul li a:hover:before {

    width: 0px;

  }



  .header-area .main-nav .nav li.has-sub ul.sub-menu {

    height: auto;

  }



  .header-area .main-nav .nav li.has-sub:after {

    color: #3B566E;

    right: 30px;

    font-size: 14px;

    top: 15px;

  }



  .header-area .main-nav .nav li.submenu:hover ul,

  .header-area .main-nav .nav li.submenu:focus ul {

    height: 0px;

  }

}



@media (min-width: 767px) {

  .header-area .main-nav .nav {

    display: flex !important;

  }

}





/* 

---------------------------------------------

banner

--------------------------------------------- 

*/



.swiper-container {

  height: calc(100vh - 0px);

  margin: 0px;

  position: absolute;

  background-color: rgba(22, 34, 57, 0.85);

  top: 0;

  left: 0;

  bottom: 7px;

  width: 100%;

  /* background-color: #212741; */

}



.swiper-slide {

  overflow: hidden;

}



.slide-inner {

  position: absolute;

  width: 100%;

  height: 100%;

  left: 0;

  top: 0;

  background-size: cover;

  background-position: center;

}



.swiper-slide-active h2 {

  animation: fadeInLeft .8s;

  -webkit-animation-delay: 1s;

  animation-delay: .3s;

  opacity: 1;

}



.swiper-slide-active p {

  animation: fadeInRight .8s;

  -webkit-animation-delay: 1s;

  animation-delay: .3s;

  opacity: 1;

}



.swiper-slide-active .div-dec {

  animation: fadeIn .8s;

  -webkit-animation-delay: 1s;

  animation-delay: .3s;

  opacity: 1;

}



.swiper-slide-active .buttons .green-button,

.swiper-slide-active .buttons .orange-button {

  animation: fadeInUp .8s;

  -webkit-animation-delay: 1s;

  animation-delay: .3s;

  opacity: 1;

}



.slide-inner .header-text {

  position: absolute;

  width: 50%;

  top: 55%;

  transform: translateY(-50%);

}



.slide-inner .header-text h2 {

  position: relative;

  z-index: 2;

  font-size: 50px;

  color: #fff;

  font-weight: 700;

  opacity: 1;

  visibility: visible;

  line-height: 70px;

  margin-bottom: 10px;

}



.slide-inner .header-text .div-dec {

  width: 80px;

  height: 6px;

  border-radius: 3px;

  background-color: #fff;

  margin-bottom: 40px;

  opacity: 1;

  visibility: visible;

}



.slide-inner .header-text p {

  color: #fff;

  margin-right: 20px;

  margin-bottom: 10px;

  opacity: 1;

  visibility: visible;

}



.slide-inner .header-text h2 em {

  font-style: normal;

  color: #ff0000;

}



.slide-inner .header-text .buttons {

  display: inline;

  opacity: 1;

  visibility: visible;

}



.slide-inner .header-text .buttons .green-button {

  display: inline;

  float: left;

  margin-right: 20px;

}



.swiper-button-next,

.swiper-button-prev {

  color: #fff !important;

}



/*

---------------------------------------------

services

---------------------------------------------

*/



section.services {

  margin-top: 90px;

}



.fade-in {

  opacity: 1;

  animation-name: fadeInOpacity;

  animation-iteration-count: 1;

  animation-timing-function: ease-in;

  animation-duration: 2s;

}



@keyframes fadeInOpacity {

  0% {

    opacity: 0;

  }



  100% {

    opacity: 1;

  }

}



.services .service-item {

  background: #fff;

  ;

  position: relative;

  top: 0;

  transition: top ease 0.5s;

  border-radius: 5px;

  padding: 40px;

  box-shadow: 0px 0px 15px rgba(0, 0, 0, 0.1);

  margin-top: 30px;

}



.services .service-item:hover {

  top: -10px;

}



.services .service-item:hover i {

  margin-top: 15px;



}



.services .service-item h4 {

  font-size: 36px;

  font-weight: 600;

  margin-bottom: 20px;

}



.services .service-item i,

.material-symbols-outlined {

  transition: all .5s;

  float: left;

  font-size: 40px;

  color: #ff0007;

  margin-bottom: 30px;

  margin-right: 30px;

}







/*

---------------------------------------------

cta

---------------------------------------------

*/





section.simple-cta {

  background-image: url(../images/cta-bg.jpg);

  background-repeat: no-repeat;

  background-position: center center;

  background-size: cover;

  width: 100%;

  padding: 80px 0px;

}



section.about-cta {

  background-image: url(../images/cta-bg.jpg);

  background-repeat: no-repeat;

  background-position: center center;

  background-size: cover;

  width: 100%;

  padding: 40px 0px 20px;

  margin-top: 0;

}



section.about-cta h4 {

  font-size: 36px;

  font-weight: 700;

  color: #fff;

  line-height: 50px;

  padding: 20px 0px;

  text-align: center;

}



section.about-cta img {

  width: auto;

  text-align: center;

}



section.simple-cta h4 {

  font-size: 32px;

  font-weight: normal;



  line-height: 50px;

}



.abt-item {

  background-color: #fff;



}



h4.s1 {

  color: #c0504d !important;

}



h4.s2 {

  color: #9bbb59 !important;

}



h4.s3 {

  color: #8064a2 !important;

}



h4.s4 {

  color: #4bacc6 !important;

}



section.simple-cta .left-image {

  margin-right: 45px;

}



section.simple-cta h4 {

  font-size: 36px;

  font-weight: 700;

  color: #fff;

  line-height: 50px;

}



section.simple-cta h4 em {

  font-style: normal;

  color: #FF0000;

}



section.simple-cta h4 strong {

  color: #FF0000;

  font-weight: 700;

}



section.simple-cta p {

  color: #fff;

  font-size: 22px;

  font-weight: normal;

  line-height: normal;

  text-align: center;

  letter-spacing: 0.2px;

}



section.simple-cta .buttons {

  display: flex;

  justify-content: end;

}



section.simple-cta .buttons .orange-button {

  margin-left: 20px;

}



section.simple-cta .buttons .orange-button,

section.simple-cta .buttons .green-button {

  margin-top: 25px;

}







/*

---------------------------------------------

about us

---------------------------------------------

*/



section.about-us {

  margin-top: 90px;

}



section.about-us .section-heading {

  padding-top: 30px;

}



section.about-us .naccs {

  position: relative;

}



section.about-us .naccs .menu div {

  padding: 15px 30px;

  display: inline-block;

  text-align: center;

  border-radius: 5px !important;

  margin-right: 30px;

  font-size: 18px;

  color: #212741;

  background-color: #fff;

  cursor: pointer;

  vertical-align: middle;

  font-weight: 600;

  transition: 1s all cubic-bezier(0.075, 0.82, 0.165, 1);

  box-shadow: 0px 0px 15px rgba(0, 0, 0, 0.1);

}



.gradient-border {

  margin-bottom: 80px;

}



section.about-us .naccs .menu {

  text-align: center;

}



section.about-us .naccs .menu div.active {

  color: #fff;

  background-color: #ff3c00;

}



section.about-us ul.nacc {

  margin-top: 10px !important;

  position: relative;

  min-height: 100%;

  list-style: none;

  margin: 0;

  padding: 20px;

  border: 1px solid #07366A;

}



section.about-us ul.nacc li {

  background-color: #fff;

  overflow: hidden;

  opacity: 0;

  transform: translateX(50px);

  position: absolute;

  list-style: none;

  transition: 1s all cubic-bezier(0.075, 0.82, 0.165, 1);

}



section.about-us ul.nacc li .main-list,

section.about-us ul.nacc li .list-item {

  border-bottom: 1px solid #eee;

  margin-bottom: 25px;

  padding-bottom: 25px;

}



section.about-us ul.nacc li .last-item {

  margin-bottom: 0px;

}



section.about-us ul.nacc li span.title {

  font-size: 15px;

  color: #212741;

  font-weight: 600;

  display: inline-block;

  width: 24%;

}



section.about-us ul.nacc li span.item-title {

  color: #43ba7f !important;

  font-weight: 600 !important;

}



section.about-us ul.nacc li span.item {

  font-size: 15px;

  color: #212741;

  font-weight: 400;

  display: inline-block;

  width: 24%;

}



section.about-us ul.nacc li.active {

  position: relative;

  transition-delay: 0.3s;

  z-index: 2;

  opacity: 1;

  transform: translateX(0px);

}



section.about-us .right-content {

  margin-left: 60px;

}



section.about-us .right-content h4 {

  font-size: 22px;

  font-weight: 700;

  line-height: 40px;

  margin-bottom: 40px;

}



section.about-us .right-content p {

  margin-bottom: 50px;

}





/*

---------------------------------------------

calculator

---------------------------------------------

*/



section.calculator {

  margin-top: 150px;

  background-image: url(../images/calculator-bg.jpg);

  background-repeat: no-repeat;

  background-position: center center;

  background-size: cover;

  width: 100%;

  padding: 80px 0px;

}



section.calculator .left-image {

  margin: -110px 45px -80px 0px;

}



section.calculator .section-heading {

  text-align: left;

}



section.calculator .section-heading h4 {

  color: #fff;

}



.calculator#contact label {

  color: #fff;

  font-size: 14px;

  margin-bottom: 5px;

}



#contact input,

#contact textarea,

#contact select {

  background-color: rgba(121, 134, 151, 0.7);

  border: none;

  border-radius: 5px;

  width: 100%;

  height: 42px;

  color: #fff;

  font-size: 14px;

  margin-bottom: 30px;

  outline: none;

}



#contact textarea {

  height: 100px;

  overflow: auto;



}



#contact textarea ::placeholder {

  color: #c7c9ca;

}



#contact select {

  cursor: pointer;

}



#contact button.orange-button {

  font-size: 14px;

  color: #fff;

  background-color: #FF0000;

  padding: 12px 30px;

  display: inline-block;

  border-radius: 5px;

  font-weight: 500;

  text-transform: capitalize;

  letter-spacing: 0.5px;

  border: none;

  transition: all .3s;

}



.calculator#calculate button.orange-button:hover {

  opacity: 0.9;

}







/* 

---------------------------------------------

testimonials

--------------------------------------------- 

*/



section.testimonials {

  margin-top: 90px;

}



section.testimonials .section-heading {

  padding-top: 30px;

}



.testimonials .item {

  border-radius: 15px;

  padding: 50px 320px 50px 50px;

  background-color: #fff;

  position: relative;

  overflow: hidden;

  margin: 15px;

  box-shadow: 0px 0px 15px rgba(0, 0, 0, 0.1);

  padding-top: 35px;

}



.testimonials .item i {

  width: 70px;

  height: 70px;

  background-color: #ed1b24;

  display: inline-block;

  text-align: center;

  line-height: 70px;

  color: #fff;

  font-size: 44px;

  border-radius: 5px;

  margin-bottom: 30px;

}



.testimonials .item p {

  font-size: 16px;

  font-style: italic;

}



.testimonials .item h4 {

  margin-top: 30px;

  font-size: 22px;

  font-weight: 600;

  position: relative;

}



.testimonials .item span {

  margin-top: 5px;

  display: block;

  font-size: 15px;

  font-weight: 600;

  color: #43ba7f;

}



.testimonials .item img {

  position: absolute;

  right: 0;

  top: 50%;

  transform: translateY(-50%);

  max-width: 300px;

  border-radius: 5px;

}



.testimonials .owl-dots {

  text-align: center;

  margin-top: 30px;

}



.testimonials .owl-dots .owl-dot {

  width: 10px;

  height: 10px;

  background-color: #ffa88c;

  border-radius: 50%;

  margin: 0px 4px;

}



.testimonials .owl-dots .active {

  background-color: #ff511a;

}







/* 

---------------------------------------------

partners

--------------------------------------------- 

*/



section.partners {

  background-color: transparent;

  padding: 30px 0px;

  margin: 60px 0px;

}



section.partners .item {

  margin: 0px 15px;

  cursor: pointer;

  transition: all .3s;

}



section.partners .item:hover {

  opacity: 0.75;

}







/* 

---------------------------------------------

footer 

--------------------------------------------- 

*/



footer {

  background-color: #181F28;

  text-align: center;

  padding: 25px 0px;

  border-top: 4px solid rgba(218, 225, 230, .2);

}



footer p {

  color: #fff;

  font-weight: 300;

}



footer p a {

  color: #ff0000;

}



.footer-grid {

  display: grid;

  grid-template-columns: 2fr 1fr 1fr 1fr;

  gap: 60px;

  margin-bottom: 60px;

  z-index: 9999;

}



.footer-brand .logo {

  margin-bottom: 20px;

  color: #ff0000;

}



.logo span {

  color: #ff0000;

  font-weight: normal;

  text-align: left;

}



.footer-brand {

  text-align: left;

}



.footer-brand p {

  font-size: 14px;

  color: #eee;

  line-height: 1.8;

  max-width: 360px;

  text-align: justify;

}



.footer-title {

  font-size: 18px;

  color: #ff0000;

  margin-bottom: 24px;

}



.footer-links {

  list-style: none;

}



.footer-links li {

  margin-bottom: 12px;



}



.footer-links li::before {

  content: "\2022";

}



.footer-links a {

  font-size: 14px;

  color: #fff;

  transition: all 0.3s ease;

}



.footer-links a:hover {

  font-size: 14px;

  color: #ff0000;

  transition: all 0.3s ease;

}



.footer-col {

  text-align: left;

}



.footer-bottom {

  display: flex;

  align-items: center;

  justify-content: space-between;

  padding-top: 40px;

  border-top: 1px solid #dadada;

}



.footer-copy {

  font-size: 13px;

  color: #fff;

}



.footer-socials {

  display: flex;

  gap: 16px;

}



.social-link {

  width: 40px;

  height: 40px;

  display: flex;

  align-items: center;

  justify-content: center;

  border: 1px solid #a69f94;

  color: #a69f94;

  font-size: 16px;

  transition: all 0.3s ease;

}



.social-link:hover {

  border-color: #a69f94;

  color: #fff;

  background: #ff0000;

}



/* 

---------------------------------------------

page heading

--------------------------------------------- 

*/



.page-heading {

  background-image: url(../images/heading-bg.jpg);

  background-position: center center;

  background-repeat: no-repeat;

  background-size: cover;

  padding: 215px 0px 120px 0px;

  text-align: center;

}



.page-heading h2 {

  font-size: 56px;

  color: #000;

  font-weight: 700;

}



.page-heading h2 span {

  color: #ff0000;

}



.page-heading .div-dec {

  width: 80px;

  height: 6px;

  border-radius: 3px;

  background-color: #fff;

  margin: 20px auto 0 auto;

}







/* 

---------------------------------------------

about us page

--------------------------------------------- 

*/



section.top-section .left-image img {

  border-radius: 10px;

}



section.top-section .accordions {

  border-radius: 5px;

  padding: 10px;

  background-color: #fff;

  margin-left: 30px;

  box-shadow: 0px 0px 15px rgba(0, 0, 0, 0.1);

}



.accordions .accordion {

  border-bottom: 1px solid #eee;

}



.accordions .last-accordion {

  border-bottom: none;

}



.accordion-head {

  padding: 20px 0px !important;

  font-size: 22px;

  font-weight: 600;

  color: #212741;

  cursor: pointer;

  transition: color 200ms ease-in-out;



}



@media screen and (min-width: 768px) {

  .accordion-head {

    padding: 1rem;

    font-size: 1.2rem;

  }

}



.accordion-head .icon {

  float: right;

  transition: transform 200ms ease-in-out;

}



.accordion-head.is-open {

  color: #ff0000;

  border-bottom: none;

}



.accordion-head.is-open .icon {

  transform: rotate(45deg);

}



.accordion-body {

  padding: 0px;

  overflow: hidden;

  height: 0;

  transition: height 300ms ease-in-out;

  border-bottom: 1px solid #fff;

}



.accordion-body>.content p {

  padding: 0px 0px 30px 0px;

  padding-top: 0;

}



.content ul {

  margin: 10px 40px 40px;

  padding: 20px;



}



.content ul li {

  list-style-type: "→ ";

  list-style-position: inside;

  line-height: 40px;

  font-weight: 500;

}



section.what-we-do {

  margin-bottom: -30px;

}



.what-we-do .left-content {

  margin-right: 60px;

}





.what-we-do .left-content {

  padding: 0;

  margin: 0;

  width: 100%;

  margin-left: 50%;

  transform: translateX(-200%);

  opacity: 0;

  animation: slide-in-anim 1.5s ease-out forwards;

}



@keyframes slide-in-anim {

  40% {

    opacity: 0;

  }



  100% {

    transform: translateX(-45%);

  }



  75% {

    transform: translateX(-52%);

  }



  100% {

    opacity: 1;

    transform: translateX(-50%);

  }

}









.what-we-do .left-content h4 {

  font-size: 32px;

  font-weight: 700;

  line-height: 40px;

  margin-bottom: 40px;

}



.what-we-do .left-content p {

  margin-bottom: 40px;

}



.what-we-do .right-items .item {

  border-radius: 5px;

  padding: 40px 30px;

  box-shadow: 0px 0px 15px rgba(0, 0, 0, 0.1);

  margin-bottom: 30px;

  position: relative;

}



.what-we-do .right-items .item em {

  position: absolute;

  font-style: normal;

  font-size: 44px;

  color: #43ba7f;

  font-weight: 600;

  right: 15px;

  top: 5px;

  transition: all .3s;

}



.what-we-do .right-items .item h4 {

  font-size: 22px;

  font-weight: 600;

  margin-bottom: 22px;

}



.what-we-do .right-items .item:hover em {

  top: 10px;

}







/* 

---------------------------------------------

services page

--------------------------------------------- 

*/



.main-services .service-item {

  margin-bottom: 60px;

  padding-bottom: 60px;

  border-bottom: 1px solid #ecf8f2;

}



.main-services .last-service {

  border-bottom: none;

  margin-bottom: 0px;

  padding-bottom: 0px;

}



.main-services .left-image {

  margin-right: 15px;

}



.main-services .left-image img {

  border-radius: 5px;

}



.main-services .right-image {

  margin-left: 15px;

}



.main-services .right-image img {

  border-radius: 5px;

}







.main-services .right-text-content {

  padding: 0;

  margin: 0;

  width: 100%;

  margin-left: 50%;

  transform: translateX(-200%);

  opacity: 0;

  animation: slide-in-anim 1.5s ease-out forwards;

}



@keyframes slide-in-anim {

  40% {

    opacity: 0;

  }



  100% {

    transform: translateX(-45%);

  }



  75% {

    transform: translateX(-52%);

  }



  100% {

    opacity: 1;

    transform: translateX(-50%);

  }

}









.main-services .left-text-content {

  margin-right: 15px;

}



.main-services .right-text-content i,

.main-services .left-text-content i {

  font-size: 64px;

  color: #43ba7f;

  background-color: #ecf8f2;

  width: 120px;

  height: 120px;

  text-align: center;

  display: inline-block;

  line-height: 120px;

  border-radius: 5px;

}



.main-services .right-text-content h4,

.main-services .left-text-content h4 {

  font-size: 36px;

  font-weight: 700;

  color: #ed1b24;

  margin-top: 0px;

  margin-bottom: 10px;

}



section.service-details .naccs {

  position: relative;

}



section.service-details {

  background-image: url("../images/ser-bg.jpg");

  background-repeat: repeat;

  padding: 80px 0px;

}





section.service-details .naccs .menu div.hover {

  color: #fff;

  background-color: #ff0000;

}



section.service-details .naccs .menu div {

  padding: 15px 10px;

  display: inline-block;

  text-align: center;



  margin-right: 30px;

  font-size: 18px;

  color: #c2c2c2;

  cursor: pointer;

  vertical-align: middle;

  font-weight: normal;

  transition: 1s all cubic-bezier(0.075, 0.82, 0.165, 1);

  /* box-shadow: 0px 0px 15px rgba(0, 0, 0, 0.1); */

}



section.service-details .naccs .menu div.active {

  color: #ff0000;

  border-bottom: 1px solid #ff0000;

}



section.service-details ul.nacc {

  margin-top: -1px !important;

  position: relative;

  min-height: 100%;

  list-style: none;

  margin: 0;

  padding: 0;

}



section.service-details ul.nacc li {

  background-color: #fff;

  overflow: auto;

  opacity: 0;

  height: 330px;

  transform: translateX(50px);

  position: absolute;

  list-style: none;

  border: 1px solid #c7c9ca;

  border-radius: 5px;

  padding: 15px;

  box-shadow: 0px 0px 15px rgba(0, 0, 0, 0.1);

  transition: 1s all cubic-bezier(0.075, 0.82, 0.165, 1);

}



section.service-details ul.nacc li .left-image {

  position: absolute;

  margin-right: 50px;

  top: 50%;

  transform: translateY(-50%);

}



section.service-details ul.nacc li .left-image img {

  /* border-top-left-radius: 15px;

  border-bottom-left-radius: 15px; */



}





@keyframes zoomInOut {

  0% {

    transform: scale(1);

  }



  50% {

    transform: scale(1.1);

  }



  100% {

    transform: scale(1);

  }

}



.zoom-animation {

  animation: zoomInOut 3s ease-in-out;

}





section.service-details ul.nacc li .right-content {

  padding: 50px 50px 50px 0px;

  margin-left: 530px;

}



section.service-details ul.nacc li .right-content h4 {

  font-size: 24px;

  color: #212741;

  margin-bottom: 25px;

  font-weight: 700;

  line-height: 40px;

  margin-right: 120px;

}



section.service-details ul.nacc li .right-content ul {

  margin-top: 20px;

  margin-bottom: 20px;

}



section.service-details ul.nacc li .right-content span {

  display: block;

  font-size: 15px;

  font-weight: 500;

  color: #212741;

  font-style: italic;

  margin-bottom: 12px;

}



section.service-details ul.nacc li .right-content .last-span {

  margin-bottom: 0px;

}



section.service-details ul.nacc li .right-content p {

  margin-bottom: 30px;

}



section.service-details ul.nacc li.active {

  position: relative;

  transition-delay: 0.3s;

  z-index: 2;

  opacity: 1;

  transform: translateX(0px);

}







/* 

---------------------------------------------

contact us page

--------------------------------------------- 

*/



section.map .info-item {

  text-align: center;

  padding: 40px 30px;

  border-radius: 5px;

  background-color: #fff;

  box-shadow: 0px 0px 15px rgba(0, 0, 0, 0.1);

  margin-top: 60px;



  position: relative;

  z-index: 2;

  transition: all .5s;

}



section.map .info-item:hover {

  margin-top: -20px;

  cursor: pointer;

}



section.map .info-item i {

  font-size: 36px;

  color: #ff0000;

  margin-bottom: 25px;

}



section.map .info-item h4 {

  font-size: 18px;

  color: #212741;

  font-weight: 600;

  margin-bottom: 12px;

}



section.map .info-item a {

  font-size: 15px;

  font-weight: 600;

  color: #ff0000;

  transition: all 0.3s;

}



section.map .info-item a:hover {

  color: #aa0808;

}



section.map {

  margin: 40px 0px;

  padding: 0;

}



#contact input {

  width: 100%;

  height: 50px;

  background-color: #e1e8f2;

  color: #212741;

  border-radius: 5px;

  border: none;

  padding: 0px 15px;

  font-size: 14px;

  outline: none;

  margin-bottom: 30px;

}



#contact textarea {

  width: 100%;

  height: 180px;

  max-height: 24px;

  min-height: 150px;

  background-color: #e1e8f2;

  color: #212741;

  border-radius: 5px;

  border: none;

  padding: 15px 15px;

  font-size: 14px;

  outline: none;

  margin-bottom: 30px;

}



#contact input::placeholder,

#contact textarea::placeholder {

  color: #212741;

}



#contact button.orange-button {

  font-size: 14px;

  color: #fff;

  background-color: #ff0000;

  padding: 12px 30px;

  display: inline-block;

  border-radius: 5px;

  font-weight: 500;

  text-transform: capitalize;

  letter-spacing: 0.5px;

  border: none;

  transition: all .3s;

}



#contact button.orange-button:hover {

  background-color: #aa0808;

}





/* 

---------------------------------------------

responsive

--------------------------------------------- 

*/





body {

  overflow-x: hidden;

}



@media (max-width: 992px) {

  .content ul {

    margin: 0;

    padding: 10px;

  }



  .accordion-head {

    font-size: 16px;

  }



  .content ul li {

    line-height: normal;

    font-weight: 500;

    font-size: 15px;

  }



  .header-area .main-nav .nav li:last-child {

    display: block;

  }



  .header-area .main-nav .nav li ul li:last-child {

    display: inline-block;

  }



  .header-area {

    background-color: #fff;

  }



  .slide-inner .header-text {}



  .simple-cta {

    text-align: center;

  }



  section.simple-cta .buttons {

    justify-content: center;

  }



  section.about-us .naccs .menu div,

  section.service-details .naccs .menu div {

    margin-right: 6px;

    font-size: 12px;

    padding: 5px 10px;

  }



  section.about-us .right-content {

    margin-left: 0px;

    margin-top: 60px;

  }



  section.calculator .left-image {

    display: none;

  }



  .testimonials .item img {

    max-width: 200px;

    right: 50px;

  }



  section.partners .item {

    margin: 15px;

  }



  section.top-section .accordions {

    margin-left: 0px;

    margin-top: 45px;

  }



  .what-we-do .left-content {

    margin-right: 0px;

    margin-bottom: 45px;

  }



  .main-services .left-image {

    margin-right: 0px;

    margin-bottom: 30px;

  }



  .main-services .right-text-content {}



  .main-services .right-image {

    margin-left: 0px;

    margin-top: 30px;

  }



  section.service-details ul.nacc li .left-image {

    position: relative;

    margin-right: 0px;

    transform: translateY(0px);

  }



  section.service-details ul.nacc li .left-image img {

    border-radius: 15px;

  }



  section.service-details ul.nacc li .right-content {

    padding: 10px;

    margin-left: 0px;

  }



  section.service-details ul.nacc li .right-content h4 {

    margin-right: 0px;

  }



  section.service-details ul.nacc li.active {

    display: inline-block;

  }



  section.service-details ul.nacc li {

    display: none;

  }



  section.map .info-item {

    margin-top: 30px;

    padding: 10px 10px;

  }



  .contact-us-form {

    margin-top: 40px;

  }

}



@media (max-width: 767px) {

  .header-area .main-nav .logo {

    line-height: normal;

  }



  .background-header .main-nav .logo {

    line-height: 80px;

  }



  .header-area .main-nav .nav li.has-sub ul.sub-menu {

    display: none;

  }



  .slide-inner .header-text p {

    display: none;

  }



  .slide-inner .header-text {

    text-align: center;

    width: 80%;

    margin-left: 10%;

    margin-right: 10%;

  }



  .slide-inner .header-text .div-dec {

    margin-left: auto;

    margin-right: auto;

  }



  .slide-inner .header-text .buttons {

    display: inline-flex;

  }



  .slide-inner .header-text .buttons .green-button {

    float: none;

  }



  .services .service-item i {

    margin-bottom: 35px;

  }



  section.about-us ul.nacc li span.item-title {

    font-size: 14px !important;

  }



  section.about-us ul.nacc li span.item {

    font-size: 13px;

  }



  .testimonials .item i {

    margin-bottom: 60px;

  }



  .testimonials .item img {

    max-width: 100px;

    right: 50px;

    top: 35px;

    transform: translateY(0);

  }



  .testimonials .item {

    padding: 50px;

  }

}



.center-image img {

  position: absolute;

  top: -200px;

  transition: top ease 0.5s;

  left: 0px auto;

  right: 0px auto;

  width: auto;



}



.center-image img:hover {

  top: -220px;



}



.simple-cta {

  position: relative;

}



.space-in {

  left: 5%;

  right: 5%;

  position: relative;

}



.m-top-100 {

  margin-top: 100px;

}



.m-top-200 {

  margin-top: 200px;

}



.value ul {

  margin: 3px;

  padding: 30px 30px 10px;

}



.value ul li {

  list-style: disc;

  line-height: 30px;



}



/* Slider */



.main-banner {

  position: relative;

  max-height: 100%;

  overflow: hidden;

  margin-bottom: -7px;

}



#bg-video {

  min-width: 100%;

  min-height: 100vh;

  max-width: 100%;

  max-height: 100vh;

  object-fit: cover;

  z-index: -1;

}



#bg-video::-webkit-media-controls {

  display: none !important;

}



/* .video-overlay {

    position: absolute;

    background-color: rgba(22,34,57,0.85);

    top: 0;

    left: 0;

    bottom: 7px;

    width: 100%;

} */



.main-banner .caption {

  text-align: center;

  position: absolute;

  width: 80%;

  left: 50%;

  top: 50%;

  transform: translate(-50%, -50%);

}



.main-banner .caption h6 {

  margin-top: 0px;

  font-size: 18px;

  text-transform: uppercase;

  font-weight: 600;

  color: #fff;

  letter-spacing: 1px;

}



.main-banner .caption h2 {

  margin-top: 30px;

  margin-bottom: 30px;

  font-size: 64px;

  text-transform: uppercase;

  font-weight: 800;

  color: #fff;

  letter-spacing: 1px;

}



.main-banner .caption h2 em {

  font-style: normal;

  color: #f5a425;

  font-weight: 900;

}



@media screen and (max-width: 1180px) {



  .main-banner .caption h6 {

    font-weight: 500;

  }



  .main-banner .caption h2 {

    font-size: 58px;

  }



}



@media screen and (max-width: 767px) {



  .main-banner .caption h6 {

    font-weight: 500;

  }



  .main-banner .caption h2 {

    font-size: 36px;

  }



}



/*************** Features *******************/



/* Features */



section.features .col-4 {

  padding-left: 0px;

  padding-right: 0px;

}



.features-post {

  position: relative;

  margin-bottom: 20px;

}



.features-thumb {

  overflow: hidden;

  position: relative;

}



.features-thumb img {

  width: 100%;

}



.features-content {

  position: absolute;

  bottom: 0;

  left: 0;

  width: 100%;

  background-color: #c8d4ff;

  color: #fff;

  padding: 40px 20px;

  z-index: 9;

}



.features-content:hover {

  background-color: #ff0d00;

  box-shadow: 0px 0px 30px rgba(0, 0, 0, 0.5);

}



.features-content h4 {

  font-size: 16px;

  text-transform: uppercase;

  font-weight: 700;

  color: #000000;

  letter-spacing: 1px;

  margin-bottom: 0px;

}



.features-content h4 i {

  margin-right: 15px;

  font-size: 24px;

}



.features-content p {

  margin-bottom: 0px;

}



.features-content a {

  margin-top: 15px;

  display: inline-block;

  text-transform: uppercase;

  color: #fff;

  letter-spacing: 0.5px;

  font-weight: 700;

  font-size: 14px;

  border-bottom: 2px solid #fff;

}



.features-content p.hidden-sm {

  display: none;

}



.second-features,

.third-features {

  border-left: 1px solid rgba(250, 250, 250, 0.1);

}



.content-hide {

  margin-top: 15px;

  display: none;

}



.content-hide p {

  color: #fff;

}



@media screen and (max-width: 767px) {

  footer {



    margin-bottom: 20px;

  }



  .center-image img {

    position: relative;

  }



  .service-details.m-top-200 {

    margin-top: 70px;



  }



  section.simple-cta.m-top-200 {

    margin-top: 70px;



  }



  .services .service-item {

    padding: 15px;

  }



  .features-content {

    padding: 15px;

    position: relative;

  }



  .features-content h4 i {

    display: block;

    margin-bottom: 10px;

  }



  .features-content h4 {

    font-size: 14px;

  }



  .features-content p {

    display: block;

  }



  .features-content p.hidden-sm {

    display: block;

  }



  .features-content a {

    letter-spacing: 0px;

    font-size: 13px;

    font-weight: 600;

  }



}



/******************** Gallery ************************/



#gallery {

  padding-top: 40px;



  @media screen and (min-width: 991px) {

    padding: 60px 30px 0 30px;

  }

}



.img-wrapper {

  position: relative;

  margin-top: 15px;



  img {

    width: 100%;

  }

}



.img-overlay {

  background: rgba(0, 0, 0, 0.7);

  width: 100%;

  height: 100%;

  position: absolute;

  top: 0;

  left: 0;

  display: flex;

  justify-content: center;

  align-items: center;

  opacity: 0;



  i {

    color: #ff0101;

    font-size: 3em;

  }

}



#overlay {

  background: rgba(0, 0, 0, 0.7);

  width: 100%;

  height: 100%;

  position: fixed;

  top: 0;

  left: 0;

  display: flex;

  justify-content: center;

  align-items: center;

  z-index: 999;

  // Removes blue highlight

  -webkit-user-select: none;

  -moz-user-select: none;

  -ms-user-select: none;

  user-select: none;



  img {

    margin: 0;

    width: 80%;

    height: auto;

    object-fit: contain;

    padding: 5%;



    @media screen and (min-width:768px) {

      width: 60%;

    }



    @media screen and (min-width:1200px) {

      width: 50%;

    }

  }

}



#nextButton {

  color: #fff;

  font-size: 2em;

  transition: opacity 0.8s;



  &:hover {

    opacity: 0.7;

  }



  @media screen and (min-width:768px) {

    font-size: 3em;

  }

}



#prevButton {

  color: #fff;

  font-size: 2em;

  transition: opacity 0.8s;



  &:hover {

    opacity: 0.7;

  }



  @media screen and (min-width:768px) {

    font-size: 3em;

  }

}



#exitButton {

  color: #fff;

  font-size: 2em;

  transition: opacity 0.8s;

  position: absolute;

  top: 15px;

  right: 15px;



  &:hover {

    opacity: 0.7;

  }



  @media screen and (min-width:768px) {

    font-size: 3em;

  }

}



/******************** Image Marwuee *************************/



.partners.img {



  display: flex;

  align-items: center;

  justify-content: center;

}



.marquee {

  margin: 0 auto;

  width: 100%;

  white-space: nowrap;

  overflow: hidden;

  box-sizing: border-box;

  position: relative;



  &:before,

  &:after {

    position: absolute;

    top: 0;

    width: 400px;

    height: 50px;

    content: "";

    z-index: 1;

  }



  &:before {

    left: 0;

    /* background: linear-gradient(to right, white 5%, transparent 100%); */

  }



  &:after {

    right: 0;

    /* background: linear-gradient(to left, white 5%, transparent 100%); */

  }

}



.marquee-content {

  width: 100%;

  display: flex;

  line-height: 30px;

  animation: marquee 10s linear infinite forwards;

}



.marquee-content:hover {

  animation-play-state: paused;

}





.list-inline {

  width: auto;

  max-height: max-content;

  display: flex;

  justify-content: space-around;

  list-style: none;



  margin: 0;

}



@keyframes marquee {

  0% {

    transform: translateX(0);

  }



  100% {

    transform: translateX(-66.6%);

  }

}



.marquee-content ul li {

  margin: 0px 45px;

}





.contact-us-form {

  background-color: #fff;

  padding: 25px 0px;

}



.contact-error {

  font-size: 11px;

  color: #ff0000;

}





/************************* New ****************/

/* Services Section */

.section-header {

  text-align: center;

  max-width: 600px;

  margin: 0 auto 80px;

}



.services {

  background: var(--bg-card);

  position: relative;

}



.services::before {

  content: '';

  position: absolute;

  top: 0;

  left: 0;

  right: 0;

  height: 1px;

  background: linear-gradient(90deg, transparent, var(--border-color), transparent);

}



.services-grid {

  display: grid;

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

  gap: 24px;

}



@media (max-width: 1200px) {

  .services-grid {

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

  }

}



@media (max-width: 600px) {

  .services-grid {

    grid-template-columns: 1fr;

  }

}



.service-card {

  padding: 48px 32px;

  background: transparent;

  border: 2px solid #ffffff;

  text-align: center;

  transition: all 0.4s ease;

  position: relative;

 
  height: 280px;;

}



.service-card::before {

  content: '';

  position: absolute;

  top: 0;

  left: 0;

  right: 0;

  height: 2px;

  background: #ff0000;

  transform: scaleX(0);

  transition: transform 0.4s ease;

}



.service-card:hover {

  transform: translateY(-8px);

  border-color: #fff;

  background: #fff;

}



.service-card:hover::before {

  transform: scaleX(1);

}



.service-icon {

  width: 64px;

  height: 64px;

  margin: 0 auto 24px;

  display: flex;

  align-items: center;

  justify-content: center;

  border: 1px solid var(--gold-dark);

  color: var(--gold-light);

  font-size: 24px;

  transition: all 0.4s ease;

}



.service-icon svg {

  width: 60px;

  height: auto;

}



.service-card:hover .service-icon {

  background: #ff0000;

  color: #fff;

  border-color: #ff0000;

}



.service-title {

  font-size: 22px;

  color: #ff0000;

  margin-bottom: 16px;

}



.service-desc {

  font-size: 18px;

  color: #000000;

  line-height: 1.7;

}



.service-desc a {

  color: #000000;

  text-decoration: none;



}



.services {



  position: relative;

}





.section-tag {

  /* display: inline-block; */

  font-size: 18px;

  font-weight: normal;

  letter-spacing: .12em;

  text-transform: uppercase;

  color: #000;

  margin-bottom: 16px;

  text-align: center;

}



.security-section {

  margin: 50px 0px;

  padding: 40px max(48px, calc((100vw - var(--max-w)) / 2));



}



.security-inner {

  display: grid;

  grid-template-columns: 1fr 1fr;

  gap: 80px;

  align-items: center;

  max-width: 1100px;

  margin: 0 auto;

}



.security-badges {

  display: grid;

  grid-template-columns: 1fr 1fr;

  gap: 12px;

}



.btn-outline {

  background: transparent;

  border: 1px solid var(--border2);

  color: var(--text);

  font-family: 'DM Sans', sans-serif;

  font-size: 15px;

  font-weight: 400;

  padding: 14px 28px;

  border-radius: 10px;

  cursor: pointer;

  transition: border-color .5s var(--silk), color .5s var(--silk);

  text-decoration: none;

}



.section-sub {

  font-size: 18px;

  color: #333434;

  font-weight: 300;

  line-height: 1.7;

}



.section-title {

  color: #ff0000;

  font-size: clamp(32px, 4vw, 48px);

  font-weight: 800;

  letter-spacing: -.03em;

  line-height: 1.1;

  margin-bottom: 16px;

}



.sec-badge {

  background: var(--bg);

  border: 1px solid var(--border);

  border-radius: 14px;

  padding: 20px;

  display: flex;

  flex-direction: column;

  gap: 8px;

  transition: border-color .6s var(--silk), transform .6s var(--silk);

}





.sec-badge:hover {

  border-color: var(--border2);

  transform: translateY(-2px)

}







.sec-badge-icon {

  width: 40px;

  height: 40px;

  background: rgba(74, 158, 232, .1);

  border: 1px solid rgba(243, 212, 208, 0.2);

  border-radius: 10px;

  display: flex;

  align-items: center;

  justify-content: center;

}



.sec-badge-name {

  font-size: 18px;

  font-weight: normal;

  color: #ff0000;

}



.sec-badge-desc {

  font-size: 12px;

  color: #fff;

  line-height: 1.5;

}



.sec-badge-status {

  display: inline-flex;

  align-items: center;

  gap: 5px;

  font-size: 11px;

  color: #ffa88c;

  font-weight: 500;

  margin-top: 4px;

}



.sec-badge-status::before {

  content: '';

  width: 5px;

  height: 5px;

  background: #f54949;

  border-radius: 50%;

}



.sec-badge-icon svg {

  width: 20px;

  height: 20px;

  fill: none;

  stroke: #ff0000;

  stroke-width: 1.8;

  stroke-linecap: round;

  stroke-linejoin: round;

}





@media(max-width:900px) {



  .fb-left,

  .fb-right {

    display: none

  }



  .stats-section {

    grid-template-columns: 1fr 1fr

  }



  .features-section,

  .pricing-section,

  .faq-section,

  .testimonials-section,

  .dashboard-section,

  .logos-section,

  .security-section,

  .app-section,

  .stats-section {

    padding: 60px 24px

  }



  footer {

    padding-left: 24px !important;

    padding-right: 24px !important

  }



  .sticky-layout {

    grid-template-columns: 1fr

  }



  .sticky-panel-wrap {

    position: static

  }



  .pricing-grid {

    grid-template-columns: 1fr

  }



  .security-inner {

    grid-template-columns: 1fr;

    gap: 40px

  }



  .app-inner {

    grid-template-columns: 1fr;

    gap: 40px

  }



  .footer-grid {

    grid-template-columns: 1fr;

    gap: 32px

  }



  .footer-bottom {

    flex-direction: column;

    gap: 16px;

    text-align: center

  }



  .dp-body {

    grid-template-columns: 1fr

  }

}



@media(max-width:600px) {

  .stats-section {

    grid-template-columns: 1fr

  }



  .footer-grid {

    grid-template-columns: 1fr

  }



  .hero h1 {

    font-size: 36px

  }



  .pricing-grid {

    gap: 12px

  }

}



.text-center {

  text-align: center;

  align-items: center;

}





.p-3 {

  padding-top: 100px !important;

}



.fs-24 {

  font-size: 22px;

  font-weight: normal;

  line-height: normal;



}



/***************** FAQ *********************/

/* FAQ */



.faq-section>* {

  position: relative;

  z-index: 1

}



.faq-inner {

  max-width: 720px;

  margin: 0 auto

}



.faq-list {

  margin-top: 48px;

  display: flex;

  flex-direction: column;

  gap: 4px

}



.faq-item {

  background: rgba(20, 25, 32, .4);

  border: 1px solid var(--border);

  border-radius: 12px;

  overflow: hidden;

  transition: border-color .5s var(--silk), background .5s var(--silk);

}



.faq-item.open {

  border-color: var(--border2);

  background: rgba(20, 25, 32, .65)

}



.faq-q {

  display: flex;

  align-items: center;

  justify-content: space-between;

  padding: 20px 24px;

  cursor: pointer;

  gap: 16px;

}



.faq-q-text {

  font-size: 15px;

  font-weight: 500;

  color: var(--text);

  transition: color .4s var(--silk)

}



.faq-q:hover .faq-q-text {

  color: var(--sky)

}



.faq-chevron {

  width: 20px;

  height: 20px;

  flex-shrink: 0;

  fill: none;

  stroke: var(--text3);

  stroke-width: 2;

  stroke-linecap: round;

  stroke-linejoin: round;

  transition: transform .6s var(--silk), stroke .4s var(--silk);

}



.faq-item.open .faq-chevron {

  transform: rotate(180deg);

  stroke: var(--sky)

}



.faq-a {

  max-height: 0;

  overflow: hidden;

  transition: max-height .6s var(--silk), padding .5s var(--silk);

  font-size: 14px;

  color: var(--text2);

  line-height: 1.7;

  padding: 0 24px;

  font-weight: 300;

}



.faq-item.open .faq-a {

  max-height: 200px;

  padding-bottom: 20px

}



/*

---------------------------------------------

our facts

---------------------------------------------

*/



section.our-facts {

  padding: 40px max(48px, calc((100vw - var(--max-w)) / 2));

  position: relative;

  overflow: hidden;

  /* background-color: #1b1f28; */

}







section.our-facts::before {

  content: '';

  position: absolute;

  bottom: 0;

  left: 0;

  width: 140%;

  height: 140%;

  background-image:

    repeating-linear-gradient(45deg, transparent 0, transparent 119px, rgba(74, 158, 232, .35) 119px, rgba(74, 158, 232, .35) 120px),

    repeating-linear-gradient(-45deg, transparent 0, transparent 119px, rgba(74, 158, 232, .35) 119px, rgba(74, 158, 232, .35) 120px);

  -webkit-mask-image: radial-gradient(ellipse 100% 100% at 0% 100%, #000 0%, transparent 70%);

  mask-image: radial-gradient(ellipse 100% 100% at 0% 100%, #000 0%, transparent 70%);

  pointer-events: none;

  z-index: 0;

}









section.our-facts h2 {

  font-size: 38px;

  color: #fff;

  line-height: 50px;

  font-weight: 700;

  letter-spacing: 0.5px;

  margin-bottom: 50px;

}



.count-area-content {

  text-align: center;

  background-color: rgb(50 49 49 / 15%);

  border-radius: 20px;

  padding: 25px 30px 35px 30px;

  margin: 15px 0px;

  height: 180px;
    border-right: 6px solid #e4ebf5;
}


.fact-icon {

  margin: 5px 0px !important;

  color: #ff0000;

  font-weight: 700;

  font-size: 36px;

}



.fact-icon svg {

  font-size: 50px;

}



.count-digit {



  margin: 5px 0px;

  color: #f5a425;

  font-weight: 700;

  font-size: 36px;

}



.count-title {

  font-size: 18px;

  font-weight: normal;

  color: #000000;

  letter-spacing: 0.5px;

}



.new-students {

  margin-top: 45px;

}



section.our-facts .video {

  text-align: center;

  margin-left: 70px;

  background-image: url(../images/video-item-bg.jpg);

  background-repeat: no-repeat;

  background-position: center center;

  background-size: cover;

  border-radius: 20px;

}



section.our-facts .video img {

  padding: 170px 0px;

  max-width: 56px;

}



.viewer {

  margin-top: 40px;

  background: #0674ab;

  padding: 10px 15px;

  border: none;

  width: 150px;

  color: #fff;

  border-radius: 10px;



}



#counter {

  background: #fff;

  padding: 4px 10px;

  color: #ff0000;

  border-radius: 5px;

}



.section-desc {

  font-size: 26px;

  line-height: normal;

}



/************** New *******************/

.saudi-news-widget {

  max-width: 100%;

  padding: 0px;

  background: #111827;

  color: #fff;

  border-radius: 12px;

  box-shadow: 0 0 20px rgba(0, 0, 0, .4);

}



.widget-header {

  display: flex;

  align-items: center;

  justify-content: space-between;

  margin-bottom: 15px;

  border-bottom: 1px solid #374151;

  padding-bottom: 10px;

}



.widget-header h2 {

  margin: 0;

  font-size: 24px;

  color: #22c55e;

}



.live-badge {

  background: #dc2626;

  color: #fff;

  padding: 4px 10px;

  border-radius: 20px;

  font-size: 12px;

  animation: pulse 1.5s infinite;

}



@keyframes pulse {

  0% {

    opacity: 1

  }



  50% {

    opacity: .5

  }



  100% {

    opacity: 1

  }

}



.news-container {

  display: grid;

  gap: 12px;

}



.news-item {

  background: #1f2937;

  padding: 5px;

  border-radius: 10px;

  transition: .3s;

}



.news-item:hover {

  transform: translateY(-3px);

}



.news-item a {

  color: #ffffff;

  text-decoration: none;

  font-weight: normal;

  font-size: 12px;

}



.news-item a:hover {

  color: #22c55e;

}



.news-date {

  color: #9ca3af;

  font-size: 12px;

  margin-top: 8px;

}



.loading {

  text-align: left;

  padding: 0px;

  color: #9ca3af;

  height: 250px;

  overflow: auto;

}

.vc_tta.vc_tta-controls-align-center :is(.vc_tta-panel-heading,.vc_tta-tabs-container){
  text-align: left !important;
}

.vc_tta-color-grey.vc_tta-style-flat .vc_tta-tab.vc_active>a {
    background-color: #ff0000 !important;
    color: #f7f7f7 !important;
}
    .vc_tta-color-grey.vc_tta-style-flat.vc_tta-tabs .vc_tta-panels .vc_tta-panel-body {
        background-color: #fff !important;
        border-color: #0000;
    }
