@import url("../includes/fonts/Modelica/style.css");

body.home.teal-theme h1,
body.home.teal-theme h2,
body.home.teal-theme p{
    font-family: "Bw Modelica Regular";
}
body.home:not(.logged-in).teal-theme .col-full,
body.home:not(.logged-in).teal-theme #top #main-header{
    max-width: 1140px;
}
body.teal-theme.home:not(.logged-in) #logo{
    padding:0;
    width: 90%;
}
body.teal-theme.logged-in #header{
    padding: 10px 0;
}
body.teal-theme.home:not(.logged-in) #header{
    position: absolute;
    width: 100%;
    z-index: 10;
}
body.teal-theme:not(.logged-in) #toggle-top-menu{
    margin: 0;
}

body.home.teal-theme:not(.logged-in) section a:not(.btn-cta){
    color: #3bc2b7;
}
body.teal-theme a{
    text-decoration: none;
}
body.teal-theme.home .fancybox-content{
    padding: 30px;
}
body.teal-theme .top-bar-inner.flex{
    align-items: center;
}
.flex{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.logged-out-menu{
    display: none;
}
.logged-out-menu .flex{
    align-items: center;
}
.logged-out-menu > ul > li{
    padding: 25px 15px;
    position: relative;
}
.logged-out-menu ul li a{
    text-decoration: none;
}
.logged-out-menu ul li a{
    color: #fff;
    /*font-weight: bold;*/
}
.logged-out-menu ul li.signup-menu{
    margin-left: 40px;
    padding: 25px;
}
.logged-out-menu ul li.signup-menu a:hover{
    color: #fff;
}
.logged-out-menu ul li.has-submenu ul{
    display: none;
    position: absolute;
    left: 0;
    top: 71px;
    background: #2F2F2F;
    width: 200px;
    z-index: 20;
}
.subscription_flow .logged-out-menu ul li:not(.signin-menu),
.subscription_flow #responsive-menu-left ul li.signup-menu{
    display: none;
}

body.teal-theme .login_box{
    display: none;
    left: -40px;
    top: 72px;
    background: #3bc2b7
}
body.teal-theme  .login_box:after{
    left: 0;
    right: 0;
    margin: 0 auto;
    width: 5px;
    border-color:transparent transparent #3bc2b7 transparent
}
body.teal-theme .login_box form input{
    background: #fff;
}
/*body.teal-theme .login_box #sidebar-wp-submit{*/
body .login_box #sidebar-wp-submit{
    background: #fff;
    color: #3bc2b7!important;
    box-shadow: none;
}
.btn.btn-cta{
    padding: 8px 25px;
    border-width: 3px;
    border-style: solid;
    text-transform: uppercase;
    border-radius: 15px;
    text-transform: uppercase;
    margin-top:20px;
    border-color: #3bc2b7;
    color: #3bc2b7;
    transition: all 0.2s;
    -webkit-transition: all 0.2s;
}
.btn.btn-cta:hover{
    background: #3bc2b7;
    color: #fff;
    border-color: #4e9792;
}
body.home.teal-theme .btn-cta.btn-white{
    color: #fff;
    border-color: #fff;
}
body.home.teal-theme .btn-cta.btn-white:hover{
    background: #fff;
    color:#3bc2b7;
}
body.teal-theme a.btn-cta.btn-teal{
    color: #fff;
    border-color: #4e9792;
    background: #3bc2b7;
}
body.teal-theme a.btn-cta.btn-teal:hover{
    color: #3bc2b7;
    background: #fff;
}
body.teal-theme li.signup-menu{
    background: #3bc2b7;
}
body.teal-theme.home .fancybox-content{
    background: transparent;
    padding: 0;
}
body.teal-theme.home .fancybox-close-small svg{
    color: #fff;
}
body.teal-theme.home section{
    padding: 60px 0;
}
body.teal-theme.home section h1{
    font-size: 2.2rem;
    text-align: center;
    margin-bottom: 20px;
    font-family: "Bw Modelica Regular";
}
body.teal-theme.home section .grid .item{
    transition: all .3s ease;
}
body.teal-theme.home section .grid .item figure img{
    height: auto;
    user-select: none;
}
body.teal-theme.home section .grid .item figcaption{
    padding: 30px 0;
    font-size: 17px;
    user-select: none;
}
body.teal-theme.home  section .flex.grid .item figcaption p:first-child{
    text-transform: uppercase;
    font-size: 20px;
}
/**
 * Banner Hero
 */
section#banner-hero{
    height: 75vh;
    background-size:cover;
    background-position: center center;
    width: 100%;
    padding: 0;
    transition: all .3s ease;
    -webkit-transition: all .3s ease;
    position: relative;
}
section#banner-hero #banner-hero-trailler::after{
    content:'';
    top: 0;
    bottom: 0;
    position:absolute;
    width: 100%;
    background: rgba(0, 0, 0, 0.5);
}
section#banner-hero header{
    display: flex;
    flex-direction: column;
    height: 100%;
    justify-content: center;
    transition: all .3s ease;
    -webkit-transition: all .3s ease;
}
section#banner-hero .col-full{
    height: 100%;
}
section#banner-hero header h1{
    font-size: 2.8rem;
    margin-top: 5px;
    width: 60%;
    font-weight: bold;
}
section#banner-hero header h2{
    font-size: 1.3rem;
    font-weight: 400;
}
section#banner-hero header p{
    font-size: 1.4rem;
    font-weight: bold;
}
section#banner-hero header h1,
section#banner-hero header h2,
section#banner-hero header p{
    text-align: left;
    color: #fff;
}
section#banner-hero header a{
    align-self: flex-start;
    margin-top: 30px;
    margin-right: 15px;
    font-size: 1rem;
}
section#banner-hero header a:first-child {
    background: #3bc2b7;
    color:#fff;
}
section#banner-hero header a:first-child:hover{
    background: none;
    border-color:#3bc2b7;
}
section#banner-hero header a:last-child:hover{
    background: none;
    border-color:#3bc2b7;
    color:#fff;
}
section#banner-hero .hero-video-container {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
/**
 * About
 */
section#about{
    background-color: #f6f6f6;
    background-image: url(/wp-content/themes/canvas/images/teal-theme/bg-teal-about.jpg);
    background-position: left bottom;
    background-repeat: no-repeat;
    background-size: 40% 100%;
    padding: 0;
}
section#about .about-inner .box-left #about-video{
    background: #f00;
    border-radius: 50%;
    position: relative;
    width: 75px;
    height: 75px;
    box-shadow: 2px 5px 5px rgba(0, 0, 0, 0.2);
    -webkit-box-shadow: 2px 5px 5px rgba(0, 0, 0, 0.2);
}
section#about .about-inner .box-left #about-video::after{
    content: '';
    position: absolute;
    width: 0;
    height: 0;
    border-top: 15px solid transparent;
    border-bottom: 15px solid transparent;
    border-left: 25px solid #fff;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto auto auto 30px;
}
section#about h1{
    margin: 0;
    text-align: left;
}
section#about .about-inner .box-left{
    background-image: url('/wp-content/themes/canvas/images/teal-theme/bg-section-about.jpg');
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    background-color: #f6f6f6;
    position: relative;
    width: 40%;
    display: flex;
    align-items: center;
    justify-content: center;
}
section#about .box-right{
    padding:30px 0;
    box-sizing: border-box;
    color: #2F2F2F;
}
section#about .box-right p{margin-bottom: 10px}
section#about .box-right .counters.flex{
    justify-content: space-between;
    padding: 40px 0;
}
section#about .box-right .counters .counter-item{
    text-align: left;
}
section#about .box-right .counters .counter-item .value{
    font-size: 40px;
    line-height: 40px;
    font-weight: bold;
    margin-bottom: 20px;
}
body.teal-theme section#about .box-right .counters .counter-item .value{
    color: #3bc2b7;
}
section#about .box-right .counters .counter-item .text{
    color: #2F2F2F;
    font-size: 14px;
    font-weight: bold;
    font-family: "Bw Modelica Regular";
    text-transform: uppercase;
}
/**
 * Lessons
 */
section#lessons .tabs-lessons{
    justify-content: center;
    text-align: center;
    margin: 0 auto;
}
section#lessons .tabs-lessons{
    margin-bottom: 30px;
}
section#lessons .tabs-lessons li{
    margin: 5px 10px;
    cursor: pointer;
    user-select: none;
}
section#lessons .tabs-lessons li a{
    margin:0;
}
body.teal-theme section#lessons .tabs-lessons li:hover,
body.teal-theme section#lessons .tabs-lessons li.active{
    color: #3bc2b7;
}
body.teal-theme section#lessons .tabs-lessons li.active a{
    background: #3bc2b7;
    color: #fff;
    border-color: #4e9792;
}
section#lessons .tab-content{display: none;transition: all .3s ease }
section#lessons .tab-content.active{
    display: block;
}
section#lessons .flex.grid .item figcaption p{
    font-size: 16px;
    margin-bottom: 10px;
    line-height: 20px;
    font-family: "Bw Modelica Regular";
}
body.teal-theme section#lessons .flex.grid .item figcaption p span{
    color: #3bc2b7;
}
section#lessons .flex.grid .item figcaption .lesson-instructor{
    font-size: 14px;
}
section#lessons footer.flex{
    justify-content: center
}
section#lessons footer.flex a{margin-right: 20px;}
/**
 * Trainingg Solution
 */
section#training-solution {
    background: #f6f6f6;
}
section#training-solution header{
    margin-bottom: 20px;
    text-align: center;
}
section#training-solution header h1{
    margin:0;
}
section#training-solution .grid .item{
    position: relative;
    margin-bottom: 15px;
}
/*section#training-solution .grid .item figure{
    transition: all .3s;
    -webkit-transition: all .3s;
}
section#training-solution .grid .item figure.alternative-image{
    position:absolute;
    top: 0;
    bottom:0;
    opacity: 0;
    width: 100%;
}
section#training-solution .grid .item:hover figure.main-image{
   opacity: 0;
}
section#training-solution .grid .item:hover figure.alternative-image{
   opacity: 1;
}*/


/**
 * Services
 */
section#services{
    background: #fff;
}
section#services .grid{
    padding-top: 40px;
}
section#services .grid .item{
    text-align: center;
    margin-bottom: 40px;
}
section#services .grid .item .fa{
    font-size:3em;
}
body.teal-theme .grid .item .fa{
    color: #3bc2b7;
}
section#services .grid .item h2{
    font-size: 16px;
    font-weight: bold;
    margin: 20px 0;
}
/**
 * Trial
 */
section.trial{
    text-align: center;
}
section.trial h1,section.trial p{color:#fff;}
body.teal-theme section.trial{
    background:  #3bc2b7;
}
body.teal-theme section.trial a:hover{
    color: #fff;
}
/**
 * Instructors
 */
section#instructors h1{
    margin-bottom: 30px;
}
section#instructors .grid .item {
    width: 190px;
}
section#instructors .grid .item a{
    font-size: 16px;
}
section#instructors .grid .item{
    position: relative;
}
section#instructors .grid .item figure.main-image img{
    filter: grayscale(100%);
    -webkit-filter: grayscale(100%);
}
section#instructors .grid .item figure.alternative-image img{
    opacity: 0;
}
section#instructors .grid .item figure.alternative-image img{
    position: absolute;
    top: 0;
    left: 0;
    visibility: hidden;
    width: 100%;
    height: 100%;
}
section#instructors .grid .item figcaption{
    opacity: 0;
    width: 100%;
    background: rgba(0,0,0,.5);
    text-align: center;
    position: absolute;
    bottom: 0;
    left: 0;
    padding: 20px 0;
    z-index: 5;
    transition: all 0.3s;
    -webkit-transition: all 0.3s;
}
section#instructors .grid .item:hover  figure.main-image figcaption{
    opacity: 0;
}
section#instructors .grid .item:hover figure.alternative-image{
   visibility: visible;
}
section#instructors .grid .item:hover figure.alternative-image img,
section#instructors .grid .item:hover figure.alternative-image figcaption{
    opacity: 1;
}
section#instructors .grid .item img{
    transition: all 0.3s;
    -webkit-transition: all 0.3s;
}
section#instructors .grid .item:hover figure.main-image img{
    opacity: 0;
}
section#instructors .grid .item:hover figure.alternative-image img{
    opacity: 1;
    visibility: visible;
}
section#instructors .grid .item{
    background-size: cover;
    background-repeat: no-repeat;
    flex: 1 1 auto;
}
section#instructors .grid .item figcaption p {
    font-size: 1rem;
    text-transform: uppercase;
    font-weight: bold;
    margin-bottom: 0px;
    color: #fff;
}
/**
 * Reference Images
 */
section#reference-images{
    text-align: center;
}
section#reference-images h1 {
    margin-bottom: 10px;
    margin-top: 25px;
}
section#reference-images .grid{
    padding: 20px 0;
    width: 100%;
    justify-content: space-around;
}
section#reference-images .grid .item{
    width: calc( 25% - 100px);
}
section#reference-images .grid .item div.stack.sets-archive{
    width: auto;
    float: none;
}
section#reference-images .grid .item p{
    font-size: 1rem;
    color:#000;
}
section#reference-images footer{
    padding-top: 50px;
    text-align: left;
    align-items: center;
}
section#reference-images footer h1{
    text-align: left;
    font-size: 2rem;
}
section#reference-images footer h2{
    font-weight: bold;
    margin: 20px 0;
    font-size: 1rem;
}
section#reference-images footer p{
    text-align: justify;
}
section#reference-images footer > div{
   flex:1;
}
section#reference-images footer .box-left{
    position: relative;
}
section#reference-images footer .box-left .loading{
    background: url(../includes/images/loading.gif) center center no-repeat;
    background-size: cover;
    width: 40px;
    height: 40px;
    position: absolute;
    top: 25%;
    left: 0;
    right: 0;
    margin: 0 auto;
}
/**
 * Testimonials
 */
section#testimonials{
    background-color: #f6f6f6;
    background-image: url(/wp-content/themes/canvas/images/teal-theme/bg-teal-testimonials.jpg);
    background-position: right bottom;
    background-repeat: no-repeat;
    background-size: 50% 100%;
    padding: 0;
}
section#testimonials h1{
    font-weight: 400;
    font-size: 2.2rem;
    text-align: left
}

section#testimonials .testimonials-inner .box-left{
    z-index: 1;
    background: #f6f6f6;
}
section#testimonials .testimonials-inner .box-left p{
    margin-bottom: 10px;
}
section#testimonials .testimonials-inner .box-right .testimonial-image{
    background-image: url(/wp-content/themes/canvas/images/teal-theme/bg-section-testimonials-top.jpg);
    background-position: right top;
    background-repeat: no-repeat;
    background-size: cover;
    background-color: #f6f6f6;
    position: relative;
    padding-bottom: 56.25%;
    z-index: 1;
}
section#testimonials .testimonials-inner .box-right .testimonial-image .quotes{
    background-image: url(/wp-content/themes/canvas/images/teal-theme/quotes.png);
    width: 80px;
    height: 80px;
    background-size: cover;
    position: absolute;
    bottom: -36px;
    left: 20%;
}
section#testimonials .testimonials-inner .box-right .testimonial-text:before{
    content: '';
    position: absolute;
    width: 60px;
    top: 0;
    bottom: 0;
    background: #fff;
}
section#testimonials .testimonials-inner .box-right p{
    color: #fff;
    padding: 30px 10px 30px 80px;
    font-size: 17px;
}
section#testimonials a,
section#reference-images a{
    font-weight: bold;
    margin-top: 30px;
    display: block;
    font-size: 14px;
    font-family:  "Lucida Grande", "Lucida Sans Unicode", "Lucida Sans", sans-serif;
}
section#footer-widgets a{
    color: #fff;
}
section#footer-widgets .widget_social_widget .subscribe a{
    background: none;
}
section#footer-widgets .widget_social_widget .subscribe a:hover{
    border-color:#3bc2b7;
}
.woocommerce-order-received.woocommerce-order-received h1.title{
    margin: 0;
}
.woocommerce-order .congratulation h2{
    font-weight: bold;
}
.woocommerce-order .congratulations a{
    margin-top: 0;
}
.woocommerce-order .congratulations{
    border-bottom: 1px solid #ddd;
    margin-bottom: 20px;
    padding-bottom: 20px;
}

section#banner-hero .col-full .btn.watch-trailler{
    position: relative;
    padding-right: 45px;
}

section#banner-hero .col-full .btn.watch-trailler::after {
    content: '';
    position: absolute;
    width: 0;
    height: 0;
    border-top: 10px solid transparent;
    border-bottom: 10px solid transparent;
    border-left: 15px solid #fff;
    top: 0;
    bottom: 0;
    right: 15px;
    margin: auto auto auto 30px;
}

@media only screen and (-webkit-min-device-pixel-ratio: 2),
only screen and (min--moz-device-pixel-ratio: 2),
only screen and (min-resolution: 240dpi) {
    section#about .about-inner .box-left {
        background-image: url(/wp-content/themes/canvas/images/teal-theme/bg-section-about@2x.jpg);
    }
    section#testimonials .testimonials-inner .box-right .testimonial-image {
        background-image: url(/wp-content/themes/canvas/images/teal-theme/bg-section-testimonials-top@2x.jpg);
    }
}
@media (min-width:1024px){
    .logged-out-menu{
        display: block;
    }
    body.teal-theme #top #main-header:not(.logged-in){
        padding: 0 20px;
    }
}
@media (max-width:1024px){
    body.teal-theme #top #main-header{
        padding: 10px 20px;
    }
}
@media (min-width:992px){

    body.teal-theme.home .fancybox-content{
        width:50%;
    }
    section#banner-hero header{
        padding-top: 60px;
    }
    section p{
        font-size: 17px;
    }
    section .grid .item{
        width: calc( 33% - 40px );
    }
    section#lessons .grid .item:nth-child(3n) {
        page-break-after: always; /* CSS 2.1 syntax */
        break-after: always; /* New syntax */
    }
}
@media (max-width:992px){
    body.teal-theme.home .fancybox-content{
        width: 90%;
    }
    section#about h1{
        text-align: center;
        font-size: 1.5rem;
    }
    section#banner-hero header h1{
        width: 100%;
        font-size: 1.5rem;
    }
    section#banner-hero header h2{
        font-size: 1rem;
    }
    section#about{
        background: #f6f6f6;
    }
    section#about .about-inner .box-left {
        background-size: cover;
        background-position: center;
    }
    section#about .box-right .counters.flex{
        padding: 20px 0;
        flex-direction: column;
    }

    section#about .box-right .counters .counter-item{
        margin:20px 0;
        text-align: center;
    }
    section#testimonials .testimonials-inner .box-left {
        padding: 15px 0;
    }
    section#testimonials h1{
        font-size: 22px;
    }
    section#instructors .grid .item figcaption{
        opacity: 1;
    }

}
@media (min-width: 768px){
    section#testimonials .testimonials-inner .box-left{
        padding: 60px 100px 0 0;
        flex-grow: 1;
    }
    section#testimonials .testimonials-inner > div{
        width: calc(50% - 100px);
    }

    section#reference-images footer .box-left{
        padding-right: 50px;
    }

}
@media (min-width: 768px) and (max-width: 900px){
    section#instructors .grid .item{
        width: calc(25%);
    }
}
@media (min-width: 900px){
    section#instructors .grid .item{
        width: calc(15%);
    }
}
@media (max-width: 768px){
    section div.col-full{
        padding: 0 20px;
    }
    header nav{display: none;}
    section#about .flex{
        width: calc(100%);
    }
    section#testimonials{
        background: #f6f6f6;
    }
    section#reference-images footer{
        flex-direction: column-reverse;
    }
    section#reference-images footer h1{
        text-align: center;
        font-size: 1.8rem;
    }
    section#reference-images footer > div{
        margin-top:15px;
        width: 100%;
        text-align: center;
    }
    section#testimonials .testimonials-inner .box-right .testimonial-text{
        background: #3bc2b7;
    }
    section#reference-images .grid .item {
        width: 30%;
    }
    section#instructors .grid .item{
        width: calc(25%);
    }
    section#training-solution .grid .item{
        width: calc(50% - 10px);
    }
}
@media (max-width: 700px){
    section#instructors .grid .item{
        width: 26%;
    }
}
@media (min-width:768px) and (max-width:992px){
    section:not(#instructors) .grid .item{
        width: calc(33% - 50px);
    }
    section#reference-images .grid .item {
        width: 23%;
    }
}
@media (max-width: 580px){
    section#reference-images .grid .item {
        width: 50%;
    }
}
@media (min-width:480px){
    section#about .box-right{
        width: 50%;
    }
    .woocommerce-order .congratulations .btn-teal{
        margin-right: 20px;
    }
}
@media (min-width:480px) and (max-width:768px){
    section .grid{
        justify-content: space-between;
    }
    section .grid .item {
        width: calc(50% - 50px);
        text-align: center;
    }
}
@media (max-width: 480px){
    .btn.btn-cta{
        display: block;
        text-align: center;
    }
    .woocommerce-order .congratulations a{
        margin-bottom: 15px;
    }
    .flex.grid{
        justify-content: center;
    }
    section .grid .item figure{
        text-align: center;
    }
    section h1{
        font-size: 1.5rem;
    }
    section#banner-hero{
        background-position: 70% 0;
    }
    section#about .about-inner .box-left{
        width: 100%;
        height: 400px;
    }
    section#about h1{
        text-align: center;
    }
    section#about .box-right .counters.flex{
        justify-content: center
    }
    section#instructors .grid .item{
        width: calc(50%);
    }
    section#training-solution .flex.grid{
        justify-content: space-between;
    }
    section#banner-hero{
        height: 100vh;
    }
}
@media (max-width: 320px){
    section .grid .item{
        width: 100%!important;
    }

}