/* Start Global Rules */
*{
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
:root{
  --main-color: #ec3750;
  --main-color-alt: #1787E0;
  --main-transition: .3s;
  --main-padding-top:100px;
  --main-padding-bottom:100px;
  --section-background: #ececec;
}
html{
  scroll-behavior: smooth;
}
body{
  font-family: "Cairo", sans-serif;
}
ul{
  list-style: none;
  margin: 0;
  padding: 0;
}
a{
  text-decoration: none;
}
.container{
  padding: 0 15px;
  margin: 0 auto;
}
/* Small  */
@media(min-width:768px){
  .container{
      width: 750px;
  }
}
/* Medium  */
@media(min-width:992px){
  .container{
      width: 970px;
  }
}
/* Large  */
@media(min-width:1200px){
  .container{
      width: 1170px;
  }
}
.main-title{
  font-size: 30px;
  border: 2px solid black;
  margin: 0 auto 80px;
  padding: 10px 20px;
  width: fit-content;
  transition: var(--main-transition);
  position: relative;
  z-index: 2;
  text-transform: uppercase;
}
.main-title::before,.main-title::after{
  content: "";
  position: absolute;
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background: var(--main-color);
  top: 50%;
  transform: translateY(-50%);
  z-index: -1;
}
.main-title::before{
  left: -30px;
}
.main-title::after{
  right: -30px;
}
.main-title:hover::before{
  animation: left-move .5s linear forwards;
}
.main-title:hover::after{
  animation: right-move .5s linear forwards;
}
.main-title:hover{
  border: 2px solid white;
  color: white;
  transition-delay: .5s;
}
.main-title.alt:hover{
  border-color: #ececec;
  color: #ececec;
}
.spikes{
  position: relative;
}
.spikes::after{
  content: "";
  position: absolute;
  height: 30px;
  width: 100%;
  left: 0;
  top: 0;
  z-index: 1;
  background-image: linear-gradient(135deg, white 25%, transparent 25%),
  linear-gradient(225deg, white 25%, transparent 25%);
  background-size: 30px 30px;
}
.dots{
  background-image: url("../Images/dots.png");
  height: 186px;
  width: 204px;
  background-repeat: no-repeat;
  position: absolute;
}
.dots-up{
  top: 200px;
  right: 0;
}
.dots-down{
  bottom: 200px;
  left: 0;
}
/* End Global Rules */
/* Start Header  */
.header{
  -webkit-box-shadow: 0 0 10 #ddd;
  -moz-box-shadow: 0 0 10 #ddd;
  box-shadow: 0 0 10px #ddd;
  background-color: white;
  position: fixed;
  width: 100vw;
  z-index: 100000;
  transition: background-color 0.3s ease, backdrop-filter 0.3s ease;  
  background-color: transparent;
}
.header.scrolled {
  background-color: rgba(255, 255, 255, 0.75); 
  backdrop-filter: saturate(180%) blur(20px); 
  .logo{
    font-size: 32px;
    height: 65px;
  }
  .main-nav > li > a{
    height: 65px;
    color: black;
  }
}
.header .container{
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  position: relative;
}
.header .logo{
  color: var(--main-color);
  font-size: 36px;
  font-weight: 900;
  height: 72px;
  display: flex;
  justify-content: center;
  align-items: center;
  text-shadow: 1px 1px 2px rgb(0 0 0 / 80%);
  transition: var(--main-transition);
}
@media (max-width: 767px){
  .header .logo{
      width: 100%;
      height: 50px;
  }
}
.header .main-nav{
  display: flex;
}
@media (max-width: 767px){
  .header .main-nav{
      margin: auto;
  }
}

.header .main-nav > li > a {
  color: black;
  height: 72px;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 0 30px;
  font-size: 18px;
  position: relative;
  transition: var(--main-transition);
}
@media (max-width:767px){
  .header .main-nav > li > a {
      padding: 10px;
      font-size: 14px;
      height: 40px;
  }
}
.header .main-nav > li > a::before{
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  height: 4px;
  width: 0%;
  background-color: var(--main-color);
  transition:  var(--main-transition);   
}
.header .main-nav > li a:not(.homeapply):hover::before{
  width: 100%;
}
.header .main-nav > li a:hover{
  color: var(--main-color);
}
.header .main-nav > li{
  display: flex;
  align-items: center;
}
.header .homeapply{
  background-color: #ec3750;
  color: #ffffff !important;
  border: none;
  border-radius: 20px;
  font-size: 20px;
  cursor: pointer;
  font-weight: bold;
  height: 60px !important;
}

@media (max-width: 991px){
  .header .homeapply{
    display: none;
  }
}
@media (min-width: 992px) and (max-width: 1200px){
  .header .homeapply{
    display: none;
  }
}
.header .homeapply:hover{
  scale: 1.03;
  box-shadow: 0 0 20px #ddd;
}
.mega-menu{
  position: absolute;
  width: 100%;
  top: calc(100% + 50px);
  left: 0;
  display: flex;
  padding:40px 20px;
  background-color: white;
  z-index:-1000;
  border-bottom: 3px solid var(--main-color);
  gap: 40px;
  transition: top var(--main-transition), opacity var(--main-transition);
  opacity: 0;
  display: none;
}
@media(max-width:767px){
  .mega-menu{
      padding: 5px;
      flex-direction: column;
      gap: 0;
  }
}
.header .main-nav li:last-child:hover .mega-menu{
  top: calc(100% + 1px);
  opacity: 1;
  z-index: 12;
}
.mega-menu img{
  max-width: 100%;
}
@media(max-width:991px){
  .mega-menu .image{
      display: none;
  }
}
.mega-menu .links{
  flex: 1;
  min-width: 250px;
}
.mega-menu .links:first-of-type li:last-child{
  border-bottom: 1px solid #e9e6e6;
}
.mega-menu .links li {
  position: relative;
  cursor: pointer;
}
.mega-menu .links li:not(:last-child){
  border-bottom: 1px solid #e9e6e6;
}
.mega-menu .links li::before{
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 0;
  background-color: #bbbbbb2f;
  height: 100%;
  transition: var(--main-transition);
}
.mega-menu .links li::after{
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: 0;
  background-color: #bbbbbb2f;
  height: 100%;
  transition: var(--main-transition);
}
.mega-menu .links li:hover::before,.mega-menu .links li:hover::after{
  width: 50%;
}
.mega-menu .links li a{
  color: var(--main-color);
  display: block;
  padding: 15px;
  font-size: 18px;
  font-weight: bold;
}
.mega-menu .links li a i{
  margin-right: 10px;
  color: #051f67;
}
/* End Header  */
/* Start Landing */
.landing{
  position: relative;
  height: 100vh;
}
.landing::before{
  content: "";
  background-color: var(--section-background);
  position:absolute;
  top: -40px;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: -2;
  transform: skewY(-6deg);
  transform-origin: top left;
  background-image: url("../Images/Home/");
}

.landing .container{
  display: flex;
  justify-content: center;
  align-items: center;
  height: calc(100vh - 72px);
  padding-bottom: 30px;
}
.landing .text{
  flex: 1;
}
@media(max-width:991px){
  .landing .text {
      text-align: center;
      max-width: 100%;
  }
}
.landing .text h1{
  font-size: 40px;
  letter-spacing: -2px;
  margin: 0;
  margin-bottom: 20px;
}

@media(max-width: 767px){
  .landing .text h1{
      font-size: 28px;
  }
}
.landing .text h1 span{
  font-size: 50px;
  font-weight: 700;
  margin: 5px;
  background-color: #ec3750;
  cursor: pointer;
  display: inline-block;
  border-radius: 10px;
  transition: var(--main-transition);
  padding: 5px 10px;
  transform: rotate(-3deg);
  color: white;
  letter-spacing: -1px;
}
.landing .text h1 span:hover{
  scale: 1.03;
  box-shadow: 0 0 10px 0px #777;
}
.landing .text p{
  max-width: 500px;
  font-size: 23px;
  color: #666;
  line-height: 1.7;
}
@media(max-width: 767px){
  .landing .text p{
      font-size: 18px;
  }
}
@media(max-width:991px){
  .landing .text p{
      margin: 10px auto;
  }
}
.landing .image img{
  width: 500px;
  animation: up-and-down 3s linear infinite;
  position: relative;
  border-radius: 36px;
}
@media(max-width:991px){
  .landing .image img{
      display: none;
  }
  .landing .text h1 span{
      font-size: 35px;
  }
}
.landing .go-down{
  position: absolute;
  left: 50%;
  bottom: 30px;
  transform: translateX(-50%);
  color: var(--main-color);
}
.landing .go-down{
  animation: bouncing 1.5s infinite;
}
/* End Landing */
/* Start Articles */
.articles{
  padding-top: var(--main-padding-top);
  padding-bottom: var(--main-padding-bottom);
}
.articles .container{
  display: grid;
  grid-template-columns: repeat(auto-fill,minmax(250px, 1fr));
  gap: 40px;
}
.articles .box{
  border-radius: 6px;
  overflow: hidden;
  box-shadow: 0 2px 15px rgb(0 0 0 / 10%);
  transition: transform var(--main-transition),box-shadow var(--main-transition);
}
.articles .box:hover{
  transform: translateY(-10px);
  box-shadow: 0 2px 15px rgb(0 0 0 / 20%);
}
.articles .box img{
  max-width: 100%;
}
.articles .box .content{
  padding: 20px;
  border-bottom: 1px solid #e6e6e7;
}
.articles .box .content h3{
  margin: 0;
}
.articles .box .content p{
  margin: 10px 0 0;
  line-height: 1.5;
  color: #777;
}
.articles .box .info{
  display: flex;
  align-items: center;
  justify-content: space-between;
  color: var(--main-color);
  padding: 20px;
}
.articles .box .info a{
  display: block;
  color: var(--main-color);
  font-weight: bold;
}
.articles .box:hover i{
  animation: pop .3s alternate infinite;
}
/* End Articles */
/* Start Gallery */
.gallary{
  padding-top: var(--main-padding-top);
  padding-bottom: var(--main-padding-bottom);
  background-color: var(--section-background);
  position: relative;
}
.gallary .container{
  display: grid;
  grid-template-columns: repeat(auto-fill,minmax(300px,1fr));
  gap: 40px;
}
.gallary .box{
  padding: 15px;
  background-color: white;
  box-shadow: 0px 12px 20px 0px rgb(0 0 0 / 13%), 0px 2px 4px 0px rgb(0 0 0 / 12%);
  transition: var(--main-transition);
}
.gallary .image{
  overflow: hidden;
  position: relative;
}

.gallary .image::before{
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%);
  background-color: rgb(255 255 255 / 20%);
  width: 0;
  height: 0;
  z-index: 2;
  transition: var(--main-transition);
}
.gallary .image:hover::before{  
  animation: flashing .7s;
}
.gallary .image img{
  max-width: 100%;
  transition: var(--main-transition);
}
.gallary .box:hover img{
  transform: rotate(6deg) scale(1.1);
}
/* End Gallery */
/* Start Features */
.features{
  padding-top: var(--main-padding-top);
  padding-bottom: var(--main-padding-bottom);
  position: relative;
  background-color: white;
}
.features .container{
  display: grid;
  grid-template-columns: repeat(auto-fill,minmax(300px,1fr));
  gap: 40px;
}
.features .box{
  border: 1px solid #ccc;
  text-align: center;
  overflow: hidden;
}
.features .box .img-holder{
  position: relative;
}
.features .box .img-holder::before{
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #ff00004d;
}
@media(max-width: 767px){
  .features .box .img-holder::before{
      top: -1px;
  }
  .features .box .img-holder::after{
      right: -1px;
  }
}
.features .box .img-holder::after{
  content: "";
  position: absolute;
  right: 0;
  bottom: 0;
  border-style: solid;
  border-width: 0px 0px 170px 500px;
  border-color: transparent transparent white transparent;
  transition: var(--main-transition);
}
.features .box:hover .img-holder::after{
  border-width: 0 500px 170px 0;
  border-color: transparent transparent white transparent;
}
.features .box .img-holder img{
  max-width: 100%;
}
.features .box h2{
  font-size: 40px;
  margin: 0 auto;
  position: relative;
  width: fit-content;
}
.features .box h2::after{
  content: "";
  position: absolute;
  height: 5px;
  width: calc(100% - 30px);
  left: 15px;
  bottom: -30px;
}
.features .box p{
  font-size: 23px;
  line-height: 2;
  color: #777;
  margin: 30px auto;
  padding: 25px;
}
.features a{
  display: block;
  border: 3px solid transparent;
  width: fit-content;
  margin: 0 auto 30px;
  padding: 10px 30px;
  border-radius: 6px;
  font-size: 18px;
  font-weight: bold;
  position: relative;
  z-index: 3;
}   
.features a::before{
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  width: 0%;
  background-color: rgba(255, 0, 0, 0.8);
  transition: var(--main-transition);
  z-index: -2;
}
.features .box:hover a::before{
  width: 100%;
}
.features .box:hover a{
  color: white;
}
.features .quality .img-holder::before{
  background-color: rgba(244, 64, 54,.6);
}
.features .quality h2::after{
  background-color: #f44036;
}
.features .quality a{
  color: #f44036;
  border-color: #f44036;
}
.features .quality a::before{
  background-color: #f44036;
}

.features .time .img-holder::before{
  background-color: rgba(0, 150, 136,.6);
}
.features .time h2::after{
  background-color: #009688;
}
.features .time a{
  color: #009688;
  border-color: #009688;
}
.features .time a::before{
  background-color: #009688;
}

.features .pass .img-holder::before{
  background-color: rgba(203, 121, 204,.6);
}
.features .pass h2::after{
  background-color:rgba(203, 121, 204,.6);
}
.features .pass a{
  color:#03a9f4;
  border-color:rgba(203, 121, 204,.6);
}
.features .pass a::before{
  background-color:rgba(203, 121, 204,.6);
}


.features .assion .img-holder::before{
  background-color: rgba(100, 200, 100,.6);
}
.features .assion h2::after{
  background-color:rgba(100, 200, 100,.6);
}
.features .assion a{
  color:#03a9f4;
  border-color:rgba(100, 200, 100,.6);
}
.features .assion a::before{
  background-color:rgba(100, 200, 100,.6);
}



.features .passion .img-holder::before{
  background-color: rgba(3, 169, 244,.6);
}
.features .passion h2::after{
  background-color:#03a9f4
}
.features .passion a{
  color:#03a9f4;
  border-color:#03a9f4;
}
.features .passion a::before{
  background-color:#03a9f4
}



.features .passion .img-holder::before{
  background-color: rgba(3, 169, 244,.6);
}
.features .passion h2::after{
  background-color:#03a9f4
}
.features .passion a{
  color:#03a9f4;
  border-color:#03a9f4;
}
.features .passion a::before{
  background-color:#03a9f4
}
/* End Features */
/* Start Testimonials */
.testimonials{
  padding-top: var(--main-padding-top);
  padding-bottom: var(--main-padding-bottom);
  position: relative;
  background-color:#ececec;
}
.testimonials .container{
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(300px,1fr));
  gap: 40px;
}
.testimonials .box{
  position: relative;
  background-color: white;
  border-radius: 6px;
  padding: 20px;
  box-shadow: 0 2px 4px rgb(0 0 0 /7%);
}
.testimonials .box h2{
  font-size: 18.7px;
  margin: 0 0 10px;
}
.testimonials .box p{
  color: #777;
  margin-bottom: 10px;
}
.testimonials li.filled{
  color: #ffc107;
}
.testimonials .box p:last-of-type{
  line-height: 1.5;
  margin-top: 10px;
  margin-bottom: 0;
}
.testimonials .box .image{
  position: absolute;
  top: -50px;
  right: -10px;
  width: 100px;
  height: 100px;
  border-radius: 50%;
  border: 10px solid #ececec;
  background-size: cover;
  overflow: hidden;
}
.testimonials .box .image img{
  width: 100%;
}
/* End Testimonials */

/* Start Team  */
.team{
  padding-top: var(--main-padding-top);
  padding-bottom: var(--main-padding-bottom);
  position:relative;
  background-color: white;
}
.team .container{
  display: grid;
  grid-template-columns: repeat(auto-fill,minmax(300px, 1fr));
  gap: 30px;
}
.team .box{
  position: relative;
  z-index: 1;
}

.team .box::before,.team .box::after{
  content: "";
  position: absolute;
  right: 0;
  top: 0;
  height: 100%;
  background: #f3f3f3;
  border-radius: 10px;
  transition: var(--main-transition);
}
.team .box::before{
  width: calc(100% - 60px);
  z-index: -1;
}
.team .box::after{
  background-color: #e4e4e4;
  z-index: -1;
  width: 0;
}
.team .box:hover::after{
  width: calc(100% - 60px);
}
.team .box .data{
  display: flex;
  align-items: center;
  padding-top: 60px;
}
.team .data img{
  width: calc(100% - 60px);
  border-radius: 10px;
  transition: var(--main-transition);
}
.team .box:hover img{
  filter: grayscale(100%);
}
.team .data .social{
  display: flex;
  width: 60px;
  flex-direction: column;
  align-items: center;
  gap: 20px;
}
.team .data .social a{
  height: 30px;
  display: flex;
  justify-content: center;
  align-items: center;
}
.team .data .social a i{
  transition: var(--main-transition);
  color: #777;
}
.team .data .social a:hover .fa-facebook-f{
  color: #1877f2;
}
.team .data .social a:hover .fa-twitter{
  color: #14171a;
}
.team .data .social a:hover .fa-linkedin-in{
  color:#0a66c2;
}
.team .data .social a:hover .fa-youtube{
  color: #ff0000;
}
.team .info{
  padding-left: 80px;
}
.team .info h3{
  color: var(--main-color);
  font-size: 22px;
  margin-bottom: 0;
  transition: var(--main-transition);
}
.team .box:hover h3{
  color: #777;
}
/* End Team  */

/* Start Services  */
.services{
  padding-top: var(--main-padding-top);
  padding-bottom: var(--main-padding-bottom);
  position: relative;
  background-color:#ececec;
}
.services .container{
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(300px,1fr));
  gap: 40px;
}
.services .box{
  background-color: white;
  box-shadow: 0 12px 20px 0 rgb(0 0 0 / 13%), 0 2px 4px 0 rgb(0 0 0 / 12%);
  position: relative;
  transition: var(--main-transition);
  counter-increment: services;
}
.services .box::before{
  content: "";
  top: -3px;
  height: 3px;
  width: 0;
  position:absolute;
  left: 50%;
  background-color: var(--main-color);
  transform: translateX(-50%);
  transition: var(--main-transition);
}
.services .box:hover{
  transform: translateY(-10px);
}
.services .box:hover::before{
  width: 100%;
}   
.services .box > i{
  margin: 30px auto 20px;
  display: block;
  text-align: center;
  color: #d5d5d5;
}
.services .box > h3{
  text-align: center;
  color: var(--main-color);
  font-size: 25px;
  margin: 20px auto 40px;
}
.services .info{
  padding: 15px;
  text-align: right; 
  position: relative;
  background-color: #f9f9f9;
}
.services .info a{
  color: var(--main-color);
}
.services .info::before{
  content: "0"counter(services);
  position: absolute;
  left: 0;
  bottom: 0;
  height: 100%;
  width: 80px;
  background-color: var(--main-color);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 28px;
  font-weight: bold;
  color: white;
  padding-right: 30px;
}
.services .info::after{
  content: "";
  position: absolute;
  bottom: 0;
  left: 80px;
  width: 50px;
  height: 100%;
  background-color: #d5d5d5;
  transform: skewX(-30deg);
}
/* End Services  */
/* Start Skills */
.our-skills{
  padding-top: var(--main-padding-top);
  padding-bottom: var(--main-padding-bottom);
  position: relative;
  background-color: white;
}
.our-skills .container{
  display: flex;
  align-items: center;
}
@media (max-width:991px){
  .our-skills .container img{
      display: none;
  }
}
.our-skills .skills{
  flex: 1;
}

.our-skills .skill h3{
  display: flex;
  justify-content: space-between;
}
.our-skills .skill h3 span{
  font-size: 12px;
  color: var(--main-color);
  border-radius: 4px;
  padding: 2px 4px;
  border: 1px solid #ccc;
}
.our-skills .skill .the-progress{
  height: 30px;
  background-color: #eeeeee;
  border-radius: 5px;
  position: relative;
  overflow: hidden;
}
.our-skills .skill .the-progress span{
  height: 100%;
  background-color: var(--main-color);
  position: absolute;
  left: 0;
  top: 0;
  width: 0;
}

/* .our-skills .skill:first-child .the-progress span{
  animation: progress1 5s alternate infinite;
}
.our-skills .skill:nth-child(2) .the-progress span{
  animation: progress2 5s alternate 2s infinite;
}
.our-skills .skill:nth-child(3) .the-progress span{
  animation: progress3 5s alternate 3s infinite;
}
.our-skills .skill:last-child .the-progress span{
  animation: progress4 5s alternate 4s infinite;
} */
/* End Skills */
/* Start Work Steps  */
.work-steps{
  padding-top: var(--main-padding-top);
  padding-bottom: var(--main-padding-bottom);
  position: relative;
  background-color: var(--section-background);
}
.work-steps .container{
  display: flex;
  justify-content: space-between;
  align-items: center;
}
@media (max-width:991px){
  .work-steps .container{
      flex-direction: column;
  }
}
.work-steps .container .image{
  max-width: 100%;
  margin-right: 100px;
}
@media (max-width:991px){
  .work-steps .container .image{
      margin: 0 0 50px;
  }
}
.work-steps .box{
  display: flex;
  align-items: center;
  background: #f5f5f5;
  padding: 30px;
  margin-bottom: 20px;
  border: 2px solid white;
  border-radius: 5px;
  position: relative;
  z-index: 1;
}
@media (max-width:767px){
  .work-steps .box{
      flex-direction: column;
      text-align: center;
  }
}
.work-steps .box::before{
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 0;
  height: 0;
  background: #ededed;
  transform: translate(-50%, -50%);
  z-index: -1;
  transition: var(--main-transition);
}
.work-steps .box:hover::before{
  width: 100%;
  height: 100%;
}
.work-steps .box img{
  width: 64px;
  margin-right: 40px;
}
@media (max-width:767px){
  .work-steps .box img{
      margin: 0 0 20px;
  }
}
.work-steps .box h3{
  margin: 0;
  font-size: 22px;
}
.work-steps .box p{
  margin: 10px 0 0;
  line-height: 1.7;
  color: #777;
  font-size: 18px;
}
/* End Work Steps  */
/* Start Events */
.events{
  padding-top: var(--main-padding-top);
  padding-bottom: var(--main-padding-bottom);
  position: relative;
}
.events .container{
  display: flex;
  align-items: center;
  flex-wrap: wrap;
}
.events img{
  max-width: 450px;
}
@media (max-width:991px) {
  .events img{
      display: none;
  }
}
.events .info{
  flex: 1;
  text-align: center;
}
.events .info .time{
  display: flex;
  justify-content: center;
  gap: 10px;
} 
@media (max-width:767px) {
  .events .info .time{
    display: flex;
    justify-content: center;
    gap: 10px;
    width: fit-content;
    flex-direction: column;
    margin: 0 auto;
  }
  
}
.events .info .time .unit{
  display: flex;
  flex-direction: column;
  border: 1px solid #d4d4d4;
  border-radius: 8px;
  transition: var(--main-transition);
}
.events .info .time .unit:hover{
  border-color: var(--main-color);
}
.events .info .time span:first-child{
  padding: 15px;
  font-size: 35px;
  color: var(--main-color);
  font-weight: bold;
}
.events .info .time span:last-child{
  padding: 8px 10px;  
  border-top: 1px solid #d4d4d4;
  font-size: 13px;
}
.events .info .time .unit:hover span:last-child{
  border-top-color: var(--main-color);
}
.events .info h2{
  font-size: 30px;
  margin: 40px 0 0;
  max-width: 100%;
}
@media (max-width:767px){
  .events .info h2{
      font-size: 27px;
  }
}
.events .info p{
  font-size: 18px;
  line-height: 1.7;
  color: #777;
  max-width: 100%;
}
.events .subscribe{
  width: 100%;
  margin-top: 50px;
}       
.events .subscribe form{
  width: 600px;
  display: flex;
  justify-content: center;
  gap: 20px;
  background: #f6f5f5;
  padding: 20px 30px;
  border-radius: 50px;
  margin: 20px auto;
  max-width: 100%; 
  transition: .3s;
}
.events .subscribe form a{
  background-color: #ec3750; 
  color: #ffffff;
  padding: 15px 30px;
  border: none;
  border-radius: 25px;
  font-size: 18px;
  cursor: pointer;
  text-decoration: none;
  display: inline-block;
  transition: 0.3s ease !important;
}

.events .subscribe form a:hover{
  scale: 1.03;
  box-shadow: 0 0 20px #ddd;
}
@media(max-width:767px){
  .events .subscribe form{
      padding: 20px;
      flex-direction: column;
      gap: 10px;
      border-radius: 0;
  }
}

.events form input[type="email"]{
  padding: 20px;
  border-radius: 50px;
  border: none;
  flex: 1;
  caret-color: var(--main-color);
}
@media(max-width:767px){
  .events form input[type="email"]{
      border-radius: 0;
  }
}
.events form input[type="email"]:focus{
  outline: none;
}
.events form input[type="email"]::placeholder{
  transition: opacity var(--main-transition);
}
.events form input[type="email"]:focus::placeholder{
  opacity: 0;
}
.events form input[type="submit"]{
  background-color: var(--main-color);
  border-radius: 50px;
  padding: 20px;
  border: none;
  color: white;
  font-weight: bold;
  cursor: pointer;
  transition: var(--main-transition);
}
@media(max-width:767px){
  .events form input[type="submit"]{
      max-width: 100%;
      border-radius: 0;
  }
}
.events form input[type="submit"]:hover{
  background-color: var(--main-color-alt);
}
/* End Events */
/* Start Pricing */
.pricing{
  padding-top: var(--main-padding-top);
  padding-bottom: var(--main-padding-bottom);
  position: relative;
  background-color: var(--section-background);
}
.pricing .container{
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(300px,1fr));
  gap: 40px;
}
.pricing .plan{
  box-shadow: 0 12px 20px 0 rgb(0 0 0 / 13%), 0 2px 4px 0 rgb(0 0 0 / 12%);
  position: relative;
  background-color: white;
  z-index: 1;
  text-align: center;
}
.pricing .plan::before,
.pricing .plan::after{
  content: "";
  position: absolute;
  width: 0;
  height: 50%;
  z-index: -1;
  background: #f6f6f6;
  transition: var(--main-transition);
}
.pricing .plan::before{
  top: 0;
  left: 0;
}
.pricing .plan::after{
  bottom: 0;
  right: 0;
}
.pricing .plan:hover::before,
.pricing .plan:hover::after{
  width: 100%;
}
@media(min-width:1200px){
  .pricing .plan.popular{
      top: -20px;
  }
}
.pricing .plan img{
  width: 80px;
  margin-bottom: 30px;
}
.pricing .plan .label{
  WRITING-MODE: vertical-rl;
  background: var(--main-color);
  color: white;
  padding: 10px 10px 30px 10px;
  position: absolute;
  right: 20px;
}
.pricing .plan .label::before{
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  border: 20px solid;
  border-color: transparent transparent white transparent;
}
.pricing .plan .title{
  font-size: 32px;
  letter-spacing: -1px;
  margin: 30px 0;
}
.pricing .price {
  margin-bottom: 20px;
}
.pricing .price .amount{
  display: block;
  font-size: 50px;
  font-weight: bold;
  color: var(--main-color);
  margin: 0 0 10px;
}
.pricing .price .time{
  color: #777;
}
.pricing ul{
  text-align: left;
}
.pricing ul li{
  padding: 20px;
  border-top: 1px solid #eee;
  position: relative;
}
.pricing ul li::before{
  font-family: "Font Awesome 5 Free";
  content: "\f00c";
  margin-right: 10px;
  font-weight: 900;
  color: var(--main-color);
}
.pricing a{
  display: block;
  background: white;
  color: var(--main-color);
  border: 2px solid var(--main-color);
  width: fit-content;
  font-weight: bold;
  margin:30px auto 40px;
  padding: 15px 20px;
  border-radius: 6px;
  transition: var(--main-transition);
}
.pricing a:hover{
  background-color: var(--main-color);
  border-color: var(--main-color);
  color: white;
}
/* End Pricing */
/* Start videos  */
.videos{
  padding-top: var(--main-padding-top);
  padding-bottom: var(--main-padding-bottom);
}
.videos .holder{
  display: flex;
  justify-content: center;
  background: var(--section-background);
  border: 1px solid #ddd;
}
@media(max-width:991px){
  .videos .holder{
      flex-direction: column;
  }
}
.videos .list{
  min-width: 300px;
  background: white;
}
.videos .list .name{
  display: flex;
  padding:20px;
  justify-content: space-between;
  font-weight: bold;
  background-color: #f4f4f4;
}
.videos .list ul li{
  padding: 20px;
  border-top: 1px solid var(--section-background);
  transition: var(--main-transition);
  cursor:pointer;
}
.videos .list ul li:hover{
  background: #fafafa;
  color: var(--main-color);
}
.videos .list ul li span{
  display:block;
  margin-top: 10px;
  color:#777;
}
.videos .preview{
  padding:10px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  background-color: #e2e2e2;
}
.videos .preview img{
  max-width:100%;
  border-radius: 6px;
}
.videos .preview .info{
  padding:20px;
  background-color: white;
  margin-top: 10px;
}
/* End videos  */
/* Start Stats */
.stats{
  padding-top: var(--main-padding-top);
  padding-bottom: var(--main-padding-bottom);
  position: relative;
  background-image: url("../Images/stats.jpg");
  background-size: cover;
  min-height: 300px;
}
.stats::before{
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgb(255 255 255/15%);
}
.stats h2{
  font-weight: bold;
  font-size: 40px;
  width: fit-content;
  margin: 0 auto 50px;
  position: relative;
  text-align: center;
}
.stats .container{
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(250px,1fr));
  gap: 40px;
}
.stats .box{
  position: relative;
  padding: 30px 15px;
  background-color: white;
  opacity: .9;
  text-align: center;
  transition: var(--main-transition);
}
.stats .box::before,
.stats .box::after{
  content: "";
  position: absolute;
  width: 2px;
  height: 0;
  background-color: var(--main-color);
  transition: 1s;
}
.stats .box::before{
  right: 0;
  top: 0;
}
.stats .box::after{
  left: 0;
  bottom: 0;
}
.stats .box:hover::before,
.stats .box:hover::after{
  height: 100%;
}
.stats .box:hover{
  opacity: 1;
}
.stats .box .number{
  display: block;
  font-weight: bold;
  font-size: 50px;
  margin: 10px auto;
}
.stats .box .text{
  font-size: 20px;
  font-weight: bold;
  font-style: italic;
  color: var(--main-color);
}
/* End Stats */
/* Start Discount */
.discount{
  min-height: 100vh;
  display: flex;
  flex-wrap: wrap;
}
.discount .image{
  flex-basis: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  background: url("../Images/discount-background1.jpg");
  background-size: cover;
  z-index: 1;
  position: relative;
  color: white;
  animation: change-background 10s linear infinite;
}
@media (max-width:991px){
  .discount .image{
      flex-basis: 100%;
  }
}

.discount .image::before{
  content: "";
  position: absolute;
  top: 0;
  left:0;
  width: 100%;
  height: 100%;
  background-color: rgb(33 150 243/ 97%);;
  z-index: -1;
}
.discount .form{
  display: flex;
  justify-content: center;
  align-items: center;
  flex-basis: 50%;
  padding-bottom: 50px;
}
@media (max-width:991px){
  .discount .form{
      flex-basis: 100%;
  }
}
.discount .form form .input{
  display: block;
  padding: 15px;
  margin-bottom: 25px;
  border: none;
  border-bottom: 1px solid #ccc;
  caret-color: var(--main-color);
  background-color: #f9f9f9;
  width: 100%;
  transition: height var(--main-transition);
  position: relative;
  z-index: 2;
}
.discount .form form .input::before {
  content: "";
  position: absolute;
  display: block;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 0%;
  background-color: #f9f9f9;
  z-index: -1;
  transition: height 0.3s ease; 
}

.discount .form form .input:focus::before{
  height: 100%;
}
.discount .form form .input:focus{
  outline: none;
}
.discount .form  textarea.input{
  resize: none;
  height: 200px;
}
.discount .form input[type="submit"]{
  display: block;
  width: 100%;
  padding: 15px;
  background-color: var(--main-color);
  color: white;
  font-size: 20px;
  font-weight: bold;
  border: none;
  cursor: pointer;
  transition: var(--main-transition);
}
.discount .form input[type="submit"]:hover{
  background-color: var(--main-color-alt);
}
.discount .content img{
  width: 300px;
  max-width: 100%;
}
.discount .content{
  text-align: center;
  padding: 0 20px;
}
.discount .content h2{
  font-weight: bold;
  font-size: 40px;
  letter-spacing: -2px;
}
.discount .content p{
  font-size: 18px;
  line-height: 1.7;
  /* color: #777; */
  max-width: 500px;
}
/* End Discount */
/* Start Footer  */
.footer{
  background-color: #191919;
  padding: 70px 0 0;
}
@media(max-width:767px){
  .footer{
      text-align: center;
  }
}
.footer .container{
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
  gap: 40px;
}
/* @media(max-width:767px){
  .footer .container{
      grid-template-columns: 1fr;
  }
} */
.footer .box h3{
  font-size: 50px;
  color: white;
  margin: 0 0 20px;
}
.footer .box .social{
  display: flex;
}
@media(max-width:767px){
  .footer .box .social{
      justify-content: center;
  }
}
.footer .box .social li{
  margin-right: 10px;
}
.footer .box .social li a{
  background-color: #313131;
  color: #B9B9B9;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: 50px;
  height: 50px;
  font-size: 20px;
  transition: var(--main-transition);
  border-radius: 1px;
}
.footer .box .social .facebook:hover{
  background-color: #1877f2;
}
.footer .box .social .instagram:hover{
  background-color: #e1306c;
}
.footer .box .social .whatsapp:hover{
  background-color: #075e54;
}
.footer .box .social .linkedin:hover{
  background-color: #0a66c2;
}
.footer .box .text{
  line-height: 2;
  color: #B9B9B9;
}
.footer .box .links li{
  padding: 15px 0;
  transition: var(--main-transition);
}
.footer .box .links li a{
  color: #B9B9B9;
}
.footer .box .links li a::before{
  font-family: "Font Awesome 5 Free";
  content: "\F101";
  font-weight: 900;
  margin-right: 10px;
  color: var(--main-color);
}
.footer .box .links li:hover{
  padding-left: 15px;
}
.footer .box .links li:not(:last-child){
  border-bottom: 1px solid #444;
}
.footer .line{
  display: flex;
  align-items: center;
  color: #b9b9b9;
  margin-bottom: 30px;
}
@media(max-width:767px){
  .footer .line{
      flex-direction: column;
  }
  .footer .line i{
      margin: 0 0 10px;
  }
}
.footer .line i{
  font-size: 25px;
  color: var(--main-color);
  margin-right: 10px;
}
.footer .line .info{
  line-height: 1.7;
  flex: 1;
}
.footer .line .info span{
  display: block;
}
.footer .footer-gallery img{
  width: 78px;
  border: 3px solid white;
  margin: 2px;
  transition: var(--main-transition);
}
.footer .footer-gallery img:hover{
  box-shadow: 0 0 10px 0 rgb(0, 0, 0,.75);
}
.footer .footer-gallery img:active{
  scale: 1.02;
}
.footer .copyright{
  margin: 50px 0 0;
  padding: 25px 0;
  color: white;
  text-align: center;
  border-top: 1px solid #444;
}
/* End Footer  */
/* Start Animation */
@keyframes up-and-down {
  0%, 100%{
      top: 0;
  }
  50%{
      top: -50px;
  }
}
@keyframes bouncing{
  0%,10%,20%,50%,80%,100%{
      transform: translateY(0);
  }
  40%,60%{
      transform: translateY(-10px);
  }
}
@keyframes left-move{
  50%{
      left: 0;
      width: 12px;
      height: 12px;
  }
  100%{
      left: 0;
      border-radius: 0;
      width: 50%;
      height: 100%;
  }
}
@keyframes right-move{
  50%{
      right: 0;
      width: 12px;
      height: 12px;
  }
  100%{
      right: 0;
      border-radius: 0;
      width: 50%;
      height: 100%;
  }
}
@keyframes pop {
  0%{
      transform: 0;
  }
  100%{
      transform: translateX(5px);
  }
}
@keyframes flashing {
  0%,40%{
      opacity: 1;
  }
  100%{
      opacity: 0;
      width: 200%;
      height: 200%;
  }
}
@keyframes progress1 {
  0%,20%{
      width: 0;
  }
  99.8%{
      width: 80%;
  }
  100%{border-right: 1px solid ;}
}
@keyframes progress2 {
  0%,20%{
      width: 0;
  }
  99.8%{
      width: 86%;
  }
  100%{border-right: 1px solid ;}
}
@keyframes progress3 {
  0%,20%{
      width: 0;
  }
  99.8%{
      width: 70%;
  }
  100%{border-right: 1px solid ;}
}
@keyframes progress4 {
  0%,20%{
      width: 0;
  }
  99.8%{
      width: 90%;
  }   
  100%{border-right: 1px solid ;}
}
@keyframes change-background{
  0%,100%{
      background-image: url("../Images/discount-background1.jpg");
  }
  50%{
      background-image: url("../Images/discount-background2.jpg");
  }
}
/* End Animation */
