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

	Aether Themes 6 Columns Grid

--------------------------------------------------------------*/
/* Resets
-------------------------------------------------------------- */
@-o-viewport {
  width: device-width;
}
@-ms-viewport {
  width: device-width;
}
@viewport {
  width: device-width;
}
html {
  overflow-y: auto;
}

img,
audio,
video,
canvas {
  max-width: 100%;
}

* {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

/* Grid
-------------------------------------------------------------- */
.container {
  max-width: 990px;
  width: 92%;
  margin: 0px auto;
  position: relative;
  zoom: 1;
}

.container:before, .container:after {
  content: "";
  display: table;
}

.container:after {
  clear: both;
}

@media screen and (min-width: 480px) {
  .container {
    width: 98%;
  }

  .grid-1,
  .grid-2,
  .grid-3,
  .grid-4,
  .grid-5,
  .grid-6,
  .grid-half,
  .grid-full {
    float: left;
    width: 96.969696969697%;
    margin: 0 1.515151515152%;
  }

  .grid-half {
    width: 46.969696969697%;
    margin: 0 1.515151515152%;
  }
}
@media screen and (min-width: 640px) {
  .grid-1 {
    width: 13.636363636364%;
  }

  .grid-2 {
    width: 30.30303030303%;
  }

  .grid-3,
  .grid-half {
    width: 46.969696969697%;
  }

  .grid-4 {
    width: 63.636363636364%;
  }

  .grid-5 {
    width: 80.30303030303%;
  }

  .grid-6,
  .grid-full {
    width: 96.969696969697%;
  }
}
/* Clearfix
-------------------------------------------------------------- */
.clearfix:before, .clearfix:after {
  content: "";
  display: table;
}

.clearfix:after {
  clear: both;
}

.clearfix {
  zoom: 1;
}

.icon-right {
  display: inline-block;
  vertical-align: middle;
  *vertical-align: auto;
  *zoom: 1;
  *display: inline;
  background-image: url('../../img/public/home/home-icons-s616c054bc8.png');
  background-position: 0 -76px;
  width: 26px;
  height: 26px;
  background-repeat: no-repeat;
}
@media (-webkit-min-device-pixel-ratio: 1.3) {
  .icon-right {
    background-image: -webkit-image-set(url('../../img/public/home/home-icons-s616c054bc8.png') 1x, url('../../img/public/home/home-icons-2x-sf1725f0b7e.png') 2x);
  }
}

.animated {
  -webkit-animation-fill-mode: both;
  -moz-animation-fill-mode: both;
  -ms-animation-fill-mode: both;
  -o-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-animation-delay: .4s;
  -moz-animation-delay: .4s;
  animation-delay: .4s;
}

/* Fade */
@-webkit-keyframes ae-animation-fade {
  0% {
    opacity: 0;
    -webkit-transform: scaleY(0) scaleX(0);
  }
  100% {
    opacity: 1;
    -webkit-transform: scaleY(1) scaleX(1);
  }
}
@-moz-keyframes ae-animation-fade {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@-o-keyframes ae-animation-fade {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes ae-animation-fade {
  0% {
    opacity: 0;
    transform: scaleY(0) scaleX(0);
  }
  100% {
    opacity: 1;
    transform: scaleY(1) scaleX(1);
  }
}
.ae-animation-fade {
  -webkit-animation-name: ae-animation-fade;
  -moz-animation-name: ae-animation-fade;
  -o-animation-name: ae-animation-fade;
  animation-name: ae-animation-fade;
  -webkit-animation-duration: 1s;
  -moz-animation-duration: 1s;
  -ms-animation-duration: 1s;
  -o-animation-duration: 1s;
  animation-duration: 1s;
  opacity: 1 !important;
}

.fade {
  opacity: 0;
}

html.is-ie9 .fade {
  opacity: 1 !important;
}

/* Slide */
@-webkit-keyframes ae-animation-slide {
  0% {
    -webkit-transform: translateY(100%);
  }
  100% {
    -webkit-transform: translateY(0%);
  }
}
@-moz-keyframes ae-animation-slide {
  0% {
    -moz-transform: translateY(100%);
  }
  100% {
    -moz-transform: translateY(0%);
  }
}
@-o-keyframes ae-animation-slide {
  0% {
    -o-transform: translateY(100%);
  }
  100% {
    -o-transform: translateY(0%);
  }
}
@keyframes ae-animation-slide {
  0% {
    transform: translateY(100%);
  }
  100% {
    transform: translateY(0%);
  }
}
.ae-animation-slide {
  -webkit-animation-name: ae-animation-slide;
  -moz-animation-name: ae-animation-slide;
  -o-animation-name: ae-animation-slide;
  animation-name: ae-animation-slide;
  -webkit-animation-duration: 1s;
  -moz-animation-duration: 1s;
  -ms-animation-duration: 1s;
  -o-animation-duration: 1s;
  animation-duration: 1s;
  opacity: 1 !important;
}

.slide {
  opacity: 0;
}

html.is-ie9 .slide {
  opacity: 1 !important;
}

/* Hatch */
@-webkit-keyframes ae-animation-hatch {
  0% {
    -webkit-transform: rotate(0deg);
  }
  20% {
    -webkit-transform: rotate(-2deg);
  }
  35% {
    -webkit-transform: rotate(2deg);
  }
  50% {
    -webkit-transform: rotate(-2deg);
  }
  65% {
    -webkit-transform: rotate(1deg);
  }
  80% {
    -webkit-transform: rotate(-1deg);
  }
  100% {
    -webkit-transform: rotate(0deg);
  }
}
@-moz-keyframes ae-animation-hatch {
  0% {
    -moz-transform: rotate(0deg);
  }
  20% {
    -moz-transform: rotate(-2deg);
  }
  35% {
    -moz-transform: rotate(2deg);
  }
  50% {
    -moz-transform: rotate(-2deg);
  }
  65% {
    -moz-transform: rotate(1deg);
  }
  80% {
    -moz-transform: rotate(-1deg);
  }
  100% {
    -moz-transform: rotate(0deg);
  }
}
@-o-keyframes ae-animation-hatch {
  0% {
    -o-transform: rotate(0deg);
  }
  20% {
    -o-transform: rotate(-2deg);
  }
  35% {
    -o-transform: rotate(2deg);
  }
  50% {
    -o-transform: rotate(-2deg);
  }
  65% {
    -o-transform: rotate(1deg);
  }
  80% {
    -o-transform: rotate(-1deg);
  }
  100% {
    -o-transform: rotate(0deg);
  }
}
@keyframes ae-animation-hatch {
  0% {
    transform: rotate(0deg);
  }
  20% {
    transform: rotate(-2deg);
  }
  35% {
    transform: rotate(2deg);
  }
  50% {
    transform: rotate(-2deg);
  }
  65% {
    transform: rotate(1deg);
  }
  80% {
    transform: rotate(-1deg);
  }
  100% {
    transform: rotate(0deg);
  }
}
.ae-animation-hatch {
  -webkit-animation-name: ae-animation-hatch;
  -moz-animation-name: ae-animation-hatch;
  -o-animation-name: ae-animation-hatch;
  animation-name: ae-animation-hatch;
  -webkit-animation-duration: 1.6s;
  -moz-animation-duration: 1.6s;
  -ms-animation-duration: 1.6s;
  -o-animation-duration: 1.6s;
  animation-duration: 1.6s;
  opacity: 1 !important;
}

/* Entrance */
@-webkit-keyframes ae-animation-entrance {
  0% {
    -webkit-transform: scale(0.3) rotate(6deg) translateX(-30%) translateY(30%);
    opacity: 0.2;
  }
  30% {
    -webkit-transform: scale(1.03) rotate(-2deg) translateX(2%) translateY(-2%);
    opacity: 1;
  }
  45% {
    -webkit-transform: scale(0.98) rotate(1deg) translateX(0%) translateY(0%);
    opacity: 1;
  }
  60% {
    -webkit-transform: scale(1.01) rotate(-1deg) translateX(0%) translateY(0%);
    opacity: 1;
  }
  75% {
    -webkit-transform: scale(0.99) rotate(1deg) translateX(0%) translateY(0%);
    opacity: 1;
  }
  90% {
    -webkit-transform: scale(1.01) rotate(0deg) translateX(0%) translateY(0%);
    opacity: 1;
  }
  100% {
    -webkit-transform: scale(1) rotate(0deg) translateX(0%) translateY(0%);
    opacity: 1;
  }
}
@-moz-keyframes ae-animation-entrance {
  0% {
    -moz-transform: scale(0.3) rotate(6deg) translateX(-30%) translateY(30%);
    opacity: 0.2;
  }
  30% {
    -moz-transform: scale(1.03) rotate(-2deg) translateX(2%) translateY(-2%);
    opacity: 1;
  }
  45% {
    -moz-transform: scale(0.98) rotate(1deg) translateX(0%) translateY(0%);
    opacity: 1;
  }
  60% {
    -moz-transform: scale(1.01) rotate(-1deg) translateX(0%) translateY(0%);
    opacity: 1;
  }
  75% {
    -moz-transform: scale(0.99) rotate(1deg) translateX(0%) translateY(0%);
    opacity: 1;
  }
  90% {
    -moz-transform: scale(1.01) rotate(0deg) translateX(0%) translateY(0%);
    opacity: 1;
  }
  100% {
    -moz-transform: scale(1) rotate(0deg) translateX(0%) translateY(0%);
    opacity: 1;
  }
}
@-o-keyframes ae-animation-entrance {
  0% {
    -o-transform: scale(0.3) rotate(6deg) translateX(-30%) translateY(30%);
    opacity: 0.2;
  }
  30% {
    -o-transform: scale(1.03) rotate(-2deg) translateX(2%) translateY(-2%);
    opacity: 1;
  }
  45% {
    -o-transform: scale(0.98) rotate(1deg) translateX(0%) translateY(0%);
    opacity: 1;
  }
  60% {
    -o-transform: scale(1.01) rotate(-1deg) translateX(0%) translateY(0%);
    opacity: 1;
  }
  75% {
    -o-transform: scale(0.99) rotate(1deg) translateX(0%) translateY(0%);
    opacity: 1;
  }
  90% {
    -o-transform: scale(1.01) rotate(0deg) translateX(0%) translateY(0%);
    opacity: 1;
  }
  100% {
    -o-transform: scale(1) rotate(0deg) translateX(0%) translateY(0%);
    opacity: 1;
  }
}
@keyframes ae-animation-entrance {
  0% {
    transform: scale(0.3) rotate(6deg) translateX(-30%) translateY(30%);
    opacity: 0.2;
  }
  30% {
    transform: scale(1.03) rotate(-2deg) translateX(2%) translateY(-2%);
    opacity: 1;
  }
  45% {
    transform: scale(0.98) rotate(1deg) translateX(0%) translateY(0%);
    opacity: 1;
  }
  60% {
    transform: scale(1.01) rotate(-1deg) translateX(0%) translateY(0%);
    opacity: 1;
  }
  75% {
    transform: scale(0.99) rotate(1deg) translateX(0%) translateY(0%);
    opacity: 1;
  }
  90% {
    transform: scale(1.01) rotate(0deg) translateX(0%) translateY(0%);
    opacity: 1;
  }
  100% {
    transform: scale(1) rotate(0deg) translateX(0%) translateY(0%);
    opacity: 1;
  }
}
.ae-animation-entrance {
  -webkit-animation-name: ae-animation-entrance;
  -moz-animation-name: ae-animation-entrance;
  -o-animation-name: ae-animation-entrance;
  animation-name: ae-animation-entrance;
  -webkit-animation-duration: 1.6s;
  -moz-animation-duration: 1.6s;
  -ms-animation-duration: 1.6s;
  -o-animation-duration: 1.6s;
  animation-duration: 1.6s;
  opacity: 1 !important;
}

.entrance {
  opacity: 0;
}

html.is-ie9 .entrance {
  opacity: 1 !important;
}

.home-wrapper h1, .home-wrapper h2, .home-wrapper h3, .home-wrapper h4, .home-wrapper h5, .home-wrapper h6 {
  color: #060606;
  font-style: normal;
  font-weight: 400;
  line-height: 1.17em;
}
.home-wrapper h1 {
  font-size: 3.1em;
  text-transform: uppercase;
  letter-spacing: 0.10em;
  font-weight: 100;
}
.home-wrapper h2 {
  font-size: 2.4em;
  text-transform: uppercase;
  letter-spacing: 0.10em;
}
.home-wrapper h3 {
  font-size: 1em;
  text-transform: uppercase;
  letter-spacing: 0.10em;
}
.home-wrapper h4 {
  font-size: 1em;
  text-transform: uppercase;
}
.home-wrapper h5 {
  font-size: 1em;
}
.home-wrapper h6 {
  font-size: 0.8em;
  text-transform: uppercase;
}
.home-wrapper .top-section {
  height: 900px;
}
.home-wrapper .top-section .heading {
  margin-top: 100px;
}
.home-wrapper .top-section a.login .icon-right {
  margin-left: 20px;
}
@media (max-width: 767px) {
  .home-wrapper .top-section .heading {
    font-size: 30px;
  }
}
.home-wrapper .top-section .subheading {
  font-size: 23px;
  font-weight: bold;
  letter-spacing: 1px;
  text-transform: none;
}
.home-wrapper .image-cell img {
  width: 48px;
  height: 48px;
}
.home-wrapper .freebate-promo-video > img {
  opacity: .65;
}

@media (max-width: 768px) {
  .topbar-anonymous-menu {
    display: none;
  }
}
@media (max-width: 768px) {
  .pace-done .topbar-anonymous-menu {
    display: block;
  }
}

/* Top section
-------------------------------------------------------------- */
.heading {
  margin-top: 280px;
}

/* Hero
-------------------------------------------------------------- */
.hero {
  height: 600px;
  text-align: center;
  background-size: cover;
}
@media (max-width: 767px) {
  .hero {
    height: 482px;
  }
}

.state-library-cover {
  background-position: center right;
  background-image: url(../../img/public/home/hero.jpg);
  background-repeat: no-repeat;
}

.hero .content {
  padding-top: 0;
}

.dark .button {
  background-color: #2ecc71;
}

.dark .button:hover {
  background-color: #27ae60;
  opacity: 1;
}

.dark .button.no-bg {
  background: none;
  background-color: clear;
}

.scroller-arrow {
  width: 60px;
  height: 60px;
  background-image: url(../../img/public/home/icons/down.png);
  cursor: pointer;
  display: block;
  margin: 0 auto;
  position: relative;
  margin-top: 100px;
  margin-bottom: 60px;
  -webkit-tap-highlight-color: transparent;
  visibility: hidden;
}

.ticker {
  overflow: hidden;
  height: 90px;
  vertical-align: baseline;
}

.ticker h1 {
  margin-bottom: 0px;
  height: 90px;
  -webkit-transition: margin-top 0.5s ease-in-out;
  -moz-transition: margin-top 0.5s ease-in-out;
  -o-transition: margin-top 0.5s ease-in-out;
  transition: margin-top 0.5s ease-in-out;
}

.call-to-action {
  padding-left: 0;
  padding-right: 0;
  padding-top: 20px;
}

.call-to-action li {
  display: inline-block;
  margin-right: 55px;
}

.call-to-action li:last-of-type {
  margin-right: 0px;
}

.product-screenshot-demo {
  background: transparent url(../../img/public/home/hero-demo.png) no-repeat center center;
  background-size: contain;
  padding-top: 53%;
  position: relative;
}

/* Benefits
-------------------------------------------------------------- */
.features-section {
  margin-top: 180px;
  padding-bottom: 0;
}
@media (max-width: 767px) {
  .features-section {
    margin-top: 120px;
  }
}

.features-slide {
  background: url(../../img/public/home/ipad-air.png);
  background-size: 100%;
  display: block;
  background-repeat: no-repeat;
  position: absolute;
  width: 57%;
  bottom: 5%;
  left: 17%;
}

.video-wrapper {
  margin: 0 11%;
  padding: 4.3% 0 11%;
}

.features-rel-wrapper {
  position: relative;
}

.features-video {
  width: 100%;
}

.video {
  cursor: pointer;
}

.video-overlay {
  width: 100%;
  height: 100%;
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  cursor: pointer;
}

.features-heading {
  font-weight: 500 !important;
}

.features-content {
  display: block;
  margin-bottom: 50px;
}

.features-subsection {
  padding-bottom: 30px;
  position: relative;
}

.features-highlighted p {
  color: #0caa50;
}

.features-step-by-step {
  display: none;
}

.features-handwriting {
  display: none;
}

/* Partners
-------------------------------------------------------------- */
.partners-list {
  text-align: center;
  width: 100%;
}

.partner-logo-wrapper {
  max-height: 150px;
}

.partner-logo {
  max-height: 150px;
}

.partner-content {
  text-align: center;
  padding-top: 80px;
}

/* Testimonials
-------------------------------------------------------------- */
.testimonial-container {
  display: inline-block;
  padding-top: 50px;
  padding-bottom: 50px;
}

.testimonial-title {
  font-size: 14px;
}

.testimonial-row {
  text-align: left;
  margin-top: 45px;
  margin-bottom: 45px;
}
@media (max-width: 767px) {
  .testimonial-row {
    padding: 0 20px;
    margin-top: 10px;
    margin-bottom: 10px;
  }
}

.testimonial-image {
  margin: 0 auto;
  min-height: 230px;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: center;
  justify-content: center;
}
@media (max-width: 767px) {
  .testimonial-image {
    max-width: 66%;
    min-height: 100px;
  }
}
.testimonial-image > img {
  max-height: 200px;
}
@media (max-width: 767px) {
  .testimonial-image > img {
    max-height: 140px;
  }
}

.testimonial-description {
  min-height: 250px;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-flex-direction: column;
  flex-direction: column;
}
.testimonial-description > p {
  font-size: 1.2em;
  line-height: 1.5em;
  margin-bottom: 1em;
}

/* Media
-------------------------------------------------------------- */
.media-section {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
}

.media-logos-container {
  text-align: center;
  padding-top: 20px;
  max-width: 745px;
}

.media-logo {
  margin: 20px;
}

.media-testimonial {
  margin-top: 1.5em;
}

.bxslider {
  text-align: center;
  padding-top: 35px;
}

.bxslider h3 {
  line-height: 1.6em;
}

.bxslider h6 {
  margin-bottom: 35px;
  color: #8f8f8f;
}

.bxslider {
  padding-left: 0;
}

.bx-next, .bx-prev {
  position: absolute;
  text-indent: -999em;
  top: 60%;
  width: 20px;
  height: 48px;
  cursor: pointer;
  opacity: .5;
  filter: alpha(opacity=50);
}
.bx-next:hover, .bx-next:active, .bx-next:visited, .bx-prev:hover, .bx-prev:active, .bx-prev:visited {
  border: 0;
  outline: 0;
}

.bx-next:hover, .bx-prev:hover {
  opacity: 1;
  filter: alpha(opacity=100);
}

.bx-next {
  right: -100px;
  background: url(../../img/public/home/icons/next.png) no-repeat center center;
}

.bx-prev {
  left: -100px;
  background: url(../../img/public/home/icons/prev.png) no-repeat center center;
}

/* Awards
-------------------------------------------------------------- */
.awards-content {
  padding-top: 50px;
  margin-bottom: 120px;
}
.awards-content .block-image.award {
  margin-bottom: 15px;
  margin-right: 20px;
}
.awards-content .block-image.award > img {
  height: 120px;
}

.awards-logo {
  max-height: 150px;
  margin-top: 20px;
  margin-bottom: 20px;
}

/* Signup
-------------------------------------------------------------- */
.signup {
  text-align: center;
  background-size: cover;
  width: 100%;
}

.signup .content {
  padding-top: 0px;
}

.signup .button {
  background-color: #2ecc71;
}

.signup .button:hover {
  background-color: #27ae60;
  opacity: 1;
}

.signup .button.no-bg {
  background: none;
  background-color: clear;
}

/* Footer
-------------------------------------------------------------- */
footer {
  width: 100%;
  background: #060606;
}

.contact {
  padding-left: 0;
  text-align: center;
  color: #060606;
}

.contact ::selection {
  background: #fff;
  color: #060606;
}

.contact ::-moz-selection {
  background: #fff;
  color: #060606;
}

.contact li img {
  margin-bottom: 15px;
}

.contact li:nth-child(1) {
  font-size: 0.9333333333333em;
  opacity: .5;
  filter: alpha(opacity=50);
}

.contact a {
  display: block;
  font-size: 0.9333333333333em;
  font-weight: normal;
  margin-bottom: 20px;
  opacity: .5;
  filter: alpha(opacity=50);
}

.contact a:hover {
  opacity: 1;
  filter: alpha(opacity=100);
}

.contact-heading {
  margin-top: 30px;
}

#contact-form {
  position: relative;
  display: none;
  text-align: center;
  width: 100%;
  background: #060606;
  padding: 20px 0px 50px 0px;
  margin-top: 20px;
}

/* Common Styles
-------------------------------------------------------------- */
body {
  background: #fff;
  color: #424242;
  font-size: 15px;
  overflow-x: hidden;
  padding-top: 60px;
}

section {
  overflow: hidden;
}

::selection {
  background: #060606;
  color: #fff;
}

::-moz-selection {
  background: #060606;
  color: #fff;
}

#loading {
  display: none;
}

/* Typography
-------------------------------------------------------------- */
p {
  color: #424242;
  font-size: 15px;
  line-height: 1.6em;
  margin: 0 0 20px;
}

em {
  font-style: italic;
}

small {
  font-size: 0.8em;
}

/* Typography for dark backgrounds */
.dark p, .dark h1, .dark h2, .dark h3, .dark h4, .dark h5, .dark h6 {
  color: #fff;
}

.dark a {
  color: #fff !important;
}

/* Links */
a, a:visited {
  text-decoration: none;
}

.uppercase {
  text-transform: uppercase;
}

/* Typography for blue backgrounds */
.blue p, .blue h1, .blue h2, .blue h3, .blue h4, .blue h5, .blue h6 a {
  color: #fff;
}

/* Buttons
-------------------------------------------------------------- */
.button {
  display: inline-block;
  padding: 20px 55px;
  font-size: 1em;
  text-transform: uppercase;
  letter-spacing: 0.10em;
  line-height: 1.0em;
  font-weight: bold;
  border-radius: 3px;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
}

.button.no-border {
  border: none;
}

.button.no-padding {
  padding: 20px 0px;
}

.button.no-bg {
  background: none;
  background-color: clear;
}

.button.no-border:hover {
  border: none;
}

.button .homeicon {
  display: inline-block;
  margin-left: 17px;
  margin-bottom: -6px;
  width: 26px;
  height: 26px;
  cursor: pointer;
  background: url(../../img/public/home/icons/right.png) no-repeat center center;
}

/* Content Styles
-------------------------------------------------------------- */
.content {
  padding-top: 80px;
  text-align: center;
}
@media (max-width: 767px) {
  .content {
    padding-top: 0;
  }
}
@media (min-width: 768px) and (max-width: 992px) {
  .content {
    padding-top: 60px;
  }
}

.content.padded {
  padding-bottom: 100px;
}

.parallax {
  width: 100%;
  background-position: 50% 0;
}

/* Parallax Fix */
@media only screen and (min-width: 1930px) {
  .parallax {
    background-size: cover;
  }
}
.parallax.black {
  background-color: #060606;
}

.parallax.no-parallax {
  background-size: cover !important;
  background-attachment: scroll !important;
  background-position: center;
}

@media screen and (max-height: 800px) {
  .scroller-arrow {
    display: none;
  }
}
.parallax-2 {
  background-image: url(../../img/public/home/parallax-2.jpg);
  -webkit-background-size: 100% auto;
  background-size: 100% auto;
  background-position: center top;
}

.parallax-3 {
  background-image: url(../../img/public/home/parallax-3.jpg);
  -webkit-background-size: 100% auto;
  background-size: 100% auto;
}

.parallax-4 {
  background-image: url(../../img/public/home/parallax-4.jpg);
  -webkit-background-size: 100% auto;
  background-size: 100% auto;
}

.title {
  text-align: center;
}

.sub-heading-large {
  margin: 48px auto;
  max-width: 700px;
  font-size: 20px;
}

.sub-heading {
  margin: 48px auto;
  max-width: 630px;
}

.sub-heading-taller {
  margin: 60px auto;
  max-width: 630px;
}

.border {
  display: block;
  width: 80px;
  height: 2px;
  background: #060606;
  margin: 0 auto;
}

.dark .border {
  background: #fff;
}

/* Navigation
-------------------------------------------------------------- */
#alert {
  display: none;
  margin-top: 30px;
}

.notification {
  display: block;
  position: relative;
  width: 100%;
  margin-bottom: 20px;
  padding: 10px 18px;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  border-radius: 3px;
}

.notification p {
  line-height: 26px;
  display: block;
  padding: 0;
  margin: 0;
  text-align: left;
  text-indent: 45px;
}

.notification.success {
  border: 1px solid #fff;
  background: rgba(255, 255, 255, 0.05);
}

.notification.success p {
  background: url(../../img/public/home/icons/tick.png) no-repeat;
  background-size: 26px 26px;
  color: #fff;
}

.notification.error {
  border: 1px solid #fff;
  background: rgba(255, 255, 255, 0.05);
}

.notification.error p {
  background: url(../../img/public/home/icons/cross.png) no-repeat;
  background-size: 26px 26px;
  color: #fff;
}

.copyright {
  margin-top: 50px;
  margin-bottom: 10px;
  text-align: center;
}

.copyright h6 {
  color: #77777a;
  letter-spacing: 0.10em;
}

.control-group label, .control-group .controls {
  display: inline-block;
}

.control-group label {
  margin-left: 10px;
  font-weight: bold;
}

.control-group .controls input {
  margin-top: 15px;
  border: none;
  outline: none;
  height: 35px;
  background: #fff;
  padding-left: 15px;
  color: #a4a4a3;
  text-decoration: none;
  border: 1px solid #e9e9e9;
  border-bottom: 2px solid #e9e9e9;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  border-radius: 3px;
}

.control-group .controls textarea {
  margin-top: 15px;
  border: none;
  outline: none;
  height: 180px;
  background: #fff;
  padding-left: 15px;
  padding-top: 15px;
  color: #a4a4a3;
  text-decoration: none;
  border: 1px solid #e9e9e9;
  border-bottom: 2px solid #e9e9e9;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  border-radius: 3px;
}

.controls button {
  border: none;
  outline: none;
  padding: 0;
  margin: 0;
  outline: none;
  -webkit-appearance: none;
  background: #fff;
  cursor: pointer;
  margin-top: 15px;
  font-size: 0.8em;
  text-transform: uppercase;
  font-family: inherit;
  padding: 10px 20px;
  color: #a4a4a3;
  border: 1px solid #e9e9e9;
  border-bottom: 2px solid #e9e9e9;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  border-radius: 3px;
  background: #ffffff;
}

.controls button:hover {
  background: #fff;
  background: -moz-linear-gradient(top, #ffffff 0%, #f5f5f5 100%);
  background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #ffffff), color-stop(100%, #f5f5f5));
  background: -webkit-linear-gradient(top, #ffffff 0%, #f5f5f5 100%);
  background: -o-linear-gradient(top, #ffffff 0%, #f5f5f5 100%);
  background: -ms-linear-gradient(top, #ffffff 0%, #f5f5f5 100%);
  background: linear-gradient(to bottom, #ffffff 0%, #f5f5f5 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#f5f5f5',GradientType=0 );
}

/* Slider
-------------------------------------------------------------- */
/* Media
-------------------------------------------------------------- */
/* Large screens */
/* Tablet Landscape */
@media only screen and (min-device-width: 768px) and (max-device-width: 1024px) and (orientation: landscape) {
  .parallax {
    background-size: cover;
    background-attachment: scroll;
    background-position: top center;
  }

  .parallax-4 {
    background-position: center center;
  }
}
/* Smaller than 960px */
@media only screen and (max-width: 959px) {
  .parallax {
    background-size: cover;
    background-attachment: scroll;
    background-position: top center;
  }

  .parallax-4 {
    background-position: center center;
  }

  .content.padded {
    padding-bottom: 50px;
  }

  .fade, .slide, .entrance, .hatch {
    opacity: 1 !important;
  }
}
/* Mobile Landscape Size */
/* Mobile Portrait Size */
@media only screen and (max-width: 479px) {
  .call-to-action li {
    margin-right: 0px;
    width: 100%;
  }
}
.girl-use-mathspace {
  background-position: center left;
  background-image: url(../../img/public/home/girl-use-mathspace.jpg);
  background-image: linear-gradient(rgba(0, 0, 0, 0.35), rgba(0, 0, 0, 0.35)), url(../../img/public/home/girl-use-mathspace.jpg);
  background-repeat: no-repeat;
}

.public-teachers h2 {
  font-size: 2.4em;
  letter-spacing: 0.10em;
}
.public-teachers .row.teacher-feature {
  margin-top: 45px;
  margin-bottom: 45px;
}
@media (max-width: 767px) {
  .public-teachers .row.teacher-feature {
    padding: 0 20px;
    margin-top: 10px;
    margin-bottom: 10px;
  }
}
.public-teachers .feature-image {
  margin: 0 auto;
  min-height: 200px;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: center;
  justify-content: center;
}
@media (max-width: 767px) {
  .public-teachers .feature-image {
    max-width: 66%;
    min-height: 100px;
  }
}
.public-teachers .feature-image > img {
  max-height: 200px;
}
@media (max-width: 767px) {
  .public-teachers .feature-image > img {
    max-height: 140px;
  }
}
.public-teachers .feature-description {
  min-height: 200px;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-flex-direction: column;
  flex-direction: column;
}
.public-teachers .block-image {
  display: inline-block;
  vertical-align: middle;
  *vertical-align: auto;
  *zoom: 1;
  *display: inline;
}
.public-teachers .block-image > img {
  height: 140px;
  max-width: initial;
}
.public-teachers .awards-wrapper {
  text-align: center;
}
.public-teachers .block-image.award {
  margin-bottom: 15px;
  margin-right: 20px;
}
.public-teachers .block-image.award > img {
  height: 120px;
}
.public-teachers .block-image.hover-effect {
  -webkit-filter: grayscale(90%) saturate(0.1);
  filter: grayscale(90%) saturate(0.1);
  -moz-transition: all 0.3s ease-in;
  -o-transition: all 0.3s ease-in;
  -webkit-transition: all 0.3s ease-in;
  transition: all 0.3s ease-in;
}
.public-teachers .block-image.hover-effect:hover {
  -webkit-filter: grayscale(0) saturate(1);
  filter: grayscale(0) saturate(1);
  -moz-transition: all 0.3s ease-out;
  -o-transition: all 0.3s ease-out;
  -webkit-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
}
@media (min-width: 769px) {
  .public-teachers .school-badges-wrapper {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-around;
    justify-content: space-around;
  }
}
.public-teachers .add-your-school-block {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: column;
  flex-direction: column;
  -webkit-justify-content: center;
  justify-content: center;
}
.public-teachers .add-your-school {
  text-align: center;
  padding-top: 60px;
  width: 120px;
  height: 200px;
  font-weight: bold;
}
.public-teachers .teacher-call-to-action {
  margin: 40px 0 80px 0;
  text-align: center;
}
.public-teachers .teacher-call-to-action a.button {
  margin: 0 5px 10px 5px;
}

.signup-page .tab-content, .login-page .tab-content {
  padding: 0;
  border: none;
}
.signup-page h2, .login-page h2 {
  text-transform: none;
  font-size: 1.5em;
  color: #444;
}
.signup-page input[type="submit"], .login-page input[type="submit"] {
  font-size: 1em;
  text-transform: uppercase;
}
.signup-page .nav-tabs, .login-page .nav-tabs {
  border-bottom-color: #3498db;
}
.signup-page .nav-tabs > li, .login-page .nav-tabs > li {
  width: 33.333333333333%;
  text-align: center;
}
.signup-page .nav-tabs > li.active a, .login-page .nav-tabs > li.active a {
  border: none;
  border-bottom-color: #3498db;
  border-bottom-width: 3px;
  border-bottom-style: solid;
  margin: 0;
}

.school-hero-wrapper {
  padding: 5% 0 0 0;
}
.school-hero-wrapper h1, .school-hero-wrapper h4 {
  color: #E8E8E8;
  font-weight: 400;
}
.school-hero-wrapper h1 {
  font-size: 3em;
  text-transform: uppercase;
}
.school-hero-wrapper h4 {
  font-size: 1.4em;
}
.school-hero-wrapper .subheading {
  margin-top: 50px;
}

.container-main {
  max-width: 800px;
}

.container-public {
  padding-bottom: 30px;
}

.awards-link {
  color: #3498db;
}

ul.app-store-links {
  margin: 35px 0 0 0;
  padding: 0;
}
ul.app-store-links > li {
  display: inline;
  margin: 5px;
}

.body-wrapper {
  position: relative;
  z-index: 0;
}
.login-page {
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  min-height: calc(100vh - 60px); /* minus the height of the topbar */
  padding: 20px 0;
}
.login-page .login-h2 {
  margin-top: 0;
  margin-bottom: 23px;
  font-size: 32px;
  font-weight: 600;
}
.login-page input[type="submit"] {
  background: #2E3696;
  font-size: 16px;
  letter-spacing: 0;
  text-transform: none;
}
.login-page input[type="submit"]:hover, .login-page input[type="submit"]:active {
  background: #26276D;
}
.login-page input[type="text"]:focus,
.login-page input[type="email"]:focus,
.login-page input[type="password"]:focus {
  border-color: #0875BE;
}
.fixed-header-login-page .join-class-link {
  margin-left: auto;
  font-size: 18px;
  font-weight: 600;
}
.fixed-header-login-page .join-class-link a {
  color: #2077b2;
}
.fixed-header-login-page .join-class-link a:hover {
  color: #195e8c;
}
.fixed-header-login-page .logo-container {
  padding: 0;
}
.fixed-header-login-page .topbar-anonymous {
  height: 60px;
  padding-left: 30px;
  padding-right: 30px;
  -webkit-align-items: center;
  -ms-flex-align: center;
  -webkit-box-align: center;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  border-bottom: 1px solid #F1F2F3;
}
.login-page-with-maintenance-banner {
  position: relative;
  top: 60px;
}
.maintenance-banner {
  align-items: center;
  background: #2E3696;
  color: #FFF;
  display: flex;
  font-weight: bold;
  justify-content: center;
  height: 60px;
  padding: 0 20px;
  text-align: center;
}
.maintenance-banner-img {
  height: 29.25px;
  width: 19.5px;
  margin-right: 10px;
}
.maintenance-banner-placeholder {
  height: 60px;
}
.fixed-header-with-maintenance-banner + .login-page {
  margin-top: 60px;
  min-height: calc(100vh - 120px);
}
