﻿/* ==========================================================================
   Variables
   ========================================================================== */
/* ==========================================================================
   Mixins
   ========================================================================== */
/* ==========================================================================
    Bootstrap Overrides
    ========================================================================== */
/**.carousel-caption {
background: rgba(0, 0, 0, 0.5);
}**/



.btn {
    margin-right: 20px;
    border-radius: 0;
    box-shadow: none;
    border: 0;
    outline: none;
    text-shadow: none;
    font-weight: 900;
    padding: 12px 20px;
    font-family: Lato;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

    .btn:hover {
        color: inherit;
        background: initial;
    }

    .btn:last-child {
        margin-right: 0;
    }

.input-group-btn > .btn {
    padding: 6px 12px;
    border: 1px solid transparent;
}

.btn-block {
    padding-top: 14px;
    padding-bottom: 14px;
}

.btn-lg {
    letter-spacing: 0.1em;
    padding: 10px 28px;
}

.btn-full {
    letter-spacing: 0.1em;
    width: 100%;
    padding: 16px 0;
}

.form-control {
    border-radius: 0;
    background: #f7f7f7;
    color: #818386;
    border: 0;
    font-weight: 700;
    font-size: 14px;
    box-shadow: none;
}

    .form-control:hover, .form-control:focus {
        box-shadow: none;
    }

    .form-control:-ms-input-placeholder {
        color: #818386;
    }

legend {
    display: none;
}

.btn-link {
    background: #f7f7f7;
    color: #818386;
}

.btn-primary {
    background: #002f61;
}

    .btn-primary:hover, .btn-primary:active, .btn-primary:focus {
        background: #002f61;
        color: #fff;
    }

/* ==========================================================================
   Global Settings
   ========================================================================== */
body {
    background: #f7f7f7;
    color: #303030;
    font-family: Raleway;
    font-weight: 500;
    font-size: 16px;
}

a {
    color: #009deb;
}

p {
    max-width: 100%;
}

h2 {
    font-size: 24px;
    color: #002f61;
    font-weight: 700;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    margin-bottom: 1em;
}

h3 {
    font-size: 21px;
    letter-spacing: 0.05em;
    font-weight: 700;
    margin-bottom: 1em;
    font-family: Lato;
}

h4 {
    font-size: 18px;
    font-family: Lato;
    font-weight: 700;
}

h5 {
    font-size: 18px;
    font-weight: 700;
}

    h5.breadcrumb {
        font-family: Raleway;
        font-weight: 700;
        color: #002f61;
        padding: 20px 0;
        background: none;
        font-family: Lato;
        font-weight: 700;
    }

        h5.breadcrumb a {
            text-decoration: none;
            color: #002f61;
            letter-spacing: 0.07em;
        }

            h5.breadcrumb a:hover {
                color: #002f61;
                text-decoration: none;
            }

body > hr {
    height: 3px;
    margin: 60px 0;
    background: #fff;
    border: 0;
}

hr {
    background: #acacac;
    border: 0;
    height: 1px;
}

.btn-default {
    background: rgba(255, 255, 255, 0.7);
    color: #002f61;
}

    .btn-default:hover {
        background: rgba(255, 255, 255, 0.7);
        color: #002f61;
    }

.btn-grey {
    background: #b7b7bd;
    color: #fff;
    font-weight: 900;
}

    .btn-grey:hover {
        background: #b7b7bd;
        color: #fff;
    }

.btn-info {
    background: #6a6a6a;
    color: #fff;
    font-weight: 900;
}

    .btn-info:hover {
        background: #6a6a6a;
        color: #fff;
    }

blockquote {
    padding-left: 0;
    font-family: Raleway;
    border-left: 0;
}

    blockquote p {
        font-weight: 500;
        font-style: italic;
        font-size: 16px;
    }

    blockquote footer {
        font-weight: 700;
        color: #303030;
        font-size: 18px;
    }

        blockquote footer:before {
            content: '';
        }

/* ==========================================================================
   Sections
   ========================================================================== */
header h1,
header h3 {
    color: #fff;
}

header h3 {
    font-weight: 400;
}

header.inside {
    background: url("../img/header.png") no-repeat top left/cover;
    height: 195px;
}

    header.inside .navbar-collapse {
        padding-top: 0;
    }

header.homepage .navbar {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    width: 100%;
    margin: 0 auto;
}

.nav > li.search-container, .search-container {
    display: flex;
    flex-flow: row nowrap;
    position: relative;
}

    .nav > li.search-container i, .search-container i {
        margin-left: 5px;
    }

button::-moz-focus-inner, a::-moz-focus-inner {
    border: 0 !important;
    outline: 0 !important;
}

:focus {
    outline: none !important;
}

.searchBar {
    position: absolute;
    top: -3px;
    right: 100%;
    width: 0;
    height: 26px;
    color: #303030;
    border: 0;
    background: #fff;
    transition: width 0.3s;
    overflow: hidden;
    margin: 15px 5px 15px 0;
}

    .searchBar.open {
        width: 200px;
    }

    .searchBar input {
        height: 26px;
        width: 200px;
        position: absolute;
        top: 0;
        left: 0;
        padding: 0 3px;
        color: #303030;
    }

.navbar {
    color: #fff;
}

    .navbar .navbar-collapse {
        padding-top: 13px;
    }

    .navbar .navbar-header {
        float: none;
    }

        .navbar .navbar-header .navbar-right {
            padding-top: 15px;
        }

            .navbar .navbar-header .navbar-right h3 a {
                color: #fff;
            }

                .navbar .navbar-header .navbar-right h3 a:hover {
                    text-decoration: none;
                    color: #fff;
                }

    .navbar .navbar-brand {
        padding-left: 0;
    }

        .navbar .navbar-brand img {
            width: 300px;
            height: auto;
        }

    .navbar .nav > li.open > a {
        background: none;
    }

    .navbar .nav > li > a {
        font-family: Raleway;
        font-weight: 500;
        color: #fff;
        text-shadow: none;
    }

        .navbar .nav > li > a > span.caret {
            display: none;
        }

        .navbar .nav > li > a.open, .navbar .nav > li > a:hover, .navbar .nav > li > a:active, .navbar .nav > li > a:focus {
            background: none;
        }

    .navbar .nav > li:last-child a {
        padding-right: 0;
    }

.banner > .container {
    width: 100%;
    padding: 0;
}

.carousel-indicators li {
    border: 2px solid #c7c5c7;
    margin: 1px 5px;
    height: 15px;
    width: 15px;
}

    .carousel-indicators li.active {
        background: #c7c5c7;
        margin: 0 5px;
        height: 17px;
        width: 17px;
    }

.colosseum {
    background: url("../img/colosseum.png") no-repeat top center/cover;
}

.carousel-inner,
.item {
    height: 668px;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: top center;
}

    .carousel-inner > .item.active, .carousel-inner > .item.left, .carousel-inner > .item.right {
        display: flex;
        align-items: flex-end;
    }

.carousel {
    position: relative;
    z-index: 1;
}

.carousel-caption {
    position: static;
    height: 67%;
    z-index: 3;
    text-align: left;
    color: #fff;
    bottom: 140px;
    width: 100%;
    left: 0;
    right: 0;
}

    .carousel-caption .container > div {
        display: inline-block;
        flex-flow: column nowrap;
        justify-content: center;
        width: 100%;
        align-items: flex-start;
    }

    .carousel-caption h1 {
        font-family: Raleway;
        font-weight: 100;
        font-size: 80px;
        text-shadow: none;
        margin: 0;
        margin-left: -0.07em;
    }

    .carousel-caption h2 {
        margin: 40px 0;
        letter-spacing: 0.1em;
        color: #fff;
        text-shadow: none;
        font-weight: 500;
    }

    .carousel-caption .btn {
        font-size: 16px;
        padding: 9px 26px;
    }

/* 
   Map Banner (Contact Page)
   ========================================================================== */
.map-banner {
    padding: 0 0 27%;
    width: 100%;
    height: 0px;
    position: relative;
}

    .map-banner iframe {
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        width: 100%;
        height: 100%;
    }

/* 
   Page Heading & Main
   ========================================================================== */
.page-heading h1 {
    font-family: Raleway;
    font-weight: 300;
    font-size: 60px;
    padding: 20px 0;
    color: #002f61;
}

main {
    padding: 30px 0;
}

    main a:not(.btn) {
        text-decoration: underline;
    }

    main h1,
    main h2 {
        text-shadow: none;
        color: #002f61;
    }

    main h2,
    main h3 {
        font-family: Raleway;
        text-transform: uppercase;
    }

    main h2 {
        font-size: 24px;
        font-weight: 700;
    }

    main textarea.form-control {
        height: 9em;
    }

    main form {
        padding: 60px 0 0;
    }

    main .form-control {
        width: 100%;
        font-family: Lato;
        background: #fff;
        letter-spacing: 0.05em;
        color: #6a6a6a;
    }

    main > .banner .container {
        width: 100%;
    }

        main > .banner .container .col-sm-12 {
            padding: 0 0 30px 0;
        }

            main > .banner .container .col-sm-12 .img-responsive {
                max-width: none;
                width: 100%;
            }

/* 
     Intro
     ========================================================================== */
.intro {
    color: #002f61;
}

    .intro > .container {
        padding: 80px 15px;
    }

    .intro p {
        padding-top: 15px;
        font-family: Raleway;
        font-size: 24px;
    }

    .intro a {
        color: #002f61;
        text-decoration: underline;
    }

/* 
   Grid
   ========================================================================== */
.grid a {
    text-decoration: none;
    color: #fff;
}

    .grid a:hover {
        color: #fff;
        text-decoration: none;
    }

.grid .container {
    width: 100%;
    max-width: 1920px;
}

.grid .row {
    display: flex;
    flex-flow: row wrap;
    align-items: flex-start;
    justify-content: center;
    overflow-x: hidden;
    margin-left: -17px;
    margin-right: -17px;
}

    .grid .row > * {
        overflow: hidden;
        position: relative;
        justify-content: center;
        align-items: center;
        height: 23vw;
        padding: 0 0 25% 0;
        margin: 0;
        text-align: center;
        width: 33%;
    }

        .grid .row > * > div:hover {
            background: rgba(0, 69, 124, 0.6);
        }

            .grid .row > * > div:hover p {
                display: block;
            }

        .grid .row > * > div {
            z-index: 2;
            background: transparent;
            color: #fff;
            position: absolute;
            top: 2px;
            left: 2px;
            right: 2px;
            bottom: 2px;
            padding: 40px;
            display: flex;
            flex-flow: column;
            justify-content: center;
            overflow: hidden;
        }

            .grid .row > * > div h3 {
                z-index: 4;
            }

            .grid .row > * > div p {
                z-index: 4;
                font-size: 18px;
                line-height: 1.5em;
                display: none;
            }

    .grid .row img {
        position: absolute;
        top: 2px;
        left: 2px;
        right: 2px;
        bottom: 2px;
        z-index: 1;
        width: 100%;
        height: auto;
    }

/* 
   About
   ========================================================================== */
.about {
    color: #002f61;
    padding-top: 100px;
    padding-bottom: 100px;
}

    .about .container {
        background: #fff;
        padding-left: 0;
        padding-right: 0;
    }

        .about .container .col-sm-6:last-child {
            background: #fff;
        }

            .about .container .col-sm-6:last-child.about-text {
                padding-right: 30px;
                display: flex;
                flex-flow: column;
                justify-content: center;
                align-items: flex-start;
            }

    .about h3 {
        font-family: Lato;
        font-weight: 700;
    }

    .about p {
        font-family: Raleway;
        font-weight: 500;
        line-height: 1.7em;
    }

.bio img {
    border-radius: 50%;
}

.bio + div {
    padding-top: 4%;
}

/* 
   Testimonial & Blog
   ========================================================================== */
.testimonial-blog {
    color: #fff;
}

    .testimonial-blog h2 {
        color: #fff;
    }

    .testimonial-blog .container {
        width: 100%;
    }

    .testimonial-blog .row {
        display: flex;
        flex-flow: row wrap;
        justify-content: space-between;
        align-items: stretch;
    }

        .testimonial-blog .row > * {
            min-height: 425px;
            flex: 1;
            display: flex;
            flex-flow: column;
            justify-content: flex-start;
            align-items: flex-start;
        }

            .testimonial-blog .row > * p {
                flex: 1;
                line-height: 1.5em;
            }

    .testimonial-blog .testimonial {
        background: url("../img/testimonial.png") no-repeat top left/cover;
    }

        .testimonial-blog .testimonial .openquote {
            font-family: Montserrat;
            font-size: 87px;
            line-height: 20px;
            padding-top: 20px;
        }

    .testimonial-blog .blog {
        background: url("../img/blog.png") no-repeat top left/cover;
    }

        .testimonial-blog .blog h2 {
            font-size: 30px;
            font-family: Raleway;
            font-weight: 100;
            text-transform: none;
            margin-bottom: 0em;
            margin-top: 0em;
        }

        .testimonial-blog .blog h3 {
            font-size: 24px;
            font-family: Lato;
        }

        .testimonial-blog .blog small {
            font-size: 14px;
            font-weight: 700;
            margin: 20px 0;
            text-transform: uppercase;
        }

/* 
   Footer
   ========================================================================== */
body > footer {
    color: #002f61;
}

    body > footer a {
        color: #002f61;
    }

    body > footer h2 {
        letter-spacing: 0;
        text-transform: none;
        font-family: Lato;
        color: #002f61;
    }

    body > footer .contact a {
        text-decoration: underline;
    }

    body > footer .nav > li.dropdown.open .dropdown-menu {
        display: none;
    }

    body > footer .nav > li .dropdown-menu {
        background: rgba(255, 255, 255, 0.7);
    }

    body > footer .nav > li > a {
        text-transform: uppercase;
        background: none;
        padding: 0;
        font-weight: 500;
        line-height: 1.8em;
    }

        body > footer .nav > li > a:hover {
            background: none;
        }

    body > footer .btn {
        padding: 8px;
    }

        body > footer .btn:hover {
            background: #f7f7f7;
        }

    body > footer .row {
        display: flex;
        flex-flow: row nowrap;
        justify-content: space-between;
    }

        body > footer .row > * {
            background: #fff;
            padding: 40px;
        }

            body > footer .row > * h2:first-child {
                margin-top: 0;
            }

    body > footer .social-buttons {
        display: flex;
        width: 80%;
        justify-content: space-between;
    }

    body > footer .social-button {
        border: 2px solid #002f61;
        border-radius: 50%;
        height: 3.5em;
        width: 3.5em;
        text-align: center;
        display: flex;
        align-items: center;
        justify-content: center;
    }

        body > footer .social-button:hover {
            text-decoration: none;
        }

    body > footer a:hover {
        text-decoration: none;
        color: inherit;
    }

/* 
   Accreditation
   ========================================================================== */
.accreditation {
    background: #fff;
    margin: 60px 0;
}

    .accreditation .container {
        padding: 30px 0;
    }

    .accreditation .company-links {
        display: flex;
        justify-content: center;
    }

        .accreditation .company-links > * {
            padding: 0 4%;
        }

/* 
   Copyright
   ========================================================================== */
.copyright .container {
    padding: 0 0 60px;
    color: #818386;
    font-size: 14px;
    font-family: Lato;
    text-align: center;
}

    .copyright .container a {
        text-decoration: underline;
        color: #818386;
    }

/* ==========================================================================
   Page-specific styles
   ========================================================================== */
.team-member {
    display: flex;
    justify-content: flex-start;
}

    .team-member .photo {
        flex: 0 1 auto;
        border-radius: 50%;
        float: left;
        height: 156px;
        width: 156px;
        overflow: hidden;
        align-self: flex-start;
    }

        .team-member .photo img {
            text-align: center;
        }

    .team-member .bio {
        float: left;
        flex: 1;
        align-self: flex-end;
        padding: 50px 0 0 30px;
    }

.tour-item {
    display: flex;
    justify-content: flex-start;
    align-items: stretch;
    padding-bottom: 50px;
}

    .tour-item .tour-image {
        float: left;
        flex: 0 0 33%;
        overflow: hidden;
        display: flex;
        position: relative;
        justify-content: flex-end;
        border: 0;
        background: #fff url("/img/placeholder.png") no-repeat 50% 50%/contain;
    }

        .tour-item .tour-image img {
            flex: 1;
            width: auto;
            height: 100%;
            position: absolute;
            right: 0;
            top: 0;
        }

    .tour-item .tour-info {
        flex: 1 1 67%;
        padding-left: 10px;
        color: #002f61;
    }

        .tour-item .tour-info h3, .tour-item .tour-info h4, .tour-item .tour-info h5 {
            text-transform: uppercase;
            color: #002f61;
        }

        .tour-item .tour-info h3 {
            font-size: 24px;
            margin-top: 0;
        }

        .tour-item .tour-info h4 {
            font-size: 20px;
        }

        .tour-item .tour-info h5 {
            font-size: 18px;
        }

        .tour-item .tour-info a.btn {
            margin-bottom: 0;
        }

.category-list {
    padding: 15px;
    background: #fff;
}

    .category-list ul {
        list-style-type: none;
        padding-left: 0;
    }

    .category-list h3 {
        margin-top: 0;
        font-size: 16px;
    }

.container.other {
    padding-left: 0;
    padding-right: 0;
}

    .container.other h3 {
        letter-spacing: 0;
    }

.other-tours {
    display: flex;
    flex-flow: row wrap;
    justify-content: space-between;
}

    .other-tours .tour-item {
        flex-flow: column;
        width: 33%;
        padding-bottom: 5px;
    }

        .other-tours .tour-item h3 {
            max-width: 100%;
        }

        .other-tours .tour-item.past-tour .tour-info {
            min-height: 200px;
        }

        .other-tours .tour-item .tour-info {
            padding: 20px;
            min-height: 300px;
            background: #fff;
            display: flex;
            flex-flow: column;
            align-items: flex-start;
        }

            .other-tours .tour-item .tour-info .price {
                font-weight: bold;
                text-transform: uppercase;
                letter-spacing: 0.05em;
            }

            .other-tours .tour-item .tour-info .dates {
                font-size: 18px;
            }

            .other-tours .tour-item .tour-info small {
                display: none;
            }

            .other-tours .tour-item .tour-info a {
                margin-top: auto;
            }

            .other-tours .tour-item .tour-info h5 strong {
                font-family: Lato;
                font-weight: 900;
            }

        .other-tours .tour-item .tour-image {
            border: 0;
            min-height: 260px;
            max-height: 260px;
            overflow: hidden;
        }

            .other-tours .tour-item .tour-image img {
                width: 100%;
                height: 100%;
            }

body.tour .page-heading h1.tour-title {
    padding: 0;
    font-size: 48px;
}

.tour-description, body.tour .page-heading p {
    margin-bottom: 30px;
}

.sidebar.recent-news-posts {
    margin-top: 60px;
}

.posts .sidebar.recent-news-posts {
    margin-top: 0;
}

main .post h2 {
    font-family: "Roboto Condensed";
    font-weight: 300;
    text-transform: initial;
    font-size: 36px;
    margin-bottom: 20px;
}

main .post a:not(.btn) {
    color: #818386;
    text-decoration: none;
}

main .post h5 {
    font-family: 'Roboto Condensed';
    text-transform: uppercase;
    color: #818386;
}

    main .post h5 small {
        font-weight: 700;
        font-size: 18px;
    }

main .post h5, main .post p {
    margin: 20px 0;
}

.categories, .recent-news-posts {
    font-family: 'Roboto Condensed';
    color: #818386;
}

    .categories .title, .recent-news-posts .title {
        font-weight: 700;
        font-size: 24px;
        margin-bottom: 1em;
    }

    .categories ul, .recent-news-posts ul {
        list-style-type: none;
        padding-left: 0;
    }

        .categories ul li a, .recent-news-posts ul li a {
            color: #818386;
            line-height: 1.6em;
            text-decoration: none;
        }

.blog-paging {
    margin-bottom: 20px;
}

.blog-archive .title {
    font-weight: 600;
    font-size: 18px;
    margin-top: 25px;
    margin-bottom: 10px;
    font-family: Raleway;
    color: #002f61;
}

.blog-archive ul {
    list-style-type: none;
    padding-left: 0;
}

.blog-archive a {
    color: #002f61;
    text-decoration: none !important;
}

.categories ul li a {
    text-transform: uppercase;
}

.blog-search {
    padding: 1em 0;
}

    .blog-search input, .blog-search .btn-default {
        background: #c7c5c7;
    }

    .blog-search .btn-default {
        border: 1px solid #c7c5c7;
        height: 34px;
        color: #818386;
    }

/* ==========================================================================
   @media queries
   ========================================================================== */
@media (max-width: 991px) {
    .grid .row > * {
        padding-bottom: 37.5%;
        width: 49.9%;
    }

    .social-button {
        font-size: 12px;
    }

    .navbar .navbar-collapse {
        padding-top: 82px;
    }

    .carousel-caption {
        height: 60%;
    }

        .carousel-caption h1 {
            font-size: 60px;
        }

    .testimonial-blog .row > * {
        width: 100%;
    }
}

@media (min-width: 768px) and (max-width: 991px) {
    header.inside .navbar-collapse {
        padding-top: 50px;
    }
}

@media (min-width: 768px) {
    .page-heading h1 {
        padding-top: 60px;
    }

    hr + .container.other {
        margin-top: -20px;
    }

    .container.other > h3 {
        margin: 0 0 30px 0;
        font-weight: 700;
        font-size: 24px;
    }

    .testimonial-blog .row > * {
        padding: 60px;
    }

    .navbar-nav > li > .dropdown-menu {
        background: #e0e1e2;
        border-radius: 3px;
        box-shadow: none;
        border: 0;
    }

        .navbar-nav > li > .dropdown-menu > li > a {
            font-family: Roboto Condensed;
            font-weight: 700;
            font-size: 16px;
            color: #818386;
        }

            .navbar-nav > li > .dropdown-menu > li > a:hover {
                background: #144484;
                color: #fff;
            }

    .navbar-nav > li.dropdown:hover .dropdown-menu {
        visibility: visible;
        display: block;
    }

    body > footer h3:first-child {
        margin-top: 0;
    }

    body > footer .col-sm-4 {
        border-left: 2px solid #f7f7f7;
    }

    .blog {
        border-left: 2px solid #fff;
    }

    .about .row {
        display: flex;
        align-items: stretch;
    }

    .tour-spacer {
        width: 33%;
        background: none;
    }
}

@media (max-width: 767px) {
    .tour-spacer {
        display: none;
    }

    .container.other {
        padding-left: 0;
        padding-right: 0;
    }

        .container.other h3 {
            margin-top: 0;
        }

    .other-tours {
        flex-flow: column;
    }

        .other-tours > h3 {
            padding-left: 10px;
        }

        .other-tours .tour-item {
            width: 100%;
            min-height: none;
        }

            .other-tours .tour-item .tour-image {
                display: flex;
            }

                .other-tours .tour-item .tour-image img {
                    height: auto;
                    width: 100%;
                    top: 0;
                }

            .other-tours .tour-item .tour-info small {
                display: none;
            }

    .tour-item {
        flex-flow: column;
    }

        .tour-item .tour-image {
            display: none;
        }

    .searchBar {
        margin: 0 0 5px 0;
    }

    .row, .grid .row {
        margin-left: -10px;
        margin-right: -10px;
    }

    .container {
        padding-left: 10px;
        padding-right: 10px;
    }

    .btn {
        margin-bottom: 5px;
    }

    body, .btn-lg {
        font-size: 14px;
    }

    h3 {
        font-size: 18px;
    }

    .grid .row > * {
        padding-bottom: 28.5%;
        width: 100%;
    }

        .grid .row > * > div:hover {
            background: none;
        }

            .grid .row > * > div:hover p {
                display: none;
            }

        .grid .row > * div {
            padding: 0;
            top: 0;
            left: 0;
            right: 0;
            bottom: 0;
        }

        .grid .row > * img,
        .grid .row > * .grid-item {
            top: -67%;
            left: 0;
            right: 0;
            bottom: 0;
        }

        .grid .row > * .panel-body {
            padding: 0;
            width: 100%;
        }

            .grid .row > * .panel-body h3 {
                letter-spacing: 0.1em;
            }

    .navbar .navbar-header .container {
        position: relative;
    }

    .navbar .navbar-header .navbar-brand {
        padding: 0;
        height: auto;
    }

        .navbar .navbar-header .navbar-brand img {
            width: 227px;
        }

    .navbar .navbar-header .navbar-right {
        padding-top: 25px;
        width: 100%;
        float: left;
    }

        .navbar .navbar-header .navbar-right h3 {
            margin: 0;
            float: left;
        }

    .navbar-toggle {
        margin-right: 0;
        top: 63px;
        padding: 0;
    }

        .navbar-toggle .icon-bar {
            width: 30px;
            height: 4px;
        }

    .navbar .navbar-collapse {
        box-shadow: none;
        position: absolute;
        padding-top: 27px;
    }

        .navbar .navbar-collapse .container {
            padding: 0;
            width: 100vw;
        }

    .nav > li {
        background: #002f61;
        width: 100%;
    }

        .nav > li:not(:first-child) {
            border-top: 1px solid #fff;
        }

        .nav > li > .dropdown-menu {
            padding: 0;
        }

            .nav > li > .dropdown-menu > li {
                background: #144484;
            }

                .nav > li > .dropdown-menu > li a {
                    color: #fff;
                }

                    .nav > li > .dropdown-menu > li a:hover {
                        background: #144484;
                    }

        .nav > li.dropdown.open > li > a {
            background: #002f61;
            color: #fff;
        }

            .nav > li.dropdown.open > li > a:hover {
                background: #002f61;
                color: #fff;
            }

    .intro > .container {
        padding: 50px 10px;
    }

    .intro h3 {
        line-height: 1.6em;
    }

    .intro p {
        font-size: 16px;
        font-weight: 400;
        line-height: 1.6em;
    }

    .intro a {
        color: #002f61;
        text-decoration: underline;
    }

    .carousel-inner, .item {
        height: 477px;
    }

    .carousel-caption {
        height: 55%;
        padding: 0;
    }

        .carousel-caption .btn {
            padding: 8px 28px;
        }

        .carousel-caption h1 {
            font-size: 36px;
        }

        .carousel-caption h2 {
            font-size: 18px;
            line-height: 1.5em;
            margin: 20px 0;
        }

    .icon-bar {
        background: #fff;
    }

    body > footer .container .row {
        flex-flow: column;
        align-items: stretch;
    }

        body > footer .container .row > * {
            margin: 6px 0 0;
            padding: 10px;
        }

        body > footer .container .row .footer-menu {
            display: none;
        }

        body > footer .container .row .social h2:last-of-type {
            float: left;
        }

        body > footer .container .row .social-buttons {
            float: right;
            width: 30%;
            margin-top: 14px;
        }

        body > footer .container .row .social-button {
            font-size: 10px;
        }

        body > footer .container .row .form-control {
            width: 100%;
        }

    .testimonial-blog .row {
        flex-flow: column;
    }

        .testimonial-blog .row > * {
            padding: 15px;
        }

        .testimonial-blog .row h2 {
            font-weight: 300;
        }

        .testimonial-blog .row small {
            text-transform: uppercase;
        }

    .about {
        padding: 0;
    }

        .about .container {
            padding: 15px 10px 35px;
        }

            .about .container img {
                display: none;
            }

            .about .container h3 {
                font-size: 16px;
            }

    .accreditation {
        margin: 6px 0 0;
    }

        .accreditation .company-links {
            justify-content: space-around;
        }

            .accreditation .company-links a {
                display: flex;
                align-items: center;
                width: 20%;
                padding: 0;
            }

    .copyright {
        background: #fff;
    }

        .copyright .container {
            padding: 0 10px;
            font-size: 12px;
            text-align: left;
        }

    body.tour #filmstrip {
        display: none;
    }

    body.tour .info-photos .col-sm-8 {
        padding-left: 0;
        padding-right: 0;
    }

    body.tour .page-heading h1 {
        font-size: 30px;
        padding-top: 0px;
    }

    body.tour h4 {
        font-size: 15px;
    }

    body.tour > hr {
        margin: 40px 0;
    }

    body.tour .itinerary .container {
        padding-left: 0;
        padding-right: 0;
    }

    body.tour .accordions > div {
        padding: 0;
    }

    body.tour .accordions h3 {
        padding: 15px;
        margin: 0;
        position: relative;
    }

        body.tour .accordions h3:after {
            content: '\f105';
            position: absolute;
            right: 30px;
            font-family: FontAwesome;
        }

        body.tour .accordions h3.active:after {
            content: '\f107';
        }

    body.tour .accordions .accordion-body {
        height: 0;
        padding: 0 15px;
        overflow: hidden;
        border-bottom: 1px solid #002f61;
    }

    body.tour .accordions h3.active + .accordion-body {
        height: auto;
        padding-bottom: 5px;
    }
}

#previewMap {
    padding-bottom: 100%;
}

body.tour {
    color: #002f61;
}

    body.tour .accordion-body {
        padding-bottom: 10px;
    }

    body.tour div.day {
        padding-bottom: 10px;
    }

    body.tour a.btn {
        font-size: 16px;
    }

    body.tour h4 {
        color: #002f61;
        font-family: Lato;
        text-transform: uppercase;
        font-weight: 900;
        letter-spacing: 0.1em;
        margin: 20px 0;
    }

    body.tour h3 {
        font-family: Lato;
        color: #002f61;
    }

    body.tour header h3 {
        color: #fff;
    }

    body.tour > div p {
        white-space: pre-line;
        line-height: 1.5em;
    }

        body.tour > div p a:not(.btn) {
            text-decoration: underline;
        }

    body.tour small {
        color: #6a6a6a;
        font-size: 14px;
        font-weight: 700;
    }

        body.tour small a {
            text-decoration: underline;
            color: #6a6a6a;
        }

            body.tour small a:hover {
                color: #6a6a6a;
            }

#photoLarge {
    padding-bottom: 10px;
}

    #photoLarge img {
        width: 100%;
    }

#filmstrip {
    display: flex;
    flex-flow: row;
    align-items: stretch;
    height: 100px;
}

    #filmstrip .control {
        background: #acacac;
        width: 28px;
        max-height: 100px;
        height: 100%;
        flex: 0 1 28px;
        margin: 0 5px;
        display: flex;
        align-items: center;
        justify-content: center;
        font-size: 24px;
        line-height: 24px;
        color: #fff;
    }

        #filmstrip .control.control-prev {
            margin-left: 0;
        }

        #filmstrip .control.control-next {
            margin-right: 0;
        }

    #filmstrip #filmstripImages {
        flex: 1;
        display: flex;
        flex-flow: row nowrap;
        overflow: hidden;
        height: 100px;
        justify-content: flex-start;
    }

        #filmstrip #filmstripImages .filmstripItem {
            max-height: 100%;
            width: auto;
            padding: 0 5px;
            opacity: 0.7;
        }

            #filmstrip #filmstripImages .filmstripItem.active {
                opacity: 1;
            }

body.booking #btnBookTour {
    margin: 30px 0;
}

body.booking small {
    margin-top: 0;
}

body.booking .btn-grey {
    background: #6a6a6a;
}

body.booking h5 {
    color: #818386;
}

body.booking .has-error input:not([type=checkbox]):not([type=radio]), body.booking .has-error select {
    border: 1px solid #600;
    background: #fee;
}

body.booking textarea {
    width: 100%;
    border: 1px solid #818386;
}

    body.booking textarea:focus {
        outline: none;
    }

body.booking .form input:not([type=checkbox]):not([type=radio]), body.booking select {
    border: 1px solid #acacac;
    height: 28px;
    margin-right: 10px;
    border-radius: 0;
    padding: 5px 5px;
}

    body.booking .form input:not([type=checkbox]):not([type=radio]).short, body.booking select.short {
        width: 40%;
    }

    body.booking .form input:not([type=checkbox]):not([type=radio]).shorter, body.booking select.shorter {
        width: 25%;
    }

    body.booking .form input:not([type=checkbox]):not([type=radio]):focus, body.booking select:focus {
        outline: none;
    }

body.booking select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    padding: 1px 28px 5px 5px;
    position: relative;
    z-index: 1;
    margin-right: 0;
    z-index: 1;
}

    body.booking select::-ms-expand {
        display: none;
    }

body.booking .select-wrapper {
    display: inline-block;
    position: relative;
    margin-right: 10px;
}

    body.booking .select-wrapper:after {
        position: absolute;
        background: #818386;
        color: #fff;
        right: 3px;
        top: 3px;
        height: 21px;
        width: 21px;
        font-family: FontAwesome;
        content: "\f107";
        z-index: 2;
        text-align: center;
        pointer-events: none;
    }

body.booking label {
    padding-bottom: 10px;
}

body.booking .checkbox-inline, body.booking .radio-inline {
    font-weight: 500;
    margin: 0 0 -10px 20px;
    position: relative;
    width: 120px;
}

    body.booking .checkbox-inline:first-of-type, body.booking .radio-inline:first-of-type {
        width: 80px;
    }

body.booking .has-error input[type=checkbox]:before, body.booking .has-error input[type=radio]:before {
    background: #fee;
    border: 1px solid #600;
}

body.booking input[type=checkbox], body.booking input[type=radio] {
    visibility: hidden;
    width: 17px;
    float: left;
    position: relative;
    margin-right: 15px;
    color: #818386;
}

    body.booking input[type=checkbox] + span, body.booking input[type=radio] + span {
        margin-left: -17px;
    }

        body.booking input[type=checkbox] + span:before, body.booking input[type=radio] + span:before {
            margin: 0 10px 0 -17px;
            font-family: FontAwesome;
            cursor: pointer;
            opacity: 1;
            font-size: 14px;
            content: ' ';
            visibility: visible;
            display: inline-block;
            height: 17px;
            width: 17px;
            border: 1px solid #818386;
            line-height: 16px;
            vertical-align: bottom;
            position: relative;
            top: -4px;
            color: #818386;
        }

    body.booking input[type=checkbox]:checked + span:before, body.booking input[type=radio]:checked + span:before {
        content: '\f00c';
    }

    body.booking input[type=checkbox].circle + span:before, body.booking input[type=radio].circle + span:before {
        border-radius: 50%;
    }

    body.booking input[type=checkbox].circle:checked + span:before, body.booking input[type=radio].circle:checked + span:before {
        background: #818386;
        content: ' ';
        box-shadow: inset 0 0 0 2px #fff;
    }

body.booking .form-vert {
    padding: 10px 0;
}

    body.booking .form-vert .control-label {
        float: none;
        font-weight: 400;
        display: block;
        margin-bottom: 5px;
    }

body.booking p > span {
    display: inline-block;
    width: 35%;
}

body.booking h4 {
    color: #002f61;
}

    body.booking h4 .question-circle {
        display: inline-block;
        background: #fff;
        height: 40px;
        text-align: center;
        width: 40px;
        border: 2px solid #002f61;
        border-radius: 50%;
        line-height: 43px;
        font-size: 30px;
        font-weight: 900;
        margin-right: 10px;
    }

@media (max-width: 767px) {
    body.booking p > span {
        display: block;
        width: 100%;
        margin-bottom: 10px;
    }

    body.booking .checkbox-inline, body.booking .radio-inline {
        width: auto;
    }

    .sidebar.recent-news-posts {
        margin-top: 0;
    }
}

.booking-status {
    display: block;
    margin: 10px 0;
}

.carousel-inner .item div:nth-child(2) {
opacity: 0.7 !important;
}
