/* Base Styles
------------------------------------------ */

body {
    font-family: -apple-system, BlinkMacSystemFont, Roboto, "Segoe UI", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
    font-size: 16px;
    font-weight: 400;
    line-height: 1.65;
    color: #1a2d43;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    overflow-x: hidden;
}

h1,
h2,
h3,
h4,
h5,
h6,
.text-title {
    font-weight: 700;
    margin-top: 0;
    margin-bottom: 20px;
}

section {
    padding: 80px 0;
}

a {
    color: #ed1515;
    text-decoration: underline;
}

a:hover {
    color: #ed1515;
    text-decoration: none;
}

img {
    max-width: 100%;
    height: auto;
}

.row-align-top,
.row-align-middle,
.row-align-bottom {
    font-size: 0;
}

.row-align-top>*,
.row-align-middle>*,
.row-align-bottom>* {
    float: none;
    display: inline-block;
    font-size: 16px;
}

.row-align-top>* {
    vertical-align: top;
}

.row-align-middle>* {
    vertical-align: middle;
}

.row-align-bottom>* {
    vertical-align: bottom;
}

.bg-light {
    background: #f7f8f9;
}

/* Header
------------------------------------------ */

header a,
footer a {
    text-decoration: none;
}

header a:hover,
footer a:hover {
    text-decoration: none;
}

.header {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 500;
}

.header.sticky {
    background: #000;
    position: fixed;
    animation: slide-down 0.7s;
}

@keyframes slide-down {
    0% {
        opacity: 0;
        transform: translateY(-100%);
    }

    100% {
        opacity: 1;
        transform: translateY(0);
    }
}

.header.sticky .header-logo {
    padding-top: 25px;
    padding-bottom: 25px;
}

.header.sticky .header-actions {
    padding-top: 16px;
    padding-bottom: 16px;
}

.header-logo {
    float: left;
    padding: 37px 0;
}

.header-logo img {
    height: 22px;
}

.header-actions {
    float: right;
    padding: 28px 0;
    list-style: none;
    font-size: 0;
    margin: 0;
}

.header-actions li {
    display: inline-block;
    font-size: 16px;
    vertical-align: middle;
}

.header-call {
    color: #FFF;
    line-height: 1.4;
    font-size: 19px;
    font-weight: 800;
    letter-spacing: -0.8px;
}

.header-call strong {
    display: block;
    text-align: right;
    font-weight: bold;
    opacity: .75;
    font-size: 9px;
    margin-bottom: 0;
    letter-spacing: 0;
}

.header-btn-icon {
    background: transparent;
    border: 0;
    color: #FFF;
    padding: 0;
    font-size: 30px;
    line-height: 44px;
    height: 44px;
    text-align: center;
}

.text-right {
    text-align: right;
}

.header-offcanvas {
    background-color: #151515;
    width: 100%;
    height: 100%;
    position: fixed;
    top: 0;
    left: 0;
    bottom: 0;
    z-index: 9999999;
    overflow: hidden;
    opacity: 0;
    visibility: hidden;
    transition: opacity .3s ease-in-out;
    overflow: auto;
}

.offcanvas-open {
    overflow: hidden;
    padding-right: 15px;
}

.offcanvas-open .header-offcanvas {
    opacity: 1;
    visibility: visible;
}

.header-offcanvas .container {
    height: 100%;
}

.header-offcanvas-inner {
    min-height: 100%;
    display: flex;
    flex-direction: column;
    align-items: stretch;
}

.header-offcanvas-header,
.header-offcanvas-footer {
    flex-shrink: 0;
}

.header-offcanvas-body {
    flex-grow: 1;
}

.header-offcanvas-header:after,
.header-offcanvas-header:before,
.header-offcanvas-body:after,
.header-offcanvas-body:before,
.header-offcanvas-footer:after,
.header-offcanvas-footer:before {
    content: '';
    display: table;
}

.header-offcanvas-header:after,
.header-offcanvas-body:after,
.header-offcanvas-footer:after {
    clear: both;
}

.header-offcanvas-header {
    margin-bottom: 60px;
    padding-top: 28px;
}

.header-offcanvas .header-btn-icon {
    float: right;
}

.header-offcanvas-footer {
    margin-top: 80px;
    border-top: 1px solid #333;
    padding-top: 20px;
    padding-bottom: 12px;
}

.header-offcanvas-footer .section {
    margin-bottom: 5px;
}

.header-offcanvas-footer .section:after,
.header-offcanvas-footer .section:before {
    content: '';
    display: table
}

.header-offcanvas-footer .section:after {
    clear: both
}

.header-offcanvas-footer .section .label {
    color: #FFF;
    margin-bottom: 0;
    float: left;
    width: 150px;
    font-weight: bold;
    font-size: 12px;
    line-height: 30px;
}

.header-offcanvas-footer .section ul {
    list-style: none;
    padding: 0;
    margin: 0;
    margin-left: 150px;
}

.header-offcanvas-footer .section ul li {
    display: inline-block;
}

.header-offcanvas-footer .section ul li a {
    color: #adadad;
    text-decoration: none;
    border-radius: 6px;
    display: block;
    margin-bottom: 2px;
    margin-right: 4px;
    font-size: 11px;
    font-weight: 400;
}

.header-menu {
    list-style: none;
    counter-reset: number;
    margin: 0;
    padding: 0;
    position: relative;
}

.header-menu>li {
    counter-increment: number;
}

.header-menu>li>a:before {
    content: "0"counter(number);
    display: inline-block;
    font-weight: 700;
    font-size: 14px;
    position: absolute;
    color: rgba(255, 255, 255, .35);
    top: 17px;
    left: 0;
}

.header-menu>li>a {
    font-weight: bold;
    color: #FFF;
    font-size: 45px;
    text-decoration: none;
    padding: 10px 40px;
    position: relative;
    display: block;
    line-height: 1;
}

.header-menu>li.active>a,
.header-menu>li:hover>a,
.header-menu ul>li.active>a,
.header-menu ul>li:hover>a {
    color: #ea110c;
}

.header-menu.moves-out>li>a {
    display: none;
}

.header-menu .is-hidden {
    display: none;
}

.header-menu ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.header-menu ul>li>a {
    color: #FFF;
    font-size: 25px;
    font-weight: bold;
    text-decoration: none;
    display: block;
}

@media (min-width:500px) {
    .header-actions li+li {
        margin-left: 30px;
    }
}

@media (max-width:767px) {
    .header-actions li.header-contact {
        display: none;
    }

    .header-offcanvas-footer .section .label {
        float: none;
        width: auto;
    }

    .header-offcanvas-footer .section ul {
        margin-left: 0;
    }
}

@media (max-width:500px) {
    .header-actions li.header-call {
        display: none;
    }

}

/* Buttons
------------------------------------------ */
.btn {
    position: relative;
    display: inline-block;
    font-weight: 600;
    text-align: center;
    white-space: nowrap;
    vertical-align: middle;
    border: 0;
    padding: 10px 30px;
    font-size: 16px;
    line-height: 1.5;
    border-radius: 4px;
    background: transparent;
    text-decoration: none;
    transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

.btn>span {
    position: relative;
    z-index: 3;
    white-space: nowrap;
    transition: .5s ease;
}


.btn::before,
.btn::after {
    position: absolute;
    top: 0;
    bottom: 0;
    display: block;
    height: 100%;
    content: "";
    transition: .5s ease;
    transform: skew(-7.125deg);
}

.btn::before {
    z-index: 1;
    width: 100%;
}

.btn::after {
    z-index: 2;
    width: 0;
}

.btn:hover::after {
    width: 0%;
}

.btn-primary>span {
    color: #FFF;
}

.btn-primary:hover>span {
    color: #ed1515;
}

.btn-primary:active::before,
.btn-primary:focus::before,
.btn-primary::before {
    left: 0;
    width: 100%;
    background-color: transparent;
    border: 2px solid #ed1515;
}

.btn-primary:active::after,
.btn-primary:focus::after,
.btn-primary::after {
    right: 0;
    width: 100%;
    background-color: #ed1515;
}


.btn-white>span {
    color: #ed1515;
}

.btn-white:hover>span {
    color: #FFF;
}

.btn-white:active::before,
.btn-white:focus::before,
.btn-white::before {
    left: 0;
    width: 100%;
    background-color: transparent;
    border: 2px solid #FFF;
}

.btn-white:active::after,
.btn-white:focus::after,
.btn-white::after {
    right: 0;
    width: 100%;
    background-color: #FFF;
}

/* Slider
------------------------------------------ */
.hero {
    padding: 180px 0 80px;
    margin: 0;
    background-size: cover;
    background-position: bottom;
    position: relative;
    z-index: 1;
}

.hero:before {
    content: " ";
    background: #000;
    opacity: 0.6;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
}

.hero-body .subtitle {
    text-transform: uppercase;
    color: #FFF;
    opacity: .6;
    font-size: 11px;
    font-weight: 500;
}

.hero-body .title {
    color: #FFF;
    font-size: 35px;
    line-height: 1.1;
    font-weight: 700;
}

.hero-body .title strong {
    color: #ea110c;
    font-weight: inherit;
}

.hero-body .desc {
    color: #FFF;
    font-size: 16px;
}

@media (min-width:768px) {
    .hero-body .subtitle {
        font-size: 15px;
    }

    .hero-body .title {
        font-size: 51px;
    }

    .hero-body .desc {
        font-size: 22px;
    }
}

@media (min-width:992px) {
    .hero {
        padding: 300px 0 200px;
    }

    .hero-body .title {
        font-size: 65px;
    }

    .hero-body .desc {
        font-size: 24px;
    }
}

@media (min-width:1200px) {

    .hero-body .title {
        font-size: 74px;
    }

    .hero-body .desc {
        font-size: 26px;
    }
}



.hero-sector {
    background-color: #151515;
    padding-top: 150px;
    background-image: url(../img/wave-pattern-light.svg);
}

.hero-sector .hero-body {
    padding-right: 30px;
}

.hero-sector .hero-body .title {
    font-size: 42px;
}

.hero-sector .hero-body .desc {
    font-size: 22px;
}


.hero-center {
    max-width: 840px;
    margin-left: auto;
    margin-right: auto;
    text-align: center;
}

.heading-center {
    max-width: 750px;
    margin-right: auto;
    margin-left: auto;
    text-align: center;
}

.heading-space {
    margin-bottom: 50px;
}

.heading .alt {
    text-transform: uppercase;
    color: rgba(40, 55, 66, 0.75);
    font-weight: 600;
    font-size: 11px;
    margin-bottom: 15px;
}

.heading .title {
    font-size: 25px;
    color: #283742;
    font-weight: 700;
    letter-spacing: -1px;
    line-height: 1.1;
}


@media (min-width: 991px) {
    .heading .alt {
        font-size: 13px;
    }

    .heading .title {
        font-size: 35px;
    }
}

@media (min-width: 1200px) {
    .heading .alt {
        font-size: 14.5px;
    }

    .heading .title {
        font-size: 40px;
    }

}

.heading p {
    color: rgba(40, 55, 66, 0.95);
}

.heading-white .alt,
.heading-white .title,
.heading-white p {
    color: #FFF;
}

.box-icon {
    margin-bottom: 30px;
    font-size: 14px;
}

.box-icon i {
    color: #ed1515;
    font-size: 18px;
    position: absolute;
    left: 0;
    line-height: 26px;
}

.box-icon h3 {
    font-size: 16px;
    font-weight: 700;
    letter-spacing: -.8px;
    margin-bottom: 10px;
    padding-left: 34px;
    position: relative;
}

.video-item img {
    width: 100%;
    height: auto;
}

.video-item .tag {
    position: absolute;
    bottom: 8px;
    left: 8px;
    background: rgba(0, 0, 0, 0.22);
    color: #FFF;
    padding: 5px 12px;
    font-size: 11px;
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    border-radius: 5px;
}

.video-item-body {
    margin-top: 30px;
    font-size: 18px;
}

.video-item-body .name {
    margin-bottom: 5px;
    font-size: 12px;
    text-transform: uppercase;
    color: rgba(40, 55, 66, 0.75);
    font-weight: 600;
}

.video-item-body .title {
    font-size: 21px;
    letter-spacing: -.8px;
    line-height: 1.2;
    margin-bottom: 15px;
}

.video-play {
    position: relative;
    display: block;
}

.video-play:after,
.video-play:before,
.video-play i {
    content: '';
    display: inline-block;
    position: absolute;
    border-radius: 50%;
    top: 50%;
    left: 50%;
}

.video-play:after {
    background: rgba(237, 21, 21, 0.4);
    z-index: 0;
}

.video-play:before {
    background: #ed1515;
    transition: .15s ease-in-out;
    z-index: 1;
}

.video-play i,
.video-play:before {
    width: 50px;
    height: 50px;
    margin-top: -25px;
    margin-left: -25px;
}

.video-play:after,
.video-play:hover:before {
    width: 68px;
    height: 68px;
    margin-top: -34px;
    margin-left: -34px;
}

.video-play i {
    font-size: 25px;
    color: #FFF;
    text-align: center;
    line-height: 50px;
    z-index: 2;
}

.google {
    background: #FFF;
    border: 1px solid #eae7f5;
    border-radius: 8px;
    padding: 20px 25px;
    text-align: center;
}

.google-btn {
    margin-top: 10px
}

.google-brand img {
    height: 25px;
    margin-right: 8px;
}

.google-brand .title {
    color: #283742;
    font-weight: 700;
    font-size: 20px;
    vertical-align: middle;
}

.google-review .note {
    color: #283742;
    font-weight: 700;
    margin-right: 8px;
}

.google-review .stars {
    color: #fbbc04;
}

.google-btn .btn {
    background: #2376e5;
    color: #FFF;
    font-size: 15px;
    width: 100%;
    display: block;
}

.quote {
    border: 1px solid #eae7f5;
    position: relative;
    padding-bottom: 90px;
    background: #FFF;
    border-radius: 8px;
}

.quote .quote-body {
    padding: 32px;
}

.quote .quote-body p {
    color: #000;
    font-weight: 500;
    font-size: 15px;
    letter-spacing: -0.2px;
    margin-bottom: 0;
}

@media (min-width:768px) {
    .quote .quote-body p {
        font-size: 17px;
    }
}

.quote-star {
    color: #fbbc04;
    font-size: 14px;
    margin-bottom: 14px;
}

.quote .quote-footer {
    padding: 24px 32px;
    border-bottom-left-radius: 8px;
    border-bottom-right-radius: 8px;
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    border-top: 1px solid #eae7f5;
    background-color: #fff;
}

.quote .author {
    position: relative;
    padding-left: 56px;
}

.quote .author .avatar {
    height: 40px;
    width: 40px;
    border-radius: 50%;
    overflow: hidden;
    background: whitesmoke;
    position: absolute;
    left: 0;
}

.quote .author .avatar img {
    width: 100%;
    height: 100%;
    border-radius: 50%;
}

.quote .author .name {
    font-weight: 500;
    line-height: 1.4;
    color: #000;
    font-size: 16px;
    margin-bottom: 0;
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
}

.quote .author .position {
    margin-bottom: 0;
    font-size: 12.25px;
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
}

.gallery figure {
    margin-bottom: 16px;
    position: relative;
    overflow: hidden;
}

.gallery figcaption {
    position: absolute;
    bottom: -30px;
    left: 0;
    font-style: italic;
    font-size: 11px;
    color: #FFF;
    padding: 5px 10px;
    transition: .2s ease-in-out;
    width: 100%;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.gallery figure:hover figcaption {
    bottom: 0;
}

.gallery .row {
    margin-right: -8px;
    margin-left: -8px;
}

.gallery .row>div {
    padding-right: 8px;
    padding-left: 8px;
}

.logos .item {
    width: 33.333333%;
    text-align: center;
}

.logos .item img {
    max-height: 50px;
}

@media (min-width: 768px) {
    .logos .item {
        width: 25%;
    }

    .logos .item img {
        max-height: 80px;
    }
}

@media (min-width: 992px) {
    .logos .item {
        width: 20%;
    }
}

@media (min-width: 1200px) {
    .logos .item {
        width: 16.66666666%;
    }
}

.grayscale {
    -webkit-filter: grayscale(100%);
    filter: grayscale(100%);
    -webkit-transition: all .6s ease;
    transition: all .6s ease;
}

.grayscale:hover {
    filter: none;
    -webkit-filter: grayscale(0%);
}

.devices-wrap-sector {
    position: relative;
}

.devices-wrap-sector .device-browser {
    width: 88%;
}

.devices-wrap-sector .device-mobile {
    width: 25%;
    position: absolute;
    bottom: -25px;
    right: 0;
}

.devices-wrap {
    width: 600px;
    margin-top: 80px;
}

.devices-rotated {
    -webkit-transform: rotate(-22deg);
    transform: rotate(-22deg);
}

@media (min-width: 768px) {
    .devices-wrap {
        width: 752px;
    }
}

@media (min-width: 992px) {
    .devices-rotated {
        margin-top: -30px;
    }
}

.device-tablet {
    width: 59%;
}

.device-vertical-tablet {
    width: 41%;
}

.device-mobile {
    width: 23%;
}

.device-browser {
    width: 77%;
}

.device-tablet,
.device-vertical-tablet,
.device-mobile,
.device-browser {
    position: relative;
    z-index: 1;
    max-width: 100%;
    height: auto;
    padding: 8px;
    margin: 0;
}

.device-tablet-frame,
.device-vertical-tablet-frame,
.device-mobile-frame {
    background: #f8fafd;
    box-shadow: rgba(189, 197, 209, 0.5) 0px 44px 88px -56px, rgba(33, 50, 91, 0.3) 0px 32px 64px -32px, rgba(151, 164, 175, 0.5) 0px -3px 5px 0px inset;
    border-radius: 16px;
    padding: 5px;
}

.device-mobile-frame {
    border-radius: 32px;
}

.device-tablet-frame img,
.device-vertical-tablet-frame img,
.device-mobile-frame img {
    max-width: 100%;
    height: auto;
    border-radius: 16px;
}

.device-mobile-frame img {
    border-radius: 25.6px;
}

.device-browser-header {
    position: relative;
    display: -ms-flexbox;
    display: flex;
    max-width: 800px;
    background: #fff;
    border-bottom: 1px solid #f1f3f8;
    border-top-left-radius: 8px;
    border-top-right-radius: 8px;
    padding: 8px 104px;
}

.device-browser-header-btn-list {
    display: -ms-flexbox;
    display: flex;
    grid-gap: 4px;
    position: absolute;
    top: calc(50% - 4px);
    left: 16px;
}

.device-browser-header-btn-list-btn {
    width: 8px;
    height: 8px;
    background-color: #e7eaf3;
    border-radius: 50%;
}

.device-browser-header-browser-bar {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    width: 100%;
    height: 100%;
    color: #677788;
    background-color: #e7eaf3;
    font-size: 9px;
    border-radius: 2px;
}

.device-browser-frame {
    background: #fff;
    box-shadow: rgba(189, 197, 209, 0.5) 0px 44px 88px -56px, rgba(33, 50, 91, 0.3) 0px 32px 64px -32px;
    border-bottom-left-radius: 8px;
    border-bottom-right-radius: 8px;
}

.device-browser-img {
    max-width: 100%;
    height: auto;
    border-bottom-right-radius: 8px;
    border-bottom-left-radius: 8px;
}

@media (max-width: 768px) {
    .device-browser-header-browser-bar {
        display: none;
    }

    .device-tablet-frame,
    .device-vertical-tablet-frame,
    .device-mobile-frame {
        padding: 3px;
        border-radius: 10px;
    }

    .device-tablet-frame img,
    .device-vertical-tablet-frame img,
    .device-mobile-frame img {
        border-radius: 10px;
    }

    .device-mobile-frame,
    .device-mobile-frame img {
        border-radius: 10px;
    }
}

.contact {
    padding-top: 180px;
    background: #151515;
    color: #FFF;
}

.contact-sidebar {
    padding-left: 20px;
    padding-top: 160px;
}

.contact-widget {
    margin-bottom: 50px;
}

.contact-info {
    color: #888;
    font-weight: 500;
}

.contact-info h3 {
    color: #FFF;
}

.contact-info a {
    color: #FFF;
    text-decoration: none;
    margin-top: 10px;
    display: block;
    font-weight: 700;
}

.contact-quote .testimonial {
    font-weight: 600;
    font-size: 14px;
}

.contact-quote .testimonial i {
    display: block;
    font-size: 33px;
    color: #ed1515;
}

.contact-quote .author {
    padding-left: 60px;
    position: relative;
}

.contact-quote .author .avatar {
    position: absolute;
    left: 0;
    width: 48px;
}

.contact-quote .author .name {
    font-size: 14px;
    color: #FFF;
    font-weight: 600;
    margin-bottom: 0;
}

.contact-quote .author .position {
    font-size: 13px;
    color: #888;
    font-weight: 500;
    margin-bottom: 0;
}


.call-to-action {
    background: #ed1515;
    color: #FFF;
    padding: 60px 0;
    text-align: center;
}

.call-to-action h3 {
    font-size: 22px;
    margin-bottom: 10px;
    line-height: 1.1;
}

.call-to-action h3 strong {
    font-weight: inherit;
    color: #000;
}

.call-to-action p {
    font-size: 16px;
    margin-bottom: 0;
}

.call-to-action .col-btn {
    margin-top: 20px;
}

@media (min-width:992px) {
    .call-to-action {
        text-align: left;
    }

    .call-to-action .col-btn {
        text-align: right;
        margin-top: 0;
    }

    .call-to-action h3 {
        font-size: 38px;
    }
}

@media (min-width:1200px) {
    .call-to-action h3 {
        font-size: 45px;
    }
}

.reveal {
    opacity: 0;
    transform: translateY(50px);
    transition: opacity 0.5s, transform 0.5s ease-in-out;
}

.reveal_visible {
    opacity: 1;
    transform: translateY(0);
}

.list-children {
    list-style: none;
    padding: 0;
    margin: 0 -15px;
    font-size: 0;
}

.list-children li {
    display: inline-block;
    vertical-align: top;
    width: 33.3333333333%;
    padding: 0 15px 15px;
    font-size: 16px;
}

.list-children li a {
    padding: 3px 0;
    color: #000;
    font-weight: bold;
    font-size: 19px;
    display: block;
}

/* Footer
------------------------------------------ */
footer {
    background: #151515;
    color: #FFF;
}

.footer-top {
    padding: 60px 0;
}

.footer-top a {
    color: inherit;
}

.footer-top ul {
    list-style: none;
    padding: 0;
    margin: 0;
    font-size: 14px;
}

.footer-top ul li+li {
    margin-top: 8px;
}

.footer-copyright {
    background: #000;
    padding: 48px 0 40px;
}

.footer-intro {
    padding-bottom: 24px;
    border-bottom: 1px solid #3b3b3b;
}

.footer-intro img {
    height: 15px;
    margin-bottom: 30px;
}

.footer-intro h3 {
    font-size: 29px;
    line-height: 1;
    letter-spacing: -1px;
    margin-bottom: 8px;
    font-weight: 900;
}

.footer-intro p {
    font-size: 18px;
    margin-bottom: 0;
}

.footer-title {
    color: #fff;
    margin-bottom: 24px;
    font-size: 14px;
    margin-top: 30px;
}

@media (min-width:992px) {
    .footer-title {
        margin-top: 0;
    }
}

.copyright {
    opacity: .6;
    letter-spacing: -0.12px;
    font-size: 12px;
    line-height: 18px;
    display: inline-block;
    margin: 0;
    vertical-align: middle;
}

.footer-contact {
    font-size: 14px;
}

.footer-contact p {
    margin-bottom: 5px;
}

.poblation-dropdown {
    position: relative;
    vertical-align: middle;
    margin-bottom: 20px;
}

.poblation-dropdown .open>a>i {
    transform: rotate(180deg);
}

.poblation-dropdown button {
    border: 0;
    color: #FFF;
    border-radius: 4px;
    padding: 8px 20px;
    font-size: 12px;
    font-weight: bold;
    display: block;
    width: 100%;
}

.poblation-dropdown button i {
    margin-left: 5px;
}

.poblation-dropdown-menu,
.poblation-dropdown button {
    background: #212121;
    box-shadow: rgba(255, 255, 255, 0.075) 0px 0px 0.5px 1px inset, rgba(0, 0, 0, 0.03) 0px 0.8999999761581421px 1.5px 0px, rgba(0, 0, 0, 0.08) 0px 3.0999999046325684px 5.5px 0px, rgba(0, 0, 0, 0.12) 0px 14px 25px 0px;
}

.poblation-dropdown-menu {
    position: absolute;
    bottom: 100%;
    border-radius: 4px;
    width: 100%;
    margin: 0;
    padding: 0;
    list-style: none;
    overflow: hidden;
    opacity: 0;
    visibility: hidden;
    transition: opacity .2s;
    z-index: 10;
}

@media (min-width:768px) {
    .poblation-dropdown {
        display: inline-block;
        margin-right: 20px;
        margin-bottom: 0;
    }

    .poblation-dropdown-menu {
        width: 300px;
    }
}

.poblation-dropdown.open .poblation-dropdown-menu {
    opacity: 1;
    visibility: visible;
}

.poblation-dropdown-menu>li>a {
    padding: 10px 12px;
    display: block;
    font-size: 14px;
    color: #FFF;
    font-weight: bold;
}

.poblation-dropdown-menu>li>a i {
    float: right;
}

.poblation-dropdown-menu>li>a:hover {
    background: #ed1515;
}

.poblation-dropdown-menu ul {
    display: none;
    list-style: none;
    padding: 0;
    margin: 9px 0 9px 9px;
    border-left: 1px solid rgb(50, 54, 57);
}

.poblation-dropdown-menu ul a {
    padding: 2px 9px;
    color: #FFF;
    font-size: 14px;
    display: block;
}

.poblation-dropdown-menu ul a:hover {
    color: #ed1515;
}

.poblation-dropdown-menu .open ul {
    display: block;
}

/* Forms
------------------------------------------ */
form .btn {
    margin-top: 50px;
}

.form {
    position: relative;
    z-index: 1;
}

.form-section-title {
    padding-top: 80px;
    margin-bottom: 40px;
    color: #FFF;
    font-weight: 600;
    font-size: 32px;
    line-height: 1;
}

.form-selectgroup-item {
    display: block;
    position: relative;
}

.form-selectgroup-item+.form-selectgroup-item {
    margin-top: 8px;
}

.form-selectgroup-input {
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
    opacity: 0;
}

.form-selectgroup-label {
    background-color: rgba(255, 255, 255, .05);
    padding: 24px 24px 24px 64px;
    border-radius: 2px;
    line-height: 1.78;
    display: block;
    font-weight: 600;
    transition: .35s ease;
    position: relative;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.form-selectgroup-label:before {
    content: '';
    position: absolute;
    background-color: rgba(255, 255, 255, 0.4);
    left: 24px;
    top: 50%;
    width: 16px;
    height: 16px;
    margin-top: -8px;
    border-radius: 50%;
    transition: .35s ease;
}

.form-selectgroup-input:checked+.form-selectgroup-label {
    background: #ed1515 !important;
}


.form-selectgroup-input:checked+.form-selectgroup-label:before {

    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16'%3E%3Cpath fill='%23FFF' d='M8 0C3.589 0 0 3.589 0 8s3.589 8 8 8 8-3.589 8-8-3.589-8-8-8zM6.4 11.53L3.43 8.566l1.13-1.132L6.4 9.27l4.234-4.236 1.132 1.132L6.4 11.53z'/%3E%3C/svg%3E%0A") !important
}

.form-selectgroup-item:hover .form-selectgroup-label:before {
    background: #ed1515;
}

.form-selectgroup-item:hover .form-selectgroup-label {
    background-color: rgba(255, 255, 255, .1);
}

.form-selectgroup-3 {
    margin-left: -4px;
    margin-right: -4px;
    font-size: 0;
}

.form-selectgroup-3 .form-selectgroup-item {
    padding-left: 4px;
    padding-right: 4px;
    display: inline-block;
    vertical-align: top;
    width: 100%;
    font-size: 16px;
    margin-bottom: 8px;
    margin-top: 0;
}

@media (min-width:992px) {
    .form-selectgroup-3 .form-selectgroup-item {
        width: 50%;
    }
}

@media (min-width:1200px) {
    .form-selectgroup-3 .form-selectgroup-item {
        width: 33.33333333%;
    }
}

.form .row {
    margin-left: -4px;
    margin-right: -4px;
}

.form .row>* {
    padding-right: 4px;
    padding-left: 4px;
}

.form-group {
    margin-bottom: 8px;
}

.form-control {
    display: block;
    width: 100%;
    height: 74px;
    padding: 24px 24px;
    font-size: 16px;
    line-height: 1.5;
    color: #FFF;
    background-color: #212121;
    background-clip: padding-box;
    border: 0;
    border-bottom: 2px solid rgba(255, 255, 255, .05);
    border-radius: 2px;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

select.form-control {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e");
    background-repeat: no-repeat;
    background-position: right 24px center;
    background-size: 16px 12px;
}

textarea.form-control {
    height: auto;
}

.form-control:focus {
    border-color: #ed1515;
    color: #FFF;
    background-color: rgba(255, 255, 255, .05);
    outline: 0;
}

.color-danger {
    color: red;
}

.form-control.is-invalid {
    border-color: #ed1515;
}

.form-control.is-invalid:focus {
    border-color: #ed1515;

}

.invalid-feedback {
    color: #ed1515;
    display: block;
    width: 100%;
    font-size: 14px;
    margin-top: 5px;
}

.form-check {
    display: block;
    min-height: 24px;
    padding-left: 24px;
}

.form-check .form-check-input {
    float: left;
    margin-left: -24px;
}

.form-check-input {
    width: 16px;
    height: 16px;
    margin-top: 4px;
    vertical-align: top;
    background-color: #fff;
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    border: 1px solid rgba(0, 0, 0, 0.25);
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

.form-check-input[type=checkbox] {
    border-radius: 4px;
}

.form-check-input[type=radio] {
    border-radius: 50%;
}

.form-check-input:active {
    filter: brightness(90%);
}

.form-check-input:focus {
    border-color: #86b7fe;
    outline: 0;
    box-shadow: 0 0 0 4px rgba(13, 110, 253, 0.25);
}

.form-check-input:checked {
    background-color: #0d6efd;
    border-color: #0d6efd;
}

.form-check-input:checked[type=checkbox] {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10l3 3l6-6'/%3e%3c/svg%3e");
}

.form-check-input:checked[type=radio] {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='2' fill='%23fff'/%3e%3c/svg%3e");
}

.form-check-input[type=checkbox]:indeterminate {
    background-color: #0d6efd;
    border-color: #0d6efd;
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10h8'/%3e%3c/svg%3e");
}

.form-check-input:disabled {
    pointer-events: none;
    filter: none;
    opacity: 0.5;
}

.form-check-input[disabled]~.form-check-label,
.form-check-input:disabled~.form-check-label {
    opacity: 0.5;
}

.form-check-input.is-invalid {
    border-color: #dc3545;
}

.form-check-input.is-invalid:checked {
    background-color: #dc3545;
}

.form-check-input.is-invalid:focus {
    box-shadow: 0 0 0 4px rgba(220, 53, 69, 0.25);
}

.form-check-input.is-invalid~.form-check-label {
    color: #dc3545;
}

.form-clausula {
    margin-top: 30px;
    font-size: 12px;
    color: rgba(255, 255, 255, 0.8);
}

.btn-loading {
    position: relative;
    color: transparent !important;
    text-shadow: none !important;
    pointer-events: none;
}

.btn-loading:after {
    content: "";
    display: inline-block;
    vertical-align: text-bottom;
    border: 1px solid currentColor;
    border-right-color: transparent;
    border-radius: 100%;
    color: #fff;
    position: absolute;
    width: 16px;
    height: 16px;
    margin-top: -8px;
    margin-left: -8px;
    left: 50%;
    top: 50%;
    -webkit-animation: spinner-border .75s linear infinite;
    animation: spinner-border .75s linear infinite;
}

@-webkit-keyframes spinner-border {
    to {
        transform: rotate(360deg)
    }
}

@keyframes spinner-border {
    to {
        transform: rotate(360deg)
    }
}

form .honey {
    position: absolute;
    left: -9999px;
}

.alert {
    padding: 15px;
    margin-bottom: 20px;
    border: 1px solid transparent;
    border-radius: 4px;
}

.alert-success {
    color: #3c763d;
    background-color: #dff0d8;
    border-color: #d6e9c6;
}

.alert-danger {
    color: #a94442;
    background-color: #f2dede;
    border-color: #ebccd1;
}

#CookieDialog {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 2147483631;
    overflow: hidden;
    -webkit-overflow-scrolling: touch;
    outline: 0;
    overflow-x: hidden;
    overflow-y: auto;
    font-family: sans-serif;
    background: rgba(17, 17, 17, 0.6) !important;
}

#CookieDialog * {
    margin: 0;
    padding: 0;
    outline: 0;
    font-family: inherit;
    font-size: 15px;
    line-height: 24px;
    color: inherit;
    vertical-align: baseline;
}

#CookieDialogContent {
    max-width: 640px;
    top: 8%;
    position: relative;
    margin: 0 auto 30px;
    line-height: 24px;
    background-color: #ffffff;
    color: #141414;
    border: 1px solid #d6d6d6;
    overflow: hidden;
}

#CookieDialogNav {
    border-bottom: 1px solid #d6d6d6;
}

#CookieDialogNavList {
    display: table;
    margin: 0;
    padding: 0;
    width: 100%;
    table-layout: fixed;
}

#CookieDialogNavList li {
    display: table-cell;
}

#CookieDialogNavList li a {
    display: block;
    font-size: 15px;
    font-weight: 600;
    padding: 15px 0;
    text-align: center;
    color: #141414;
    margin-bottom: -1px;
    text-decoration: none;
}

#CookieDialogNavList li a.active {
    border-bottom: 3px solid #ed1515;
    color: #ed1515;
}

#CookieDialogBody .CookieDialogTabContent {
    padding: 24px;
    display: none;
}

#CookieDialogBody {
    max-height: 446px;
    overflow: auto;
}

#CookieDialogBody .CookieDialogTabContent.active {
    display: block;
}

#CookieDialogConsent h2 {
    font-weight: 600;
    margin-bottom: 8px;
}

#CookieDialogFooter {
    border-top: 1px solid #d6d6d6;
    padding: 15px 20px;
}

#CookieDialogFooter ul {
    list-style: none;
    padding: 0;
    margin: 0;
    display: table;
    width: 100%;
    table-layout: fixed;
}

#CookieDialogFooter ul li {
    display: table-cell;
    padding: 0 4px;
}

#CookieDialogFooter button {
    display: block;
    width: 100%;
    text-align: center;
    padding: 10px 15px;
    background-color: #ffffff;
    border: 2px solid #ed1515;
    color: #141414;
    font-weight: 600;
    border-radius: 2px;
}

#CookieDialogAbout p {
    margin-bottom: 10px;
}

#CookieDialogSave.hide,
#CookieDialogCustom.hide {
    display: none;
}

#CookieDialogAccept button {
    background-color: #ed1515;
    border-color: #ed1515;
    color: #ffffff;
}

#CookieDialog .CookieCard+.CookieCard {
    border-top: 1px solid #d6d6d6;
    margin-top: 20px;
    padding-top: 20px;
}

.CookieCardHeader:after,
.CookieCardHeader:before {
    content: '';
    display: table;
}

.CookieCardHeader:after {
    clear: both;
}

.CookieCardButton {
    float: left;
}

.CookieCardSwitch {
    float: right;
}


#CookieDialog .CookieCardBody {
    padding-top: 15px;
}


#CookieDialog .CookieCardSwitch input {
    width: 50px;
    height: 28px;
    border-radius: 32px;
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e");
    background-position: left center;
    transition: background-position .15s ease-in-out;
    background-color: #141414;
    background-repeat: no-repeat;
    background-size: contain;
    border: 1px solid #141414;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

#CookieDialog .CookieCardSwitch input:checked {
    background-color: #ed1515;
    border-color: #ed1515;
    background-position: right center;
}

#CookieDialog .CookieCardSwitch input:disabled {
    background-color: #d6d6d6;
    border-color: #d6d6d6;
}

#CookieDialog .CookieCardButton {
    background: none;
    border: 1px solid transparent;
    font-weight: 700;
    cursor: pointer;
    color: #141414;
    padding-right: 11.25px;
}

#CookieBanner {
    background: #F2F2F2;
    color: #000000;
    padding: 10px 0;
}

#CookieBanner p {
    color: inherit;
    margin: 0;
    font-size: 13px;
    line-height: 16px;
}

#CookieBannerContainer {
    display: table;
    width: 100%;
}

#CookieBannerText,
#CookieBannerButtons {
    display: table-cell;
    vertical-align: middle;
}

#CookieBannerButtons {
    white-space: nowrap;
    text-align: right;
}

#CookieBannerButtons a {
    margin-left: 8px;
    border: none;
    background: #EBEBEB;
    display: inline-block;
    padding: 8px 20px;
    font-size: 15px;
    line-height: 20px;
    text-align: center;
    color: #000000;
}

#Page {
    position: relative;
}

@media (max-width:767px) {
    #CookieDialogContent {
        top: 1.8%;
        width: 93.33%;
        height: 96.4%;
        margin-bottom: 0;
    }

    #CookieDialogBody {
        height: 62%;
        height: calc(100% - 232px);
        max-height: none;
    }

    #CookieDialogFooter ul li {
        display: block;
    }

    #CookieDialogFooter ul li button {
        padding: 5px 15px;
        margin: 7px 0;
    }

    #CookieBannerText,
    #CookieBannerButtons {
        display: block;
    }

    #CookieBannerText {
        margin-bottom: 10px;
    }

    #CookieBannerButtons a {
        margin: 0;
        display: block;
        width: 100%;
    }

    #CookieBannerButtons a+a {
        margin-top: 10px;
    }

    #CookieBanner {
        padding: 20px 0;
    }
}

.autocomplete-blur,
.autocomplete {
    z-index: 1;
    position: relative;
}

.autocomplete-items {
    position: absolute;
    top: 100%;
    left: 0;
    width: 300px;
    background: #212121;
    z-index: 99;
    max-height: 500px;
    overflow: auto;
    border-radius: 4px;
    box-shadow: rgba(255, 255, 255, 0.075) 0px 0px 0.5px 1px inset, rgba(0, 0, 0, 0.03) 0px 0.8999999761581421px 1.5px 0px, rgba(0, 0, 0, 0.08) 0px 3.0999999046325684px 5.5px 0px, rgba(0, 0, 0, 0.12) 0px 14px 25px 0px;
}

.autocomplete-items div {
    font-size: 14px;
    padding: 10px;
    cursor: pointer;
    font-weight: 500;
}

.autocomplete-items div:hover {
    background-color: rgba(255, 255, 255, 0.1);
}

.autocomplete-items .autocomplete-active {
    background-color: #ed1515 !important;
}

.section-how2 {
    padding: 200px 0;
    position: relative;
    z-index: 0;
    background-size: cover;
    background-position: center;
}

.section-how2:after {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.4);
    z-index: -1;
}

.section-how2 .heading .title,
.section-how2 .heading .alt {
    color: #FFF;
}

.footer-tags {
    padding-top: 15px;
    padding-bottom: 15px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

.footer-tags p {
    font-weight: bold;
    font-size: 16px;
    margin: 6px 0;
}

.footer-tags ul {
    list-style: none;
    padding: 0;
    margin: 0;
    font-size: 0;
}

.footer-tags ul li {
    background: #212121;
    display: inline-block;
    font-size: 14px;
    padding: 8px 10px;
    border-radius: 4px;
    font-weight: bold;
    margin-right: 8px;
    margin-bottom: 8px;
}

@media (min-width:768px) {

    .footer-tags p {
        float: left;
    }

    .footer-tags ul {
        float: right;
    }

    .footer-tags ul li {
        margin-left: 8px;
        margin-right: 0;
    }
}

@media (min-width:992px) {
    .footer-tags p {
        font-size: 20px;
    }

    .footer-tags ul li {
        margin-bottom: 8px;
        font-size: 16px;
        padding: 10px 15px;
    }
}

.section-devices {
    position: relative;
    overflow: hidden;
}

.whatsapp-button {
    position: fixed;
    right: 30px;
    bottom: 30px;
    width: 56px;
    height: 56px;
    line-height: 56px;
    font-size: 27px;
    text-align: center;
    background: #43cd66;
    color: #FFF;
    border-radius: 50%;
    -webkit-box-shadow: 0px 6px 8px 2px rgba(0, 0, 0, 0.14);
}

.whatsapp-button:hover {
    color: #FFF;
    opacity: .75;
    transition: opacity ease-in-out 250ms;
}