/*! normalize.css v8.0.0 | MIT License | github.com/necolas/normalize.css */
/* Document
   ========================================================================== */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
html
{
    line-height: 1.15;
    /* 1 */

    -webkit-text-size-adjust: 100%;
    /* 2 */
}

/* Sections
   ========================================================================== */
/**
 * Remove the margin in all browsers.
 */
body
{
    margin: 0;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1
{
    font-size: 2em;

    margin: .67em 0;
}

/* Grouping content
   ========================================================================== */
/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr
{
    /* 1 */
    overflow: visible;

    -webkit-box-sizing: content-box;

            box-sizing: content-box;
    /* 1 */
    height: 0;
    /* 2 */
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre
{
    font-family: monospace, monospace;
    /* 1 */
    font-size: 1em;
    /* 2 */
}

/* Text-level semantics
   ========================================================================== */
/**
 * Remove the gray background on active links in IE 10.
 */
a
{
    background-color: transparent;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title]
{
    /* 1 */
    text-decoration: underline;
    /* 2 */
    -webkit-text-decoration: underline dotted;
            text-decoration: underline dotted;

    border-bottom: none;
    /* 2 */
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong
{
    font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp
{
    font-family: monospace, monospace;
    /* 1 */
    font-size: 1em;
    /* 2 */
}

/**
 * Add the correct font size in all browsers.
 */
small
{
    font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup
{
    font-size: 75%;
    line-height: 0;

    position: relative;

    vertical-align: baseline;
}

sub
{
    bottom: -.25em;
}

sup
{
    top: -.5em;
}

/* Embedded content
   ========================================================================== */
/**
 * Remove the border on images inside links in IE 10.
 */
img
{
    border-style: none;
}

/* Forms
   ========================================================================== */
/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input[type="text"], input[type="password"], input[type="email"],
optgroup,
select,
textarea
{
    font-family: inherit;
    /* 1 */
    font-size: 100%;
    /* 1 */
    line-height: 1.15;
    /* 1 */

    margin: 0;
    /* 2 */
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input[type="text"], input[type="password"], input[type="email"]
{
    /* 1 */
    overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select
{
    /* 1 */
    text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */
button,
[type='button'],
[type='reset'],
[type='submit']
{
    -webkit-appearance: button;
}

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type='button']::-moz-focus-inner,
[type='reset']::-moz-focus-inner,
[type='submit']::-moz-focus-inner
{
    padding: 0;

    border-style: none;
}

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type='button']:-moz-focusring,
[type='reset']:-moz-focusring,
[type='submit']:-moz-focusring
{
    outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */
fieldset
{
    padding: .35em .75em .625em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */
legend
{
    /* 2 */
    display: table;

    -webkit-box-sizing: border-box;

            box-sizing: border-box;
    /* 1 */
    max-width: 100%;
    /* 1 */
    padding: 0;
    /* 3 */

    white-space: normal;
    /* 1 */

    color: inherit;
    /* 1 */
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress
{
    vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea
{
    overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */
[type='checkbox'],
[type='radio']
{
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    /* 1 */
    padding: 0;
    /* 2 */
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type='number']::-webkit-inner-spin-button,
[type='number']::-webkit-outer-spin-button
{
    height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type='search']
{
    /* 1 */
    outline-offset: -2px;

    -webkit-appearance: textfield;
    /* 2 */
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type='search']::-webkit-search-decoration
{
    -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button
{
    /* 1 */
    font: inherit;

    -webkit-appearance: button;
    /* 2 */
}

/* Interactive
   ========================================================================== */
/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details
{
    display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary
{
    display: list-item;
}

/* Misc
   ========================================================================== */
/**
 * Add the correct display in IE 10+.
 */
template
{
    display: none;
}

/**
 * Add the correct display in IE 10.
 */
[hidden]
{
    display: none;
}

/**
 * Base
 */
html,
body
{
    width: 100%;
    height: 100%;
}

html
{
    font-size: 16px;

    -ms-touch-action: manipulation;
        touch-action: manipulation;
}

body
{
    font-family: 'Open Sans', 'Trebuchet MS', sans-serif;
    font-size: 100%;
    font-weight: 400;
    line-height: 1.45;

    color: #212121;
}

/* Avoid empty images to appear as broken */
img:not([src]):not([srcset])
{
    visibility: hidden;
}

/**
 * Typography
 */
a
{
    -webkit-transition: all .25s cubic-bezier(.4, 0, 1, 1);
    -o-transition: all .25s cubic-bezier(.4, 0, 1, 1);
    transition: all .25s cubic-bezier(.4, 0, 1, 1);
    text-decoration: none;
}

a:focus,
a:hover
{
    text-decoration: none;
}

h1,
h2,
h3,
h4,
h5,
h6
{
    font-family: 'Raleway', 'Open Sans', 'Trebuchet MS', sans-serif;
}

ul
{
    padding: 0;

    list-style-type: none;
}

/**
 * Animations atom
 */
@-webkit-keyframes gradient-animation
{
    0%
    {
        background-position: 50% 0;
    }
    50%
    {
        background-position: 51% 100%;
    }
    100%
    {
        background-position: 50% 0;
    }
}
@keyframes gradient-animation
{
    0%
    {
        background-position: 50% 0;
    }
    50%
    {
        background-position: 51% 100%;
    }
    100%
    {
        background-position: 50% 0;
    }
}

/**
 * Buttons atom
 */
.btn__container
{
    text-align: center;
}

.btn
{
    font-size: .875rem;

    cursor: pointer;
    -webkit-transition: all .25s cubic-bezier(.4, 0, 1, 1);
    -o-transition: all .25s cubic-bezier(.4, 0, 1, 1);
    transition: all .25s cubic-bezier(.4, 0, 1, 1);
    text-transform: uppercase;

    border-radius: 4px;
    -webkit-box-shadow: 0 15px 35px rgba(50, 50, 93, .1), 0 5px 15px rgba(0, 0, 0, .07);
            box-shadow: 0 15px 35px rgba(50, 50, 93, .1), 0 5px 15px rgba(0, 0, 0, .07);
}

.btn:active,
.btn:focus,
.btn:hover
{
    color: #fff;
    -webkit-box-shadow: 0 26px 35px rgba(50, 50, 93, .1), 0 14px 15px rgba(0, 0, 0, .07);
            box-shadow: 0 26px 35px rgba(50, 50, 93, .1), 0 14px 15px rgba(0, 0, 0, .07);
}

.btn--fab
{
    font-size: 1.5rem;

    display: block;

    text-align: center;

    color: #fff;
    border-radius: 50%;
}

.btn--fab--primary
{
    background-color: #2196f3;
}

.btn--fab--primary:focus,
.btn--fab--primary:hover
{
    background-color: #43a6f5;
}

.btn--fab--primary:active
{
    background-color: #0c84e4;
}

.btn--fab--big
{
    width: 3.5rem;
    height: 3.5rem;
    padding: 1rem;
}

.btn--fab--medium
{
    font-size: 1.5rem;

    width: 3rem;
    height: 3rem;
    padding: .35rem;
}

.btn--fab--small
{
    width: 2.5rem;
    height: 2.5rem;
    padding: .35rem;
}

.btn--full,
.btn--ghost
{
    font-weight: 700;

    padding: .5625rem 2.625rem;

    border: 2px solid;
}

.btn--full--black
{
    color: #fff;
    border-color: #181818;
    background-color: #181818;
}

.btn--full--black:focus,
.btn--full--black:hover
{
    border-color: #3e3e3e;
    background-color: #3e3e3e;
}

.btn--full--primary
{
    color: #0d207b;
    border-color: #fff;
    background-color: #fff;
}

.btn--full--primary:focus,
.btn--full--primary:hover
{
    border-color: #0d207b;
    background-color: #0d207b;
}

.btn--full--white
{
    color: #212121;
    border-color: #fff;
    background-color: #fff;
}

.btn--full--white:focus,
.btn--full--white:hover
{
    color: #474747;
}

.btn--ghost
{
    background: transparent;
}

.btn--ghost--black
{
    color: #181818;
    border-color: #181818;
}

.btn--ghost--black:focus,
.btn--ghost--black:hover
{
    color: #3e3e3e;
    border-color: #3e3e3e;
}

.btn--ghost--primary
{
    color: #2196f3;
    border-color: #2196f3;
}

.btn--ghost--primary:focus,
.btn--ghost--primary:hover
{
    color: #6ab8f7;
    border-color: #6ab8f7;
}

.btn--ghost--white
{
    color: #fff;
}

.btn--ghost--white:focus,
.btn--ghost--white:hover
{
    color: #f5f5f5;
}

.btn--round,
.el--round
{
    border-radius: 50px;
}

/**
 * Dividers atom
 */
.divider
{
    max-width: 4rem;
    height: 2px;
    margin-top: 1.5rem;
    margin-bottom: 1.5rem;

    border: 0;
    background-color: #0d207b;
}

.divider--left
{
    margin-left: 0;
}

/**
 * Icons atom
 */
.icon
{
    cursor: pointer;
    -webkit-transition: color .25s cubic-bezier(.4, 0, 1, 1);
    -o-transition: color .25s cubic-bezier(.4, 0, 1, 1);
    transition: color .25s cubic-bezier(.4, 0, 1, 1);

    color: #a7cef7;
}

.icon:focus,
.icon:hover
{
    color: #fff;
}

.icon--menu
{
    float: right;
}

.process__icon
{
    margin-top: 2rem;
    margin-bottom: 2rem;
}

.process__icon img
{
    max-width: 5.625rem;
    max-height: 5.625rem;
}

@media screen and (max-width: 767px)
{
    .process__info
    {
        margin-right: auto;
        margin-left: auto;
    }
}

/**
 * Links atom
 */
.link--default
{
    color: #86878b;
}

.link--default:focus,
.link--default:hover
{
    color: #212121;
}

.link--black
{
    color: #212121;
}

.link--black:focus,
.link--black:hover
{
    color: #f5f5f5;
}

.link--gold
{
    color: #f5f5f5;
}

.link--gold:focus,
.link--gold:hover
{
    color: #212121;
}

.link--white
{
    color: #fff;
}

.link--white:focus,
.link--white:hover
{
    color: #757575;
}

/**
 * Typed
 */
.no-js .js-typed
{
    display: none;
}

.no-js .js-typed-fallback
{
    display: block;
}

.js .js-typed-fallback
{
    display: none;
}

/**
 * Cards molecule
 */
.card
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    padding: 1rem 2rem;

    border-radius: 4px;
    background-color: #fff;
    -webkit-box-shadow: 0 15px 35px rgba(50, 50, 93, .1), 0 5px 15px rgba(0, 0, 0, .07);
            box-shadow: 0 15px 35px rgba(50, 50, 93, .1), 0 5px 15px rgba(0, 0, 0, .07);

    -webkit-box-pack: center;

        -ms-flex-pack: center;

            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
}

@media screen and (max-width: 702px)
{
    .card:nth-of-type(2)
    {
        margin-top: 2.5rem;
    }
}

@media screen and (max-width: 1070px)
{
    .card:last-of-type
    {
        margin-top: 2.5rem;
    }
}

.card--hero
{
    margin-right: auto;
    margin-left: auto;
}

@media screen and (min-width: 769px)
{
    .card--hero
    {
        float: right;
    }
}

.card--long
{
    width: 16.5rem;
    min-height: 24rem;
    padding: 2rem 2rem 3rem;
}

.card--small
{
    max-width: 22.5rem;
}

.card--square
{
    width: 21.5rem;
    min-height: 16.5rem;
}

/**
 * Countdown molecule
 */
.countdown
{
    font-size: 1.75rem;
    font-weight: 500;

    display: table;

    margin: 0 auto 1.5rem;
}

.countdown > div
{
    float: left;

    min-width: 5rem;

    color: #fff;
}

@media screen and (max-width: 369px)
{
    .countdown > div:nth-of-type(3)
    {
        clear: left;
    }
}

.countdown span
{
    font-size: 1rem;

    position: relative;

    display: block;

    margin-top: .375rem;
    padding-top: .125rem;

    text-align: center;

    color: #fff;
}

.countdown span:before
{
    position: absolute;
    top: -4px;
    top: -.25rem;
    right: 0;
    left: 0;

    width: 20px;
    width: 1.25rem;
    height: 1px;
    height: .0625rem;
    margin-right: auto;
    margin-left: auto;

    content: '';

    background: #fff;
}

/**
 * Features molecule
 */
.features__list
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-align: center;

        -ms-flex-align: center;

            align-items: center;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
}

@media screen and (max-width: 767px)
{
    .features__list > div
    {
        margin-bottom: 1rem;
    }
}

@media screen and (max-width: 767px)
{
    .features__list p
    {
        margin-right: auto;
        margin-left: auto;
    }
}

.features__mockup
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -ms-flex-pack: distribute;

        justify-content: space-around;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
}

.features__mockup img
{
    max-width: 100%;
}

.features__icon
{
    padding: .75rem .8125rem;

    color: #fff;
    border-radius: 50%;
    background-color: #2196f3;
}

/**
 * Forms molecule
 */
.form-group
{
    position: relative;

    margin-bottom: 2rem;
    padding-left: 0;
}

@media screen and (max-width: 550px)
{
    .form-group:first-of-type
    {
        margin-bottom: 2rem;
    }
}

label,
.form-label
{
    font-size: .875rem;
    font-weight: 400;

    position: absolute;
    z-index: 1;
    top: .5rem;
    left: 0;

    display: block;

    margin-bottom: 0;

    -webkit-transition: all .25s cubic-bezier(.4, 0, 1, 1);

    -o-transition: all .25s cubic-bezier(.4, 0, 1, 1);

    transition: all .25s cubic-bezier(.4, 0, 1, 1);

    color: #757575;
}

input[type="text"], input[type="password"], input[type="email"],
select,
textarea,
.form-element
{
    font-family: 'Open Sans', 'Trebuchet MS', sans-serif;

    position: relative;
    z-index: 3;

    display: block;

    width: 100%;
    margin-bottom: .5rem;
    padding-bottom: .5rem;

    border-top: 0;
    border-right: 0;
    border-bottom: 1px solid #e0e0e0;
    border-left: 0;
    background-color: transparent;
}

input:focus,
select:focus,
textarea:focus,
.form-element:focus
{
    border-bottom-color: #2196f3;
    outline: 0;
}

.form-element:focus + label,
.form-element:focus + .form-label
{
    font-size: .75rem;
    font-weight: 700;

    -webkit-transform: translateY(-26px);

        -ms-transform: translateY(-26px);

            transform: translateY(-26px);

    color: #2196f3;
}

.form textarea
{
    resize: vertical;
}

.form--contact textarea
{
    min-height: 6.25rem;
}

@media screen and (min-width: 768px)
{
    .form--contact textarea
    {
        min-height: 12.1875rem;
    }
}

.form--hero
{
    width: 100%;
    max-width: 15.9375rem;
    margin-top: 16px;
    margin-right: auto;
    margin-left: auto;
}

.form--optin
{
    max-width: 30rem;
    margin-right: auto;
    margin-left: auto;
}

.form--optin .form-group
{
    position: relative;
}

.form--optin input
{
    padding-top: .9375rem;
    padding-right: 1.75rem;
    padding-bottom: .9375rem;
    padding-left: 1.75rem;

    border: 1px solid #fff;
    background-color: #fff;
    -webkit-box-shadow: 0 15px 35px rgba(50, 50, 93, .1), 0 5px 15px rgba(0, 0, 0, .07);
            box-shadow: 0 15px 35px rgba(50, 50, 93, .1), 0 5px 15px rgba(0, 0, 0, .07);
}

.form--optin input:focus
{
    border: 1px solid #2196f3;
}

@media screen and (min-width: 440px)
{
    .form--optin input
    {
        padding-right: 11.75rem;
    }
}

@media screen and (max-width: 439px)
{
    .form--optin .btn
    {
        width: 100%;

        -webkit-box-shadow: 0 15px 35px rgba(50, 50, 93, .1), 0 5px 15px rgba(0, 0, 0, .07);

                box-shadow: 0 15px 35px rgba(50, 50, 93, .1), 0 5px 15px rgba(0, 0, 0, .07);
    }
}

@media screen and (min-width: 440px)
{
    .form--optin .btn
    {
        position: absolute;
        z-index: 3;
        top: .1875rem;
        right: .25rem;

        -webkit-box-shadow: none;

                box-shadow: none;
    }
}

/**
 * Heroes molecule
 */
.hero
{
    position: relative;

    background-position: center center;
    background-size: cover;
}

@media screen and (min-width: 768px)
{
    .hero
    {
        height: 100vh;
        min-height: 40rem;
    }
}

.hero--gradient
{
    background: #56ccf2;
    /* fallback for old browsers */
    background: -webkit-gradient(linear, left bottom, left top, from(#56ccf2), to(#2f80ed));
    background: -o-linear-gradient(bottom, #56ccf2, #2f80ed);
    background: linear-gradient(to top, #56ccf2, #2f80ed);
    /* uncomment the lines below to turn on animated gradient */
    /* background-size: 400% 400%;
  animation: gradient-animation 15s ease infinite;*/
}

.hero--gradient .hero__overlay
{
    background-color: rgba(0, 0, 0, .01);
}

.hero--image
{
    background-image: url(/images/retemex_imagen.png); no-repeat;
}

@media only screen and (-webkit-min-device-pixel-ratio: 2), only screen and (min--moz-device-pixel-ratio: 2), only screen and (min-device-pixel-ratio: 2), only screen and (-o-min-device-pixel-ratio: 2/1), only screen and (min-resolution: 192dpi), only screen and (min-resolution: 2dppx)
{
    .hero--image
    {
        background-image: url(/images/img_device.png);
    }
}

.hero--optin
{
    height: 100vh;
    min-height: 50rem;
}

@media screen and (min-width: 540px)
{
    .hero--optin
    {
        min-height: 33.75rem;
    }
}

.hero--home
{
    min-height: 71rem;
}

@media screen and (min-width: 555px)
{
    .hero--home
    {
        min-height: 60rem;
    }
}

.hero__overlay
{
    position: absolute;
    z-index: 1;

    width: 100%;
    height: 100%;
}

.hero__content
{
    position: relative;
    top: 50%;

    width: 100%;

    -webkit-transform: translateY(-50%);

        -ms-transform: translateY(-50%);

            transform: translateY(-50%);
}

.hero__content .list
{
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
}

.hero__content h1
{
    font-size: 3rem;
    font-weight: 300;

    text-transform: uppercase;

    color: rgba(255, 255, 255, .95);
}

@media screen and (max-width: 767px)
{
    .hero__content h1
    {
        text-align: center;
    }
}

.hero__content p
{
    margin-bottom: 28px;

    color: rgba(255, 255, 255, .75);
}

@media screen and (max-width: 767px)
{
    .hero__content p
    {
        margin-right: auto;
        margin-left: auto;

        text-align: center;
    }
}

@media screen and (min-width: 768px)
{
    .hero__content .card
    {
        margin-top: 0;
    }
}

/* Hero - Carousel */
.hero--carousel
{
    overflow: hidden;
}

@-webkit-keyframes fade-in
{
    0%
    {
        opacity: 0;
    }
    100%
    {
        opacity: 1;
    }
}

@keyframes fade-in
{
    0%
    {
        opacity: 0;
    }
    100%
    {
        opacity: 1;
    }
}

.hero--carousel .carousel__wrapper,
.hero--carousel .carousel-inner,
.hero--carousel .item,
.hero--carousel .carousel__item
{
    height: 100%;
    min-height: 71rem;
}

@media screen and (min-width: 555px)
{
    .hero--carousel .carousel__wrapper,
    .hero--carousel .carousel-inner,
    .hero--carousel .item,
    .hero--carousel .carousel__item
    {
        min-height: 60rem;
    }
}

.hero--carousel .item
{
    -webkit-transition: opacity .95s;
    -o-transition: opacity .95s;
    transition: opacity .95s;
}

.hero--carousel .item.active
{
    -webkit-animation: fade-in .95s;
            animation: fade-in .95s;
}

.hero--carousel .carousel__item
{
    width: 100%;
    height: 100%;

    background-size: cover;
}

.hero--carousel .carousel__item-one
{
    background: url(../images/carousel/carousel-slide-one.jpg) no-repeat center center;
}

.hero--carousel .carousel__item-two
{
    background: url(../images/carousel/carousel-slide-two.jpg) no-repeat center center;
}

.hero--carousel .carousel__item-three
{
    background: url(../images/carousel/carousel-slide-three.jpg) no-repeat center center;
}

.hero--carousel .carousel__item-four
{
    background: url(../images/carousel/carousel-slide-four.jpg) no-repeat center center;
}

/* Hero -  ParticlesJS */
.hero--particlesjs
{
    background-color: #fff;
    background-image: none;
}

.hero--particlesjs .hero__overlay
{
    background-color: rgba(255, 255, 255, .25);
}

.hero--particlesjs .hero__content h1,
.hero--particlesjs .hero__content p
{
    color: #212121;
}

.particles
{
    position: absolute;
    top: 0;
    left: 0;

    display: block;

    width: 100%;
    height: 100%;

    opacity: .3;
}

/* Hero - Video */
.hero--video
{
    overflow: hidden;

    background-image: none;
}

.video-container
{
    position: relative;
    top: 0;
    left: 0;

    width: 100%;
    height: 100%;

    background-color: #000;
}

.video-container video
{
    position: absolute;
    z-index: 0;
    top: 0;
    left: 0;

    display: block;

    min-width: 100% !important;
    min-height: 100% !important;

    -o-object-fit: fill;

       object-fit: fill;
}

.hero--countdown video
{
    max-width: 100%;
    max-height: 100%;
}

/**
 * Inserts molecule
 */
.insert
{
    position: relative;
}

.insert--logos
{
    padding-top: 1.75rem;
    padding-bottom: 1.75rem;
}

.insert--logos ul
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    overflow: hidden;

    margin-bottom: 0;

    -webkit-box-align: center;

        -ms-flex-align: center;

            align-items: center;
    -ms-flex-pack: distribute;
        justify-content: space-around;
}

@media screen and (min-width: 768px)
{
    .insert--logos ul
    {
        -webkit-box-pack: justify;
            -ms-flex-pack: justify;
                justify-content: space-between;
    }
}

@media screen and (max-width: 767px)
{
    .insert--logos
    {
        -ms-flex-pack: distribute;
            justify-content: space-around;
    }
    .insert--logos li:nth-of-type(even)
    {
        display: none;
    }
}

.insert__logo
{
    width: 100%;
    max-width: 9.375rem;
    max-height: 3.4375rem;
}

@media screen and (min-width: 768px)
{
    .insert__logo
    {
        max-width: 6.25rem;
        max-height: 1.5625rem;
    }
}

@media screen and (min-width: 992px)
{
    .insert__logo
    {
        max-width: 7.5rem;
        max-height: 2.1875rem;
    }
}

.insert__logo path
{
    fill: #bfbfbf;
}

.insert--cta
{
    height: 20rem;

    color: #fff;
    background-image: url(../images/bcgs/insert--cta.jpg);
}

@media only screen and (-webkit-min-device-pixel-ratio: 2), only screen and (min--moz-device-pixel-ratio: 2), only screen and (min-device-pixel-ratio: 2), only screen and (-o-min-device-pixel-ratio: 2/1), only screen and (min-resolution: 192dpi), only screen and (min-resolution: 2dppx)
{
    .insert--cta
    {
        background-image: url(../images/bcgs/insert--cta--@2.jpg);
    }
}

.insert--cta > .container
{
    height: 100%;
}

.cta__content
{
    position: relative;
    z-index: 4;
    top: 50%;

    -webkit-transform: translateY(-50%);

        -ms-transform: translateY(-50%);

            transform: translateY(-50%);
}

.insert--map
{
    position: relative;

    height: 20rem;
}

.insert--media
{
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
}

.insert--overlay
{
    position: absolute;
    z-index: 2;
    top: 0;
    left: 0;

    width: 100%;
    height: 100%;

    background-color: rgba(0, 0, 0, .5);
}

.insert--shadow
{
    -webkit-box-shadow: 0 15px 35px rgba(50, 50, 93, .1), 0 5px 15px rgba(0, 0, 0, .07);
            box-shadow: 0 15px 35px rgba(50, 50, 93, .1), 0 5px 15px rgba(0, 0, 0, .07);
}

/**
 * Map molecule
 */
.section--map
{
    min-height: 480px;
}

.overlay--map
{
    position: absolute;

    width: 100%;
    height: 100%;
}

.map__iframe
{
    width: 100%;
    height: 100%;
}

.website-header
{
    background: rgba(255, 255, 255, .98);
    -webkit-box-shadow: 0 2px 40px 0 rgba(0, 0, 0, .08);
            box-shadow: 0 2px 40px 0 rgba(0, 0, 0, .08);
}

.navbar-trinity
{
    padding: 0;

    border-width: 0;
    background: rgba(255, 255, 255, .98);
}

.navbar-trinity .navbar-brand
{
    font-size: 1.125rem;
    font-weight: 700;
    line-height: 4.0625rem;

    height: auto;
    padding-top: 0;
    padding-bottom: 0;

    color: #757575;
}

.navbar-trinity .navbar-brand:focus,
.navbar-trinity .navbar-brand:hover
{
    opacity: .5;
}

.navbar-trinity .navbar-toggler
{
    right: 0;

    height: 4.0625rem;
    margin: 0;
    padding: 0 1rem;

    cursor: pointer;

    border: 0;
}

.navbar-trinity .navbar-toggler:focus,
.navbar-trinity .navbar-toggler:hover
{
    background: transparent;
}

.navbar-trinity .navbar-toggler:focus .icon-bar,
.navbar-trinity .navbar-toggler:hover .icon-bar
{
    background-color: #2196f3;
}

.navbar-trinity .navbar-toggler .icon-bar
{
    display: block;

    width: 1.375rem;
    height: .125rem;

    -webkit-transition: background-color .25s cubic-bezier(.4, 0, 1, 1);

    -o-transition: background-color .25s cubic-bezier(.4, 0, 1, 1);

    transition: background-color .25s cubic-bezier(.4, 0, 1, 1);

    border-radius: 1px;
    background-color: #757575;
}

.navbar-trinity .navbar-toggler .icon-bar + .icon-bar
{
    margin-top: .25rem;
}

.navbar-trinity .navbar-nav .nav-link
{
    font-size: .875rem;

    display: block;

    text-transform: uppercase;

    color: #757575;
    border: 0;
}

.navbar-trinity .navbar-nav .nav-link:focus,
.navbar-trinity .navbar-nav .nav-link:hover
{
    color: #2196f3;
    border-bottom-color: #2196f3;
    background: transparent;
}

@media (max-width: 767px)
{
    .navbar-trinity .navbar-nav .nav-link
    {
        text-align: right;
    }
    .navbar-trinity .navbar-nav .nav-link:focus,
    .navbar-trinity .navbar-nav .nav-link:hover
    {
        color: #2196f3;
    }
}

@media screen and (min-width: 768px)
{
    .navbar-trinity .navbar-nav .nav-link
    {
        line-height: 63px;

        padding-top: 0;
        padding-right: .625rem;
        padding-bottom: 0;
        padding-left: .625rem;

        border-bottom: 2px solid #fff;
    }
    .navbar-trinity .navbar-nav .nav-link:focus,
    .navbar-trinity .navbar-nav .nav-link:hover
    {
        border-bottom-color: #2196f3;
    }
}

@media screen and (min-width: 992px)
{
    .navbar-trinity .navbar-nav .nav-link
    {
        padding-right: 1.125rem;
        padding-left: 1.125rem;
    }
}

.navbar-trinity .navbar-collapse
{
    border: 0;
}

/**
 * Pricing containers molecule
 */
@media screen and (min-width: 768px) and (max-width: 992px)
{
    .section--packages .row
    {
        -webkit-box-pack: center;
            -ms-flex-pack: center;
                justify-content: center;
    }
    .section--packages .col-md-6:last-of-type
    {
        margin-top: 2rem;
    }
}

.plan__container
{
    display: block;
    overflow: hidden;

    padding-top: 2rem;
    padding-bottom: 2rem;

    -webkit-transition: -webkit-box-shadow .25s cubic-bezier(.4, 0, 1, 1);

    transition: -webkit-box-shadow .25s cubic-bezier(.4, 0, 1, 1);

    -o-transition: box-shadow .25s cubic-bezier(.4, 0, 1, 1);

    transition: box-shadow .25s cubic-bezier(.4, 0, 1, 1);

    transition: box-shadow .25s cubic-bezier(.4, 0, 1, 1), -webkit-box-shadow .25s cubic-bezier(.4, 0, 1, 1);
    text-align: center;

    border-radius: 4px;
    background-color: #fff;
    -webkit-box-shadow: 0 15px 35px rgba(50, 50, 93, .1), 0 5px 15px rgba(0, 0, 0, .07);
            box-shadow: 0 15px 35px rgba(50, 50, 93, .1), 0 5px 15px rgba(0, 0, 0, .07);
}

@media screen and (max-width: 767px)
{
    .plan__container
    {
        margin-bottom: 2rem;
    }
}

.plan__head,
.plan__footer
{
    padding-top: 1rem;
    padding-bottom: 1rem;

    color: #212121;
}

.plan__head h4
{
    font-weight: 700;

    margin: 0;

    text-transform: uppercase;
}

.plan__body
{
    padding-top: 1.5rem;
    padding-bottom: 1.5rem;
}

.plan__price
{
    font-size: 48px;
    font-weight: 700;

    margin-bottom: 3rem;
}

.plan__price span
{
    font-size: 13px;

    display: block;
}

@media screen and (max-width: 767px)
{
    .plan__price
    {
        margin-right: auto;
        margin-left: auto;
    }
}

.plan__features ul
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
}

.plan__features li
{
    font-size: .875rem;
    font-weight: 700;

    padding-top: .5rem;
    padding-bottom: .5rem;

    text-transform: uppercase;
}

.plan__features span
{
    margin-right: 6px;
}

.plan__footer
{
    color: #fff;
    background-color: #fff;
}

.plan__container--highlighted,
.plan__container--highlighted .plan__footer
{
    background-color: #2196f3;
}

.plan__container--highlighted,
.plan__container--highlighted h4
{
    color: #fff;
}

/**
 * Slider molecule
 */
.trinity-slider__wrapper,
.trinity-slider
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

.trinity-slider__wrapper
{
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
}

@media screen and (max-width: 767px)
{
    .trinity-slider__wrapper > .col-sm-3
    {
        width: 100%;
    }
}

ul.trinity-slider
{
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;

    border-top-left-radius: 4px;
    border-bottom-left-radius: 4px;
}

@media screen and (max-width: 767px)
{
    ul.trinity-slider
    {
        overflow: visible;
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
            -ms-flex-direction: row;
                flex-direction: row;

        margin-bottom: 2rem;

        -webkit-box-pack: center;

            -ms-flex-pack: center;

                justify-content: center;
    }
}

.slider__link
{
    font-size: .75rem;
    font-weight: bold;

    position: relative;

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;

    width: 5.625rem;
    height: 5.625rem;

    text-transform: uppercase;

    color: #fff;
    background-color: #455a64;

    -webkit-box-align: center;

        -ms-flex-align: center;

            align-items: center;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
}

.slider__link:focus,
.slider__link:hover
{
    color: #fff;
    background-color: #43a6f5;
}

.slider__link:focus:before,
.slider__link:hover:before
{
    border-left-color: #43a6f5;
}

.slider__link:before
{
    position: absolute;
    top: 45px;
    top: 2.8125rem;
    right: -10px;
    right: -.625rem;

    content: '';
    -webkit-transition: all .25s cubic-bezier(.4, 0, 1, 1);
    -o-transition: all .25s cubic-bezier(.4, 0, 1, 1);
    transition: all .25s cubic-bezier(.4, 0, 1, 1);

    border-top: 10px solid transparent;
    border-top: .625rem solid transparent;
    border-right: 0 solid transparent;
    border-bottom: 10px solid transparent;
    border-bottom: .625rem solid transparent;
    border-left: 10px solid #455a64;
    border-left: .625rem solid #455a64;
}

@media screen and (max-width: 767px)
{
    .slider__link:before
    {
        top: 154px;
        top: 9.625rem;
        right: 0;
        left: 0;

        -webkit-transform: rotate(90deg);

            -ms-transform: rotate(90deg);

                transform: rotate(90deg);
    }
}

@media screen and (max-width: 449px)
{
    .slider__link:before
    {
        top: 125px;
        top: 7.8125rem;
    }
}

@media screen and (min-width: 450px)
{
    .slider__link
    {
        width: 6.875rem;
        height: 6.875rem;
    }
}

.slider__link--active
{
    background-color: #2196f3;
}

.slider__link--active:focus,
.slider__link--active:hover
{
    background-color: #0c84e4;
}

.slider__link--active:focus:before,
.slider__link--active:hover:before
{
    border-left-color: #0c84e4;
}

.slider__link--active:before
{
    border-left-color: #2196f3;
}

.slider__icon
{
    font-size: 1.85rem;

    width: 100%;
    margin-bottom: -2.1875rem;

    text-align: center;
}

.slider__slide
{
    display: none;
}

@media screen and (max-width: 767px)
{
    .slider__slide > .row
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: reverse;
            -ms-flex-direction: column-reverse;
                flex-direction: column-reverse;

        -ms-flex-wrap: wrap;

            flex-wrap: wrap;
    }
}

.slider__slide--active
{
    display: block;
}

.slide__heading
{
    margin-top: 0;
}

.slide__mockup
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -ms-flex-pack: distribute;

        justify-content: space-around;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
}

@media screen and (max-width: 767px)
{
    .slide__mockup
    {
        margin-top: 4rem;
    }
}

.slide__mockup > div
{
    -ms-flex-item-align: center;
        align-self: center;
}

.slide__mockup img
{
    display: block;

    max-width: 100%;
    max-height: 18.75rem;
    margin-right: auto;
    margin-left: auto;
}

/**
 * Testimonials molecule
 */
@media screen and (min-width: 768px) and (max-width: 992px)
{
    .section--testimonials .row
    {
        -webkit-box-pack: center;
            -ms-flex-pack: center;
                justify-content: center;
    }
    .section--testimonials .col-md-6:last-of-type
    {
        margin-top: 3rem;
    }
}

.testimonial-quote__container
{
    text-align: center;
}

@media screen and (max-width: 767px)
{
    .testimonial-quote__container
    {
        margin-bottom: 3rem;
    }
}

.testimonial-quote__container h5
{
    margin-top: 1rem;
    margin-bottom: 1rem;

    color: #9e9e9e;
}

.testimonial__text
{
    font-size: .9375rem;

    margin-bottom: 1.5rem;

    text-align: center;
}

.testimonial__quote
{
    font-family: serif;
    font-size: 2.0625rem;
    font-style: normal;
    line-height: .5;

    position: relative;
    top: .375rem;

    display: inline-block;
}

.quote-left
{
    margin-right: .25rem;
}

.quote-right
{
    margin-left: .25rem;
}

.testimonial__photo img
{
    width: 100%;
    max-width: 4.375rem;

    border-radius: 50%;
}

/**
 * Component for footer
 */
footer
{
position: relative;

padding-top: 25px;

padding-bottom: 25px;
}

footer .container
{
    position: relative;
}

footer .btn--fab
{
    position: absolute;
    top: -5.5rem;
    right: 1rem;

    margin: auto;
}

@media screen and (min-width: 790px)
{
    footer .btn--fab
    {
        right: 0;
    }
}

.nav--social
{
    font-size: 1.25rem;

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;

    margin-bottom: 1.5rem;

    -webkit-box-pack: center;

        -ms-flex-pack: center;

            justify-content: center;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
}

.nav--social .list-break
{
    width: 100%;
    height: 1px;
    margin-top: 6px;
    margin-bottom: 6px;
}

@media screen and (min-width: 450px)
{
    .nav--social .list-break
    {
        display: none;
    }
}

.nav--social li:nth-of-type(n+2):not(.list-break)
{
    margin-left: 1rem;
}

.nav--social a
{
    font-size: 1.625rem;

    display: block;

    min-width: 2.125rem;

    text-align: center;
}

.nav--social a:focus,
.nav--social a:hover
{
    color: rgba(134, 135, 139, .35);
}

.footer__copy
{
    color: rgba(255, 255, 255, .5);
}

/**
 * Component for sections
 */
section:nth-of-type(n+2)
{
    padding-top: 7rem;
    padding-bottom: 7rem;
}

.section--grey
{
    background-color: #f5f5f5;
}

/**
 * Print stylesheet
 */
@media print
{
    *:before,
    *:after
    {
        color: #000 !important;
        background: transparent !important;
        -webkit-box-shadow: none !important;
                box-shadow: none !important;
        text-shadow: none !important;
    }
    a,
    a:visited
    {
        text-decoration: underline;
    }
    a[href]:after
    {
        content: ' (' attr(href) ')';
    }
    abbr[title]:after
    {
        content: ' (' attr(title) ')';
    }
    a[href^='#']:after,
    a[href^='javascript:']:after
    {
        content: '';
    }
    pre,
    blockquote
    {
        border: 1px solid #999;

        page-break-inside: avoid;
    }
    thead
    {
        display: table-header-group;
    }
    tr,
    img
    {
        page-break-inside: avoid;
    }
    img
    {
        max-width: 100% !important;
    }
    p,
    h2,
    h3
    {
        orphans: 3;
        widows: 3;
    }
    h2,
    h3
    {
        page-break-after: avoid;
    }
}

/**
 * Homepage - index-countdown
 */
.page-countdown .navbar-header,
.page-countdown .navbar-brand
{
    float: none;

    margin: 0;

    text-align: center;
}

.page-countdown .navbar-header
{
    text-align: center;
}

.page-countdown .hero--particlesjs .countdown > div,
.page-countdown .hero--particlesjs .countdown span
{
    color: #212121;
}

.page-countdown .hero--particlesjs .countdown span:before
{
    background: #212121;
}

@media (max-width: 439px), (min-width: 576px) and (max-width: 767px)
{
    .hero__overlay br
    {
        display: none;
    }
}

.hero__overlay .nav--social
{
    position: absolute;
    z-index: 2;
    right: 0;
    bottom: 0;
    left: 0;
}

.hero__overlay .link--default
{
    opacity: .85;
    color: #fff;
}

/**
 * Helper Classes
 */
/* Hide lazy loaded images in browsers not supporting JavaScript (show only fallback in <noscript> tags) */
.no-js .lazy
{
    display: none;
}

/* Shape helpers */
.el--oval
{
    border-radius: 4px;
}

/*- Typography helpers -*/
.text--highlight
{
    font-weight: bold;

    color: #2196f3;
}

/*# sourceMappingURL=main.css.map */
