@import url(https://fonts.googleapis.com/css2?family=Montserrat:wght@300;500;900&display=swap);
body,
p {
    font-weight: 400
}

.btn,
a:focus,
a:hover {
    text-decoration: none
}

.btn,
body {
    line-height: 1.5
}

.btn,
.nav>li {
    text-align: center
}

.btn,
a {
    transition: all .3s ease-in-out
}

.features,
body {
    overflow-x: hidden
}

.plan,
img {
    max-width: 100%
}

body {
    font-family: 'Montserrat', sans-serif;
    font-size: 16px
}

p {
    color: #4c4c4c;
    font-size: 17px
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-weight: 900;
    color: #4c4c4c
}

h4 {
    font-size: 20px;
    margin: 12px 0
}

a {
    color: #0073bc
}

a:focus,
a:hover {
    color: #000000
}

a:focus {
    outline: 0
}

img {
    height: auto
}

li,
ul {
    list-style: none;
    padding: 0;
    margin: 0
}

b,
strong {
    font-weight: 600
}

.hero-section {
    background: url(../img/whale-bg.webp) center center no-repeat;
    background-size: cover;
    padding: 0 0 4.5em;
    position: relative;
    color: #fff
}

.hero-section::before,
.pricing::before,
.twitter-feed::before,
.video-tour::before {
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    right: 0
}

.hero-section::before {
    background: rgba(0, 0, 0, .3)
}

.welcome-message {
    margin-top: 4.5em
}

.welcome-message h1 {
    font-size: 36px;
    color: #fff;
    font-weight: 400;
    margin: 0 0 24px
}

.welcome-message h2 {
    font-size: 22px;
    color: #fff;
    font-weight: 400;
    margin: 0
}

.btn,
.cta-btn p {
    font-size: 18px;
    color: #fff
}

.btn {
    padding: 1em 3em;
    background-color: #fff;
    color: #000000;
    border: none;
    border-radius: 3px;
    font-weight: 400;
    text-transform: uppercase
}

.btn:hover {
    color: #fff;
    background-color: #000000
}

.btn:active,
.btn:active:focus,
.btn:active:hover,
.btn:focus {
    color: #fff;
    outline: 0;
    background-color: #2e3192
}

.cta-btn p {
    margin: .75em 0 0
}

.navbar-default {
    background-color: rgba(255, 255, 255, .97);
    border: none;
    margin-bottom: 0;
    border-radius: 0;
    padding: .75em 0
}

.nav>li>a>i {
    padding-right: .2em
}

.navbar-default .navbar-toggle:focus,
.navbar-default .navbar-toggle:hover {
    background-color: #0073bc;
    transition: all .3s ease-in-out
}

.navbar-default .navbar-toggle:focus .icon-bar,
.navbar-default .navbar-toggle:hover .icon-bar {
    background-color: #fff
}

.navbar-brand {
    padding: 0 0 0 1em
}

.nav-left,
.navbar-brand .logo-nav,
.navbar-default.stuck .logo-head {
    display: none
}

.navbar-default.stuck .logo-nav,
.navbar-default.stuck .nav-left {
    display: block
}

.navbar-default .navbar-nav>li>a,
.navbar-default .navbar-nav>li>a:focus,
.navbar-default .navbar-nav>li>a:hover {
    color: #fff
}

.navbar-default.stuck .navbar-nav>li>a {
    color: #4c4c4c
}

.navbar-default.stuck .navbar-nav>li>a:focus,
.navbar-default.stuck .navbar-nav>li>a:hover {
    color: #000000
}

.navbar-default .btn {
    font-size: 16px
}

.navbar-default.stuck .navbar-nav .btn {
    display: inline-block;
    background: #0073bc;
    color: #fff;
    border: 1px solid #0073bc
}

.navbar-default.stuck .navbar-nav .btn:focus,
.navbar-default.stuck .navbar-nav .btn:hover {
    background: #000000 !important;
    color: #fff
}

.navbar-default.stuck {
    position: fixed;
    width: 100%;
    top: 0;
    left: 0;
    z-index: 10;
    background-color: rgba(255, 255, 255, .99);
    box-shadow: 0 1px 12px 0 rgba(51, 51, 51, .23);
    -webkit-animation: fadeInDown 1s both;
    animation: fadeInDown 1s both
}

@-webkit-keyframes fadeInDown {
    0% {
        opacity: 0;
        -webkit-transform: translateY(-20px);
        transform: translateY(-20px)
    }
    100% {
        opacity: 1;
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }
}

@keyframes fadeInDown {
    0% {
        opacity: 0;
        -webkit-transform: translateY(-20px);
        -ms-transform: translateY(-20px);
        transform: translateY(-20px)
    }
    100% {
        opacity: 1;
        -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
        transform: translateY(0)
    }
}

.play-btn {
    margin: 2.25em 0
}

.hero-section .play-btn img {
    transition: opacity .3s linear
}

.play-btn img:hover {
    opacity: .8
}

.section-header {
    margin-bottom: 3em
}

.section-header h2 {
    font-size: 24px;
    font-weight: 600;
    margin-top: 0
}

.section-header h3 {
    font-size: 24px;
    font-weight: 300;
    margin: 0
}

.featured-on,
.features,
.site-footer,
.tour {
    background-color: #FFF
}

.section-spacing,
.section-spacing.featured-on,
.section-spacing.site-footer,
.section-spacing.tour {
    padding: 3.75em 0
}

.featured-on .section-header {
    margin-bottom: 1.5em
}

.featured-sites li {
    padding: 0 3em 1.5em
}

.featured-sites li:last-child {
    padding-bottom: 0
}

.featured-sites img {
    opacity: .9;
    transition: all .5s linear
}

.featured-sites img:hover {
    opacity: .2
}

.benefits img {
    margin-bottom: .75em
}

.benefits p {
    color: #8A8A8A
}

.benefits div[class^=col-]:nth-child(1),
.benefits div[class^=col-]:nth-child(2),
.reviews div[class^=col-]:nth-child(1),
.reviews div[class^=col-]:nth-child(2),
.team div[class^=col-]:nth-child(1),
.team div[class^=col-]:nth-child(2) {
    padding-bottom: 1.5em
}

.benefits div[class^=col-]>p:last-child {
    margin-bottom: 0
}

.features div[class=row]:nth-child(1),
.features div[class=row]:nth-child(2) {
    margin-bottom: 3em
}

.features article {
    margin-top: 1.5em
}

.features article h2 {
    font-size: 24px;
    margin: 24px 0 12px
}

.features article h3 {
    font-size: 30px;
    margin: 24px 0 12px;
    color: #0073bc
}

.features article li {
    font-size: 17px;
    color: #8A8A8A;
    padding-left: 1em;
    text-indent: -.7em;
    padding-bottom: .2em
}

.tour h2,
.video-tour h2 {
    font-size: 24px;
    font-weight: 400
}

.features article li:last-child {
    padding-bottom: 0
}

.features article li:before {
    content: "• ";
    color: #0073bc;
    padding-right: .5em
}

.features div[class=row]:nth-child(3) .col-md-4 article {
    margin-bottom: 1.5em
}

.video-tour {
    position: relative;
    height: 400px;
    overflow: hidden;
    background: url(../img/nado-tiburon.jpg) center center no-repeat #333;
    background-size: cover;
    -webkit-perspective: 1000;
    perspective: 1000
}

.video-tour::before {
    background: rgba(0, 0, 0, .3);
    z-index: 1
}

.video-tour h2 {
    color: #fff;
    margin-bottom: 0
}

#bgvid {
    display: none;
    position: absolute;
    right: 0;
    bottom: 0;
    min-width: 100%;
    min-height: 100%;
    width: auto;
    height: auto
}

.video-tour .play-btn {
    position: absolute;
    z-index: 3;
    left: 50%;
    top: 50%;
    bottom: auto;
    right: auto;
    -webkit-transform: translateX(-50%) translateY(-50%);
    -ms-transform: translateX(-50%) translateY(-50%);
    transform: translateX(-50%) translateY(-50%);
    margin: 0
}

.center-block {
    float: none
}

.tour h2 {
    margin: 0
}

.tour .btn {
    margin-top: 1em;
    vertical-align: initial
}

.sub-form .btn i,
.tour .btn i {
    padding-left: .5em
}

.pricing {
    background: url(../img/tiburonballenaholbox.jpg) center center no-repeat;
    background-size: cover;
    position: relative
}

.pricing::before {
    background: rgba(0, 0, 0, .3)
}

.pricing .section-header h2,
.pricing .section-header h3,
.pricing .section-header p {
    position: relative;
    color: #fff
}

.pricing .section-header h2 {
    font-size: 32px;
    font-weight: 700
}

.pricing .section-header p {
    font-size: 18px;
    font-weight: 300;
    margin: .5em 0 0;
    text-align: justify
}

.plan {
    background-color: #fff;
    width: 350px;
    display: inline-block;
    margin: 0 0 1.5em
}

.plan:last-child {
    margin-bottom: 0
}

.plan .header,
.plan-features,
.price {
    padding: 1.5em 1em
}

.plan .header h4 {
    font-size: 21px;
    margin: 0
}

.price {
    background-color: #43c5b8;
    color: #fff
}

.price-amount {
    font-size: 110px;
    line-height: 1
}

.currency,
.period {
    font-size: 30px
}

.currency {
    vertical-align: top;
    top: 30px
}

.plan-features li {
    padding-bottom: .75em;
    font-size: 17px
}

.plan-features li:last-child {
    padding-bottom: 0
}

.plan-features li span {
    font-weight: 700
}

.plan-features li i {
    padding-left: .5em;
    color: #0073bc
}

.buy-button {
    padding-bottom: 1.5em
}

.buy-button p {
    margin: 12px 0 0;
    font-weight: 300
}

.reviews figure {
    margin-bottom: 1.5em
}

blockquote {
    padding: 0 0 0 3em;
    margin: 0;
    border-left: none;
    position: relative
}

blockquote::before {
    content: "\201C";
    color: #e9e9e9;
    position: absolute;
    left: -12px;
    top: -50px;
    font-size: 128px
}

blockquote p {
    font-size: 18px;
    font-weight: 400
}

blockquote cite {
    font-size: 17.5px;
    font-weight: 400;
    color: #AEAFAF;
    font-style: normal
}

.cta-section {
    background-color: #0073bc
}

.cta-section .section-header {
    margin-bottom: 2.25em
}

.cta-section h2 {
    font-size: 40px;
    font-weight: 600;
    color: #fff
}

.cta-section .section-header h3 {
    font-size: 24px;
    font-weight: 300;
    color: #fff
}

.cta-section .btn {
    background-color: #fff;
    color: #0073bc;
    border: 1px solid transparent
}

.cta-section .btn:hover {
    background-color: transparent;
    color: #fff;
    border: 1px solid #fff
}

.cta-section p {
    color: #fff;
    margin: .75em 0 0
}

.cta-section a[href^=tel] {
    color: #fff
}

.cta-section a[href^=tel]:hover {
    color: #fff;
    text-decoration: underline
}

.team h4 {
    font-size: 21px;
    margin: 24px 0 6px
}

.team h5 {
    font-size: 19px;
    font-weight: 400;
    margin-top: 0
}

.map-address,
.tweet {
    font-weight: 300
}

.team div[class^=col-]:nth-child(3) .team-info h5 {
    margin: 0
}

.team p {
    color: #fff
}

.team-details figure {
    position: relative;
    overflow: hidden;
    width: 360px;
    max-width: 100%;
    margin: 0 auto
}

.team-details figcaption {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: #0073bc;
    transition: -webkit-transform .35s;
    transition: transform .35s;
    -webkit-transform: translate3d(0, 100%, 0);
    -ms-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
    padding: 1.5em 1em;
    display: block
}

.site-footer small,
.social li {
    display: inline-block
}

.team-details figure figcaption div li a,
.team-details figure figcaption div p {
    transition: -webkit-transform .35s;
    transition: transform .35s;
    -webkit-transform: translate3d(0, 200%, 0);
    -ms-transform: translate3d(0, 200%, 0);
    transform: translate3d(0, 200%, 0)
}

.team-details figure:hover figcaption,
.team-details figure:hover figcaption div li a,
.team-details figure:hover figcaption div p {
    -webkit-transform: translate3d(0, 0, 0);
    -ms-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0)
}

.team-details figure figcaption div p {
    transition-delay: 50ms
}

.team-details figure figcaption div li:nth-child(1) a {
    transition-delay: .1s
}

.team-details figure figcaption div li:nth-child(2) a {
    transition-delay: .15s
}

.team-details .social {
    margin-top: .75em
}

.team-details .social li a {
    color: #0073bc;
    background-color: #fff;
    border: 1px solid #0073bc;
    width: 55px;
    height: 55px;
    line-height: 55px;
    font-size: 1.5em
}

.team-details .social li a:hover {
    color: #fff;
    background-color: #0073bc;
    border: 1px solid #fff
}

.team-details figcaption div {
    position: absolute;
    left: 0;
    right: 0;
    bottom: auto;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    padding: 1.5em
}

.twitter-feed {
    background: url(../img/bg-twitter.jpg) center center no-repeat;
    background-size: cover;
    position: relative
}

.twitter-feed::before {
    background: rgba(0, 0, 0, .38)
}

.twitter-icon .fa-twitter {
    color: #fff;
    font-size: 4em;
    padding-bottom: 12px
}

.tweet {
    font-size: 20px;
    color: #fff
}

.tweet a {
    color: #fff
}

.tweet a:hover {
    color: rgba(255, 255, 255, .92)
}

.contact.section-spacing {
    padding: 3.75em 0 0
}

#map-canvas {
    width: 100%;
    margin: 0;
    padding: 0;
    height: 35em
}

#map-canvas img {
    max-width: none
}

.map-info-box {
    text-align: left
}

.map-info-box p {
    margin: 0 0 8px
}

.map-info-box i {
    padding-right: .5em;
    color: #CEC9C9
}

.map-head h3 {
    height: 30px;
    background: url(../img/logo-nav.png) 47px center no-repeat;
    background-size: 110px auto;
    text-indent: -999em;
    margin: 12px 0 14px
}

.form-control,
.map-email {
    font-weight: 400
}

.form-control::-webkit-input-placeholder {
    color: #8A8A8A
}

.form-control:-moz-placeholder {
    color: #8A8A8A
}

.form-control::-moz-placeholder {
    color: #8A8A8A
}

.form-control:-ms-input-placeholder {
    color: #8A8A8A
}

.form-control {
    background-color: #fff;
    border: 1px solid #0073bc;
    color: #4c4c4c;
    box-shadow: none;
    height: 60px;
    font-size: 16px;
    padding: 0 1.5em
}

.form-control:focus {
    border-color: #000000;
    outline: 0;
    box-shadow: none
}

.sub-form .btn {
    padding: 1em
}

#mc-form .btn-default {
    height: 60px
}

#mc-notification {
    margin: .75em 0 0;
    font-weight: 400;
    color: #8A8A8A;
    font-size: 17px
}

.error {
    color: #FF4C4C !important
}

.valid {
    color: #4CAF50 !important
}

.error i,
.valid i {
    padding-right: .5em
}

.footer-links,
.site-footer small {
    margin: 0 0 .75em
}

.footer-links a,
.site-footer small {
    color: #333;
    font-weight: 500;
    font-size: 14px
}

.footer-links a:hover {
    color: #000000
}

.footer-links a:first-child {
    padding-right: .4em
}

.social li {
    padding-right: .5em;
    text-align: center
}

.social li:last-child {
    padding-right: 0
}

.social li a {
    display: block;
    width: 45px;
    height: 45px;
    line-height: 45px;
    color: #fff;
    border-radius: 50%;
    position: relative;
    transition: all .8s ease;
    font-size: 1.3em;
    background: #D6D6D6
}

.social li a:hover {
    color: #fff;
    background: #0073bc
}

@media (min-width:768px) {
    .hero-section {
        padding: 0 0 7.5em
    }
    .welcome-message {
        margin-top: 8.25em
    }
    .welcome-message h1 {
        font-size: 44px
    }
    .welcome-message h2 {
        font-size: 23px
    }
    .play-btn {
        margin: 3em 0
    }
    .featured-sites li {
        padding: 0 1em;
        display: inline-block
    }
    .section-spacing {
        padding: 4.5em 0
    }
    .contact.section-spacing {
        padding: 4.5em 0 0
    }
    .section-header h3 {
        font-size: 26px
    }
    .benefits div[class^=col-]:nth-child(1),
    .benefits div[class^=col-]:nth-child(2),
    .reviews div[class^=col-]:nth-child(1),
    .reviews div[class^=col-]:nth-child(2),
    .team div[class^=col-]:nth-child(1),
    .team div[class^=col-]:nth-child(2) {
        padding-bottom: 0
    }
    .tour .btn {
        margin: 0 0 0 1em
    }
    .video-tour {
        height: 450px
    }
    .plan {
        width: 325px;
        margin: 0 1em
    }
    blockquote {
        padding: 0 0 0 1em
    }
    blockquote::before {
        left: -18px;
        top: -30px;
        font-size: 80px
    }
    .cta-section h2 {
        font-size: 46px
    }
    .team h5 {
        margin: 0 !important
    }
    .tweet {
        font-size: 23px
    }
    .sub-form .btn {
        padding: 1em 2em
    }
}

@media (min-width:992px) {
    .navbar-default,
    .navbar-default .btn {
        background-color: transparent
    }
    .hero-section {
        padding: 3em 0 12.75em
    }
    .navbar-default .btn {
        border: 1px solid #fff;
        padding: .75em 1.5em
    }
    .navbar-default .btn:hover {
        background-color: #000000 !important
    }
    .navbar-brand {
        padding: 0
    }
    .nav-left {
        padding-left: 3em
    }
    .welcome-message {
        margin-top: 7.5em
    }
    .welcome-message h1 {
        font-size: 56px
    }
    .welcome-message h2 {
        font-size: 24px
    }
    .play-btn {
        margin: 4.5em 0
    }
    .section-spacing {
        padding: 3em 0
    }
    .contact.section-spacing {
        padding: 3em 0 0
    }
    .features div[class=row]:nth-child(1),
    .features div[class=row]:nth-child(2) {
        margin-bottom: 7.5em
    }
    .features article {
        margin-top: 6em
    }
    .features img {
        max-width: none;
        position: absolute;
        width: 900px;
        top: 0;
        left: 22px
    }
    .features div[class=row]:nth-child(2) .col-md-7 img {
        left: -277px
    }
    .featured-sites li {
        padding: 0 1em
    }
    .video-tour {
        height: 600px;
        background: 0 0
    }
    .video-tour::before {
        background: rgba(0, 0, 0, .1)
    }
    #bgvid {
        display: block
    }
    .plan {
        margin: 0 1.5em;
        width: 350px
    }
    blockquote {
        padding: 0 0 0 3em
    }
    blockquote::before {
        left: -5px;
        top: -50px;
        font-size: 128px
    }
    .footer-links,
    .site-footer small {
        margin: 0
    }
    .section-spacing.site-footer {
        padding: 3em 0
    }
}

@media (max-width:460px) {
    .video-tour .play-btn img {
        width: 45%
    }
}