/**
 * ===============================
 *  Defult CSS 
 * ===============================
 */
body {
  font-family: 'Source Sans Pro', sans-serif;
  font-size: 15px;
  font-style: none;
  line-height: 25px;
  font-weight: 500;
  overflow-x: hidden !important;
  text-align: left;
  position: relative;
}
a {
  text-decoration: none !important;
  display: inline-block;
  cursor: pointer;
  font-family: 'Source Sans Pro', sans-serif;
  -webkit-transition: all 0.4s ease-out;
  -moz-transition: all 0.4s ease-out;
  -o-transition: all 0.4s ease-out;
  -ms-transition: all 0.4s ease-out;
  transition: all 0.4s ease-out;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
a:focus {
  outline: 0 !important;
}
.fix {
  overflow: hidden;
}
.section-video {
  position: absolute;
  top: 0;
  left: 0;
  min-height: 100%;
  min-width: 100%;
  overflow: hidden;
  z-index: -1;
}
.section-video .bgvid {
  position: absolute;
  top: 0;
  left: 0;
  min-height: 100%;
  min-width: 100%;
  background-size: cover;
  -o-background-size: cover;
  -moz-background-size: cover;
  -webkit-background-size: cover;
}
.body-video-bg > .section-video {
  position: fixed;
  top: 0;
  left: 0;
}
p {
  font-family: 'Source Sans Pro', sans-serif;
  font-size: 15px;
  margin-bottom: 28px;
  font-weight: 400;
}
/* Heading Style */
h1 {
  font-size: 65px;
  line-height: 95px;
  font-weight: 300;
}
h2 {
  font-size: 55px;
  line-height: 85px;
  font-weight: 300;
}
h3 {
  font-size: 25px;
  line-height: 45px;
  font-weight: 400;
}
h4 {
  font-size: 22px;
  line-height: 40px;
  font-weight: 400;
}
h5 {
  font-size: 20px;
  line-height: 38px;
  font-weight: 600;
}
h6 {
  font-size: 16px;
  line-height: 34px;
  font-weight: 600;
}
.tlinks{text-indent:-9999px;height:0;line-height:0;font-size:0;overflow:hidden;}
/*
 * ====================================
 * Gradient Text Color
 * ====================================
 */
/**
 * ====================================
 *  Every Section Headline Defult Class
 * ====================================
 */
.section-heading {
  display: inline-block;
  padding-bottom: 0px;
  margin: 0;
}
.section-header {
  margin-bottom: 70px;
  text-align: center;
}
.section-header .sub-title {
  font-size: 17px;
  line-height: 26px;
  font-weight: 400;
  margin: 0;
}
.section-header.text-left,
.section-header.text-left * {
  text-align: left;
}
.section-header.text-right,
.section-header.text-right * {
  text-align: right;
}
section.section {
  position: relative;
}
/**
 * ===============================
 *  Section Top and Bottom padding  
 * ===============================
 */
.section-separator {
  display: block;
  padding-top: 125px;
  padding-bottom: 125px;
}
.section-separator.sp-top {
  padding-bottom: 0px;
}
.section-separator.sp-bottom {
  padding-top: 0px;
}
.section-separator-line {
  margin: 0;
  width: 100%;
  border-top: 1px solid;
}
/**
 * ====================================
 * Background Overlay Color
 * ====================================
 */
.overlay-color {
  position: relative;
}
.overlay-color-full {
  position: relative;
}
/**
 * ====================================
 * Making Same Height Left & Right Part
 * ====================================
 */
.display-full {
  display: table !important;
  width: 100%;
}
.display-full .left,
.display-full .right {
  display: table-cell;
  float: none !important;
}
/**
 * ===============================
 *   Defult Button Style
 * ===============================
 */
.btn {
  border-radius: 4px 4px 4px 4px;
  -webkit-border-radius: 4px 4px 4px 4px;
  -moz-border-radius: 4px 4px 4px 4px;
  -ms-border-radius: 4px 4px 4px 4px;
  -o-border-radius: 4px 4px 4px 4px;
  border: none;
  cursor: pointer;
  display: inline-block;
  font-size: 16px;
  font-weight: 600;
  margin-right: 15px;
  overflow: hidden;
  outline: 0;
  position: relative;
  z-index: 2;
  -webkit-transition: all 0.4s ease-out;
  -moz-transition: all 0.4s ease-out;
  -o-transition: all 0.4s ease-out;
  -ms-transition: all 0.4s ease-out;
  transition: all 0.4s ease-out;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.btn:last-child {
  margin-right: 0px !important;
}
.btn .icon {
  position: relative;
  top: 2px;
}
.btn.left-icon .icon {
  margin-right: 8px;
}
.btn.right-icon .icon {
  margin-left: 8px;
}
.btn.btn-fill {
  padding: 15px 30px;
}
.btn.btn-border {
  background-color: transparent;
  border: 2px solid;
  padding: 13px 30px;
}
.btn.btn-icon {
  padding: 0px 30px;
}
.btn.btn-icon .btn-text {
  display: inline-block;
  padding: 15px 0;
}
.btn.btn-icon .icon {
  font-size: 22px;
}
.btn.btn-icon .icon {
  position: relative;
  top: 5px;
}
.btn.btn-icon.btn-border .btn-text {
  padding: 13px 0;
}
.btn.active.focus,
.btn.active:focus,
.btn.focus,
.btn:active.focus,
.btn:active:focus,
.btn:focus {
  outline: thin dotted;
  outline: 0px auto -webkit-focus-ring-color !important;
  outline-offset: -2px;
}
.btn-text-link {
  padding: 50px 0 0 0;
  text-align: center;
}
.btn-text-link a {
  margin-left: 10px;
}
.m-t-30 {
  margin-top: 30px;
}
.m-r-30 {
  margin-right: 30px;
}
.m-b-30 {
  margin-bottom: 30px;
}
.m-l-30 {
  margin-left: 30px;
}
.m-t-40 {
  margin-top: 40px;
}
.m-r-40 {
  margin-right: 40px;
}
.m-b-40 {
  margin-bottom: 40px;
}
.m-l-40 {
  margin-left: 40px;
}
.m-t-50 {
  margin-top: 50px;
}
.m-r-50 {
  margin-right: 50px;
}
.m-b-50 {
  margin-bottom: 50px;
}
.m-l-50 {
  margin-left: 50px;
}
.p-t-30 {
  padding-top: 30px;
}
.p-r-30 {
  padding-right: 30px;
}
.p-b-30 {
  padding-bottom: 30px;
}
.p-l-30 {
  padding-left: 30px;
}
.p-t-40 {
  padding-top: 40px;
}
.p-r-40 {
  padding-right: 40px;
}
.p-b-40 {
  padding-bottom: 40px;
}
.p-l-40 {
  padding-left: 40px;
}
.p-t-50 {
  padding-top: 50px;
}
.p-r-50 {
  padding-right: 50px;
}
.p-b-50 {
  padding-bottom: 50px;
}
.p-l-50 {
  padding-left: 50px;
}
/** 
 * ======================
 * Social Icon Style
 * ======================
 */
.social-icon {
  margin-top: 15px;
}
.social-icon li {
  list-style: none;
  float: left;
  margin-bottom: 0px;
}
.social-icon li a {
  font-size: 17px;
  text-align: center;
  margin-right: 15px;
  width: 25px;
  height: 25px;
  padding: 3px;
  border-radius: 50%;
  font-size: 14px;
  margin-right: 10px;
}
.social-icon li:last-child a {
  margin-right: 0px;
}
/**
 * ===================================
 * Subscription and contact  "MESSAGE"
 * ===================================
 */
.subscription-success,
.subscription-failed,
.email-success,
.email-failed,
.email-loading {
  font-size: 15px;
  display: none;
  text-align: center !important;
  margin: 0 0 10px 0 !important;
}
.email-loading {
  color: #52B8FF;
}
.email-loading img {
  width: 15px;
  position: relative;
  top: -2px;
}
.subscription-failed,
.email-failed {
  color: #FF5252 !important;
}
.subscription-failed .icon,
.email-failed .icon {
  font-size: 20px;
  position: relative;
  top: 5px;
}
.subscription-success,
.email-success {
  color: #56CC35;
}
.subscription-failed .icon,
.email-failed .icon,
.subscription-success .icon,
.email-success .icon {
  font-size: 20px;
  position: relative;
  top: 5px;
}
/**
 * =========================
 * Form Style 
 * =========================
 */
.single-form {
  width: 100%;
  display: inline-table;
}
.single-form .form-control {
  font-size: 15px;
  border: 0px solid;
  border-radius: 0;
  box-shadow: 0 0 0 0 #fff;
  height: 51px;
  text-align: left;
  margin-bottom: 20px;
  padding: 0 15px;
  -webkit-transition: all 0.4s ease-out;
  -moz-transition: all 0.4s ease-out;
  -o-transition: all 0.4s ease-out;
  -ms-transition: all 0.4s ease-out;
  transition: all 0.4s ease-out;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.single-form textarea {
  height: 175px !important;
  padding: 10px 15px !important;
}
.single-form .select-outer {
  position: relative;
}
.single-form .select-outer::after {
  content: "";
  position: absolute;
  top: 19px;
  right: 15px;
  border-width: 7px 6px;
  border-style: solid;
}
.single-form select {
  -moz-appearance: none;
  -webkit-appearance: none;
}
.single-form .btn {
  margin-top: 10px;
}
.single-form .form-group {
  margin: 0px;
}
.single-form .p-right {
  padding-left: 0px;
}
.single-form .p-left {
  padding-right: 0px;
}
.single-form .m-right {
  margin-right: 0px;
}
.single-form .m-left {
  margin-left: 0px;
}
@media (max-width: 767px) {
  h1,
  h2 {
    font-size: 45px;
    line-height: 65px;
    font-weight: 300;
  }
  /**
     * ===============================
     *  Defult CSS 
     * ===============================
     */
  html *,
  body,
  p {
    text-align: center;
  }
  .section-header.text-left,
  .section-header.text-right,
  .section-header.text-left *,
  .section-header.text-right * {
    text-align: center;
  }
  /**
     * ================================
     * Nav Defult Style
     * ================================
     */
  .nav {
    display: inline-block;
  }
  /**
     * ===============================
     *   Defult Button Style
     * ===============================
     */
  .btn,
  .btn:last-child {
    margin: 10px !important;
  }
}
/****************************************************************
    START MAIN CSS STYLE
*****************************************************************/
/**
 * =======================
 * Navigation
 * =======================
 */
.main-navbar-top {
  border: 0px solid;
  top: -70px;
  -webkit-transition: all 0.4s ease-out;
  -moz-transition: all 0.4s ease-out;
  -o-transition: all 0.4s ease-out;
  -ms-transition: all 0.4s ease-out;
  transition: all 0.4s ease-out;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.main-navbar-top .relative {
  position: relative;
}
.main-navbar-top .navbar-brand {
  display: block;
  height: 70px;
}
.main-navbar-top .navbar-brand img {
  display: block;
  height: 100%;
  max-width: initial;
}
.main-navbar-top .navbar-toggle {
  padding: 19px 15px;
}
.main-navbar-top ul li .btn-nav {
  padding: 21px 13px;
  font-weight: 400;
  font-size: 15px;
  margin-right: 2px;
  position: relative;
}
.main-navbar-top ul li .btn-nav:hover,
.main-navbar-top ul li .btn-nav:focus {
  background-color: transparent;
}
.main-navbar-top ul li:last-child a {
  margin-right: 0px;
}
.main-navbar-top .okayNav__nav--invisible {
  top: 63px;
  -webkit-transition: all 0.4s ease-out;
  -moz-transition: all 0.4s ease-out;
  -o-transition: all 0.4s ease-out;
  -ms-transition: all 0.4s ease-out;
  transition: all 0.4s ease-out;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.main-navbar-top .okayNav__nav--invisible li .btn-nav {
  padding: 12px 13px;
}
.main-navbar-top.navbar-home {
  top: 0px;
}
/**
 * ===============================
 * Header Style 1
 * ===============================
*/
.bg-1 {
  background: url('../images/background-1.jpg');
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
  background-position: 50% 50%;
  background-attachment: initial;
  background-repeat: no-repeat;
  background-color: #ffffff;
}
.header-section-1 .logo-link {
  max-width: 50px;
  margin-bottom: 70px;
}
.header-section-1 .section-separator {
  padding-top: 50px;
}
.header-section-1 .image-group {
  margin-top: 80px;
}
.header-section-1 .image-group img {
  width: 33%;
  float: left;
}
.header-section-1 .image-group .home-left,
.header-section-1 .image-group .home-right {
  position: relative;
  top: 36px;
}
/**
 * ====================================
 * Features Style 1
 * ====================================
 */
.features-section-1 .features-image {
  width: 290px;
  margin: auto;
}
.features-section-1 .features-image img {
  width: 100%;
}
.features-section-1 .feature-item {
  margin-bottom: 60px;
}
.features-section-1 .feature-item:last-child {
  margin-bottom: 0px;
}
.features-section-1 .feature-item .title {
  margin-top: 20px;
}
.features-section-1 .feature-item p {
  margin-top: 10px;
}
.features-section-1 .feature-item p:last-child {
  margin-bottom: 0px;
}
.features-icon {
  display: block;
  font-size: 32px;
  text-align: center;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateX(-50%) translateY(-50%) translateZ(0) rotate(0deg) scale(1);
  -o-transform: translateX(-50%) translateY(-50%) translateZ(0) rotate(0deg) scale(1);
  -ms-transform: translateX(-50%) translateY(-50%) translateZ(0) rotate(0deg) scale(1);
  -moz-transform: translateX(-50%) translateY(-50%) translateZ(0) rotate(0deg) scale(1);
  -webkit-transform: translateX(-50%) translateY(-50%) translateZ(0) rotate(0deg) scale(1);
}
.gradient-text {
  -moz-background-clip: text;
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  -moz-text-fill-color: transparent;
  text-fill-color: transparent;
}
.gradient-text-full {
  -moz-background-clip: text;
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  -moz-text-fill-color: transparent;
  text-fill-color: transparent;
}
.gradient-border {
  display: inline-block;
  position: relative;
  width: 70px;
  height: 70px;
  z-index: 1;
}
.gradient-border::before,
.gradient-border::after {
  content: '';
  position: absolute;
  border-radius: 50% 50% 50% 50%;
  -webkit-border-radius: 50% 50% 50% 50%;
  -moz-border-radius: 50% 50% 50% 50%;
  -ms-border-radius: 50% 50% 50% 50%;
  -o-border-radius: 50% 50% 50% 50%;
}
.gradient-border::before {
  top: -2px;
  bottom: -2px;
  left: -2px;
  right: -2px;
  z-index: -2;
}
.gradient-border::after {
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: -1;
}
.vertical-middle {
  display: table-cell;
  float: none;
  vertical-align: middle;
}
/**
 * ====================================
 * Features Style 2 
 * ====================================
 */
.bg-2 {
  background: url('../images/background-1.jpg');
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
  background-position: 50% 50%;
  background-attachment: initial;
  background-repeat: no-repeat;
  background-color: #ffffff;
}
.features-section-2 .features-item {
  position: relative;
  z-index: 1;
}
.features-section-2 .features-item .icon-outer {
  display: inline-table;
  width: 90px;
  height: 90px;
  position: relative;
  border-radius: 50% 50% 50% 50%;
  -webkit-border-radius: 50% 50% 50% 50%;
  -moz-border-radius: 50% 50% 50% 50%;
  -ms-border-radius: 50% 50% 50% 50%;
  -o-border-radius: 50% 50% 50% 50%;
}
.features-section-2 .features-item::after,
.features-section-2 .features-item::before {
  content: '';
  width: 50%;
  border-top: 1px solid;
  position: absolute;
  top: 65px;
  transform: translateX(0) translateY(-50%) translateZ(0) rotate(0deg) scale(1);
  -o-transform: translateX(0) translateY(-50%) translateZ(0) rotate(0deg) scale(1);
  -ms-transform: translateX(0) translateY(-50%) translateZ(0) rotate(0deg) scale(1);
  -moz-transform: translateX(0) translateY(-50%) translateZ(0) rotate(0deg) scale(1);
  -webkit-transform: translateX(0) translateY(-50%) translateZ(0) rotate(0deg) scale(1);
  z-index: -1;
}
.features-section-2 .features-item::after {
  left: 50%;
}
.features-section-2 .features-item::before {
  right: 50%;
}
/**
 * ====================================
 * Features Style 3 
 * ====================================
 */
.features-section-3 .features-image img {
  max-width: 465px;
}
.features-section-3 .features-list .media .media-left {
  padding-top: 13px;
  padding-right: 15px;
}
.features-section-3 .features-list .media .media-left .icon {
  font-size: 34px;
}
.features-section-3 .features-list .media .title {
  margin: 0;
}
.app-swiper-slide .screenshots-thumb img {
  width: 100%;
}
.app-swiper-slide .swiper-pagination {
  position: relative;
  margin-top: 30px;
}
.app-swiper-slide .swiper-pagination .swiper-pagination-bullet {
  position: relative;
  float: right;
  opacity: 0.6;
  margin: 0 7px;
}
.app-swiper-slide .swiper-pagination .swiper-pagination-bullet::before {
  content: '';
  position: absolute;
  top: -4px;
  right: -4px;
  bottom: -4px;
  left: -4px;
  border-radius: 50%;
  border: 1px solid;
}
.app-swiper-slide .swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
  opacity: 1;
}
/**
 * ====================================
 * Features Style 4
 * ====================================
 */
.bg-3 {
  background: url('../images/background-1.jpg');
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
  background-position: 50% 50%;
  background-attachment: initial;
  background-repeat: no-repeat;
  background-color: #ffffff;
}
.features-section-4 .single-form .form-control {
  margin: 0;
  height: 51px;
  border-radius: 4px 0 0 4px;
  -webkit-border-radius: 4px 0 0 4px;
  -moz-border-radius: 4px 0 0 4px;
  -ms-border-radius: 4px 0 0 4px;
  -o-border-radius: 4px 0 0 4px;
}
.features-section-4 .single-form .btn {
  margin: 0px;
  z-index: 4;
  float: right;
  border-radius: 4px 4px 4px 4px;
  -webkit-border-radius: 4px 4px 4px 4px;
  -moz-border-radius: 4px 4px 4px 4px;
  -ms-border-radius: 4px 4px 4px 4px;
  -o-border-radius: 4px 4px 4px 4px;
}
.features-section-4 .single-form .input-group {
  border-radius: 4px 4px 4px 4px;
  -webkit-border-radius: 4px 4px 4px 4px;
  -moz-border-radius: 4px 4px 4px 4px;
  -ms-border-radius: 4px 4px 4px 4px;
  -o-border-radius: 4px 4px 4px 4px;
}
/**
 * ====================================
 * Features Style 5
 * ====================================
 */
.bg-4 {
  background: url('../images/background-1.jpg');
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
  background-position: 50% 50%;
  background-attachment: initial;
  background-repeat: no-repeat;
  background-color: #ffffff;
}
.features-section-5 .swiper-wrapper {
  padding: 25px 0px 0 0px;
  text-align: center;
}
.features-section-5 .swiper-wrapper blockquote {
  margin-top: 25px;
  margin-bottom: 17px;
  border: 0 solid;
  font-size: 15px;
  font-weight: 400;
  line-height: 28px;
}
.features-section-5 .swiper-wrapper .name {
  font-weight: 800;
  margin: 0;
  letter-spacing: 1px;
  text-transform: uppercase;
}
.features-section-5 .swiper-wrapper .position {
  font-weight: 400;
}
.features-section-5 .swiper-wrapper .client-img {
  width: 50px;
  height: auto;
  border-radius: 50%;
  float: left;
}
.features-section-5 .swiper-wrapper span {
  display: block;
}
.features-section-5 .swiper-wrapper .detail-group,
.features-section-5 .swiper-wrapper .client-profile {
  display: inline-block;
  margin-bottom: 0;
}
.features-section-5 .swiper-wrapper .detail-group {
  padding-left: 15px;
}
/**
 * ====================================
 * Footer Section 1
 * ====================================
 */
.footer-section-1 {
  position: relative;
}
.footer-section-1 .section-separator {
  padding: 90px 0;
}
.footer-section-1 .logo-link {
  display: inline-block;
}
.footer-section-1 .sub-title {
  margin: 0;
}
.footer-section-1 .title {
  margin-bottom: 0px;
}
.footer-section-1 .each-item {
  border-right: 1px solid;
}
.footer-section-1 .each-item .inner {
  padding: 0 20px;
}
.footer-section-1 .each-item:last-child {
  border-right: 0px solid;
}
/**
 * ====================================
 * Contact Form
 * ====================================
 */
.contact-form .title {
  margin: 0 0 20px 0;
}
.contact-form .close {
  position: absolute;
  right: 10px;
  top: 5px;
  font-size: 27px;
}
.contact-form .close:focus {
  outline: 0;
}
.contact-form .single-form {
  padding: 35px 20px;
}
.contact-form .single-form .form-control {
  border: 1px solid;
  border-radius: 4px 4px 4px 4px;
  -webkit-border-radius: 4px 4px 4px 4px;
  -moz-border-radius: 4px 4px 4px 4px;
  -ms-border-radius: 4px 4px 4px 4px;
  -o-border-radius: 4px 4px 4px 4px;
}
.contact-form .single-form .btn {
  width: 100%;
  margin: 0px !important;
}
