HTML BODY {
    max-width: 2000px;
    margin: 0 auto
}

html {
    scroll-behavior: smooth
}

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

:root {
    --bg-color1: #006ca8;
    --bg-color2: #000000;
    --bg-color3: #0091f4;
    --bg-color4: #000000;
    --bg-color5: #cdcdcd;
    --title-black: 'Roboto';
    --title-bold: 'Roboto';
    --font-regular: 'aileron_regular';
    --font-bold: 'aileron_bold';
    --font-italic: 'aileron_italic';
    --font-menu: 'aileron_bold';
    --font-alt: 'Roboto';
    --font-alt-2: 'aileron_light'
}

.title-black,
HTML BODY h1 {
    font-family: var(--title-black)
}

HTML BODY .h2,
HTML BODY h2,
HTML BODY h3,
HTML BODY h4,
HTML BODY h5,
HTML BODY h6 {
    font-family: var(--title-bold)
}

.text-regular,
HTML BODY,
HTML BODY p {
    font-family: var(--font-regular)
}

HTML BODY strong {
    font-family: var(--font-bold)
}

HTML BODY em {
    font-family: var(--font-italic)
}

.alt-font {
    font-family: var(--font-alt)
}

.alt-font-2 {
    font-family: var(--font-alt-2)
}

.dropdown button,
.navbar-nav a {
    font-family: var(--font-menu)
}

.dropdown button,
.navbar-nav a {
    letter-spacing: .5px
}

.dropdown button:hover {
    cursor: pointer
}

HTML BODY p {
    font-size: 100% !important
}

.top-header,
.top-header a,
.top-header p {
    font-size: 90% !important
}

.middle-header,
.middle-header .dropdown button,
.middle-header a,
.middle-header p {
    font-size: 90% !important
}

.bottom-header,
.bottom-header a,
.bottom-header li a,
.bottom-header p {
    font-size: 100% !important
}

.middle-header .navbar-nav {
    background: #fff
}

.bg-color1 {
    background: var(--bg-color1);
    transition: all .3s ease
}

.bg-color1:hover {
    background: var(--bg-color2);
    transition: all .3s ease
}

.t-color1,
.t-color1:hover {
    color: var(--bg-color1)
}

.bg-color2 {
    background: var(--bg-color2);
    transition: all .3s ease
}

.bg-color2:hover {
    background: var(--bg-color3);
    color: #fff!important;
    transition: all .3s ease
}

.t-color2,
.t-color2:hover {
    color: var(--bg-color2)
}

.bg-color3 {
    background: var(--bg-color3);
    transition: all .3s ease
}

.bg-color3:hover {
    background: var(--bg-color1);
    color: #fff !important;
    transition: all .3s ease
}

.t-color3,
.t-color3:hover {
    color: var(--bg-color3)
}

.bg-color4,
.bg-color4:hover {
    background: var(--bg-color4)
}

.t-color4,
.t-color4:hover {
    color: var(--bg-color4)
}

.bg-color5,
.bg-color5:hover {
    background: var(--bg-color5)
}

.bg-dark-25 {
    background: rgba(0, 0, 0, .25)
}

.bg-dark-50 {
    background: rgba(0, 0, 0, .5)
}

.bg-dark-75 {
    background: rgba(0, 0, 0, .75)
}

.bg-img1 {
    background: url(../images/elements/bg/bg_1.jpg)
}

.bg-img2 {
    background: url(../images/elements/bg/bg_2.jpg)
}

.bg-img3 {
    background: url(../images/elements/bg/bg_3.jpg)
}

.bg-img4 {
    background: url(../images/elements/bg/bg_4.jpg)
}

.bg-img5 {
    background: url(../images/elements/bg/bg_5.jpg)
}

.text-services {
    background: url(../images/elements/bg/text-services.png)
}

.text-about {
    background: url(../images/elements/bg/text-about.png)
}

.text-contact {
    background: url(../images/elements/bg/text-contact.png)
}

.bg-img {
    background-size: cover
}

.bg-img-100 {
    background-size: 100%
}

.bg-img-contain {
    background-size: contain
}

.bg-repeat-x {
    background-repeat: repeat-x
}

.bg-repeat-y {
    background-repeat: repeat-y
}

.bg-no-repeat {
    background-repeat: no-repeat
}

.bg-img-fixed {
    background-attachment: fixed
}

.bg-img-top-left {
    background-position: top left
}

.bg-img-top-center {
    background-position: top center
}

.bg-img-top-right {
    background-position: top right
}

.bg-img-center-left {
    background-position: center left
}

.bg-img-center-center {
    background-position: center center
}

.bg-img-center-right {
    background-position: center right
}

.bg-img-right-left {
    background-position: right left
}

.bg-img-right-center {
    background-position: right center
}

.bg-img-right-right {
    background-position: right right
}

.t-shadow-50 {
    text-shadow: 0 0 10px rgba(0, 0, 0, .5)
}

.t-shadow-100 {
    text-shadow: 0 0 10px #000
}

i {
    position: relative;
    vertical-align: -5px
}

.fa {
    transform: translateY(-5px)
}

.list-style-none li {
    list-style: none
}

.main-navbar .dropdown,
.main-navbar .dropdown:hover,
.main-navbar .navbar-nav a,
.main-navbar .navbar-nav a:hover,
a[data-fancybox=gallery]>img:hover {
    transition: all .3s ease;
    color: #fff
}

.main-navbar .navbar-nav a {
    border: 0 solid transparent
}

.main-navbar .navbar-nav a:hover {
    color: var(--bg-color1) !important;
    background: var(--bg-color4)
}

.main-navbar .navbar-nav .active a {
    color: var(--bg-color5) !important;
    border: 0 solid;
    background: var(--bg-color3)
}

.main-navbar .dropdown-menu {
    padding: 0
}

.main-navbar .dropdown-menu a {
    color: var(--bg-color1);
    background: 0 0
}

.main-navbar .dropdown-menu a:hover {
    background: var(--bg-color1) !important;
    background: 0 0
}

.main-navbar .dropdown-menu {
    background: var(--bg-color3);
    border-radius: 0 !important;
    transform: translateY(-2px);
    border: none
}

#indicador-carousel .carousel-caption h5 {
    font-size: 180%
}

#indicador-carousel .carousel-caption p {
    font-size: 110% !important
}

#indicador-carousel .carousel-caption a.btn {
    font-size: 90%
}

@media(min-width:300px) {
    .image-min {
        width: 100% !important
    }
    .negative-margin-top2 {
        margin-top: 5%
    }
    .main-logo {
        transform: translateY(0)
    }
    .text-services {
        background-size: 90%;
        background-position: 0 40px
    }
    .text-about {
        background-size: 85%;
        background-position: 0 60px
    }
    .text-contact {
        background-size: 90%;
        background-position: 0 60px
    }
}

@media(min-width:540px) {
    .carousel-caption {
        bottom: 30% !important
    }
    #indicador-carousel .carousel-caption {
        width: 80%
    }
    .negative-margin-top2 {
        margin-top: 5%
    }
    .bg-curve {
        transform: translateY(5px)
    }
    .main-logo {
        transform: translateY(0)
    }
    .text-services {
        background-size: 90%;
        background-position: center 40px
    }
    .text-about {
        background-size: 90%;
        background-position: center 40px
    }
    .text-contact {
        background-size: 90%;
        background-position: center 40px
    }
}

@media(min-width:960px) {
    .image-min {
        width: 70% !important
    }
    .carousel-caption {
        bottom: 35% !important
    }
    #indicador-carousel .carousel-caption {
        width: 80%
    }
    .negative-margin-top2 {
        margin-top: -2%
    }
    .bg-curve {
        transform: translateY(30px)
    }
    .main-logo {
        transform: translateY(0)
    }
    #indicador-carousel .carousel-caption h3 {
        font-size: 260%
    }
    .text-services {
        background-size: 70%;
        background-position: center 40px
    }
    .text-about {
        background-size: 70%;
        background-position: center 40px
    }
    .text-contact {
        background-size: 70%;
        background-position: center 40px
    }
}

@media(min-width:1140px) {
    .image-min {
        width: 70% !important
    }
    .carousel-caption {
        bottom: 35% !important
    }
    #indicador-carousel .carousel-caption {
        width: 80%
    }
    .negative-margin-top2 {
        margin-top: -2%
    }
    .home-box {
        margin-top: -220px
    }
    .home-box .left-phrase {
        margin-top: 65px
    }
    .home-divide {
        margin-top: -100px
    }
    .bg-curve {
        transform: translateY(0)
    }
    .main-logo {
        transform: translateY(0)
    }
    #indicador-carousel .carousel-caption h3 {
        font-size: 260%
    }
    .text-services {
        background-size: 70%;
        background-position: center top
    }
    .text-about {
        background-size: 70%;
        background-position: center top
    }
    .text-contact {
        background-size: 70%;
        background-position: center top
    }
}

@media(min-width:1200px) {
    .bg-curve {
        transform: translateY(20px)
    }
    .main-logo {
        transform: translateY(5px)
    }
    #indicador-carousel .carousel-caption h3 {
        font-size: 300%
    }
    .text-services {
        background-size: 60%;
        background-position: center top
    }
    .text-about {
        background-size: 60%;
        background-position: center top
    }
    .text-contact {
        background-size: 60%;
        background-position: center top
    }
}

@media(min-width:1366px) {
    .bg-curve {
        transform: translateY(20px)
    }
    .main-logo {
        transform: translateY(0)
    }
    #indicador-carousel .carousel-caption h3 {
        font-size: 320%
    }
    .text-services {
        background-size: 50%;
        background-position: center top
    }
    .text-about {
        background-size: 50%;
        background-position: center top
    }
    .text-contact {
        background-size: 50%;
        background-position: center top
    }
}

@media(min-width:1600px) {
    .bg-curve {
        transform: translateY(20px)
    }
    .main-logo {
        transform: translateY(5px)
    }
    #indicador-carousel .carousel-caption h3 {
        font-size: 350%
    }
    .text-services {
        background-size: 50%;
        background-position: center top
    }
    .text-about {
        background-size: 50%;
        background-position: center top
    }
    .text-contact {
        background-size: 50%;
        background-position: center top
    }
}

a.navbar-brand {
    font-size: 130% !important
}

.navbar-toggler {
    margin-bottom: 10px
}

.go-up {
    background: url(../../src/images/elements/top.png) #000 center center;
    border-radius: 50px;
    opacity: .5;
    cursor: pointer;
    width: 40px;
    height: 40px;
    position: fixed;
    bottom: 25px;
    right: 25px;
    display: inline-block !important
}

.go-up:hover {
    opacity: 1
}

.hide-top,
.hide-top-alt {
    opacity: 0 !important
}

.icon-align {
    min-width: 24px;
    text-align: center;
    position: absolute;
    left: 20px;
    margin-top: 10px
}

a[data-fancybox=gallery-homepage]>img:hover {
    filter: brightness(1.1)
}

.bg-curve {
    position: absolute;
    z-index: 98;
    bottom: 0
}

.carousel-control-next,
.carousel-control-prev {
    z-index: 99
}

.home-box {
    position: relative;
    z-index: 110
}

.home-box p {
    line-height: 1.6
}

.home-divide {
    position: relative;
    z-index: 100
}

.home-services img,
.home-services:hover h3,
.home-services:hover img {
    transition: all ease-in-out .3s !important
}

.home-services img {
    border: 15px solid rgba(0, 0, 0, .1)
}

.home-services .btn {
    border: 1px solid var(--bg-color1)
}

.home-services:hover h3 {
    color: var(--bg-color2)
}

.home-services:hover img {
    border: 15px solid var(--bg-color1)
}

.home-services:hover .btn {
    background: var(--bg-color1);
    color: #fff
}

.box-shadow-map iframe {
    box-shadow: rgba(0, 0, 0, .5) 0 3px 10px;
    border-radius: 20px
}

div.header-video {
    position: relative;
    background-color: #000;
    height: 75vh;
    min-height: 35rem;
    width: 100%;
    overflow: hidden
}

div.header-video video {
    position: absolute;
    top: 50%;
    left: 50%;
    min-width: 100%;
    min-height: 100%;
    width: auto;
    height: auto;
    z-index: 0;
    -ms-transform: translateX(-50%) translateY(-50%);
    -moz-transform: translateX(-50%) translateY(-50%);
    -webkit-transform: translateX(-50%) translateY(-50%);
    transform: translateX(-50%) translateY(-50%)
}

div.header-video .container {
    position: relative;
    z-index: 2
}

div.header-video .overlay {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    background-color: #000;
    opacity: .3;
    z-index: 1
}

.landing-pages-home figcaption {
    background: var(--bg-color2);
    position: absolute;
    top: 0;
    box-shadow: 0 5px 5px rgba(0, 0, 0, .6);
    padding: 5px 15px
}

.landing-pages-home figcaption a {
    font-size: 70%;
    text-decoration: none
}

.hvr-shutter-in-horizontal {
    display: inline-block;
    vertical-align: middle;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    position: relative;
    background: var(--bg-color1);
    -webkit-transition-property: color;
    transition-property: color;
    -webkit-transition-duration: .3s;
    transition-duration: .3s
}

.hvr-shutter-in-horizontal:before {
    content: "";
    position: absolute;
    z-index: -1;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background: #fff;
    -webkit-transform: scaleX(1);
    transform: scaleX(1);
    -webkit-transform-origin: 50%;
    transform-origin: 50%;
    -webkit-transition-property: transform;
    transition-property: transform;
    -webkit-transition-duration: .3s;
    transition-duration: .3s;
    -webkit-transition-timing-function: ease-out;
    transition-timing-function: ease-out
}

.hvr-shutter-in-horizontal:active,
.hvr-shutter-in-horizontal:active a,
.hvr-shutter-in-horizontal:active h5,
.hvr-shutter-in-horizontal:focus,
.hvr-shutter-in-horizontal:focus a,
.hvr-shutter-in-horizontal:focus h5,
.hvr-shutter-in-horizontal:hover,
.hvr-shutter-in-horizontal:hover a,
.hvr-shutter-in-horizontal:hover h5 {
    color: #fff
}

.hvr-shutter-in-horizontal:active a,
.hvr-shutter-in-horizontal:focus a,
.hvr-shutter-in-horizontal:hover a {
    background: var(--bg-color2)
}

.hvr-shutter-in-horizontal:active:before,
.hvr-shutter-in-horizontal:focus:before,
.hvr-shutter-in-horizontal:hover:before {
    -webkit-transform: scaleX(0);
    transform: scaleX(0)
}

a[data-fancybox=gallery] img {
    border: 7px solid rgba(0, 0, 0, .1)
}

a[data-fancybox=gallery] img:hover {
    border: 7px solid var(--bg-color2)
}

.row-eq-height {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex
}

.header-border:nth-child(2) {
    border-left: 1px solid #003e9f;
    border-right: 1px solid #003e9f
}

.services-home div i {
    position: absolute;
    top: 5px;
    z-index: 99;
    background: var(--bg-color2);
    padding: 15px
}

.grid {
    position: relative;
    margin: 0 auto;
    padding: 1em 0 4em;
    max-width: 1000px;
    list-style: none;
    text-align: center
}

.grid figure {
    position: relative;
    float: left;
    overflow: hidden;
    margin: 10px 1%;
    max-height: 360px;
    width: 100%;
    text-align: center;
    cursor: pointer
}

.grid figure img {
    position: relative;
    display: block;
    min-height: 100%;
    max-width: 100%;
    opacity: .8
}

.grid figure figcaption {
    padding: 2em;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden
}

.grid figure figcaption::after,
.grid figure figcaption::before {
    pointer-events: none
}

.grid figure figcaption {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

figure.effect-sarah {
    background: #000
}

figure.effect-sarah img {
    max-width: none;
    width: -webkit-calc(100% + 20px);
    width: calc(100% + 20px);
    -webkit-transition: opacity .35s, -webkit-transform .35s;
    transition: opacity .35s, transform .35s;
    -webkit-transform: translate3d(-10px, 0, 0);
    transform: translate3d(-10px, 0, 0);
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden
}

figure.effect-sarah:hover img {
    opacity: .4;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0)
}

figure.effect-sarah figcaption {
    text-align: left
}

figure.effect-sarah h2 {
    position: relative;
    overflow: hidden;
    padding: .5em 0
}

figure.effect-sarah h2::after {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 3px;
    background: #fff;
    content: '';
    -webkit-transition: -webkit-transform .35s;
    transition: transform .35s;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0)
}

figure.effect-sarah:hover h2::after {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0)
}

figure.effect-sarah p {
    opacity: 0;
    -webkit-transition: opacity .35s, -webkit-transform .35s;
    transition: opacity .35s, transform .35s;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0)
}

figure.effect-sarah:hover p {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0)
}

.effect-sarah:hover {
    box-shadow: 0 0 10px 1px #000
}

figure.welcome-section figcaption {
    background: rgba(0, 0, 0, .5);
    position: absolute;
    top: 50%;
    left: 45px;
    padding: 12px 10px;
    width: 75%
}

.carousel-fade .carousel-item {
    opacity: 0;
    transition-duration: .6s;
    transition-property: opacity
}

.carousel-fade .carousel-item-next.carousel-item-left,
.carousel-fade .carousel-item-prev.carousel-item-right,
.carousel-fade .carousel-item.active {
    opacity: 1
}

.carousel-fade .active.carousel-item-left,
.carousel-fade .active.carousel-item-right {
    opacity: 0
}

.carousel-fade .active.carousel-item-left,
.carousel-fade .active.carousel-item-prev,
.carousel-fade .carousel-item-next,
.carousel-fade .carousel-item-prev,
.carousel-fade .carousel-item.active {
    transform: translateX(0);
    transform: translate3d(0, 0, 0)
}

.slit-in-vertical {
    -webkit-animation: slit-in-vertical .45s ease-in both;
    animation: slit-in-vertical .45s ease-in both
}

@-webkit-keyframes slit-in-vertical {
    0% {
        -webkit-transform: translateZ(-800px) rotateY(90deg);
        transform: translateZ(-800px) rotateY(90deg);
        opacity: 0
    }
    54% {
        -webkit-transform: translateZ(-160px) rotateY(87deg);
        transform: translateZ(-160px) rotateY(87deg);
        opacity: 1
    }
    100% {
        -webkit-transform: translateZ(0) rotateY(0);
        transform: translateZ(0) rotateY(0)
    }
}

@keyframes slit-in-vertical {
    0% {
        -webkit-transform: translateZ(-800px) rotateY(90deg);
        transform: translateZ(-800px) rotateY(90deg);
        opacity: 0
    }
    54% {
        -webkit-transform: translateZ(-160px) rotateY(87deg);
        transform: translateZ(-160px) rotateY(87deg);
        opacity: 1
    }
    100% {
        -webkit-transform: translateZ(0) rotateY(0);
        transform: translateZ(0) rotateY(0)
    }
}

.slide-in-elliptic-top-fwd {
    -webkit-animation: slide-in-elliptic-top-fwd .9s cubic-bezier(.25, .46, .45, .94) both;
    animation: slide-in-elliptic-top-fwd .9s cubic-bezier(.25, .46, .45, .94) both
}

@-webkit-keyframes slide-in-elliptic-top-fwd {
    0% {
        -webkit-transform: translateY(-600px) rotateX(-30deg) scale(0);
        transform: translateY(-600px) rotateX(-30deg) scale(0);
        -webkit-transform-origin: 50% 100%;
        transform-origin: 50% 100%;
        opacity: 0
    }
    100% {
        -webkit-transform: translateY(0) rotateX(0) scale(1);
        transform: translateY(0) rotateX(0) scale(1);
        -webkit-transform-origin: 50% 1400px;
        transform-origin: 50% 1400px;
        opacity: 1
    }
}

@keyframes slide-in-elliptic-top-fwd {
    0% {
        -webkit-transform: translateY(-600px) rotateX(-30deg) scale(0);
        transform: translateY(-600px) rotateX(-30deg) scale(0);
        -webkit-transform-origin: 50% 100%;
        transform-origin: 50% 100%;
        opacity: 0
    }
    100% {
        -webkit-transform: translateY(0) rotateX(0) scale(1);
        transform: translateY(0) rotateX(0) scale(1);
        -webkit-transform-origin: 50% 1400px;
        transform-origin: 50% 1400px;
        opacity: 1
    }
}

.slide-in-elliptic-bottom-bck {
    -webkit-animation: slide-in-elliptic-bottom-bck .9s cubic-bezier(.25, .46, .45, .94) both;
    animation: slide-in-elliptic-bottom-bck .9s cubic-bezier(.25, .46, .45, .94) both
}

@-webkit-keyframes slide-in-elliptic-bottom-bck {
    0% {
        -webkit-transform: translateY(600px) rotateX(-30deg) scale(6.5);
        transform: translateY(600px) rotateX(-30deg) scale(6.5);
        -webkit-transform-origin: 50% -100%;
        transform-origin: 50% -100%;
        opacity: 0
    }
    100% {
        -webkit-transform: translateY(0) rotateX(0) scale(1);
        transform: translateY(0) rotateX(0) scale(1);
        -webkit-transform-origin: 50% 500px;
        transform-origin: 50% 500px;
        opacity: 1
    }
}

@keyframes slide-in-elliptic-bottom-bck {
    0% {
        -webkit-transform: translateY(600px) rotateX(-30deg) scale(6.5);
        transform: translateY(600px) rotateX(-30deg) scale(6.5);
        -webkit-transform-origin: 50% -100%;
        transform-origin: 50% -100%;
        opacity: 0
    }
    100% {
        -webkit-transform: translateY(0) rotateX(0) scale(1);
        transform: translateY(0) rotateX(0) scale(1);
        -webkit-transform-origin: 50% 500px;
        transform-origin: 50% 500px;
        opacity: 1
    }
}

.effect-zoom-in {
    -webkit-animation: effect-zoom-in 5s ease-out both;
    animation: effect-zoom-in 5s ease-out both
}

@-webkit-keyframes effect-zoom-in {
    0% {
        -webkit-transform: scale(1.25) translateY(0);
        transform: scale(1.25) translateY(0);
        -webkit-transform-origin: 50% 16%;
        transform-origin: 50% 16%
    }
    100% {
        -webkit-transform: scale(1.05) translateY(-15px);
        transform: scale(1.05) translateY(-15px);
        -webkit-transform-origin: top;
        transform-origin: top
    }
}

@keyframes effect-zoom-in {
    0% {
        -webkit-transform: scale(1.25) translateY(0);
        transform: scale(1.25) translateY(0);
        -webkit-transform-origin: 50% 16%;
        transform-origin: 50% 16%
    }
    100% {
        -webkit-transform: scale(1.05) translateY(-15px);
        transform: scale(1.05) translateY(-15px);
        -webkit-transform-origin: top;
        transform-origin: top
    }
}

.btn {
    white-space: pre-line !important;
    border-radius: 0;
    -webkit-transform: skewX(-20deg);
    -ms-transform: skewX(-20deg);
    transform: skewX(-20deg)
}

.btnSkewText {
    display: inline-block;
    -webkit-transform: skewX(20deg);
    -ms-transform: skewX(20deg);
    transform: skewX(20deg)
}

.containerServices {
    position: relative;
    width: 100%
}

.image {
    display: block;
    width: 100%;
    height: auto
}

.overlayOpacity {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    background-color: rgba(0, 0, 0, .61);
    overflow: hidden;
    width: 100%;
    height: 0;
    transition: .5s ease
}

.containerServices:hover .overlayOpacity {
    height: 100%
}

.textOverlay {
    color: #fff;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    text-align: center
}

hr {
    border: 0;
    height: 5px;
    width: 10%;
    margin: 0 auto;
    -webkit-transform: skewX(-20deg);
    transform: skewX(-20deg);
    background: var(--bg-color3)
}

.animationFloat {
    border-radius: 5px;
    -webkit-animation: line 3s ease-in-out infinite;
    animation: line 3s ease-in-out infinite
}

@-webkit-keyframes line {
    from {
        transform: translateY(4px)
    }
    50% {
        transform: translateY(-4px)
    }
    to {
        transform: translateY(4px)
    }
}

@keyframes line {
    from {
        transform: translateY(4px)
    }
    50% {
        transform: translateY(-4px)
    }
    to {
        transform: translateY(4px)
    }
}

.efectUP {
    transition: transform .3s cubic-bezier(.34, 2, .6, 1), box-shadow .2s ease
}

.efectUP:hover {
    transform: translateY(-10px);
    -webkit-transform: translateY(-10px);
    -ms-transform: translateY(-10px);
    -moz-transform: translateY(-10px)
}

.heartbeat {
    transition: all .5s ease-in-out;
    border-bottom: 4px solid transparent;
    border-top: 4px solid transparent
}

.heartbeat:hover {
    border-bottom: 4px solid var(--bg-color3);
    border-top: 4px solid var(--bg-color3);
    transition: all .5s ease-in-out;
    border-radius: 10px
}

.heartbeat:hover h3 {
    color: var(--bg-color3)
}

.heartbeat:hover img {
    -webkit-animation: heartbeat 1.5s ease-in-out infinite both;
    animation: heartbeat 1.5s ease-in-out infinite both
}

@-webkit-keyframes heartbeat {
    from {
        -webkit-transform: scale(1);
        transform: scale(1);
        -webkit-transform-origin: center center;
        transform-origin: center center;
        -webkit-animation-timing-function: ease-out;
        animation-timing-function: ease-out
    }
    10% {
        -webkit-transform: scale(.91);
        transform: scale(.91);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in
    }
    17% {
        -webkit-transform: scale(.98);
        transform: scale(.98);
        -webkit-animation-timing-function: ease-out;
        animation-timing-function: ease-out
    }
    33% {
        -webkit-transform: scale(.87);
        transform: scale(.87);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in
    }
    45% {
        -webkit-transform: scale(1);
        transform: scale(1);
        -webkit-animation-timing-function: ease-out;
        animation-timing-function: ease-out
    }
}

@keyframes heartbeat {
    from {
        -webkit-transform: scale(1);
        transform: scale(1);
        -webkit-transform-origin: center center;
        transform-origin: center center;
        -webkit-animation-timing-function: ease-out;
        animation-timing-function: ease-out
    }
    10% {
        -webkit-transform: scale(.91);
        transform: scale(.91);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in
    }
    17% {
        -webkit-transform: scale(.98);
        transform: scale(.98);
        -webkit-animation-timing-function: ease-out;
        animation-timing-function: ease-out
    }
    33% {
        -webkit-transform: scale(.87);
        transform: scale(.87);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in
    }
    45% {
        -webkit-transform: scale(1);
        transform: scale(1);
        -webkit-animation-timing-function: ease-out;
        animation-timing-function: ease-out
    }
}

.efectZoom:hover img {
    transform: scale(1.08);
    transition: all .5s ease-in-out
}

.efectZoom img {
    transition: all .5s ease-in-out !important
}

.badge {
    white-space: pre-line !important
}

.phone-float-mobile{position:fixed;bottom: 70px;right: 15px;margin:0 auto;}