@charset "UTF-8";

:root {
    --primary-orange: #F60;
    --primary-hover: #E55C00;
    --secondary-blue: #1483b5;
    --light-grey: #f0f0f0;
    --dark-grey: #474A4E;
    --white: #ffffff;
    --black: #333;
}

/* # Helper and Basic classes */

::selection {
    background-color: var(--primary-orange);
    color: #fff;
}

.clear {
    clear: both;
}

.no-border {
    border: none;
}

.shadow {
    border: none;
    box-shadow: 0 1px 2px 1px rgba(0, 0, 0, 0.12);
}

.w-255 {
    width: 255px;
}

.w-350 {
    width: 350px;
}

.margin-l-5 {
    margin-left: 5px;
}

.top-margin-70 {
    margin-top: 70px;
}

.top-margin-50 {
    margin-top: 50px;
}

.font-size-30 {
    font-size: 30px;
}

@media (max-width: 999px) {
    .no-margin-mobile {
        margin-top: 0 !important;
    }

    .no-padding-mobile .vc_column-inner {
        padding-top: 0 !important;
    }
}

/* ## Section Spacing */
.section {
    background-repeat: no-repeat;
    padding-bottom: 40px;
    padding-top: 40px;
}

@media (min-width: 1000px) {
    .section {
        padding-bottom: 60px;
        padding-top: 60px;
    }

    .section.padding-after {
        padding-bottom: 35px;
        padding-top: 0;
    }
}

/* ## Backgrounds */
.bg-primary {
    background-color: var(--primary-orange);
}

.bg-gray {
    background-color: #f8f9f9;
}

.bg-dark {
    background-color: #252525;
}

.bg-dark * {
    color: rgba(255, 255, 255, 0.4);
}

.bg-dark h1,
.bg-dark h2,
.bg-dark h3,
.bg-dark h4,
.bg-dark h5,
.bg-dark h6 {
    color: #fff;
}

.gray-bg {
    background-color: #eee;
}

.gray-gradient {
    background-image: linear-gradient(to top, #ededed, #fff) !important;
}

/* ## Color helpers */
.important {
    color: var(--primary-orange) !important;
}

.white-block h2,
.white-block h3,
.white-block h4,
.white-block h5,
.white-block p {
    color: var(--white) !important;
}

.knockout-block h2,
.knockout-block h3,
.knockout-block p {
    color: #fff;
}

.teal-border-bottom {
    border-bottom: 1px solid var(--secondary-blue);
}

.sm-border-b-red,
.sm-border-b-white {
    position: relative;
}

.sm-border-b-red::after {
    content: "";
    display: block;
    width: 100px;
    height: 3px;
    background-color: var(--primary-orange);
    margin-top: 25px;
}

.sm-border-b-white::after {
    content: "";
    display: block;
    width: 100px;
    height: 3px;
    background-color: var(--white);
    margin-top: 25px;
}

.border-center::after {
    margin-left: auto;
    margin-right: auto;
}

.filter-primary-teal {
    filter: invert(63%) sepia(11%) saturate(2207%) hue-rotate(134deg) brightness(91%) contrast(88%);
}

/* # Custom Paddings (helper classes) */

.no-bottom-padding {
    padding-bottom: 0 !important;
}

@media (min-width: 1000px) {
    .no-bottom-padding-md {
        padding-bottom: 0 !important;
    }
}

@media (min-width: 1200px) {
    .no-bottom-padding-lg {
        padding-bottom: 0 !important;
    }
}

.no-top-padding {
    padding-top: 0 !important;
}

.no-padding {
    padding-bottom: 0 !important;
    padding-top: 0 !important;
}

@media (min-width: 1000px) {
    .padding-small {
        padding: 50px 0;
    }

    .padding-top-small {
        padding-top: 30px;
    }

    .padding-bottom-small {
        padding-bottom: 30px;
    }

    .padding-bottom-big {
        padding-bottom: 60px;
    }

    .padding-bottom-xl {
        padding-bottom: 100px;
    }

    .title.margin-bottom-small {
        margin-bottom: 40px;
    }
}

.padded-block {
    padding-top: 70px;
    padding-bottom: 70px;
}

.padded-bottom {
    padding-bottom: 70px;
}

.padded-top {
    padding-top: 70px;
}

.padding-row-compensate {
    padding-left: 15px;
    padding-right: 15px;
}

/* # Layout helpers */

.container.short-container {
    max-width: 780px;
}

.iframe-container {
    position: relative;
    overflow: hidden;
    width: 100%;
    padding-top: 56.25%;
}

.responsive-iframe {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    width: 100%;
    height: 100%;
}

@media (min-width: 767px) {
    .vcenter {
        display: inline-block;
        vertical-align: middle;
        float: none;
        max-width: 49%;
    }
}

@media (min-width: 992px) {
    .vertical-align {
        display: flex;
        align-items: center;
    }
}
