body
{
    font-family: 'PT Sans', sans-serif;
    font-weight: 400;

    position: relative;

    color: #002d57;
    background-color: #ececec;
}

#intro
{
    position: relative;

    width: 100%;
    height: 95vh;
    padding-top: 10rem;
}

@media (min-width: 768px)
{
    #intro
    {
        padding-top: 15rem;
    }
}

@media (min-width: 992px)
{
    #intro
    {
        padding-top: 0;
    }
}

.intro-ftr
{
    position: absolute;
    bottom: 0;
}

.intro-content
{
    padding-top: 1rem;

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

.content
{
    position: relative;

    background-color: #ececec;
}

.h1,
.h2,
.h3,
.h4,
.h5,
.h6,
h1,
h2,
h3,
h4,
h5,
h6
{
    font-family: RotisSemiSerifPro-Regular;
    font-weight: normal;
    font-style: normal;

    color: #009fd1;
}

a
{
    color: #002d57;
}

a:hover,
a:focus
{
    cursor: pointer;

    color: #009fd1;
}

.link
{
    text-decoration: none;

    color: #002d57;
}

.link:hover,
.link:focus
{
    text-decoration: none;

    color: #fff;
}

.display-1
{
    font-size: 3rem;
    line-height: 1;
}

@media (min-width: 768px)
{
    .display-1
    {
        font-size: 6rem;
        line-height: 1.2;
    }
}


.display-4
{
    font-size: 3rem;
    font-weight: 300;
    line-height: 1;
}

@media (min-width: 768px)
{
    .display-4
    {
        font-size: 3.5rem;
        line-height: 1.2;
    }
}

hr
{
    border-color: #fff;
}

.btn
{
    font-size: 1.5rem;
    font-weight: 700;

    padding-right: 1.5rem;
    padding-left: 1.5rem;

    border: none;
    border-radius: 0;
}

.btn-primary
{
    color: #002d57;
    border-color: #009fd1;
    background-color: #009fd1;
}

.btn-primary:hover
{
    color: #fff;
    border-color: #002d57;
    background-color: #002d57;
}

.btn-secondary
{
    color: #fff;
    border-color: #002d57;
    background-color: #002d57;
}

.btn-secondary:hover
{
    color: #002d57;
    border-color: #0e6885;
    background-color: #0e6885;
}

.btn-buy-primary
{
    width: 100px;
    height: auto;
    margin: .5rem auto;
    padding: .5rem;

    vertical-align: bottom;

    background-color: #009fd1;
}

@media (min-width: 768px)
{
    .btn-buy-primary
    {
        margin: 0 0 0 .25rem;
    }
}

.btn-buy-primary:hover
{
    background-color: #002d57;
}

.btn-buy-secondary
{
    width: 100px;
    height: auto;
    margin: .5rem auto;
    padding: .5rem;

    vertical-align: bottom;

    background-color: #002d57;
}

.btn-buy-secondary:hover
{
    background-color: #0e6885;
}

.banner
{
    width: 100%;
    height: auto;

    background-color: rgba(0,159,209,.9);
    background-attachment: fixed;
}

.banner-hdr
{
    padding: 15rem 0 5rem 0;
}

@media (min-width: 768px)
{
    .banner-hdr
    {
        padding: 20rem 0 10rem 0;
    }
}

/* Utility */

.bg-white
{
    background-color: #fff!important;
}

.bg-main
{
    position: fixed;
    z-index: -100;
    top: 0;

    width: 100%;
    height: 100vh;

    background-color: #809ead;
    background-image: url('../images/hero-img-1-sm.jpg');
    background-position: center;
    background-size: cover;
}

@media (min-width: 768px)
{
    .bg-main
    {
        background-image: url('../images/hero-img-1.jpg');
        background-position: right;
        background-size: cover;
    }
}

.txt-navy
{
    color: #002d57!important;
}

.txt-blue
{
    color: #009fd1!important;
}

.txt-gray
{
    color: #b3b3b3!important;
}

.anchor-offset
{
    position: absolute;
    top: -150px;
}

/* Navigation */

.nav-logo
{
    width: 175px;
    height: auto;
}

@media (min-width: 768px)
{
    .nav-logo
    {
        width: 225px;
    }
}

@media (min-width: 1200px)
{
    .nav-logo
    {
        width: 275px;
    }
}

.navbar-nav
{
    font-size: 1rem;
}

@media (min-width: 992px)
{
    .navbar-nav
    {
        font-size: 1.25rem;
    }
}

@media (min-width: 992px)
{
    .navbar-nav
    {
        font-size: 1.5rem;
    }
}

.navbar-light .navbar-nav .nav-link
{
    color: #002d57;
}

.navbar-light .navbar-nav .nav-link:focus,
.navbar-light .navbar-nav .nav-link:hover
{
    cursor: pointer;

    color: #009fd1;
}
