html, body {
    height: 100%;
}

body {
    font-family: 'Lato', 'Helvetica Neue', Helvetica, Arial, sans-serif;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: 'Lato', 'Helvetica Neue', Helvetica, Arial, sans-serif;
    font-weight: 700;
}

.bg-dark {
    background-color: #1e3650 !important;
}

header.masthead {
    position: relative;
    background: #343a40 url("../images/bg-07.jpg") no-repeat center center;
    background-size: cover;
    padding-top: 8rem;
    padding-bottom: 8rem;
}

header.masthead .overlay {
    position: absolute;
    background-color: #212529;
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
    opacity: 0.3;
}

header.masthead h1 {
    font-size: 2rem;
}

@media (min-width: 768px) {
    header.masthead {
        padding-top: 12rem;
        padding-bottom: 12rem;
    }
    header.masthead h1 {
        font-size: 3rem;
    }
}

.intro h2 {
    font-weight: 300;
    font-size: 1.4rem;
}

.showcase .showcase-text {
    padding: 3rem;
}

.showcase .showcase-img {
    min-height: 30rem;
    background-size: cover;
}

@media (min-width: 768px) {
    .showcase .showcase-text {
        padding: 7rem;
    }
}

.at-section {
    padding: 4em 0 7em 0;
    position: relative;
    z-index: 2;
}

.at-section.top {
    padding-top: 6em;
}

.at-section.at-section-extra {
    padding: 4em 0;
    margin-bottom: 20em;
}

.at-section.at-section-extra.last {
    margin-bottom: 7em;
}

@media screen and (max-width: 1350px) {
    .at-section.at-section-extra {
        margin-bottom: 2em;
    }
}

@media screen and (max-width: 1200px) {
    .at-section.at-section-extra {
        margin-bottom: 0;
    }
}

@media screen and (max-width: 768px) {
    .at-section.at-section-extra {
        margin-bottom: 0;
    }
}

.at-section.at-section-sm {
    padding: 3em 0;
}

.at-section.probootstrap-border-top {
    border-top: 1px solid rgba(0, 0, 0, 0.1);
}

.at-section.probootstrap-border-bottom {
    border-bottom: 1px solid rgba(0, 0, 0, 0.1);
}

.at-section > .container.probootstrap-border-top {
    padding-top: 50px;
    border-top: 1px solid rgba(0, 0, 0, 0.1);
}

.at-section.at-section-colored, .at-section.at-section-dark {
    background: #6078EA;
}

.at-section.at-section-colored .section-heading h2, .at-section.at-section-colored .section-heading .heading-with-icon, .at-section.at-section-dark .section-heading h2, .at-section.at-section-dark .section-heading .heading-with-icon {
    color: white;
}

.at-section.at-section-colored .section-heading p, .at-section.at-section-dark .section-heading p {
    color: rgba(255, 255, 255, 0.6);
}

.at-section.at-section-colored .heading-with-icon, .at-section.at-section-dark .heading-with-icon {
    color: #ffffff;
}

.at-section.at-section-colored .heading-with-icon i, .at-section.at-section-dark .heading-with-icon i {
    color: #17EAD9;
}

.at-section.at-section-colored p, .at-section.at-section-dark p {
    color: rgba(255, 255, 255, 0.6);
}

.at-section.at-section-dark {
    background: #333333;
}

.at-section.probootstrap-bg-white {
    background: #ffffff;
}

@media screen and (max-width: 768px) {
    .at-section {
        padding: 3em 0;
    }
}

.at-section.probootstrap-bg {
    background-size: cover;
    background-repeat: no-repeat;
}

.at-section.probootstrap-bg:before {
    position: absolute;
    content: "";
    background: rgba(0, 0, 0, 0.4);
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
}

.at-feature-first {
    position: relative;
}

.at-box {
    background: #ffffff;
    padding: 2em;
    margin-bottom: 1.5em;
    -webkit-box-shadow: 18px 17px 104px -24px rgba(0, 0, 0, 0.1);
    box-shadow: 18px 17px 104px -24px rgba(0, 0, 0, 0.1);
}

.at-box .icon {
    height: 6rem;
    text-align: center;
}

.at-box .icon i {
    font-size: 4rem;
}

.features-icons {
    padding-top: 7rem;
    padding-bottom: 7rem;
}

.features-icons .features-icons-item {
    max-width: 20rem;
}

.features-icons .features-icons-item .features-icons-icon {
    height: 7rem;
}

.features-icons .features-icons-item .features-icons-icon i {
    font-size: 4.5rem;
}

.features-icons .features-icons-item:hover .features-icons-icon i {
    font-size: 5rem;
}

.testimonials {
    padding-top: 7rem;
    padding-bottom: 7rem;
}

.testimonials .testimonial-item {
    max-width: 18rem;
}

.testimonials .testimonial-item img {
    max-width: 12rem;
    box-shadow: 0 5px 5px 0 #adb5bd;
}

.call-to-action {
    position: relative;
    background: #343a40 url("../images/bg-01.jpg") no-repeat center center;
    background-size: cover;
    padding-top: 7rem;
    padding-bottom: 7rem;
}

.call-to-action .overlay {
    position: absolute;
    background-color: #212529;
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
    opacity: 0.3;
}

.new-badge {
    font-size: 10px;
    animation: float 6s ease-in-out infinite;
}

footer.footer {
    padding-top: 4rem;
    padding-bottom: 4rem;
}

.custom-separator {
    width: 5rem;
    height: 6px;
    border-radius: 1rem;
}

/*About page*/
section.about {
    background-image: url(../images/about-us.jpg);
    background-position: bottom center;
    background-repeat: no-repeat;
    background-size: cover;
}

/*TheorieNet page*/

@media screen and (max-width: 768px) {
    section.about {
        min-height: 650px;
    }
}

@media screen and (min-width: 768px) {
    section.about {
        min-height: 600px;
    }
}

section.stats {
    padding-top: 7rem;
    padding-bottom: 7rem;
}

section.stats .icon i {
    font-size: 4rem;
}

.media .why-icon {
    width: 100px;
}

.shadow-none {
    box-shadow: none!important;
}

.faq .card {
    border-width: 0;
}

.faq .card-btn {
    color: #1e2022;
    text-align: left;
    white-space: inherit;
    border-radius: .75rem;
}

.faq .btn-link {
    font-weight: 600;
    text-decoration: none;
}

.faq .btn-link:hover {
    color: #007bff;
    text-decoration: none;
}

.faq .btn-link.focus, .faq .btn-link:focus {
    text-decoration: none;
    color: #007bff;
}

.faq .card-collapse {
    padding: 0;
    transition: .3s ease-in-out;
}

.faq .card-header {
    margin-bottom: 0;
    background-color: #fff;
    border-bottom: .0625rem solid rgba(231,234,243,.7);
}

.faq .card-btn-toggle {
    display: inline-block;
    color: #007bff;
}

.card-btn-toggle-default {
    display: none;
}

.faq .card-btn.collapsed .card-btn-toggle-default {
    display: block;
}

.faq .card-btn.collapsed .card-btn-toggle-active {
    display: none;
}

.card {
    box-shadow: 0 0.15rem 1.75rem 0 rgba(33, 40, 50, 0.15);
}

.icon-box .icon {
    font-size: 2.375rem;
    margin: 0 0 10px;
    color: #007bff;
    transition: all .3s ease-in-out;
}

.error-page .content {
    width: 100%;
}

.error-page h1 {
    font-size: 186px;
    font-weight: 200;
    margin: 0;
    background: linear-gradient(130deg, #007bff, #1c4266);
    color: transparent;
    -webkit-background-clip: text;
    text-transform: uppercase;
}

.error-page h2 {
    font-size: 33px;
    font-weight: 200;
    text-transform: uppercase;
    margin-top: 0;
    margin-bottom: 25px;
    letter-spacing: 3px;
}

.full-width {
    width: 100%;
}

.mb-7 {
    margin-bottom: 5rem
}
