#promo-banner.logged-in-home .header,
.font-size-1 {
    font-size: 36px;
    font-weight: 700;
    line-height: 44px
}

#homepage .jumbotron+h2,
.font-size-2 {
    font-size: 26px;
    font-weight: 700;
    line-height: 32px
}

.hcem-promo-banner #promo-banner .body,
#promo-banner .banner-content .btn.banner-secondary::before,
#homepage .hero-top .center-wrapper .free-signup-button,
#homepage .hcem-content #three-beat-story p,
#homepage .hcem-content #learn-from-anywhere p,
.font-size-3 {
    font-size: 22px;
    font-weight: 700;
    line-height: 28px
}

#promo-banner.logged-in-home .body,
#homepage .site-header .nav-item .button.alt-white-ghost,
#homepage .site-header-mobile .nav-item .button.alt-white-ghost,
#homepage .hcem-content #three-beat-story .button.alt,
#homepage .hcem-content #learn-from-anywhere .button.alt,
#homepage .categories-directory ul li.categories-list-header,
.font-size-4 {
    font-size: 18px;
    line-height: 22px
}

#promo-banner .pre-header,
#homepage .site-header .nav-item .nav-item-link,
#homepage .site-header-mobile .nav-item .nav-item-link,
#homepage .teacher-directory,
#homepage .teacher-directory h3,
#homepage .categories-directory,
.font-size-5 {
    font-size: 15px;
    line-height: 20px
}

#homepage #site-banner,
.font-size-6 {
    font-size: 13px;
    line-height: 18px
}

#promo-banner.logged-in-home .pre-header,
.font-size-7 {
    font-size: 12px;
    text-transform: uppercase;
    line-height: 16px;
    font-weight: 700
}

body .svg-icon-sprite svg {
    height: 0
}

body .svg-icon-sprite svg g,
body .svg-icon-sprite svg path {
    fill: inherit
}

body .svg-icon-sprite svg use {
    fill: initial
}

.ss-svg-icon {
    width: 24px;
    height: 24px
}

.ss-svg-icon use {
    fill: #394649
}

.carousel {
    position: relative
}

.carousel .carousel-window {
    overflow: hidden;
    width: 100%;
    height: auto;
    padding-top: 24px
}

.carousel .carousel-content {
    display: -ms-flexbox;
    display: flex;
    left: 0;
    position: relative;
    transition: transform .5s ease;
    padding-bottom: 12px
}

.carousel .carousel-content .flex-grid-item {
    padding: 0 8px
}

.carousel .carousel-header h2 {
    margin-bottom: 10px
}

.carousel .carousel-header .button {
    margin-right: 3px
}

@media screen and (min-width:600px) {
    .carousel .carousel-header {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-pack: justify;
        justify-content: space-between;
        -ms-flex-align: center;
        align-items: center
    }
    .carousel .carousel-header h2 {
        margin-bottom: 0
    }
}

.carousel .carousel-bars {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center
}

.carousel .carousel-bar {
    cursor: pointer;
    padding-top: 5px;
    width: 16px
}

.carousel .carousel-bar-active .carousel-bar-content {
    background-color: #3722d3
}

.carousel .carousel-bar-content {
    border-radius: 100px;
    background-color: #dcdee1;
    height: 4px
}

.carousel .carousel-bar+.carousel-bar {
    margin-left: 4px
}

.carousel .carousel-arrow {
    color: #dcdee1;
    position: absolute;
    z-index: 999;
    border: 1px solid transparent;
    height: 40px;
    width: 40px;
    border-radius: 50%;
    background-color: #fff;
    top: 50%;
    box-shadow: 0 2px 4px 0 rgba(187, 187, 187, .5);
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center
}

.carousel .carousel-arrow:not(.carousel-arrow-deactivated):hover {
    cursor: pointer
}

.carousel .carousel-arrow:not(.carousel-arrow-deactivated):hover .ss-svg-icon use {
    fill: #002333
}

.carousel .carousel-arrow:not(.carousel-arrow-deactivated):active {
    background-color: #002333
}

.carousel .carousel-arrow:not(.carousel-arrow-deactivated):active .ss-svg-icon use {
    fill: #fff
}

.carousel .carousel-arrow-hidden {
    display: none
}

.carousel .carousel-arrow-previous {
    left: -17px
}

.carousel .carousel-arrow-next {
    right: -17px
}

@media screen and (max-width:1000px) and (min-width:801px) {
    .carousel .carousel-arrow-previous {
        left: 11px
    }
    .carousel .carousel-arrow-next {
        right: 11px
    }
}

@media screen and (max-width:800px) and (min-width:601px) {
    .carousel .carousel-arrow-previous {
        left: 0
    }
    .carousel .carousel-arrow-next {
        right: 0
    }
    .carousel .carousel-arrow-previous.your-classes-carousel-arrow {
        margin-left: 10px
    }
    .carousel .carousel-arrow-next.your-classes-carousel-arrow {
        margin-right: 10px
    }
}

@media screen and (max-width:600px) {
    .carousel .carousel-arrow-previous.your-classes-carousel-arrow {
        margin-left: 27px
    }
    .carousel .carousel-arrow-next.your-classes-carousel-arrow {
        margin-right: 27px
    }
}

.carousel .carousel-arrow-deactivated {
    cursor: default;
    box-shadow: none
}

.carousel .carousel-arrow-deactivated .ss-svg-icon use {
    fill: #dcdee1
}

.carousel .carousel-item-box {
    display: block;
    padding-top: 56.25%;
    position: relative;
    width: 100%
}

.carousel .carousel-item-empty-full-height {
    display: -ms-flexbox;
    display: flex
}

.carousel .carousel-item-see-all-content {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    border-radius: 3px;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: center;
    justify-content: center;
    background-color: #fff;
    border: 2px solid #dcdee1
}

.carousel .carousel-item-empty-content {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    border-radius: 3px;
    border: 1px solid #f4f4f4
}

.carousel .carousel-item-5 {
    -ms-flex: 1 0 20%;
    flex: 1 0 20%
}

.carousel .carousel-item-4 {
    -ms-flex: 1 0 25%;
    flex: 1 0 25%
}

.carousel .carousel-item-3 {
    -ms-flex: 1 0 33.33333%;
    flex: 1 0 33.33333%
}

.carousel .carousel-item-2 {
    -ms-flex: 1 0 50%;
    flex: 1 0 50%
}

@media screen and (max-width:1000px) and (min-width:801px) {
    .carousel .carousel-item-5 {
        -ms-flex: 1 0 25%;
        flex: 1 0 25%
    }
    .carousel .carousel-item-4 {
        -ms-flex: 1 0 25%;
        flex: 1 0 25%
    }
    .carousel .carousel-item-7 {
        -ms-flex: 1 0 20%;
        flex: 1 0 20%
    }
}

@media screen and (max-width:800px) and (min-width:601px) {
    .carousel .carousel-item-5 {
        -ms-flex: 1 0 33.33333%;
        flex: 1 0 33.33333%
    }
    .carousel .carousel-item-4 {
        -ms-flex: 1 0 50%;
        flex: 1 0 50%
    }
    .carousel .carousel-item-3 {
        -ms-flex: 1 0 50%;
        flex: 1 0 50%
    }
    .carousel .carousel-item-7 {
        -ms-flex: 1 0 25%;
        flex: 1 0 25%
    }
}

@media screen and (max-width:600px) {
    .carousel .carousel-content {
        -ms-flex-direction: column;
        flex-direction: column
    }
    .carousel .carousel-item-5,
    .carousel .carousel-item-7 {
        -ms-flex: 1 0 50%;
        flex: 1 0 50%
    }
    .carousel .carousel-item-2 {
        -ms-flex: 1 0 100%;
        flex: 1 0 100%
    }
    .carousel .carousel-item-3 {
        -ms-flex: 1 0 100%;
        flex: 1 0 100%
    }
    .carousel .carousel-header {
        margin-bottom: 0
    }
    .carousel .carousel-item-5:nth-of-type(1n+5),
    .carousel .carousel-item-7:nth-of-type(1n+5),
    .carousel .carousel-arrow,
    .carousel .carousel-bars,
    .carousel .carousel-item-empty,
    .carousel .carousel-item-see-all {
        display: none
    }
}

.grid {
    padding: 0 20px
}

.grid .row {
    margin-right: -10px;
    margin-left: -10px
}

.grid .col-12 {
    width: 100%;
    box-sizing: border-box;
    padding-left: 10px;
    padding-right: 10px;
    margin-bottom: 30px;
    display: inline-block;
    margin-right: -4px;
    vertical-align: top
}

.grid .col-12.rendered {
    margin-right: 0
}

.grid .col-11 {
    width: 91.66667%;
    box-sizing: border-box;
    padding-left: 10px;
    padding-right: 10px;
    margin-bottom: 30px;
    display: inline-block;
    margin-right: -4px;
    vertical-align: top
}

.grid .col-11.rendered {
    margin-right: 0
}

.grid .col-10 {
    width: 83.33333%;
    box-sizing: border-box;
    padding-left: 10px;
    padding-right: 10px;
    margin-bottom: 30px;
    display: inline-block;
    margin-right: -4px;
    vertical-align: top
}

.grid .col-10.rendered {
    margin-right: 0
}

.grid .col-9 {
    width: 75%;
    box-sizing: border-box;
    padding-left: 10px;
    padding-right: 10px;
    margin-bottom: 30px;
    display: inline-block;
    margin-right: -4px;
    vertical-align: top
}

.grid .col-9.rendered {
    margin-right: 0
}

.grid .col-8 {
    width: 66.66667%;
    box-sizing: border-box;
    padding-left: 10px;
    padding-right: 10px;
    margin-bottom: 30px;
    display: inline-block;
    margin-right: -4px;
    vertical-align: top
}

.grid .col-8.rendered {
    margin-right: 0
}

.grid .col-7 {
    width: 58.33333%;
    box-sizing: border-box;
    padding-left: 10px;
    padding-right: 10px;
    margin-bottom: 30px;
    display: inline-block;
    margin-right: -4px;
    vertical-align: top
}

.grid .col-7.rendered {
    margin-right: 0
}

.grid .col-6 {
    width: 50%;
    box-sizing: border-box;
    padding-left: 10px;
    padding-right: 10px;
    margin-bottom: 30px;
    display: inline-block;
    margin-right: -4px;
    vertical-align: top
}

.grid .col-6.rendered {
    margin-right: 0
}

.grid .col-5 {
    width: 41.66667%;
    box-sizing: border-box;
    padding-left: 10px;
    padding-right: 10px;
    margin-bottom: 30px;
    display: inline-block;
    margin-right: -4px;
    vertical-align: top
}

.grid .col-5.rendered {
    margin-right: 0
}

.grid .col-4 {
    width: 33.33333%;
    box-sizing: border-box;
    padding-left: 10px;
    padding-right: 10px;
    margin-bottom: 30px;
    display: inline-block;
    margin-right: -4px;
    vertical-align: top
}

.grid .col-4.rendered {
    margin-right: 0
}

.grid .col-3 {
    width: 25%;
    box-sizing: border-box;
    padding-left: 10px;
    padding-right: 10px;
    margin-bottom: 30px;
    display: inline-block;
    margin-right: -4px;
    vertical-align: top
}

.grid .col-3.rendered {
    margin-right: 0
}

.grid .col-2 {
    width: 16.66667%;
    box-sizing: border-box;
    padding-left: 10px;
    padding-right: 10px;
    margin-bottom: 30px;
    display: inline-block;
    margin-right: -4px;
    vertical-align: top
}

.grid .col-2.rendered {
    margin-right: 0
}

.grid .col-1 {
    width: 8.33333%;
    box-sizing: border-box;
    padding-left: 10px;
    padding-right: 10px;
    margin-bottom: 30px;
    display: inline-block;
    margin-right: -4px;
    vertical-align: top
}

.grid .col-1.rendered {
    margin-right: 0
}

.grid .col-middle {
    vertical-align: middle!important
}

.grid .col-no-margin {
    margin-bottom: 0!important
}

.grid .col-3,
.grid .col-4 {
    width: 50%
}

.grid .col-6 {
    width: 100%
}

@media screen and (min-width:541px) {
    .grid {
        padding: 0 40px
    }
    .grid .row {
        margin-right: -10px;
        margin-left: -10px
    }
    .grid .col-12 {
        width: 100%;
        box-sizing: border-box;
        padding-left: 10px;
        padding-right: 10px;
        margin-bottom: 30px;
        display: inline-block;
        margin-right: -4px;
        vertical-align: top
    }
    .grid .col-12.rendered {
        margin-right: 0
    }
    .grid .col-11 {
        width: 91.66667%;
        box-sizing: border-box;
        padding-left: 10px;
        padding-right: 10px;
        margin-bottom: 30px;
        display: inline-block;
        margin-right: -4px;
        vertical-align: top
    }
    .grid .col-11.rendered {
        margin-right: 0
    }
    .grid .col-10 {
        width: 83.33333%;
        box-sizing: border-box;
        padding-left: 10px;
        padding-right: 10px;
        margin-bottom: 30px;
        display: inline-block;
        margin-right: -4px;
        vertical-align: top
    }
    .grid .col-10.rendered {
        margin-right: 0
    }
    .grid .col-9 {
        width: 75%;
        box-sizing: border-box;
        padding-left: 10px;
        padding-right: 10px;
        margin-bottom: 30px;
        display: inline-block;
        margin-right: -4px;
        vertical-align: top
    }
    .grid .col-9.rendered {
        margin-right: 0
    }
    .grid .col-8 {
        width: 66.66667%;
        box-sizing: border-box;
        padding-left: 10px;
        padding-right: 10px;
        margin-bottom: 30px;
        display: inline-block;
        margin-right: -4px;
        vertical-align: top
    }
    .grid .col-8.rendered {
        margin-right: 0
    }
    .grid .col-7 {
        width: 58.33333%;
        box-sizing: border-box;
        padding-left: 10px;
        padding-right: 10px;
        margin-bottom: 30px;
        display: inline-block;
        margin-right: -4px;
        vertical-align: top
    }
    .grid .col-7.rendered {
        margin-right: 0
    }
    .grid .col-6 {
        width: 50%;
        box-sizing: border-box;
        padding-left: 10px;
        padding-right: 10px;
        margin-bottom: 30px;
        display: inline-block;
        margin-right: -4px;
        vertical-align: top
    }
    .grid .col-6.rendered {
        margin-right: 0
    }
    .grid .col-5 {
        width: 41.66667%;
        box-sizing: border-box;
        padding-left: 10px;
        padding-right: 10px;
        margin-bottom: 30px;
        display: inline-block;
        margin-right: -4px;
        vertical-align: top
    }
    .grid .col-5.rendered {
        margin-right: 0
    }
    .grid .col-4 {
        width: 33.33333%;
        box-sizing: border-box;
        padding-left: 10px;
        padding-right: 10px;
        margin-bottom: 30px;
        display: inline-block;
        margin-right: -4px;
        vertical-align: top
    }
    .grid .col-4.rendered {
        margin-right: 0
    }
    .grid .col-3 {
        width: 25%;
        box-sizing: border-box;
        padding-left: 10px;
        padding-right: 10px;
        margin-bottom: 30px;
        display: inline-block;
        margin-right: -4px;
        vertical-align: top
    }
    .grid .col-3.rendered {
        margin-right: 0
    }
    .grid .col-2 {
        width: 16.66667%;
        box-sizing: border-box;
        padding-left: 10px;
        padding-right: 10px;
        margin-bottom: 30px;
        display: inline-block;
        margin-right: -4px;
        vertical-align: top
    }
    .grid .col-2.rendered {
        margin-right: 0
    }
    .grid .col-1 {
        width: 8.33333%;
        box-sizing: border-box;
        padding-left: 10px;
        padding-right: 10px;
        margin-bottom: 30px;
        display: inline-block;
        margin-right: -4px;
        vertical-align: top
    }
    .grid .col-1.rendered {
        margin-right: 0
    }
}

@media screen and (min-width:810px) {
    .grid {
        padding: 0 60px
    }
    .grid .row {
        margin-right: -15px;
        margin-left: -15px
    }
    .grid .col-12 {
        width: 100%;
        box-sizing: border-box;
        padding-left: 15px;
        padding-right: 15px;
        margin-bottom: 45px;
        display: inline-block;
        margin-right: -4px;
        vertical-align: top
    }
    .grid .col-12.rendered {
        margin-right: 0
    }
    .grid .col-11 {
        width: 91.66667%;
        box-sizing: border-box;
        padding-left: 15px;
        padding-right: 15px;
        margin-bottom: 45px;
        display: inline-block;
        margin-right: -4px;
        vertical-align: top
    }
    .grid .col-11.rendered {
        margin-right: 0
    }
    .grid .col-10 {
        width: 83.33333%;
        box-sizing: border-box;
        padding-left: 15px;
        padding-right: 15px;
        margin-bottom: 45px;
        display: inline-block;
        margin-right: -4px;
        vertical-align: top
    }
    .grid .col-10.rendered {
        margin-right: 0
    }
    .grid .col-9 {
        width: 75%;
        box-sizing: border-box;
        padding-left: 15px;
        padding-right: 15px;
        margin-bottom: 45px;
        display: inline-block;
        margin-right: -4px;
        vertical-align: top
    }
    .grid .col-9.rendered {
        margin-right: 0
    }
    .grid .col-8 {
        width: 66.66667%;
        box-sizing: border-box;
        padding-left: 15px;
        padding-right: 15px;
        margin-bottom: 45px;
        display: inline-block;
        margin-right: -4px;
        vertical-align: top
    }
    .grid .col-8.rendered {
        margin-right: 0
    }
    .grid .col-7 {
        width: 58.33333%;
        box-sizing: border-box;
        padding-left: 15px;
        padding-right: 15px;
        margin-bottom: 45px;
        display: inline-block;
        margin-right: -4px;
        vertical-align: top
    }
    .grid .col-7.rendered {
        margin-right: 0
    }
    .grid .col-6 {
        width: 50%;
        box-sizing: border-box;
        padding-left: 15px;
        padding-right: 15px;
        margin-bottom: 45px;
        display: inline-block;
        margin-right: -4px;
        vertical-align: top
    }
    .grid .col-6.rendered {
        margin-right: 0
    }
    .grid .col-5 {
        width: 41.66667%;
        box-sizing: border-box;
        padding-left: 15px;
        padding-right: 15px;
        margin-bottom: 45px;
        display: inline-block;
        margin-right: -4px;
        vertical-align: top
    }
    .grid .col-5.rendered {
        margin-right: 0
    }
    .grid .col-4 {
        width: 33.33333%;
        box-sizing: border-box;
        padding-left: 15px;
        padding-right: 15px;
        margin-bottom: 45px;
        display: inline-block;
        margin-right: -4px;
        vertical-align: top
    }
    .grid .col-4.rendered {
        margin-right: 0
    }
    .grid .col-3 {
        width: 25%;
        box-sizing: border-box;
        padding-left: 15px;
        padding-right: 15px;
        margin-bottom: 45px;
        display: inline-block;
        margin-right: -4px;
        vertical-align: top
    }
    .grid .col-3.rendered {
        margin-right: 0
    }
    .grid .col-2 {
        width: 16.66667%;
        box-sizing: border-box;
        padding-left: 15px;
        padding-right: 15px;
        margin-bottom: 45px;
        display: inline-block;
        margin-right: -4px;
        vertical-align: top
    }
    .grid .col-2.rendered {
        margin-right: 0
    }
    .grid .col-1 {
        width: 8.33333%;
        box-sizing: border-box;
        padding-left: 15px;
        padding-right: 15px;
        margin-bottom: 45px;
        display: inline-block;
        margin-right: -4px;
        vertical-align: top
    }
    .grid .col-1.rendered {
        margin-right: 0
    }
}

@media screen and (min-width:990px) {
    .grid {
        width: 1000px;
        margin: 0 auto;
        padding: 0 30px
    }
    .grid .row {
        margin-right: -15px;
        margin-left: -15px
    }
    .grid .col-12 {
        width: 960px;
        box-sizing: border-box;
        padding-left: 15px;
        padding-right: 15px;
        margin-bottom: 45px;
        display: inline-block;
        margin-right: -4px;
        vertical-align: top
    }
    .grid .col-12.rendered {
        margin-right: 0
    }
    .grid .col-11 {
        width: 880px;
        box-sizing: border-box;
        padding-left: 15px;
        padding-right: 15px;
        margin-bottom: 45px;
        display: inline-block;
        margin-right: -4px;
        vertical-align: top
    }
    .grid .col-11.rendered {
        margin-right: 0
    }
    .grid .col-10 {
        width: 800px;
        box-sizing: border-box;
        padding-left: 15px;
        padding-right: 15px;
        margin-bottom: 45px;
        display: inline-block;
        margin-right: -4px;
        vertical-align: top
    }
    .grid .col-10.rendered {
        margin-right: 0
    }
    .grid .col-9 {
        width: 720px;
        box-sizing: border-box;
        padding-left: 15px;
        padding-right: 15px;
        margin-bottom: 45px;
        display: inline-block;
        margin-right: -4px;
        vertical-align: top
    }
    .grid .col-9.rendered {
        margin-right: 0
    }
    .grid .col-8 {
        width: 640px;
        box-sizing: border-box;
        padding-left: 15px;
        padding-right: 15px;
        margin-bottom: 45px;
        display: inline-block;
        margin-right: -4px;
        vertical-align: top
    }
    .grid .col-8.rendered {
        margin-right: 0
    }
    .grid .col-7 {
        width: 560px;
        box-sizing: border-box;
        padding-left: 15px;
        padding-right: 15px;
        margin-bottom: 45px;
        display: inline-block;
        margin-right: -4px;
        vertical-align: top
    }
    .grid .col-7.rendered {
        margin-right: 0
    }
    .grid .col-6 {
        width: 480px;
        box-sizing: border-box;
        padding-left: 15px;
        padding-right: 15px;
        margin-bottom: 45px;
        display: inline-block;
        margin-right: -4px;
        vertical-align: top
    }
    .grid .col-6.rendered {
        margin-right: 0
    }
    .grid .col-5 {
        width: 400px;
        box-sizing: border-box;
        padding-left: 15px;
        padding-right: 15px;
        margin-bottom: 45px;
        display: inline-block;
        margin-right: -4px;
        vertical-align: top
    }
    .grid .col-5.rendered {
        margin-right: 0
    }
    .grid .col-4 {
        width: 320px;
        box-sizing: border-box;
        padding-left: 15px;
        padding-right: 15px;
        margin-bottom: 45px;
        display: inline-block;
        margin-right: -4px;
        vertical-align: top
    }
    .grid .col-4.rendered {
        margin-right: 0
    }
    .grid .col-3 {
        width: 240px;
        box-sizing: border-box;
        padding-left: 15px;
        padding-right: 15px;
        margin-bottom: 45px;
        display: inline-block;
        margin-right: -4px;
        vertical-align: top
    }
    .grid .col-3.rendered {
        margin-right: 0
    }
    .grid .col-2 {
        width: 160px;
        box-sizing: border-box;
        padding-left: 15px;
        padding-right: 15px;
        margin-bottom: 45px;
        display: inline-block;
        margin-right: -4px;
        vertical-align: top
    }
    .grid .col-2.rendered {
        margin-right: 0
    }
    .grid .col-1 {
        width: 80px;
        box-sizing: border-box;
        padding-left: 15px;
        padding-right: 15px;
        margin-bottom: 45px;
        display: inline-block;
        margin-right: -4px;
        vertical-align: top
    }
    .grid .col-1.rendered {
        margin-right: 0
    }
}

.layout-landing .class-column .image-link,
.layout-landing .project-column .image-link {
    display: block;
    margin-bottom: 7px;
    padding-top: 66.66667%;
    position: relative;
    width: 100%
}

.layout-landing .project-column .image-link {
    margin-bottom: 15px
}

.layout-landing .project-column .background-image-holder,
.layout-landing .class-column .background-image-holder {
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    width: 100%;
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    bottom: 0;
    height: auto;
    box-shadow: 0 0 1px #aeb8be
}

@media screen and (max-width:540px) {
    .layout-landing .project-column .image-link {
        margin-bottom: 5px
    }
}

body {
    -webkit-text-size-adjust: 100%
}

.site-header {
    min-width: 810px
}

.site-footer {
    min-width: auto
}

@media screen and (max-width:540px) {
    .site-footer {
        display: none
    }
    .site-footer-mobile {
        display: -ms-flexbox;
        display: flex
    }
}

@media screen and (max-width:989px) {
    .center-page {
        width: initial!important;
        padding: 0 30px
    }
    .site-header,
    .hero-header {
        display: none
    }
    .site-header-mobile {
        display: -ms-flexbox;
        display: flex
    }
}

.maintain-image-ratio {
    display: block;
    position: relative;
    padding-top: 56.25%;
    width: 100%!important
}

@media screen and (max-width:809px) {
    .layout-landing .section {
        margin-bottom: 50px
    }
}

@media screen and (max-width:540px) {
    .layout-landing .section .paragraph {
        font-size: 18px;
        line-height: 1.4em
    }
}

.layout-landing .section .row .scaling-col img {
    width: 100%
}

.layout-landing .section .row .scaling-col .social-links {
    margin-left: 10px
}

@media screen and (max-width:540px) {
    .layout-landing .section .row .scaling-col {
        width: 100%;
        margin-left: 0
    }
    .layout-landing .section .row .scaling-col .scaling-btn {
        box-sizing: border-box;
        margin-bottom: 13px;
        margin-left: 0;
        width: 100%
    }
    .layout-landing .section .row .scaling-col .social-links {
        float: none;
        margin-left: 0;
        text-align: center
    }
}

@media screen and (min-width:990px) {
    .layout-landing .section .section-header .more-link {
        position: absolute;
        bottom: 0;
        right: 0
    }
}

@media screen and (max-width:540px) {
    .layout-landing .section .section-header h2 {
        font-size: 22px;
        line-height: 1.2em
    }
    .layout-landing .section .section-header h3 {
        font-size: 18px;
        line-height: 1.2em
    }
    .layout-landing .section .section-header .title-link {
        font-size: 22px
    }
    .layout-landing .section .section-header .see-all {
        margin-top: -2px
    }
}

@media screen and (max-width:622px) {
    .underline-tabs .count {
        display: none
    }
}

@media screen and (max-width:540px) {
    .underline-tabs {
        font-size: 13px
    }
    .underline-tabs .tab a {
        padding: 0 8px
    }
    .underline-tabs .tab.active a {
        padding-top: 0
    }
    .underline-tabs .tab+.tab {
        padding-left: 0
    }
}

@media screen and (max-width:809px) {
    #alerts-holder .site-alert {
        top: auto;
        right: auto;
        left: 50%
    }
    #alerts-holder .site-alert.on-header::before {
        display: none
    }
}

@media screen and (min-width:809px) {
    #alerts-holder .site-alert.on-header {
        margin: 0!important
    }
}

@media screen and (max-width:540px) {
    #alerts-holder {
        left: 20px;
        right: 20px;
        text-align: center;
        width: auto
    }
    #alerts-holder .site-alert {
        margin-left: 0!important;
        left: 0;
        right: 0
    }
    #alerts-holder .site-alert h5 {
        padding-right: 0;
        white-space: normal
    }
    #alerts-holder .action {
        display: block
    }
}

.hcem-promo-banner #promo-banner {
    background-image: url(../img/dang-ky-hoc-online.jpg)
}

.hcem-promo-banner #promo-banner .body {
    font-weight: 400;
    max-width: 464px
}

.hcem-promo-banner #promo-banner br.on-lihp {
    display: none
}

.hcem-promo-banner #promo-banner .header {
    max-width: 520px
}

.hcem-promo-banner #promo-banner .pre-header .skillshare-staff-pick {
    width: 122px;
    height: 18px;
    background-size: 122px 18px
}

.hcem-promo-banner #promo-banner .pre-header .skillshare-original {
    width: 89px;
    height: 23px;
    background-size: 89px 23px
}

.hcem-promo-banner #promo-banner .side-note {
    margin-top: 40px
}

@media screen and (max-width:800px) {
    .hcem-promo-banner #promo-banner .body {
        font-size: 18px;
        line-height: 24px
    }
    .hcem-promo-banner #promo-banner .pre-header .skillshare-staff-pick {
        width: 90px;
        height: 13px;
        background-size: 90px 13px
    }
    .hcem-promo-banner #promo-banner .pre-header .skillshare-original {
        width: 70px;
        height: 17px;
        background-size: 70px 17px
    }
}

#promo-banner {
    background-image: url(../img/anh-hcem.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    position: relative;
    width: 100%;
    height: 100%;
    background-position: center;
    z-index: 1;
    overflow: hidden
}

#promo-banner br.on-lohp {
    display: none
}

#promo-banner i {
    font-style: italic
}

#promo-banner .promo-banner-overlay {
    background: linear-gradient(90deg, rgba(0, 0, 0, 0.8) 0%, transparent 100%);
    height: 100%
}

#promo-banner .flex-grid-banner.logged-in-home {
    max-width: 1190px;
    margin: 0 auto;
    padding: 0 20px
}

#promo-banner .banner-primary.alt-charcoal {
    margin: 0 8px 0 0
}

#promo-banner .banner-primary.alt-charcoal .ss-svg-icon use {
    fill: #fff
}

@media screen and (max-width:800px) {
    #promo-banner .flex-grid-row {
        -ms-flex-direction: column;
        flex-direction: column
    }
    #promo-banner .flex-grid-row br {
        display: none
    }
    #promo-banner .flex-grid-row .header {
        width: 100%!important;
        margin-bottom: 20px;
        font-size: 26px;
        line-height: 32px
    }
}

#promo-banner .pre-header {
    color: #00ff84;
    height: 15px;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-bottom: 16px;
    font-weight: 700
}

#promo-banner .pre-header-badge {
    top: auto;
    left: 6px
}

#promo-banner .header {
    font-size: 48px;
    line-height: 52px;
    font-weight: 700;
    max-width: 392px
}

#promo-banner .header a {
    color: #fff!important;
    text-decoration: none
}

@media screen and (max-width:800px) {
    #promo-banner .header {
        font-size: 26px;
        font-weight: 700;
        line-height: 32px;
        width: 100%;
        margin-bottom: 20px
    }
}

#promo-banner .body {
    max-width: 398px;
    padding-bottom: 40px;
    margin: 16px 0 0
}

#promo-banner .banner-content {
    position: absolute;
    top: 50%;
    transform: translateY(-50%)
}

#promo-banner .banner-content .banner-grid-item {
    display: block!important
}

#promo-banner .banner-content .banner-text {
    width: 100%;
    color: #002333
}

#promo-banner .banner-content .banner-text .credit {
    color: #dcdee1;
    font-size: 10px;
    line-height: 15px;
    padding-top: 25px
}

@media screen and (max-width:1000px) {
    #promo-banner .banner-content .banner-text .credit {
        display: none
    }
}

#promo-banner .banner-content .btn.banner-secondary {
    padding: 4px 16px 4px 10px;
    margin-left: 8px;
    opacity: 1;
    box-sizing: border-box;
    border: 1px solid #002333;
    border-radius: 4px;
    color: #002333
}

#promo-banner .banner-content .btn.banner-secondary::before {
    line-height: 1em;
    position: relative;
    top: 2px
}

@media screen and (max-width:540px) {
    #promo-banner .banner-content .btn.banner-secondary {
        margin-left: 0;
        margin-top: 20px
    }
}

#promo-banner .banner-content .flex-grid-item-5 {
    -ms-flex: 0;
    flex: 0;
    margin-right: 80px
}

@media screen and (max-width:1000px) {
    #promo-banner .banner-content .flex-grid-item-5 {
        margin-right: 0
    }
}

@media screen and (max-width:809px) {
    #promo-banner .banner-content .flex-grid-item-5 {
        display: none
    }
}

#promo-banner .body,
#promo-banner .header {
    color: #fff
}

#promo-banner .btn.banner-primary {
    background-color: #fff;
    padding: 8px 18px;
    border-bottom: none;
    border-radius: 4px
}

#promo-banner .save-banner-button use {
    fill: #fff
}

#promo-banner .save-banner-button:hover use {
    fill: #002333
}

#promo-banner .banner-secondary-save-container {
    left: 16px;
    position: relative
}

#promo-banner .flex-grid-wrapper {
    margin-bottom: 0
}

#promo-banner.logged-in-home {
    height: 400px
}

#promo-banner.logged-in-home .pre-header .skillshare-staff-pick {
    width: 102px;
    height: 15px;
    background-size: 102px 15px
}

#promo-banner.logged-in-home .pre-header .skillshare-original {
    width: 76px;
    height: 19px;
    background-size: 76px 19px
}

@media screen and (max-width:800px) {
    #promo-banner.logged-in-home .pre-header .skillshare-staff-pick {
        width: 90px;
        height: 13px;
        background-size: 90px 13px
    }
    #promo-banner.logged-in-home .pre-header .skillshare-original {
        width: 70px;
        height: 17px;
        background-size: 70px 17px
    }
}

#promo-banner.logged-in-home .body {
    line-height: 24px;
    padding-bottom: 32px
}

@media screen and (max-width:375px) {
    #promo-banner .flex-grid-wrapper.logged-out-home {
        padding: 0!important;
        margin-left: 24px!important
    }
}

@media screen and (max-width:600px) {
    #promo-banner.class-promo-banner {
        height: 598px
    }
    #promo-banner.class-promo-banner .banner-primary.save-banner-button {
        bottom: -104px
    }
}

@media screen and (max-width:800px) {
    #promo-banner br {
        display: none
    }
    #promo-banner.class-promo-banner {
        background-image: url(/assets/images/homepage/promo-banner/spark-your-creativity-at-home-bg-mobile.jpg);
        background-size: cover
    }
    #promo-banner.class-promo-banner .promo-banner-overlay {
        background: rgba(0, 0, 0, .4)
    }
    #promo-banner.class-promo-banner .banner-secondary-save-container {
        left: inherit;
        position: inherit
    }
    #promo-banner.class-promo-banner .save-banner-button {
        display: block!important;
        border: none;
        color: transparent;
        position: absolute;
        right: -48px;
        bottom: -48px
    }
    #promo-banner.class-promo-banner .save-banner-button:hover {
        background-color: transparent
    }
    #promo-banner.class-promo-banner .save-banner-button .ss-svg-icon {
        height: 24px;
        width: 24px
    }
    #promo-banner.class-promo-banner .banner-content .flex-grid-item-3 {
        margin-bottom: 4px;
        position: static
    }
    #promo-banner.class-promo-banner .banner-content .body {
        margin-top: 0
    }
    #promo-banner.class-promo-banner .banner-content .actions .btn.banner-secondary {
        width: 24px;
        min-width: auto;
        overflow: hidden;
        padding: 0;
        border: none
    }
    #promo-banner.class-promo-banner .banner-content .actions .btn.banner-secondary::before {
        font-size: 24px
    }
    #promo-banner.class-promo-banner .banner-content .flex-grid-item-5 {
        display: block
    }
}

@media screen and (max-width:1000px) {
    #promo-banner.class-promo-banner .banner-content .flex-grid-item-5 {
        display: block;
        -ms-flex: 1;
        flex: 1
    }
}

@media screen and (max-width:800px) {
    #promo-banner {
        background-position-y: 20%
    }
}

#promo-banner .side-note {
    color: #fff;
    font-size: 13px;
    line-height: 18px;
    margin-top: 32px
}

#promo-banner .play-banner-button use {
    fill: #000
}

#promo-banner .play-banner-button,
#promo-banner .see-all-playlist-button {
    height: 40px;
    line-height: 40px
}

#homepage #site-banner {
    background-color: #fff;
    color: #002333;
    text-align: center
}

#homepage #site-banner a {
    color: #002333
}

#homepage .get-started-for-free-wrapper {
    visibility: hidden;
    opacity: 0;
    position: fixed;
    z-index: 10000;
    top: 0;
    right: 24px;
    transition: all .2s ease-in-out;
    max-height: 0
}

#homepage .get-started-for-free-wrapper.mobile {
    right: auto;
    left: 50%;
    margin-left: -117.2px
}

#homepage .get-started-for-free-wrapper.show {
    opacity: 1;
    visibility: visible;
    top: 32px;
    max-height: 200px
}

#homepage .get-started-for-free-wrapper .button {
    height: 52px;
    line-height: 50px;
    padding: 0 30px
}

#homepage .site-header .nav-item .button.alt-white-ghost,
#homepage .site-header-mobile .nav-item .button.alt-white-ghost {
    height: 40px;
    line-height: 40px
}

#homepage .site-header.transparent .nav-menu-browse .nav-item-link:hover,
#homepage .site-header .nav-item-link-light:hover,
#homepage .site-header-mobile.transparent .nav-menu-browse .nav-item-link:hover,
#homepage .site-header-mobile .nav-item-link-light:hover {
    color: #00ff84
}

#homepage .site-header.transparent .nav-menu-browse .nav-item-link:hover .chevron-down use,
#homepage .site-header .nav-item-link-light:hover .chevron-down use,
#homepage .site-header-mobile.transparent .nav-menu-browse .nav-item-link:hover .chevron-down use,
#homepage .site-header-mobile .nav-item-link-light:hover .chevron-down use {
    stroke: #00ff84;
    fill: #00ff84
}

#homepage .site-header-mobile {
    height: 64px;
    padding: 0 16px
}

#homepage .site-header-mobile .logo-image {
    height: 36px
}

#homepage .site-header-mobile .primary.drawer.popover {
    margin-top: -12px
}

#homepage #page-wrapper {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
    flex-direction: column;
    overflow: hidden
}

#homepage .jumbotron {
    font-family: kumlien pro, serif;
    font-size: 72px;
    line-height: 64px
}

#homepage .jumbotron .brand-period {
    color: #00ff84
}

#homepage .jumbotron+h2 {
    font-weight: 400;
    margin-top: 32px;
    text-shadow: 0 0 4px rgba(0, 0, 0, .25)
}

@media screen and (max-width:540px) {
    #homepage .jumbotron {
        font-size: 48px;
        line-height: 56px
    }
    #homepage .jumbotron+h2 {
        font-size: 18px;
        line-height: 24px;
        margin: 18px 0
    }
}

@media screen and (max-width:375px) {
    #homepage .jumbotron+h2 {
        padding: 0 50px
    }
}

#homepage .hero-top {
    padding: 0;
    margin: 0;
    height: 720px;
    overflow: hidden;
    position: relative
}

#homepage .hero-top .hero-video,
#homepage .hero-top .hero-placeholder {
    position: absolute;
    right: 0;
    left: 0;
    bottom: 0;
    top: auto;
    height: 100%;
    width: 100%;
    object-fit: cover
}

#homepage .hero-top .center-wrapper {
    z-index: 3;
    background: rgba(0, 0, 0, .4)
}

#homepage .hero-top .center-wrapper .free-signup-button {
    height: 52px;
    line-height: 50px;
    padding: 0 30px
}

#homepage .hero-top .center-wrapper .free-signup-button.mobile {
    display: none
}

@media screen and (max-width:540px) {
    #homepage .hero-top .center-wrapper .free-signup-button.desktop {
        display: none
    }
    #homepage .hero-top .center-wrapper .free-signup-button.mobile {
        display: inline-block!important
    }
}

#homepage .hero-top .hero-video {
    z-index: 1
}

#homepage .hero-top .hero-placeholder {
    z-index: 0
}

@media screen and (max-width:989px) {
    #homepage .hero-top {
        height: 556px
    }
}

@media screen and (max-width:809px) {
    #homepage .hero-top {
        margin-top: -1px;
        height: 455px
    }
}

@media screen and (max-width:540px) {
    #homepage .hero-top {
        margin-top: -1px;
        height: 375px;
        background-image: url(/assets/images/homepage/hero/hero-mobile-2020.jpg);
        background-position: left;
        padding: 0
    }
    #homepage .hero-top .hero-overlay,
    #homepage .hero-top .hero-placeholder,
    #homepage .hero-top .hero-video {
        display: none
    }
}

#homepage .hcem-content {
    position: relative;
    overflow: hidden
}

#homepage .hcem-content .hcem-modules {
    position: relative;
    z-index: 10
}

#homepage .hcem-content .hcem-path {
    position: absolute;
    top: -10px;
    width: 100%;
    z-index: 5
}

#homepage .hcem-content .hcem-path svg {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%)
}

@media screen and (max-width:989px) {
    #homepage .hcem-content .hcem-path {
        display: none
    }
}

#homepage .hcem-content .hcem-backgrounds {
    position: absolute;
    top: 0;
    width: 100%;
    z-index: 0
}

#homepage .hcem-content .hcem-backgrounds .fwfy,
#homepage .hcem-content .hcem-backgrounds .mobile-experience {
    background: #f4f4f4
}

#homepage .hcem-content .hcem-backgrounds .banners,
#homepage .hcem-content .hcem-backgrounds .creators {
    background: #002333
}

#homepage .hcem-content .hcem-backgrounds .examples {
    background: #fff
}

@media screen and (max-width:989px) {
    #homepage .hcem-content .hcem-backgrounds {
        display: none
    }
}

#homepage .hcem-content .flex-grid-wrapper {
    padding: 0 72px;
    margin: 0 auto;
    max-width: 1100px
}

#homepage .hcem-content .flex-grid-wrapper .ss-card {
    text-align: center;
    transition: opacity 1s ease;
    opacity: 1
}

#homepage .hcem-content .flex-grid-wrapper .ss-card .ss-card__title {
    height: 58px;
    margin: 0;
    text-align: center
}

#homepage .hcem-content .flex-grid-wrapper .ss-card .ss-card__teacher-placeholder {
    width: auto
}

#homepage .hcem-content .flex-grid-wrapper .ss-card .ellipsis {
    width: 100%
}

#homepage .hcem-content .flex-grid-wrapper .carousel-window {
    overflow: visible
}

#homepage .hcem-content .flex-grid-wrapper .carousel-window .carousel-content {
    -ms-flex-direction: row;
    flex-direction: row
}

#homepage .hcem-content .flex-grid-wrapper .carousel-arrow {
    position: relative
}

#homepage .hcem-content .flex-grid-wrapper .carousel-arrow.carousel-arrow-next {
    right: -16px
}

#homepage .hcem-content .flex-grid-wrapper .carousel-arrow.carousel-arrow-previous {
    left: -16px
}

@media screen and (max-width:809px) {
    #homepage .hcem-content .flex-grid-wrapper .carousel-arrow {
        display: none!important
    }
}

#homepage .hcem-content .flex-grid-wrapper .carousel-controls {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center
}

#homepage .hcem-content .flex-grid-wrapper .carousel-controls .carousel-bar-content {
    border-radius: 50%;
    width: 12px;
    height: 12px;
    margin: 0;
    top: 0
}

#homepage .hcem-content .flex-grid-wrapper .carousel-controls .carousel-bars.dynamic {
    max-width: 80px;
    overflow: hidden;
    -ms-flex-pack: left;
    justify-content: left
}

#homepage .hcem-content .flex-grid-wrapper .carousel-controls .carousel-bars.dynamic .carousel-bar {
    transition: transform .2s ease
}

#homepage .hcem-content .flex-grid-wrapper .carousel-controls .carousel-bars.dynamic .carousel-bar.small .carousel-bar-content {
    width: 8px;
    height: 8px;
    position: relative;
    top: 2px;
    margin: 0 2px;
    transition: width .1s ease, height .1s ease, top .1s ease, margin .1s ease
}

#homepage .hcem-content .flex-grid-wrapper .carousel-controls>div {
    display: -ms-flexbox;
    display: flex
}

#homepage .hcem-content .fwfy {
    padding-top: 120px;
    height: 600px
}

#homepage .hcem-content .fwfy br {
    display: none
}

#homepage .hcem-content .fwfy>h1 {
    font-size: 48px;
    line-height: 52px;
    text-align: center;
    margin-bottom: 20px
}

@media screen and (max-width:809px) {
    #homepage .hcem-content .fwfy>h1 {
        font-size: 36px;
        line-height: 44px
    }
}

#homepage .hcem-content .fwfy .center-header {
    text-align: center
}

#homepage .hcem-content .fwfy .center-header .with-text.section {
    margin-bottom: 0
}

#homepage .hcem-content .fwfy .center-header .primary-tags a {
    color: #002333;
    text-decoration: none;
    padding-bottom: 16px;
    padding-top: 4px;
    margin: 0 20px;
    display: inline-block
}

#homepage .hcem-content .fwfy .center-header .primary-tags a:hover {
    color: #3722d3
}

#homepage .hcem-content .fwfy .center-header .primary-tags a.active {
    color: #3722d3;
    border-bottom: 4px solid #3722d3
}

@media screen and (max-width:989px) {
    #homepage .hcem-content .fwfy .center-header .primary-tags a {
        padding-bottom: 4px;
        margin: 0 8px 4px;
        border-bottom: 4px solid #f4f4f4
    }
}

#homepage .hcem-content .fwfy .categories-dropdown {
    display: none
}

@media screen and (max-width:989px) {
    #homepage .hcem-content .fwfy {
        background: #f4f4f4;
        padding-bottom: 104px
    }
}

@media screen and (max-width:809px) {
    #homepage .hcem-content .fwfy br {
        display: block
    }
}

#homepage .hcem-content .banners {
    height: 598px
}

@media screen and (max-width:989px) {
    #homepage .hcem-content .banners {
        background: #002333
    }
}

#homepage .hcem-content .examples img {
    width: 100%;
    height: auto;
    max-height: 2770px;
    margin: 0 auto
}

@media screen and (max-width:989px) {
    #homepage .hcem-content .examples {
        background: #fff;
        padding: 56px 0
    }
    #homepage .hcem-content .examples #three-beat-story {
        padding: 0
    }
}

@media screen and (max-width:809px) {
    #homepage .hcem-content .examples #learn-from-anywhere {
        padding: 0
    }
}

#homepage .hcem-content #three-beat-story,
#homepage .hcem-content #learn-from-anywhere {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-flow: column nowrap;
    flex-flow: column nowrap;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding: 75px 0
}

#homepage .hcem-content #three-beat-story .story,
#homepage .hcem-content #learn-from-anywhere .story {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-flow: row nowrap;
    flex-flow: row nowrap;
    -ms-flex-align: center;
    align-items: center;
    width: 100%;
    max-width: 1280px;
    margin: 75px 0
}

#homepage .hcem-content #three-beat-story #mobile-download-options.story,
#homepage .hcem-content #learn-from-anywhere #mobile-download-options.story {
    -ms-flex-align: start;
    align-items: flex-start
}

#homepage .hcem-content #three-beat-story section,
#homepage .hcem-content #learn-from-anywhere section {
    -ms-flex-order: 1;
    order: 1;
    width: 323px;
    min-width: 323px;
    margin-left: 72px;
    margin-right: auto
}

#homepage .hcem-content #three-beat-story #mobile-download-options section,
#homepage .hcem-content #learn-from-anywhere #mobile-download-options section {
    -ms-flex-order: unset;
    order: unset;
    width: 416px;
    min-width: 416px
}

#homepage .hcem-content #three-beat-story h2,
#homepage .hcem-content #learn-from-anywhere h2 {
    font-size: 48px;
    line-height: 52px
}

#homepage .hcem-content #three-beat-story hr,
#homepage .hcem-content #learn-from-anywhere hr {
    background-color: #2196F3;
    border: none;
    border-radius: 8px;
    height: 8px;
    width: 100px;
    text-align: left;
    margin-left: 0;
    margin-top: 24px;
    margin-bottom: 24px
}

#homepage .hcem-content #three-beat-story p,
#homepage .hcem-content #learn-from-anywhere p {
    font-weight: 400
}

#homepage .hcem-content #three-beat-story p.buttons,
#homepage .hcem-content #learn-from-anywhere p.buttons {
    margin-top: 40px
}

#homepage .hcem-content #three-beat-story .button.alt,
#homepage .hcem-content #learn-from-anywhere .button.alt {
    height: 40px;
    line-height: 40px;
    margin-top: 32px
}

#homepage .hcem-content #three-beat-story img,
#homepage .hcem-content #learn-from-anywhere img {
    -ms-flex-order: 2;
    order: 2;
    border-radius: 8px;
    box-shadow: 12px 12px 25px rgba(0, 0, 0, .4);
    display: block;
    width: 100%;
    height: 100%
}

#homepage .hcem-content #three-beat-story #what-will-you-discover img,
#homepage .hcem-content #learn-from-anywhere #what-will-you-discover img {
    max-height: 576px;
    max-width: 1048px;
    min-height: 426px;
    min-width: 775px;
    margin-left: 64px;
    margin-right: -227px
}

#homepage .hcem-content #three-beat-story #membership-with-meaning img,
#homepage .hcem-content #learn-from-anywhere #membership-with-meaning img {
    -ms-flex-order: 1;
    order: 1;
    max-height: 630px;
    max-width: 1008px;
    min-height: 466px;
    min-width: 745px;
    margin-right: 61px;
    margin-left: -184px
}

#homepage .hcem-content #three-beat-story #membership-with-meaning section,
#homepage .hcem-content #learn-from-anywhere #membership-with-meaning section {
    -ms-flex-order: 2;
    order: 2;
    margin-left: auto;
    margin-right: 72px
}

#homepage .hcem-content #three-beat-story #classes-designed-for-real-life img,
#homepage .hcem-content #learn-from-anywhere #classes-designed-for-real-life img {
    max-height: 630px;
    max-width: 1008px;
    min-height: 466px;
    min-width: 745px;
    margin-left: 68px;
    margin-right: -191px
}

#homepage .hcem-content #three-beat-story #mobile-download-options img#learn-from-anywhere-phone,
#homepage .hcem-content #learn-from-anywhere #mobile-download-options img#learn-from-anywhere-phone {
    border-radius: 40px;
    height: 527px;
    width: 261px
}

#homepage .hcem-content #three-beat-story #mobile-download-options img#learn-from-anywhere-tablet,
#homepage .hcem-content #learn-from-anywhere #mobile-download-options img#learn-from-anywhere-tablet {
    border-radius: 45px;
    height: 693px;
    width: 528px
}

@media screen and (max-width:989px) {
    #homepage .hcem-content #three-beat-story .story,
    #homepage .hcem-content #learn-from-anywhere .story {
        margin: 88px 0
    }
    #homepage .hcem-content #three-beat-story #mobile-download-options section,
    #homepage .hcem-content #learn-from-anywhere #mobile-download-options section {
        margin-left: 48px
    }
    #homepage .hcem-content #three-beat-story #mobile-download-options img#learn-from-anywhere-phone,
    #homepage .hcem-content #learn-from-anywhere #mobile-download-options img#learn-from-anywhere-phone {
        border-radius: 40px;
        height: 489px;
        width: 242px
    }
    #homepage .hcem-content #three-beat-story #mobile-download-options img#learn-from-anywhere-tablet,
    #homepage .hcem-content #learn-from-anywhere #mobile-download-options img#learn-from-anywhere-tablet {
        border-radius: 45px;
        height: 643px;
        width: 490px
    }
}

@media screen and (max-width:809px) {
    #homepage .hcem-content #three-beat-story,
    #homepage .hcem-content #learn-from-anywhere {
        display: block;
        margin: 32px 0
    }
    #homepage .hcem-content #three-beat-story .story,
    #homepage .hcem-content #learn-from-anywhere .story {
        display: inline-block;
        width: 100%;
        margin: 72px 0
    }
    #homepage .hcem-content #three-beat-story section,
    #homepage .hcem-content #learn-from-anywhere section {
        box-sizing: border-box;
        padding: 0 120px;
        width: 100%;
        text-align: center;
        margin: 56px 0 0
    }
    #homepage .hcem-content #three-beat-story hr,
    #homepage .hcem-content #learn-from-anywhere hr {
        margin-left: auto
    }
    #homepage .hcem-content #three-beat-story p,
    #homepage .hcem-content #learn-from-anywhere p {
        max-width: 444px;
        margin: 0 auto
    }
    #homepage .hcem-content #three-beat-story #mobile-download-options.story,
    #homepage .hcem-content #learn-from-anywhere #mobile-download-options.story {
        display: -ms-flexbox;
        display: flex;
        margin-top: 80px
    }
    #homepage .hcem-content #three-beat-story #mobile-download-options section,
    #homepage .hcem-content #learn-from-anywhere #mobile-download-options section {
        padding: 0;
        width: 416px;
        text-align: left;
        margin-left: 24px;
        min-width: auto
    }
    #homepage .hcem-content #three-beat-story #mobile-download-options section hr,
    #homepage .hcem-content #learn-from-anywhere #mobile-download-options section hr {
        margin-left: 0
    }
    #homepage .hcem-content #three-beat-story #what-will-you-discover img,
    #homepage .hcem-content #three-beat-story #membership-with-meaning img,
    #homepage .hcem-content #three-beat-story #classes-designed-for-real-life img,
    #homepage .hcem-content #learn-from-anywhere #what-will-you-discover img,
    #homepage .hcem-content #learn-from-anywhere #membership-with-meaning img,
    #homepage .hcem-content #learn-from-anywhere #classes-designed-for-real-life img {
        margin-right: auto
    }
    #homepage .hcem-content #three-beat-story #what-will-you-discover img,
    #homepage .hcem-content #learn-from-anywhere #what-will-you-discover img {
        max-height: 426px;
        max-width: 775px;
        min-height: 309px;
        min-width: 562px;
        margin-left: 72px
    }
    #homepage .hcem-content #three-beat-story #membership-with-meaning img,
    #homepage .hcem-content #learn-from-anywhere #membership-with-meaning img {
        max-height: 466px;
        max-width: 745px;
        min-height: 337px;
        min-width: 539px;
        margin-left: -72px
    }
    #homepage .hcem-content #three-beat-story #classes-designed-for-real-life img,
    #homepage .hcem-content #learn-from-anywhere #classes-designed-for-real-life img {
        max-height: 466px;
        max-width: 745px;
        min-height: 337px;
        min-width: 539px;
        margin-left: 72px
    }
    #homepage .hcem-content #three-beat-story #mobile-download-options img#learn-from-anywhere-phone,
    #homepage .hcem-content #learn-from-anywhere #mobile-download-options img#learn-from-anywhere-phone {
        border-radius: 40px;
        height: 575px;
        width: 285px
    }
}

@media screen and (max-width:540px) {
    #homepage .hcem-content #three-beat-story,
    #homepage .hcem-content #learn-from-anywhere {
        margin: 52px 0
    }
    #homepage .hcem-content #three-beat-story .story,
    #homepage .hcem-content #learn-from-anywhere .story {
        margin: 52px 0
    }
    #homepage .hcem-content #three-beat-story section,
    #homepage .hcem-content #learn-from-anywhere section {
        padding: 0 48px
    }
    #homepage .hcem-content #three-beat-story h2,
    #homepage .hcem-content #learn-from-anywhere h2 {
        font-size: 36px;
        line-height: 44px
    }
    #homepage .hcem-content #three-beat-story p,
    #homepage .hcem-content #learn-from-anywhere p {
        font-size: 18px;
        line-height: 22px
    }
    #homepage .hcem-content #three-beat-story #mobile-download-options.story,
    #homepage .hcem-content #learn-from-anywhere #mobile-download-options.story {
        display: block
    }
    #homepage .hcem-content #three-beat-story #mobile-download-options section,
    #homepage .hcem-content #learn-from-anywhere #mobile-download-options section {
        padding: 0 48px;
        width: 100%;
        text-align: center;
        margin: 56px 0 0
    }
    #homepage .hcem-content #three-beat-story #mobile-download-options section hr,
    #homepage .hcem-content #learn-from-anywhere #mobile-download-options section hr {
        margin-left: auto
    }
    #homepage .hcem-content #three-beat-story #what-will-you-discover img,
    #homepage .hcem-content #three-beat-story #classes-designed-for-real-life img,
    #homepage .hcem-content #learn-from-anywhere #what-will-you-discover img,
    #homepage .hcem-content #learn-from-anywhere #classes-designed-for-real-life img {
        margin-left: 24px
    }
    #homepage .hcem-content #three-beat-story #membership-with-meaning img,
    #homepage .hcem-content #learn-from-anywhere #membership-with-meaning img {
        margin-left: 24px
    }
}

@media screen and (max-width:375px) {
    #homepage .hcem-content #three-beat-story section,
    #homepage .hcem-content #learn-from-anywhere section {
        padding: 0 16px
    }
}

#homepage .hcem-content .creators {
    height: 1000px;
    padding-top: 100px;
    background-color: #002333;
    color:#fff;
}

#homepage .hcem-content .creators h1 {
    font-size: 48px;
    line-height: 52px
}

@media screen and (max-width:809px) {
    #homepage .hcem-content .creators h1 {
        font-size: 36px;
        line-height: 44px
    }
}

#homepage .hcem-content .creators h1,
#homepage .hcem-content .creators>p {
    max-width: 1000px;
    margin: 0 auto;
    text-align: center;
    color: #fff
}

#homepage .hcem-content .creators hr {
    display: block;
    width: 100px;
    height: 8px;
    background-color: #00ff84;
    border-radius: 8px;
    margin: 32px auto;
    box-shadow: none;
    outline: none;
    border: none
}

#homepage .hcem-content .creators p {
    font-size: 22px;
    line-height: 28px
}

#homepage .hcem-content .creators>p {
    padding-bottom: 32px;
    padding-left: 16px;
    padding-right: 16px
}

#homepage .hcem-content .creators .ss-card {
    box-shadow: 0 2px 4px 0 rgba(0, 0, 0, .5)
}

#homepage .hcem-content .creators .ss-card::after {
    box-shadow: 0 9px 12px 0 rgba(0, 0, 0, .5)
}

#homepage .hcem-content .creators .ss-card .ss-card__thumbnail {
    padding-top: 67%
}

#homepage .hcem-content .creators .ss-card .ss-card__content {
    padding: 12px
}

#homepage .hcem-content .creators .ss-card .ss-card__content .ss-card__title {
    height: auto
}

#homepage .hcem-content .creators .ss-card .ss-card__content .ss-card__teacher-placeholder .link-main {
    font-size: 18px;
    line-height: 20px
}

#homepage .hcem-content .creators .ss-card .play-button {
    display: none!important
}

#homepage .hcem-content .creators .carousel-content {
    padding-bottom: 24px
}

#homepage .hcem-content .creators .carousel-bar-active .carousel-bar-content {
    background-color: #00ff84
}

@media screen and (max-width:989px) {
    #homepage .hcem-content .creators {
        background: #002333;
        padding: 104px 0
    }
}

#homepage .hcem-content .mobile-experience {
    height: 905px
}

@media screen and (max-width:989px) {
    #homepage .hcem-content .mobile-experience {
        background: #f4f4f4
    }
    #homepage .hcem-content .mobile-experience #learn-from-anywhere {
        padding: 95px 0
    }
}

@media screen and (max-width:809px) {
    #homepage .hcem-content .mobile-experience #learn-from-anywhere {
        padding-top: 0
    }
}

#homepage .hcem-content .download-mobile-app-button {
    margin-bottom: 23px
}

#homepage .hcem-content .download-mobile-app-button,
#homepage .hcem-content .download-mobile-app-button svg {
    width: 190px;
    height: 55px
}

#homepage .hcem-content .download-mobile-app-button.download-ios-app-button {
    margin-right: 8px
}

@media screen and (max-width:989px) {
    #homepage .hcem-content .fwfy,
    #homepage .hcem-content .mobile-experience,
    #homepage .hcem-content .creators,
    #homepage .hcem-content .examples {
        height: auto
    }
}

#homepage .explore-links {
    background-color: #fff;
    width: 100%
}

@media screen and (min-width:1181px) {
    #homepage .explore-links {
        padding-top: 34px
    }
}

#homepage .teacher-directory,
#homepage .categories-directory {
    max-width: 1190px;
    margin: 0 auto
}

#homepage .teacher-directory {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: stretch;
    align-items: stretch;
    -ms-flex-line-pack: start;
    align-content: flex-start;
    box-sizing: border-box;
    padding: 24px 30px 56px
}

#homepage .teacher-directory h3 {
    display: inline-block;
    white-space: nowrap
}

#homepage .teacher-directory ul {
    display: inline-block;
    padding-left: 16px;
    text-align: left
}

#homepage .teacher-directory ul li {
    display: inline-block;
    padding-bottom: 16px
}

#homepage .teacher-directory ul li:not(:last-child) {
    padding-right: 16px
}

#homepage .teacher-directory ul li a {
    font-weight: 400;
    text-decoration: none;
    color: #3722d3
}

#homepage .teacher-directory ul li a:hover {
    text-decoration: underline
}

@media screen and (max-width:809px) {
    #homepage .teacher-directory {
        padding-bottom: 24px
    }
}

@media screen and (max-width:540px) {
    #homepage .teacher-directory {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap
    }
    #homepage .teacher-directory h3 {
        padding-bottom: 12px
    }
    #homepage .teacher-directory ul {
        text-align: center
    }
}

#homepage .categories-directory {
    display: -ms-flexbox;
    display: flex;
    box-sizing: border-box;
    padding: 0 30px 72px
}

#homepage .categories-directory ul {
    text-align: left;
    box-sizing: border-box;
    -ms-flex: 1;
    flex: 1;
    padding: 0 5px
}

#homepage .categories-directory ul li:not(:last-child) {
    padding-bottom: 10px
}

#homepage .categories-directory ul li.categories-list-header {
    padding-bottom: 16px
}

#homepage .categories-directory ul li a:hover {
    color: #3722d3;
    text-decoration: underline
}

#homepage .categories-directory ul li a.js-full-list {
    font-weight: 700;
    text-decoration: none;
    color: #3722d3
}

#homepage .categories-directory ul li a.js-full-list:hover {
    text-decoration: underline
}

@media screen and (max-width:1229px) {
    #homepage .categories-directory {
        padding: 0 50px 72px
    }
}

@media screen and (max-width:600px) {
    #homepage .categories-directory {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        padding-bottom: 8px
    }
    #homepage .categories-directory ul {
        -ms-flex-preferred-size: 50%;
        flex-basis: 50%;
        padding-bottom: 48px
    }
}

@media screen and (max-width:375px) {
    #homepage .categories-directory {
        padding: 0 24px 8px
    }
}

@media screen and (max-width:320px) {
    #homepage .categories-directory {
        padding: 0 50px 8px
    }
    #homepage .categories-directory ul {
        -ms-flex-preferred-size: 100%;
        flex-basis: 100%
    }
}

#homepage .site-footer,
#homepage .site-footer-mobile {
    margin-top: 0;
    min-width: 0
}

#homepage #mobile-screens {
    position: relative;
    width: 100%
}

#homepage #mobile-screens img {
    -ms-flex-order: unset;
    order: unset;
    position: absolute
}

#homepage #mobile-screens img#learn-from-anywhere-tablet {
    top: -300px;
    left: 221px
}

@media screen and (max-width:989px) {
    #homepage #mobile-screens img#learn-from-anywhere-tablet {
        top: -222px;
        left: 169px
    }
}

@media screen and (max-width:809px) {
    #homepage #mobile-screens img#learn-from-anywhere-tablet {
        display: none
    }
}

#homepage #mobile-screens img#learn-from-anywhere-phone {
    top: 55px;
    left: 125px
}

@media screen and (max-width:989px) {
    #homepage #mobile-screens img#learn-from-anywhere-phone {
        top: 4px;
        left: 72px
    }
}

@media screen and (max-width:809px) {
    #homepage #mobile-screens img#learn-from-anywhere-phone {
        top: -30px;
        left: 0;
        margin-left: 42px
    }
}

@media screen and (max-width:540px) {
    #homepage #mobile-screens img#learn-from-anywhere-phone {
        display: none
    }
}

@media screen and (max-width:809px) {
    #homepage #mobile-screens {
        width: 285px
    }
}