

/* ==========================================================================
   1.General
   ========================================================================== */


html {
  font-size: 16px;
  line-height: 1.5;
}

body {
  font-family: 'Karla', sans-serif;
  line-height: 1.5;
  font-weight: 400;
  font-size: 18px;
  overflow-x: hidden;
}

p {
  font-weight: 400;
  color: #898d98;
  font-size: 18px;
  line-height: 1.7;
}

p:last-child { margin-bottom: 0; }

h1,
h2,
h3,
h4,
h5,
h6 {
  font-weight: 700;
  line-height: 1.3;
}

a {
  color: #3b28ea;
  transition: all 0.3s ease-in-out;
}

a:hover,
a:focus {
  color: #4533eb;
  text-decoration: none;
}

a:focus { outline: none; }

img {
  max-width: 100%;
  height: auto;
}

ul,
li {
  list-style: none;
  padding: 0;
  margin: 0;
}

b,
strong { font-weight: 700; }

/* ==========================================================================
   2.Hero section
   ========================================================================== */ 


.navbar-collapse { text-align: center; }

.ml-auto { padding: 1.5rem 0; }

.navbar-light .navbar-toggler {
  color: #3b28ea;
  border-color: transparent;
  background: transparent;
}

.hero-section .navbar .nav-link {
  font-weight: 700;
  padding: 10px 20px;
}

.navbar-light .navbar-nav .nav-link,
.navbar.affix .btn-nav { display: inline-block; }

.navbar-light .navbar-nav .nav-link::after {
  content: '';
  display: block;
  width: 0;
  height: 2px;
  background: #4533eb;
  transition: width .3s;
}

.navbar-light .navbar-nav .nav-link:hover::after { width: 100%; }

.navbar-toggler { cursor: pointer; }

.navbar button { outline: none; }

.btn-nav,
.navbar.affix .btn-modal { display: none; }

.navbar {
  background-color: rgba(255, 255, 255, 0.98);
  position: absolute;
  width: 100%;
  top: 0;
  z-index: 1040;
  padding: 1rem;
}

.affix {
  position: fixed;
  left: 0;
  right: 0;
  top: 0;
  background-color: rgba(255, 255, 255, 0.98);
  z-index: 1040;
  padding: 1rem;
  box-shadow: 0 0 8px 0px rgba(88, 88, 88, 0.19);
  -webkit-animation: slideInDown 1s both;
  animation: slideInDown 1s both;
}
 @-webkit-keyframes slideInDown {
 from {
 -webkit-transform: translate3d(0, -100%, 0);
 transform: translate3d(0, -100%, 0);
 visibility: visible;
}
 to {
 -webkit-transform: translate3d(0, 0, 0);
 transform: translate3d(0, 0, 0);
}
}
 @keyframes slideInDown {
 from {
 -webkit-transform: translate3d(0, -100%, 0);
 transform: translate3d(0, -100%, 0);
 visibility: visible;
}
 to {
 -webkit-transform: translate3d(0, 0, 0);
 transform: translate3d(0, 0, 0);
}
}

.navbar-light .navbar-nav .nav-link,
.hero-section .navbar.affix .nav-link,
.navbar-light.affix .navbar-nav .nav-link:focus,
.navbar-light.affix .navbar-nav .show>.nav-link { color: #3b28ea; }

.navbar-light .navbar-nav .nav-link:focus,
.navbar-light .navbar-nav .nav-link:hover,
.navbar-light.affix .navbar-nav .nav-link:hover,
.navbar-light .navbar-nav .show>.nav-link { color: #4533eb; }

.navbar-toggler .icon-bar {
  display: block;
  width: 23px;
  height: 2px;
  border-radius: 1px;
  background-color: #3b28ea;
  position: relative;
  transition: all 500ms ease-in-out;
}

.navbar-toggler:hover .icon-bar { background-color: #4533eb; }

.navbar-toggler .icon-bar:not(:last-child) { margin-bottom: 5px; }

.navbar-toggler .icon-bar:nth-of-type(2) { top: 1px; }

.navbar-toggler .icon-bar:nth-of-type(3) { top: 2px; }

.navbar-toggler.hamburger-active .icon-bar:nth-of-type(1) {
  top: 7px;
  transform: rotate(45deg);
}

.navbar-toggler.hamburger-active .icon-bar:nth-of-type(2) { background-color: transparent; }

.navbar-toggler.hamburger-active .icon-bar:nth-of-type(3) {
  top: -6.7px;
  transform: rotate(-45deg);
}

.hero-welcome-message { padding: 6.75rem 0 5.25rem; }

.hero-welcome-message h1,
.hero-welcome-message h2 { color: #000; }

.hero-welcome-message h1 {
  font-weight: 700;
  font-size: 3rem;
}

.hero-welcome-message h2 {
  margin: 1rem 0 1.5rem;
  font-weight: 400;
  font-size: 1.875rem;
}




::-webkit-input-placeholder {
 color: #898d98 !important;
 font-size: 18px;
}
::-moz-placeholder {
 color: #898d98 !important;
 font-size: 18px;
}
:-ms-input-placeholder {
 color: #898d98 !important;
 font-size: 18px;
}
:-moz-placeholder {
 color: #898d98 !important;
 font-size: 18px;
}

.form-control {
  padding: 1.5rem;
  border-radius: 2rem;
  border: 1px solid rgba(142, 145, 169, 0.27);
  color: #898d98;
  font-size: 18px;
}

.form-control:focus {
  box-shadow: none;
  border-color: rgba(142, 145, 169, 0.5);
  color: #000;
}

.signup-form .form-control {
  padding: 1.7rem 1.5rem;
  color: #3b28ea;
  background: #d8d4fb;
  border-color: #fff;
}

.signup-form .form-control:focus {
  color: #000;
  border-color: #fff;
}
 .signup-form ::-webkit-input-placeholder {
 color: #3b28ea !important;
 font-size: 18px;
}
.signup-form ::-moz-placeholder {
 color: #3b28ea !important;
 font-size: 18px;
}
.signup-form :-ms-input-placeholder {
 color: #3b28ea !important;
 font-size: 18px;
}
.signup-form :-moz-placeholder {
 color: #3b28ea !important;
 font-size: 18px;
}
 @-webkit-keyframes autofill {
 to {
 color: #3b28ea;
 background: #d8d4fb;
}
}
 input:-webkit-autofill, textarea:-webkit-autofill, select:-webkit-autofill {
 -webkit-animation-name: autofill;
 animation-name: autofill;
 -webkit-animation-fill-mode: both;
 animation-fill-mode: both;
}

.btn {
  padding: .75rem 1.5rem;
  font-weight: 700;
  cursor: pointer;
  font-size: 18px;
  border-radius: 2rem;
}

.btn-primary,
.btn:focus,
.btn-primary:disabled,
.navbar.affix .nav-item .btn-primary {
  color: #fff;
  background-color: #3b28ea;
  border-color: #3b28ea;
}

.btn-primary:hover,
.navbar.affix .nav-item .btn-primary:hover,
.btn-primary:not([disabled]):not(.disabled):active {
  color: #fff;
  background-color: #4533eb;
  border-color: #4533eb;
}

.btn-primary:not([disabled]):not(.disabled):active,
.btn-primary:not(:disabled):not(.disabled):active:focus,
.btn:focus { box-shadow: none; }

.navbar .nav-item .btn {
  padding: .5rem 2rem;
  margin: 10px 0;
  background-color: transparent;
  border-color: #3b28ea;
  color: #3b28ea;
}

.navbar .nav-item .btn:hover {
  background-color: #4533eb;
  border-color: #4533eb;
  color: #fff;
}

.hero-welcome-message .btn {
  width: 100%;
  margin-top: .75rem;
}

#mc-error .fa-exclamation-triangle,
#mc-success .fa-envelope { margin-right: .5rem; }

#mc-error,
#mc-success {
  padding: .5rem 0;
  color: #fff;
  display: none;
  margin-top: 1rem;
  text-align: center;
  border-radius: 2rem;
  font-weight: 400;
  font-size: 18px;
}

#mc-error { background: #f44336; }

#mc-success { background: #28a745; }

ul.countdown {
  list-style: none;
  display: block;
  color: #282540;
  margin: 2.25rem 0;
}

ul.countdown li {
  display: inline-block;
  text-align: center;
}

ul.countdown li span { font-size: 40px; }

ul.countdown li.seperator {
  font-size: 29.629px;
  line-height: 55.439px;
  vertical-align: top;
  padding: 0 2px;
}

ul.countdown li p {
  font-size: 18px;
  color: #282540;
  text-transform: capitalize;
}

/* ==========================================================================
   3.Contact form modal
   ========================================================================== */



.modal-header {
  border-bottom: none;
  position: relative;
  padding: 1rem;
}

.modal-header .close {
  padding: 0;
  margin: 0;
  position: absolute;
  right: 1.3rem;
  transition: all 0.2s linear;
  z-index: 1;
  text-shadow: none;
  font-size: 1.8rem;
  font-weight: 400;
  color: #898d98;
  opacity: 1;
  cursor: pointer;
}

.close:not(:disabled):not(.disabled):focus,
.close:not(:disabled):not(.disabled):hover {
  opacity: 1;
  color: #3b28ea;
}

.modal-header button:focus,
.modal-header button span:focus { outline: none; }

.contact-modal header { margin-bottom: 2.25rem; }

.contact-modal header h2 { font-size: 1.75rem; }

.contact-modal header h3 {
  font-size: 1.2rem;
  font-weight: 400;
}

.modal-body { padding: 0 1.5rem 2.25rem; }

.form-group { margin-bottom: 1.5rem; }

.contact-form .form-control.input-error { border-color: #f44336; }

.contact-form-success {
  color: #fff;
  font-weight: 400;
  text-align: center;
  margin-bottom: 1.5rem;
  display: none;
  background: #28a745;
  padding: .5rem 1rem;
  border-radius: 2rem;
}

.contact-form-success .fa-envelope-open { margin-right: .5rem; }

.modal { padding: 0!important; }

.btn:disabled {
  opacity: 1;
  cursor: not-allowed;
}

/* ==========================================================================
   4.Features
   ========================================================================== */

.features { background: #3b28ea; }

.section-spacing { padding: 4.5rem 0; }

.features .section-header {
  text-align: center;
  margin-bottom: 3rem;
}

.features .section-header h2,
.features .section-header h3 { color: #ffbfd9; }

.features .section-header h2 {
  font-size: 1.375rem;
  text-transform: uppercase;
  font-weight: 400;
}

.features .section-header h3 {
  font-size: 2.5rem;
  margin-bottom: 2.25rem;
}

.features .section-header p {
  font-size: 20px;
  color: #fff;
}

.features h4 {
  font-size: 1.5rem;
  color: #14efb5;
  margin: 1.5rem 0 0;
  font-weight: 400;
}

.features-list img {
  width: 155px;
  height: 155px;
}
 .features-list [class^=col]:not(:nth-last-child(-n+1)) {
 margin-bottom: 3rem;
}

/* ==========================================================================
   5.Features more
   ========================================================================== */


.features-more h2 {
  color: #3b28ea;
  font-size: 1.875rem;
}

.features-more img {
  width: 130px;
  height: 130px;
  margin-top: 1.5rem;
}

.features-more-wrapper {
  border: 1px solid #dddddd;
  border-radius: 6px;
  padding: 2.25rem 1rem;
  transition: all 0.3s ease-in-out;
  height: 100%;
}

.features-more-wrapper:hover { border: 1px solid #3b28ea; }

.features-more .container > .row > [class^=col]:not(:last-child) { margin-bottom: 3rem; }

/* ==========================================================================
   6.CTA
   ========================================================================== */


.cta {
  background: #3b28ea;
  text-align: center;
  position: relative;
  overflow: hidden;
}

.cta h2,
.cta h3 { color: #fff; }

.cta h2 { font-size: 3rem; }

.cta h3 {
  font-size: 1.875rem;
  font-weight: 400;
}

.cta-button { margin-top: 2.25rem; }

.cta-button .btn,
.cta-button .btn:focus {
  color: #3b28ea;
  background-color: #fff;
  border-color: #fff;
}

.cta-button .btn:hover,
.cta-button .btn-primary:not([disabled]):not(.disabled):active {
  background-color: rgba(255, 255, 255, 0.922);
  color: #3b28ea;
  box-shadow: none;
  border-color: rgba(255, 255, 255, 0.922);
}

.cta svg {
  display: block;
  margin: 0 auto;
  position: absolute;
  top: 29%;
}

.curve {
  stroke-width: 1px;
  stroke-opacity: 0;
}

.curve path { transform-origin: center 60px; }

.curve path:nth-child(1) { animation: curve 6s linear 1.2s infinite; }

.curve path:nth-child(2) { animation: curve 6s linear 2.4s infinite; }

.curve path:nth-child(3) { animation: curve 6s linear 3.6s infinite; }
 @keyframes curve {
 0% {
 transform: none;
 stroke-opacity: 0;
}
 50% {
 transform: rotateX(360deg) scaleY(0.8);
 stroke-opacity: .3;
}
 100% {
 transform: none;
 stroke-opacity: 0;
}
}

/* ==========================================================================
   7.Footer
   ========================================================================== */



.site-footer { text-align: center; }

.site-footer.section-spacing { padding: 3.75rem 0; }

.site-footer .container > .row:not(:last-child) { margin-bottom: 1.5rem; }

.site-footer .container > .row > [class^=col]:not(:last-child) { margin-bottom: 1.5rem; }

.social { margin-top: .5rem; }

.social li,
.terms-privacy li { display: inline-block; }
 .social li:not(:nth-last-child(1) ), .terms-privacy li:not(:nth-last-child(1) ) {
 margin-right: 1rem;
}

.social li { text-align: center; }

.social li a {
  display: block;
  width: 42px;
  height: 42px;
  line-height: 45px;
  color: #fff;
  border-radius: 50%;
  position: relative;
  transition: all .8s ease;
  font-size: .9rem;
  background: #3b28ea;
}

.social li a:hover { background: #4533eb; }

.terms-privacy a { color: #898d98; }

.terms-privacy a:hover,
.terms-privacy a:focus { color: #4533eb; }

/* ==========================================================================
   8.Small devices (landscape phones, 576px and up)
   ========================================================================== */

@media (min-width: 576px) {

.mr-sm-2 { margin-right: 1rem!important; }

.hero-welcome-message { padding: 9rem 0 6.75rem; }

.hero-welcome-message h1 { font-size: 3.75rem; }

.hero-welcome-message h2 { margin: 1rem 0 3rem; }

ul.countdown li span { font-size: 43.244px; }

ul.countdown li.seperator {
  font-size: 38.439px;
  line-height: 58.454px;
  vertical-align: top;
  padding: 0 8px;
}

.input-wrapper { position: relative; }

.signup-form .btn {
  position: absolute;
  top: 7px;
  right: 7px;
}

.signup-form .form-control { padding: 2rem 15.4rem 2rem 1.5rem; }

.hero-welcome-message .btn {
  width: auto;
  margin-top: 0;
}

.modal-body { padding: 0 2rem 2.25rem; }

.features .section-header h3 { font-size: 3rem; }

.features-more-wrapper { padding: 3rem 1.5rem; }

.cta h2 { font-size: 3.75rem; }
}

/* ==========================================================================
   9.Medium devices (tablets, 768px and up)
   ========================================================================== */
   
@media (min-width: 768px) {

.hero-welcome-message { padding: 9rem 0 7.5rem; }

ul.countdown { margin: 3rem 0 2.25rem; }

.section-spacing { padding: 5.25rem 0; }

.features-list [class^=col]:nth-last-child(-n+2) { margin-bottom: 0; }
}

/* ==========================================================================
   10.Large devices (desktops, 992px and up) 
   ========================================================================== */
   
@media (min-width: 992px) {

.navbar:not(.affix) { background-color: transparent; }

.navbar .nav-item .btn { margin: 0 0 0 20px; }

.navbar-collapse {
  background-color: transparent;
  padding: 0;
}

.ml-auto { padding: 0; }

.hero-welcome-message { padding: 11.25rem 0 9rem; }

.section-spacing { padding: 9rem 0; }

.features .section-header {
  text-align: left;
  margin: 1.5rem 0 0;
}

.features-more .container > .row > [class^=col]:not(:last-child) { margin-bottom: 0; }

.cta { text-align: left; }

.cta.section-spacing { padding: 6rem 0; }

.cta svg { top: 1%; }

.site-footer { text-align: left; }

.site-footer .container > .row > [class^=col]:not(:last-child) { margin-bottom: 0; }

.social {
  text-align: right;
  position: relative;
  bottom: 10px;
  margin-top: 0;
}
}

@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {

.contact-form .form-control:not(.contact-message) {
  padding: 0 1.5rem;
  height: 3.1rem;
}

.signup-form .form-control {
  padding: 0 15.4rem 0 1.5rem;
  height: 4.1rem;
}
	
::-ms-clear {
display: none;
}
}
