﻿/*
Theme Name: Roadtrips Three
Theme URI: http://roadtrips.com
Description: Custom Roadtrips theme
Author: Chez Koop
Version: 1.1.7
*/

* {
    vertical-align: baseline;
    font-weight: inherit;
    font-family: inherit;
    font-style: inherit;
    font-size: 100%;
    border: 0 none;
    outline: 0;
    padding: 0;
    margin: 0;
    box-sizing: border-box;
}

html, body {
    width: 100%;
    height: 100%;
}



/* Grid System */
.section-centre, .section-narrow, .section-full, .section-wide, .section-bigger {
    padding: 4em 3em;
    overflow: hidden;
    margin: 0 auto;
    width: auto;
}

.section-centre {
    max-width: 940px;
    text-align: center;
}

.section-narrow {
    max-width: 740px;
}

.section-bigger {
    max-width: 1040px;
}

.section-full {
    max-width: 1200px;
}

header .section-full {
    overflow: visible;
}

.wrapper {
    padding: 0;
}

    .wrapper.grey {
        background-color: #f4f4f4;
    }

    .wrapper.blue {
        background-color: #00456b;
    }

.col1, .col2, .col3, .col4, .col5, .col6, .col7, .col8, .col9, .col10, .col11, .col12 {
    float: none;
    width: 100%;
    margin: 0 auto;
}

.col12 {
    max-width: 1140px;
}

@-webkit-keyframes navreveal {
    0% {
        opacity: 0;
        -webkit-transform: scale(0.8,0.8);
        transform: scale(0.8,0.8);
        top: 0%;
    }

    50% {
        -webkit-transform: scale(1,1);
        transform: scale(1,1);
        top: 100%;
    }

    100% {
        opacity: 1;
    }
}

@keyframes navreveal {
    0% {
        opacity: 0;
        -webkit-transform: scale(0.8,0.8);
        transform: scale(0.8,0.8);
        top: 0%;
    }

    50% {
        -webkit-transform: scale(1,1);
        transform: scale(1,1);
        top: 100%;
    }

    100% {
        opacity: 1;
    }
}

/* http://sonspring.com/journal/clearing-floats */
.clear {
    clear: both;
    display: block;
    overflow: hidden;
    visibility: hidden;
    width: 0;
    height: 0;
}

.aligncenter, div.aligncenter {
    display: block;
    margin-left: auto;
    margin-right: auto;
}

.alignleft {
    float: left;
}

.alignright {
    float: right;
}

.wp-caption {
    background-color: #f3f3f3;
    border: 1px solid #ddd;
    border-radius: 3px;
    margin: 10px;
    padding-top: 4px;
    text-align: center;
}

img.alignright {
    margin: 0 0 1em 1em
}

img.alignleft {
    margin: 0 1em 1em 0
}

img.alignleft, img.alignright {
    max-width: 100%;
    height: auto;
}

a img.alignright {
    float: right;
    margin: 0 0 1em 1em
}

a img.alignleft {
    float: left;
    margin: 0 1em 1em 0
}

a img.aligncenter {
    display: block;
    margin-left: auto;
    margin-right: auto
}

img.alignnone {
    width: 100%;
    height: auto;
}

body {
    font-size: 55%;
    font-family: "soleil", sans-serif;
    color: #6A6C6C;
}

strong, b {
    font-weight: bold;
}

em, i {
    font-style: italic;
}

p, ul, ol {
    margin-bottom: 1.5em;
    font-size: 1.125rem;
    line-height: 1.67;
}

ul {
    list-style: square;
}

ul, ol {
    margin-left: 2.2em;
}

h1, h2, h3, h4, h5, h6 {
    font-weight: 700;
    font-family: "ff-enzo-web", sans-serif;
    line-height: 1.1;
    margin-bottom: 1rem;
}

h1 {
    font-size: 6em;
}

h2 {
    font-size: 4em;
    color: #00456b;
}

h3 {
    font-size: 3.2em;
    font-weight: 400;
    margin-top: 0.5em;
    margin-bottom: 1em;
    font-family: "ff-enzo-web", sans-serif;
    color: #00669c;
}

h4 {
    font-size: 2.2em;
    font-family: "soleil", sans-serif;
    margin-bottom: 1.5em;
}

h5 {
    font-size: 2em;
    font-weight: normal;
    font-family: "soleil", sans-serif;
    text-transform: uppercase;
    color: #d0d0d0;
    margin-bottom: 1em;
}

h6 {
    font-size: 1.8em;
    font-family: "soleil", sans-serif;
    margin-bottom: 1em;
}

a {
    color: #00456b;
    text-decoration: none;
}

    a:hover, a:focus {
        text-decoration: underline;
    }

img {
    display: block;
}

.footer-company-info img {
    display: unset !important;
}


small {
    font-size: 0.8em;
}

table {
    font-size: 1.7em;
    border-collapse: collapse;
}

.site-header {
    background-color: #fff;
    height: 8em;
    position: fixed;
    z-index: 1000;
    top: 0;
    left: 0;
    right: 0;
    border-bottom: 1px solid #e8eaea;
    -webkit-transition: all 0.2s ease;
    transition: all 0.2s ease;
}

.admin-bar .site-header {
    top: 46px;
}

.site-header.narrow {
    height: 6em;
}

.site-header > div {
    padding: 0 3em;
    height: 100%;
}

.site-logo {
    padding: 1.4em 0 2em;
    float: left;
    width: 50%;
    -webkit-transition: all 0.1s ease;
    transition: all 0.1s ease;
}

.site-header.narrow .site-logo {
    padding: 1.4em 0;
}

.menu-trigger {
    padding: 1.4em 0;
    float: right;
    text-align: right;
    -webkit-transition: all 0.15s ease;
    transition: all 0.15s ease;
}

.site-header.narrow .menu-trigger {
    padding: 0.9em 0;
}

.menu-trigger a:hover, .menu-trigger a:focus {
    text-decoration: none;
    color: black;
}

.site-logo img {
    max-width: 140px;
    -webkit-transition: all 0.2s ease;
    transition: all 0.2s ease;
}

/* entire container, keeps perspective */
.site-logo {
    -webkit-perspective: 1000px;
    perspective: 1000px;
}
    /* flip the pane when hovered */
    .site-logo:hover .flipper, .site-logo.hover .flipper {
        -webkit-transform: rotateY(180deg);
        transform: rotateY(180deg);
    }

.site-logo, .front, .back {
    width: 160px;
    height: 40px;
}

/* flip speed goes here */
.flipper {
    -webkit-transition: 0.4s;
    transition: 0.4s;
    -webkit-transform-style: preserve-3d;
    transform-style: preserve-3d;
    display: block;
    position: relative;
    width: 160px;
    height: 40px;
}

/* hide back of pane during swap */
.front, .back {
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    position: absolute;
    top: 0;
    left: 0;
}

/* front pane, placed above back */
.front {
    z-index: 2;
    /* for firefox 31 */
    -webkit-transform: rotateY(0deg);
    transform: rotateY(0deg);
}

/* back, initially hidden pane */
.back {
    -webkit-transform: rotateY(180deg);
    transform: rotateY(180deg);
}

.site-header.narrow .site-logo img {
    max-width: 160px;
}

.site-nav {
    height: 100%;
}

    .site-nav > ul {
        display: none;
        border-top: 1px solid #e8eaea;
        border-bottom: 1px solid #e8eaea;
        background-color: white;
        position: absolute;
        top: 100%;
        left: 0;
        margin: 0;
        list-style: none;
        width: 100%;
        padding: 1.5em;
        -webkit-transition: all 0.1s ease;
        transition: all 0.1s ease;
        height: calc(85vh - 100%);
        overflow: auto;
        font-size: 1.6em;
    }

        .site-nav > ul > li {
            margin: 0.5em 0;
            border-bottom: 1px solid #e8eaea;
            padding-bottom: 0.5em;
        }

    .site-nav ul li a {
        -webkit-transition: border 0.1s ease;
        transition: border 0.1s ease;
        color: #00456b;
        border-bottom: 1px solid rgba(0,0,0,0);
    }

        .site-nav .current-menu-item > a, .site-nav ul li a:focus {
            border-bottom: 1px solid #d0d0d0;
        }

        .site-nav ul li a:hover, .site-nav ul li a:focus {
            color: black;
            text-decoration: none;
        }

        .site-nav ul li a:hover {
            border-bottom: 1px solid #00456b;
        }

    .site-nav > ul > li > a {
        font-weight: bold;
    }

.menu-cta { /* display: none; */
    margin-bottom: 0;
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    height: 15vh;
    padding: 0.8em;
    background-color: #00456b;
    color: white;
    text-align: center;
    border-radius: 0px;
    -webkit-transition: all 0.1s ease;
    transition: all 0.1s ease;
    z-index: 2;
}

.menu-cta-wrap {
    height: 100%;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-align-content: center;
    -ms-flex-line-pack: center;
    align-content: center;
}

    .menu-cta-wrap .cta-phone {
        display: block;
        font-size: 1.3em;
        -webkit-transition: all 0.1s ease;
        transition: all 0.1s ease;
    }

        .menu-cta-wrap .cta-phone a {
            color: white;
        }

    .menu-cta-wrap .cta-email {
        font-family: "ff-enzo-web", sans-serif;
        font-weight: bold;
        color: white;
        display: block;
        font-size: 1.4em;
        border-bottom: 1px solid transparent;
        transition: 0.1s ease;
    }

        .menu-cta-wrap .cta-email:hover {
            text-decoration: none;
            padding-right: 0.15em;
        }

/*
.site-nav>ul>li.menu-cta {  }
.site-nav>ul>li.menu-cta a { background-color: #00456b; color: white; padding: 1.5em 1.6em 1.5em 0.9em; font-weight: bold; -webkit-clip-path: polygon(0% 0, 94% 0%, 100% 50%, 94% 100%, 0% 100%); clip-path: polygon(0% 0, 94% 0%, 100% 50%, 94% 100%, 0% 100%); transition: 0.1s ease; }
.site-nav>ul>li.menu-cta a:hover, .site-nav>ul>li.menu-cta a:focus { -webkit-clip-path: polygon(0% 0, 88% 0%, 100% 50%, 88% 100%, 0% 100%);clip-path: polygon(0% 0, 88% 0%, 100% 50%, 88% 100%, 0% 100%); padding: 1.5em 1.5em 1.5em 0.7em; background-color: #00669c; }
.site-header.narrow  .site-nav>ul>li.menu-cta a { padding-top: 0.9em; padding-bottom: 0.9em; }
*/
.menu > li > .sub-menu-wrap {
    display: none;
}

.menu > li > .sub-menu-wrap {
    z-index: 1;
    -webkit-animation: navreveal 0.5s ease forwards;
    animation: navreveal 0.5s ease forwards;
}

    .menu > li > .sub-menu-wrap ul {
        font-size: 1em;
        margin: 0;
        list-style: none;
    }

    .menu > li > .sub-menu-wrap > ul {
        margin: 1em 0;
    }

    .menu > li > .sub-menu-wrap.sub-visible {
        display: block;
    }

    .menu > li > .sub-menu-wrap .menu-no-head > a {
        display: none;
    }

    .menu > li > .sub-menu-wrap > ul .menu-col > ul {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -webkit-flex-direction: row;
        -ms-flex-direction: row;
        flex-direction: row;
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }

        .menu > li > .sub-menu-wrap > ul .menu-col > ul > li {
            padding: 0 1em 0 0;
        }

            .menu > li > .sub-menu-wrap > ul .menu-col > ul > li.item-has-image {
                padding: 0 1em;
            }

            .menu > li > .sub-menu-wrap > ul .menu-col > ul > li:first-child.item-has-image {
                padding-left: 0;
            }

            .menu > li > .sub-menu-wrap > ul .menu-col > ul > li:last-child.item-has-image {
                padding-right: 0;
            }

    .menu > li > .sub-menu-wrap > ul .menu-col {
        -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
        margin-bottom: 1em;
    }

    .menu > li > .sub-menu-wrap .item-has-image {
        -webkit-flex-basis: 50%;
        -ms-flex-preferred-size: 50%;
        flex-basis: 50%;
    }

        .menu > li > .sub-menu-wrap .item-has-image a img {
            -webkit-box-ordinal-group: 3;
            -webkit-order: 2;
            -ms-flex-order: 2;
            order: 2;
            width: 100%;
            height: auto;
        }

.menu-head .item-title {
    font-weight: bold;
    color: #00456b;
    font-family: "ff-enzo-web", sans-serif;
    text-transform: uppercase;
    letter-spacing: -0.02em;
}

.close-menu {
    display: none;
}

/*/ CSS for JSON-created content in nav */
.menu > li > .sub-menu-wrap li.nav-latest-blog > a {
    white-space: normal;
    text-transform: none;
    font-size: 1.2em;
    line-height: 1.3;
    font-weight: normal;
}

.menu > li > .sub-menu-wrap li.menu-no-text > a {
    visibility: hidden;
}

.moretag {
    white-space: nowrap;
    float: right;
    display: block;
    margin-top: 0.5em;
}

.blog .postm, .search-result {
    border-bottom: 1px dotted #d1d1d1;
    overflow: hidden;
    padding-bottom: 2em;
    margin-bottom: 3em;
}

.search-excerpt {
    background-color: #fff3a3;
}

.posts-nav, nav.pagination {
    flex-basis: 100%;
    font-size: 1.6em;
}

nav.pagination, .posts-nav {
    text-align: center;
    background-color: #fff;
    padding: 1em 0.7em;
    border-radius: 3px;
}

.nav-links, .posts-nav {
    display: flex;
    justify-content: space-between;
}

    .nav-links .page-numbers, .posts-nav a {
        padding: 0.3em;
        font-size: 1.1em;
        transition: 0.1s ease;
    }

    .posts-nav a {
        padding: 0.1em 0.3em;
        line-height: 1.8;
    }

        .nav-links a.page-numbers:hover, .nav-links a.page-numbers:focus, .posts-nav a:hover, .posts-nav a:focus {
            color: black;
        }

    .nav-links .prev, .posts-nav .posts-nav-newer {
        flex-grow: 2;
        text-align: left;
        flex-basis: 50%;
        font-style: bold;
    }

    .nav-links .next, .posts-nav .posts-nav-older {
        flex-grow: 2;
        text-align: right;
        flex-basis: 50%;
        font-style: bold;
    }

.page-header, .home-header {
    padding: 0;
    position: relative;
    margin-top: 8em;
    min-height: 25vh;
    background-color: #00456b;
    overflow: hidden;
}

.search-results .page-header, .blog .page-header {
    background-color: #e4e4e4;
    min-height: 16;
}

    .search-results .page-header h1, .blog .page-header h1 {
        font-weight: normal;
        color: #3a3a3a;
    }

.page-header.section-widehas-f-img {
    min-height: 40vh;
    background-color: #6a6c6c;
}

.page-header > img {
    width: auto;
    max-height: 90vh;
    object-fit: cover;
    font-family: 'object-fit: cover;'; /* Polyfill to fix object-fit/position in lesser browsers. See js/ofi.browser.js */
}

.page-header .page-header-content {
    float: none;
    margin: 0 auto;
    position: absolute;
    text-align: center;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    color: white;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    -ms-grid-row-align: center;
    align-items: center;
}

.page-header h1 {
    margin-bottom: 0;
    font-size: 4em;
}

.search-results .page-header h1 {
    margin-bottom: 0.6em;
}

.page-header-content img {
    width: 60%;
    max-width: 400px;
    margin: 0 auto 2em;
}

.page-header .event-subhead {
    font-size: 2em;
    text-transform: uppercase;
}

.page-header .title-subhead {
    font-size: 2.2em;
    margin-bottom: 0;
}

.page-header-text {
    background-color: rgba(9, 35, 49, 0.45);
    border-radius: 4px;
    padding: 4em 5em;
    margin: 0 0;
}

.home-header {
    display: flex;
    flex-direction: column;
}

    .home-header .home-header-piece {
        position: relative;
    }

        .home-header .home-header-piece img {
            width: 100%;
            max-height: 120vh;
            object-fit: cover;
            font-family: 'object-fit: cover;'; /* Polyfill to fix object-fit/position in lesser browsers. See js/ofi.browser.js */
        }

        .home-header .home-header-piece h1 {
            text-align: center;
            margin: 1em 0 0.2em;
        }

        .home-header .home-header-piece h2 {
            color: white;
            font-weight: 300;
        }

        .home-header .home-header-piece .home-header-text {
            position: absolute;
            color: white;
            width: 100%;
            display: flex;
            flex-direction: column;
            justify-content: center;
            align-items: center;
            padding: 0;
        }

    .home-header a.home-header-piece .home-header-text {
        background-color: rgba(0,0,0,0.5);
        transition: 0.3s ease;
    }

    .home-header a:hover .home-header-text, .home-header a:focus .home-header-text {
        background-color: rgba(255,255,255,0.1);
    }

    .home-header .search-form {
        display: block;
        padding: 2em 2em 0;
        width: 100%;
        max-width: 32em;
        margin: 0 auto;
    }

.search-form {
    text-align: center;
}

    .search-form label {
    }

    .search-form button {
        display: inline-block;
        width: 20vw;
        max-width: 7em;
    }

    .search-form .screen-reader-text {
        display: none;
    }

    .search-form input[type=search] {
        display: inline-block;
        width: 55vw;
        max-width: 20em;
        padding: .6em;
        border-radius: 3px;
        -webkit-appearance: textfield;
    }

/* Search engine results */

.search-results .site-body {
    background-color: #e4e4e4;
}

.serp-nav {
    list-style: none;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    margin-left: 0;
}

    .serp-nav li {
        flex-basis: 28%;
        border-top: 1px dotted #c1c1c1;
        margin-left: 5%;
        margin-bottom: 0.5em;
    }

.search-result {
    background-color: white;
    padding: 2em;
    margin-bottom: 4em;
    box-shadow: 0px 2px 4px rgba(0,0,0,0.1);
    transition: 0.2s ease;
}

    .search-result:hover, .search-result:focus {
        -webkit-transform: scale(1.03);
        -ms-transform: scale(1.03);
        transform: scale(1.03);
    }

    .search-result :last-child {
        margin-bottom: 0;
    }

/* Page (submenu) navigation */
.page-nav .section-full {
    overflow: visible;
}

.page-nav {
    padding: 0;
    border-bottom: 1px solid #e8eaea;
    background-color: #f3f3f4;
}

    .page-nav > div {
        padding-top: 1em;
        padding-bottom: 1.5em;
    }

    .page-nav .sub-menu-trigger {
        max-width: 1140px;
        margin: 0.8em auto 0;
    }

        .page-nav .sub-menu-trigger a {
            padding: .8em;
        }

    .page-nav ul {
        list-style: none;
        line-height: 1.8;
        padding: 0;
        display: none;
        -webkit-animation: navreveal 0.5s ease forwards;
        animation: navreveal 0.5s ease forwards;
        font-size: 1.6em;
    }

.sub-visible ul {
    display: block;
}

.page-nav ul.sub-visible {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.page-nav ul li {
    margin: 0 1em 0 0;
    position: relative;
}

    .page-nav ul li:last-child {
        margin-right: 0;
    }

    .page-nav ul li a, .sub-menu-trigger a {
        display: inline-block;
        color: #776c6c;
        -webkit-transition: 0.1s ease;
        transition: 0.1s ease;
        white-space: nowrap;
    }

        .page-nav ul li a:hover, .page-nav ul li a:focus, .sub-menu-trigger a:hover, .sub-menu-trigger a:focus {
            text-decoration: none;
            color: #000;
        }

    .page-nav ul li.current-menu-item a {
        font-weight: bold;
        color: #00456b;
    }

    .page-nav ul li.sub-menu-cta {
        -webkit-align-self: flex-end;
        -ms-flex-item-align: end;
        align-self: flex-end;
        -webkit-box-flex: 1;
        -webkit-flex-grow: 1;
        -ms-flex-positive: 1;
        flex-grow: 1;
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: end;
        -webkit-justify-content: flex-end;
        -ms-flex-pack: end;
        justify-content: flex-end;
    }

        .page-nav ul li.sub-menu-cta a {
            color: #00456b;
            font-weight: bold;
        }

            .page-nav ul li.sub-menu-cta a:hover {
                text-decoration: none;
                color: black;
            }

.page-nav .menu > li > .sub-menu-wrap {
    top: 100%;
    padding: 0 1em;
    left: -1em;
    box-shadow: none;
    border: 1px solid #e8eaea;
    position: absolute;
    background-color: white;
}

.page-nav .you-are-here {
    margin: 0 0 0.5em;
    padding-bottom: 0.5em;
    color: #776c6c;
    border-bottom: 1px dotted #d0d0d0;
    overflow: hidden;
    font-weight: normal;
}

    .page-nav .you-are-here a {
        font-size: 0.7em;
        font-weight: bold;
        text-transform: uppercase;
        color: #776c6c;
        padding-left: 0.75em;
    }

        .page-nav .you-are-here a:hover, .page-nav .you-are-here a:focus {
            text-decoration: none;
            color: black;
        }

    .page-nav .you-are-here .cta-phone {
        text-align: right;
    }

.updates > h3 {
    text-align: center;
    text-transform: uppercase;
    font-size: 2.2em;
}

    .updates > h3 > a {
        font-size: 0.8em;
        color: #c1c1c1;
        display: block;
        margin: 0.5em 0 2em;
    }

.updates article {
    position: relative;
    margin-bottom: 2em;
}

    .updates article, .updates article a {
        transition: 0.2s ease;
    }

        .updates article img {
            width: 100%;
            height: auto;
            margin-bottom: 1em;
        }

        .updates article .post-title {
            z-index: 100;
            position: relative;
            margin: -8em 2em 2em;
            background-color: white;
            padding: 2em;
            text-align: center;
        }

            .updates article .post-title h4 {
                font-size: 3em;
                line-height: 1.3;
            }

            .updates article .post-title .post-meta {
                text-transform: uppercase;
                margin: 0 0 1em;
            }

        .updates article p:last-child {
            margin-bottom: 0;
        }

        .updates article .post-title:hover {
            background-color: #f4f4f4;
        }

            .updates article .post-title:hover, .updates article .post-title:hover a {
                color: black;
                text-decoration: none;
            }

        .updates article .post-title .button1:hover {
            color: white;
        }

.updates .post-row {
    display: flex;
    flex-wrap: wrap;
    margin-left: -1em;
    margin-right: -1em;
}

    .updates .post-row article {
        flex-basis: 100%;
        max-width: 100%;
    }

@media screen and (min-width: 767px) {
    .updates .post-row article {
        flex-basis: 33.333%;
        max-width: 33.333%;
        padding-left: 1em;
        padding-right: 1em;
    }
}

.updates .post-row article .post-title {
    position: relative;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    font-size: 0.6em;
}

    .updates .post-row article .post-title:hover {
        background-color: transparent;
    }

    .updates .post-row article .post-title .post-meta {
        font-size: 2.667em;
        margin-bottom: 0.5em;
    }

.updates .post-row .button1 {
    font-size: 0.889em;
}


/* Special classes */

.lead {
    font-size: 2.2em;
    margin-bottom: 0.6em;
}

.rt-image-lightbox {
}

    .rt-image-lightbox:hover, .rt-image-lightbox:focus {
    }

.img-col img {
    width: 100%;
    height: auto;
}

/* End Special classes */

/* Reduce empty space */
body.page .section-narrow article > :last-child {
    margin-bottom: 0;
}

.featured_grid {
    border-top: 1px solid #e8eaea;
}

    .featured_grid ul {
        list-style: none;
        margin: 0;
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: start;
        -webkit-justify-content: flex-start;
        -ms-flex-pack: start;
        justify-content: flex-start;
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        margin: 0 -1em;
    }

        .featured_grid ul li {
            -webkit-flex-basis: 100%;
            -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
            min-width: 200px;
            position: relative;
            padding: 0 1em;
        }

            .featured_grid ul li a {
                display: block;
                border-bottom: 1px solid white;
                margin-bottom: 1em;
            }

                .featured_grid ul li a:hover {
                    text-decoration: none;
                    color: #00456b;
                }

                    .featured_grid ul li a:hover .fgrid-item-subtitle {
                        color: #00456b;
                    }

                    .featured_grid ul li a:hover img {
                        -webkit-transform: scale(1.07);
                        -ms-transform: scale(1.07);
                        transform: scale(1.07);
                    }

            .featured_grid ul li .fgrid-item-image {
                width: 100%;
                height: 170px;
                max-height: 100%;
                overflow: hidden;
                margin-bottom: 1em;
            }

            .featured_grid ul li img {
                width: 100%;
                height: 100%;
                -webkit-transition: all .2s ease-in-out;
                transition: all .2s ease-in-out;
                -o-object-fit: cover;
                object-fit: cover;
                object-position: center;
                font-family: 'object-fit: cover; object-position: center;'; /* Polyfill to fix object-fit/position in lesser browsers. See js/ofi.browser.js */
            }

            .featured_grid ul li .fgrid-item-title, .featured_grid ul li .fgrid-item-subtitle {
                display: block;
            }

            .featured_grid ul li .fgrid-item-title {
                font-family: "ff-enzo-web", sans-serif;
                font-weight: bold;
                font-size: 1.4em;
                line-height: 1.3;
            }

            .featured_grid ul li .fgrid-item-subtitle {
                margin-bottom: 1em;
                color: #6A6C6C;
            }

.masonry-gallery {
    list-style: none;
    margin: 0;
    line-height: 0;
}

    .masonry-gallery li {
        margin-bottom: 1em;
    }

        .masonry-gallery li a {
            display: block;
            overflow: hidden;
            height: 12em;
        }

            .masonry-gallery li a img {
                width: 100%;
                height: 100%;
                -o-object-fit: cover;
                object-fit: cover;
                font-family: 'object-fit: cover;'; /* Polyfill to fix object-fit/position in lesser browsers. See js/ofi.browser.js */
                -webkit-transition: all .2s ease;
                transition: all .2s ease;
                -webkit-backface-visibility: hidden;
            }

            .masonry-gallery li a:hover img {
                -webkit-transform: scale(1.07);
                -ms-transform: scale(1.07);
                transform: scale(1.07);
            }

.hotel, .venue, .secondary-content {
    border-top: 1px solid #e8eaea;
}

.hotel-name {
    font-size: 4.5em;
    font-weight: 600;
    margin-bottom: 0;
}

.hotel-logo {
    float: right;
    opacity: 0.35;
}

.hotel-address {
    font-style: italic;
}

.hotel-lead {
    font-family: "ff-enzo-web", sans-serif;
    font-size: 2.6em;
    font-style: italic;
    line-height: 1.4;
}

.hotel-gallery {
    list-style: none;
    margin: 0;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
}

    .hotel-gallery li {
        flex-basis: 48%;
        margin: 0 0 3vw 4%;
    }

        .hotel-gallery li:first-child {
            flex-basis: 100%;
            margin-left: 0;
        }

        .hotel-gallery li:nth-child(even) {
            margin-left: 0;
        }

        .hotel-gallery li:first-child a {
            height: 12em;
        }

        .hotel-gallery li a {
            display: block;
            height: 8em;
            overflow: hidden;
        }

            .hotel-gallery li a img {
                width: 100%;
                height: 100%;
                -o-object-fit: cover;
                object-fit: cover;
                font-family: 'object-fit: cover;'; /* Polyfill to fix object-fit/position in lesser browsers. See js/ofi.browser.js */
                -webkit-transition: all .2s ease;
                transition: all .2s ease;
                -webkit-backface-visibility: hidden;
            }

            .hotel-gallery li a:hover img {
                -webkit-transform: scale(1.07);
                -ms-transform: scale(1.07);
                transform: scale(1.07);
            }

.venue .sub-title {
    font-size: 1rem;
    font-family: "soleil", sans-serif;
    font-weight: normal;
    color: #b4b4b4;
    text-transform: uppercase;
    display: block;
    margin-bottom: 0.3em;
}

.venue .venue-city {
    margin-bottom: 0.3em;
    font-size: 5em;
    font-weight: 200;
}

.venue .venue-name {
    font-size: 2.2em;
}

.venue-image img {
    width: 100%;
    height: auto;
}

/* Inclusions table */

.inclusions-table {
    width: 100%;
    margin-bottom: 3em;
}

    .inclusions-table tr td {
        display: block;
        padding: 0.8em;
    }

        .inclusions-table tr td:nth-child(odd) {
            background-color: rgba(0,0,0,0.05);
        }

    .inclusions-table tr:nth-child(even) td:nth-child(odd) {
        background: none;
    }

    .inclusions-table tr:nth-child(even) td:nth-child(even) {
        background-color: rgba(0,0,0,0.05);
    }

.inclusion-icon {
    max-width: 4em;
    margin: 0.5em auto 0.5em;
}

/* Inclusions table - styled list */

.inclusions-table-list {
    display: table;
    width: 100%;
    font-size: 1.7em;
    margin: 0px;
    list-style: none;
}

    .inclusions-table-list div.row:nth-child(odd) li:nth-child(odd) {
        background-color: rgba(0,0,0,0.05);
    }

    .inclusions-table-list div.row:nth-child(even) li:nth-child(even) {
        background-color: rgba(0,0,0,0.05);
    }

    .inclusions-table-list div.row li {
        display: table-cell;
        list-style: none;
        padding: 0.8em;
        min-height: 196px;
        float: left;
        width: 100%;
    }

.inclusion-icon {
    max-width: 4em;
    margin: 0.5em auto 0.5em;
}

/* Columns list */
ul.columns-list {
    text-align: left; /* -moz-column-gap: 3em; -moz-column-count: 2; column-gap: 3em; column-count: 2; */
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    flex-wrap: wrap;
}

    ul.columns-list li {
        flex-basis: 47%;
        padding-left: 0.5em;
        padding-bottom: 1em;
    }


/* Events Calendar */
ul.event-calendar {
    list-style: none;
    margin: 0;
}

    ul.event-calendar li, ul.event-calendar li a {
        display: flex;
        flex-direction: column;
    }

    ul.event-calendar li {
        border-bottom: 1px solid #c1c1c1;
        padding: 0.5em;
    }

        ul.event-calendar li a {
            width: 100%;
            transition: 0.2s ease;
            cursor: pointer;
        }

            ul.event-calendar li a:hover, ul.event-calendar li a:focus {
                color: black;
                text-decoration: none;
            }

        ul.event-calendar li.event:nth-child(even) {
            background-color: #f4f4f4;
        }

        ul.event-calendar li.event-hdr {
            display: none;
            font-size: 0.9em;
            text-transform: uppercase;
        }

        ul.event-calendar li.event {
            color: #00456b;
        }

            ul.event-calendar li.event .event-title {
                font-weight: bold;
            }

            ul.event-calendar li.event .event-location {
                font-style: italic;
            }

/* Tab Layout Styling */
.tabs-container {
    overflow: hidden;
}

ul.tabs {
    list-style: none;
    margin: 0;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
}

    ul.tabs li {
        flex-grow: 1;
        text-align: center;
        transition: all 0.2s ease;
        white-space: nowrap;
        position: relative;
        cursor: pointer;
        padding: 0.6em 0.8em;
        border-radius: 0.2em;
        background-color: #f4f4f4;
    }

        ul.tabs li:first-child {
            border-radius: 0 0 0 0.3em;
        }

        ul.tabs li:last-child {
            border-radius: 0 0 0.3em 0;
        }

        ul.tabs li.current, ul.tabs li:focus {
            background-color: #00456b;
            color: white;
        }

        ul.tabs li:hover {
            background-color: #00669c;
            color: white;
        }

.tab-content {
    visibility: hidden;
    height: 0;
    opacity: 0;
    transition: opacity 0.2s ease;
}

    .tab-content.current {
        visibility: visible;
        opacity: 1;
        height: auto;
        position: relative;
    }

    .tab-content > img {
        min-width: 100%;
        max-height: 350px;
        object-fit: cover;
        font-family: "obejct-fit: cover;"; /* Polyfill to fix object-fit/position in lesser browsers. See js/ofi.browser.js */
    }

    .tab-content .tab-text {
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
    }

    .tab-content .tab-logo {
        width: 50%;
        max-width: 375px;
    }

    .tab-content .tab-cta {
        margin: 2em 0 1em;
    }

        .tab-content .tab-cta a {
            background-color: rgba(0, 69, 107, 0.2);
            color: white;
            padding: 0.5em 0.7em;
            border-radius: 3px;
            border: 1px solid white;
            transition: all 0.2s ease;
        }

            .tab-content .tab-cta a:hover, .tab-content .tab-cta a:focus {
                color: white;
                border-color: #00456b;
                background-color: #00456b;
                text-decoration: none;
            }

body .tablepress {
    width: 100%;
    text-align: left;
    margin-bottom: 2em;
}

    body .tablepress td, body .tablepress thead th {
        padding: 0.4em;
        vertical-align: middle;
    }

    body .tablepress thead {
        font-weight: bold;
    }

        body .tablepress thead th {
            background-color: #00669c;
            color: white;
        }

    body .tablepress tr.subhead-row {
        font-weight: bold;
        background: none;
        border-top: 1px solid #d2d2d2;
        border-bottom: 1px solid #d2d2d2;
        background-color: white;
    }

    body .tablepress .table-subhead {
        font-size: 0.8em;
        display: block;
        font-weight: normal;
    }

/* Gallery */
.gallery {
    display: flex;
    flex-wrap: wrap;
}

    .gallery a {
        flex-basis: 32%;
        margin-right: 2%;
        margin-bottom: 2%;
    }

        .gallery a:nth-child(3n) {
            margin-right: 0;
        }

        .gallery a img {
            width: 100%;
        }

.lightbox-content {
    display: none;
}

    .lightbox-content.featherlight-inner {
        display: block;
        overflow: visible;
    }

.featherlight .lightbox-content .lightbox-caption {
    position: absolute;
    width: 100%;
    height: auto;
    top: 100%;
    color: white;
    padding: 0.5em 0.75em;
    background-color: white;
    font-size: 1.7em;
    text-align: center;
    background: none;
}

.featherlight .featherlight-inner {
    position: relative;
}

/* Blog Index */
.blog .site-body {
    background-color: #e4e4e4;
}

.blog-index article {
    background-color: white;
    padding: 2em;
    margin-bottom: 4em;
    box-shadow: 0px 2px 4px rgba(0,0,0,0.1);
    transition: 0.2s ease;
}

    .blog-index article:hover, .blog-index article:focus {
        -webkit-transform: scale(1.03);
        -ms-transform: scale(1.03);
        transform: scale(1.03);
    }

    .blog-index article > a {
        margin-bottom: 2em;
    }

    .blog-index article > a {
        transition: 0.2s ease;
        overflow: hidden;
        display: block;
    }

    .blog-index article img {
        width: 100%;
        height: auto;
        -webkit-transition: all .2s ease-in-out;
        transition: all .2s ease-in-out;
    }

    .blog-index article h3 {
        margin-bottom: 0.4em;
        font-size: 2.8em;
    }

    .blog-index article .post-meta {
        font-size: 2em;
        margin-bottom: 0.2em;
    }

        .blog-index article .post-meta a {
            color: #b4b4b4;
        }

article .the-tags {
    font-style: italic;
    margin-bottom: 0;
}

.blog-index article:hover a img {
    -webkit-transform: scale(1.07);
    -ms-transform: scale(1.07);
    transform: scale(1.07);
}

.blog-index article:hover a {
    text-decoration: none;
    color: black;
}

.blog-sidebar h3 {
    font-size: 2.2em;
}

.blog-sidebar .widget {
    background-color: white;
    box-shadow: 0px 2px 4px rgba(0,0,0,0.1);
    border-radius: 3px;
    margin-bottom: 4em;
    padding: 2em;
}

.single-post .blog-sidebar .widget {
    border: 2px solid #00456b;
}

.blog-sidebar .search-form input[type="search"] {
    width: 100%;
    max-width: none;
    border: 2px solid #00456b;
    margin-bottom: 1em;
}

/* Sitemap */
.sitemap-html {
    list-style: none;
    margin-left: 0;
    display: flex;
    flex-wrap: wrap;
    line-height: 1.2;
}

    .sitemap-html > li {
        flex-basis: 196px;
        box-sizing: border-box;
        padding-right: 1em;
        margin-bottom: 1rem;
    }

        .sitemap-html > li > ul {
            list-style: none;
            margin-left: 0;
        }

            .sitemap-html > li > ul a {
                color: #6a6c6c;
            }

            .sitemap-html > li > ul > li > ul {
                font-size: 0.9rem;
            }

        .sitemap-html > li > a {
            font-weight: bold;
            text-transform: uppercase;
            letter-spacing: 0.1rem;
            font-size: .9rem;
        }

/* De-uglify Hub Spot Forms */
body .hs-form.stacked label {
    color: #67696e;
    font-weight: normal;
    font-family: "soleil", sans-serif;
}

.hs-form input.hs-input, .hs-form textarea.hs-input, .hs-form select.hs-input {
    background-color: white;
    font-size: 0.5em;
    font-family: "soleil", sans-serif;
    color: #6a6c6c;
    box-shadow: none;
    border: 2px solid #c1c1c1;
    padding: 0.6em 0.6em;
    box-sizing: border-box;
}

.hbspt-form h2 {
    font-size: 2.2em;
}

.hbspt-form p {
    font-family: "soleil", sans-serif;
    color: #6A6C6C;
    font-size: 1.3em;
}

body .hs-form fieldset {
    max-width: 740px;
}

    body .hs-form input.hs-input, body .hs-form textarea.hs-input, body .hs-form select.hs-input, body .hs-form fieldset.form-columns-1 .hs-input {
        width: 100%;
        max-width: 900px;
        height: auto;
        line-height: 1.4;
        box-sizing: border-box;
    }

body .hs-form .hs_submit .actions {
    margin-top: 0;
}

body .hs-form .hs-button {
    height: 1.6em;
    font-size: 0.5em;
    font-family: "soleil", sans-serif;
    box-shadow: none;
    color: #00456b;
    border: 2px solid #00456b;
    background-image: none;
    background-color: #fff;
    box-shadow: none;
    text-shadow: none;
}

    body .hs-form .hs-button:hover, body .hs-form .hs-button:focus {
        outline: none;
        background-color: #00456b;
        color: #fff;
        border: 2px solid #00456b;
    }

        body .hs-form .hs-button:hover:not(.inactive), body .hs-form .hs-button:focus:not(.inactive), body .hs-form .hs-button.hovered:not(.inactive) {
            border: 2px solid #00456b;
            box-shadow: none;
        }

body .hs-form input {
    margin-bottom: 0;
}

.cta .hbspt-form .hs-richtext {
    display: none;
}

.cta .hs-form.stacked label {
    color: rgb(158, 189, 206);
}

.cta .hs-form input:not([type="image"]) {
    margin-left: 0;
}

.cta input.hs-input, .cta textarea.hs-input, .cta select.hs-input {
    border: 2px solid #00456b;
}

.cta .hs-form .hs-error-msgs label {
    text-transform: none;
}

.cta .hs-form .hs_submit .actions {
    padding-top: 5px;
    margin-top: 17px;
}

.cta .hs-form .hs-button:hover:not(.inactive), body .cta .hs-form .hs-button:focus:not(.inactive), body .cta .hs-form .hs-button.hovered:not(.inactive) {
    border: none;
    box-shadow: none;
}

.cta .hs-form .hs-button {
    background-color: #00456b;
    border: none;
    color: white;
}

    .cta .hs-form .hs-button:hover, .cta .hs-form .hs-button:focus {
        background-color: white;
        color: #00456b;
        border: 2px solid #00456b;
    }

/* featherlight.js overrides. v1.5.1 */
body .featherlight .featherlight-content {
    padding: 1px;
    border-bottom: 1px solid transparent;
    overflow: visible;
}

body .featherlight-next:hover, body .featherlight-previous:hover {
    background: none;
}

body .featherlight-next span, body .featherlight-previous span {
    opacity: 0.5;
    font-size: 60px;
}

body .featherlight .featherlight-close-icon {
    background: rgba(0,0,0,0.1);
    color: rgba(255,255,255,0.6);
    width: 50px;
    line-height: 50px;
    font-size: 2em;
    transition: 0.2s ease;
}

    body .featherlight .featherlight-close-icon:hover, body .featherlight .featherlight-close-icon:focus {
        color: black;
        background-color: white;
    }

body .featherlight-content #search-lightbox {
    display: block !important;
    padding: 65px 25px 25px;
}

@media screen and (min-width: 767px) {

    body .featherlight-content #search-lightbox {
        display: block !important;
        padding: 65px 45px;
    }
}

body .featherlight-content #search-lightbox input[type=search] {
    border: 1px solid #d1d1d1;
}

body .featherlight-content #search-lightbox input,
body .featherlight-content #search-lightbox button {
    margin-bottom: 0;
}

.testimonial {
    background-color: #00456b;
    color: white;
}

    .testimonial .author-title {
        font-family: "ff-enzo-web", sans-serif;
        color: white;
        font-weight: bold;
        font-size: 2em;
        margin-bottom: 0;
    }

    .testimonial .author-location {
        font-style: italic;
    }

    .testimonial .testimonial-lead {
        font-size: 3em;
        font-family: "ff-enzo-web", sans-serif;
        font-weight: bold;
        margin-bottom: 0.5em;
        color: #86c5f0;
    }

    .testimonial.light {
        background: transparent;
        border-bottom: 1px solid #e8eaea;
        color: inherit;
    }

        .testimonial.light .author-title {
            color: #00456b;
        }

.cta {
    background-color: #00669c;
    color: white;
    text-align: center;
}

    .cta h3 {
        color: white;
    }

form {
    font-size: 1.8em;
}

input[type=text], input[type=email], input[type=phone], button {
    padding: .6em;
    border-radius: 3px;
    display: block;
    width: 100%;
    margin-bottom: 1em;
}

.cta input[type=text], .cta input[type=email], .cta input[type=phone], .cta button {
    margin-left: 0.4em;
    margin-right: 0.4em;
}

button {
    background-color: #00456b;
    color: white;
    text-align: center;
    -webkit-transition: 0.4s ease;
    transition: 0.4s ease;
    border: 2px solid white;
}

    button:hover, button:focus {
        background-color: white;
        color: #00456b;
        border: 2px solid #00456b;
    }



.shortcode {
    text-align: center;
}

    .shortcode > div {
        margin-bottom: 3em;
    }

.button1 {
    text-align: center;
    -webkit-transition: 0.1s ease;
    transition: 0.1s ease;
    padding: 0.5em;
    font-size: 0.9em;
    border-radius: 4px;
    border: 1px solid #00456b;
    white-space: nowrap;
}

    .button1:hover, .button1:focus {
        text-decoration: none;
        background-color: #00456b;
        color: white;
    }

footer {
    padding: 2em;
    border-top: 1px solid #e8eaea;
}

    footer p {
        font-size: 1.3em;
        text-align: center;
    }

.footer-company-info img {
    max-width: 180px;
    margin: 0 !important;
}

.footer-copyright, .footer-logo, .footer-network, .footer-social-nav {
    margin-bottom: 1em;
}

.footer-social-nav {
    text-align: center;
    padding: 2em 0;
}

    .footer-social-nav ul {
        display: inline-block;
        list-style: none;
        margin: 0 auto;
        border-top: 1px solid #d2d2d2;
        border-bottom: 1px solid #d2d2d2;
        padding: 0.5em 1em;
    }

        .footer-social-nav ul li {
            display: inline-block;
            padding: 0 0.4em;
        }

            .footer-social-nav ul li a {
                color: #6a6c6c
            }

.footer-network p {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    flex-direction: row;
    align-items: center;
}

    .footer-network p img {
        flex: 0 0 100px;
        margin: 0 1em 1em;
    }

.footer-nav nav {
    text-align: center;
}

    .footer-nav nav ul {
        list-style: none;
        font-size: 1.4em;
    }

@media screen and (min-width: 950px) {
    .footer-network p {
        justify-content: flex-start;
    }
}

@media screen and (min-width: 1300px) {
    /* .footer-network p { flex-wrap: nowrap; justify-content: space-around; } */
}

/* 

WP Gmaps Styling overrides 

*/
body .wpgmza_marker_list_class {
    display: flex;
    flex-wrap: wrap;
}

body .wpgmza_basic_row {
    padding: 2em 0;
    margin: 0;
    border: none;
    border-bottom: 1px solid #e4e4e4;
    flex-basis: 100%;
}

body .wpgmza-content-address-holder > p {
    font-size: 2.2em !important;
    margin-bottom: 0;
}

body .wpgmza-address {
    font-size: 1.6em !important;
}

body .wpgmza-basic-listing-image-holder {
    max-width: 100px;
}

    body .wpgmza-basic-listing-image-holder img {
        border: none !important;
        padding: none !important;
    }

body .wpgmza-desc p:last-child {
    margin-bottom: 0;
}

body .wpgmza-content-address-holder img {
    max-width: 33px !important;
}
/* body .wpgmza_map { border: 1px solid #c1c1c1; } */

/*

Gravity Forms

*/
body .gform_wrapper .gform_body ul.gform_fields {
    font-size: 1em;
}

body .gform_wrapper .gform_body .gform_fields .gfield input[type=text], body .gform_wrapper .gform_body .gform_fields .gfield textarea, input[type=number] {
    border: 1px solid #c1c1c1;
    padding: 0.4em 0.4em;
    border-radius: 2px;
    font-size: 1.2em;
}

body .gform_wrapper .gform_body .gform_fields .gfield .gfield_description, body .gform_wrapper .ginput_complex label {
    font-size: 0.75em;
    margin-bottom: 0;
}

body .gform_wrapper .gform_footer input[type=submit] {
    margin-top: 1px;
    background-color: #00456b;
    font-size: 1em;
    color: white;
    font-weight: bold;
    padding: 0.4em 0.5em;
    border-radius: 2px;
    width: 98%;
}

    body .gform_wrapper .gform_footer input[type=submit]:hover, body .gform_wrapper .gform_footer input[type=submit]:focus {
        opacity: 0.9;
        cursor: pointer;
    }

    body .gform_wrapper .gform_footer input[type=submit]:active {
        margin-bottom: 1px;
        margin-top: 0px;
    }

body .gform_wrapper .top_label .gfield_label {
    margin: 0.7em 0 0;
}

body .gform_wrapper .gform_heading {
    margin: 0 0 0.5em;
    font-size: 1.6em;
}

/*

GetFiveStars

*/
#e2wget5widget #e2w-average h2, #e2wget5widget #e2w-add-paddingbadge .e2w-businessname.align-center {
    display: none !important;
}

#e2wget5widget .e2w-theme-transparent #e2w-bigstar span {
    background-image: url(images/big-star.png);
}

#e2wget5widget #e2wget5sectionbadge.e2w-theme-transparent * {
    color: #fff !important;
}

/* 

Media Queries 

*/

@media screen and (min-width: 500px) {

    .tab-content > img {
        min-width: 100%;
        max-height: 400px;
    }

    .featured_grid ul li {
        -webkit-flex-basis: 50%;
        -ms-flex-preferred-size: 50%;
        flex-basis: 50%;
    }


    .cta form {
        display: flex;
        justify-content: center;
    }
    /* Unsure why this was here, causing issues 
	input[type=text],input[type=email],input[type=phone], button { flex-basis: 32%;  } */

    .masonry-gallery {
        -webkit-column-count: 2;
        -moz-column-count: 2;
        column-count: 2;
        column-fill: balance
    }
}

@media screen and (min-width: 800px) {
    body {
        font-size: 57.5%;
    }

    .col1, .col2, .col3, .col4, .col5, .col6, .col7, .col8, .col9, .col10, .col11 {
        float: left;
    }

    .col1 {
        width: 4.47%;
    }

    .col2 {
        width: 13.14%;
    }

    .col3 {
        width: 21.84%;
    }

    .col4 {
        width: 30.52%;
    }

    .col5 {
        width: 39.21%;
    }

    .col6 {
        width: 47.89%;
    }

    .col7 {
        width: 56.58%;
    }

    .col8 {
        width: 65.26%;
    }

    .col9 {
        width: 73.94%;
    }

    .col10 {
        width: 82.62%;
    }

    .col11 {
        width: 91.31%;
    }

    .margin1 {
        margin-right: 4.21%;
    }

    .margin2 {
        margin-right: 12.893%;
    }

    .admin-bar .site-header {
        top: 32px;
    }

    .inclusions-table {
        width: 100%;
    }

        .inclusions-table tr td {
            display: table-cell;
            padding: 0.8em;
            width: 33.333%;
        }

            .inclusions-table tr td, .inclusions-table tr:nth-child(even) td:nth-child(even), .inclusions-table tr td:nth-child(odd) {
                background: none;
            }

        .inclusions-table tr:nth-child(odd) {
            background-color: rgba(0,0,0,0.05);
        }

        .inclusions-table tr td:nth-child(2) {
            border-left: 1px solid #c1c1c1;
            border-right: 1px solid #c1c1c1;
        }

    .inclusions-table-list {
        width: 100%;
        margin: 0 0 3em 0;
    }

        .inclusions-table-list div.row li {
            display: table-cell;
            width: 33.333%;
            min-height: 196px;
            float: none;
        }

            .inclusions-table-list div.row li:nth-child(2) {
                border-left: 1px solid #c1c1c1;
                border-right: 1px solid #c1c1c1;
            }

        .inclusions-table-list div.row li {
            background-color: transparent !important;
        }

        .inclusions-table-list div.row:nth-child(odd) {
            background-color: rgba(0,0,0,0.05);
        }

    /* Columns list */
    ul.columns-list {
        text-align: left; /* -moz-column-gap: 3em; -moz-column-count: 2; column-gap: 3em; column-count: 2; */
        display: flex;
        flex-direction: row;
        justify-content: space-between;
        flex-wrap: wrap;
    }

        ul.columns-list li {
            text-align: left;
            flex-basis: 47%;
            padding-left: 0.5em;
            padding-bottom: 1em;
        }

    .menu-trigger {
        display: none;
    }

    .site-logo {
        padding-top: 1.5em;
    }

        .site-logo img {
            max-width: 160px;
        }

    .site-nav {
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: flex-end;
    }

        .site-nav > ul {
            display: block;
            list-style: none;
            width: auto;
            height: auto;
            position: static;
            border: none;
            padding: 0;
            background: none;
            overflow: visible;
        }

    .site-header.narrow .site-nav > ul {
        margin: 0.2em 0;
    }

    .site-nav ul li {
        display: inline-block;
        margin-left: 0.5em;
    }

    .site-nav > ul > li {
        margin-left: 1em;
        border-bottom: none;
        padding-bottom: 0;
    }

        .site-nav > ul > li > a {
            font-weight: normal;
        }

    .menu > li > .sub-menu-wrap {
        position: absolute;
        top: 100%;
        left: 0;
        width: auto;
        background-color: #f4f4f4;
        box-shadow: 0px 1px 4px rgba(0,0,0,0.1) inset;
    }

    .menu-cta {
        position: relative;
        display: block;
        background: none;
        padding: 0;
        height: 100%;
        height: calc(100% + 1px);
    }

    .menu-cta-wrap {
        margin: 0.38em 0;
        height: auto;
        text-align: right;
        background-color: #00456b;
        padding: 0.3em 0.5em;
        border-radius: 3px;
    }

    .menu-cta .cta-phone {
        font-size: 1em;
        margin: 0;
    }

    .menu-cta .cta-email {
        font-size: 1.2em;
        line-height: 1.2;
    }

    .site-header .menu > li.menu-item > .sub-menu-wrap {
        width: 100%;
        background-image: url(images/sports-submenu.jpg);
        background-repeat: no-repeat;
        background-position: bottom right;
        background-size: contain;
    }

    .menu > li > .sub-menu-wrap ul li {
        margin: 0;
        display: block;
    }

    .menu > li > .sub-menu-wrap > ul {
        max-width: 1200px;
        margin: 2em auto 1em;
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
    }

    .menu > li > .sub-menu-wrap .menu-col {
        -webkit-flex-basis: 25%;
        -ms-flex-preferred-size: 25%;
        flex-basis: 25%;
        margin: 0;
        padding: 0 1em;
    }

    .menu > li > .sub-menu-wrap .menu-head {
        margin-bottom: 1em;
    }

    .menu > li > .sub-menu-wrap .item-has-image a {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column;
    }

        .menu > li > .sub-menu-wrap .item-has-image a .item-title {
            -webkit-box-ordinal-group: 2;
            -webkit-order: 1;
            -ms-flex-order: 1;
            order: 1;
        }

    .menu > li > .sub-menu-wrap > ul .menu-col > ul {
        display: block;
    }

        .menu > li > .sub-menu-wrap > ul .menu-col > ul > li.item-has-image {
            padding: 0;
        }

    .menu > li > .sub-menu-wrap .item-has-image img {
        margin: 0.3em 0;
    }

    .close-menu {
        display: block;
        position: absolute;
        top: 0;
        right: 2em;
        line-height: 50px;
        width: 50px;
        border-radius: 0px 0px 5px 5px;
        font-family: Arial;
        text-align: center;
        background-color: rgba(255,255,255,0);
        transition: 0.2s ease;
    }

        .close-menu:hover {
            background-color: rgba(0,0,0,0.1);
            cursor: pointer;
        }

    .page-nav .menu-item-has-children {
        position: relative;
    }

    .page-nav .menu > li > .sub-menu-wrap {
        top: 100%;
        top: calc(100% + 0.9em);
        width: auto;
    }

        .page-nav .menu > li > .sub-menu-wrap ul {
            flex-direction: column;
            font-size: 1em;
            margin: 0;
        }


    .button1 {
        padding: 0.7em;
        font-size: 1em;
    }

    .tab-content > img {
        min-width: 100%;
        max-height: 550px;
    }

    .updates article .post-title {
        position: absolute;
        top: 18%;
        left: 25%;
        right: 25%;
        bottom: 18%;
        margin: 0;
        background-color: white;
        display: flex;
        flex-direction: column;
        justify-content: center;
    }

    .updates .post-meta {
        margin-bottom: 0;
    }

    .hotel-gallery {
        -webkit-box-pack: start;
        -webkit-justify-content: flex-start;
        -ms-flex-pack: start;
        justify-content: flex-start;
    }

        .hotel-gallery li {
            flex-basis: 31.333%;
            margin: 0 0 1vw 3%;
        }

            .hotel-gallery li:first-child {
                flex-basis: 100%;
            }

                .hotel-gallery li:first-child a {
                    height: 15em;
                }

            .hotel-gallery li:nth-child(even) {
                margin: 0 0 3% 3%;
            }

            .hotel-gallery li:nth-child(3n-1) {
                margin-left: 0;
            }

            .hotel-gallery li:first-child a {
                height: 12em;
            }

            .hotel-gallery li a {
                display: block;
                height: 8em;
                overflow: hidden;
            }

    .masonry-gallery {
        -webkit-column-count: 4;
        -moz-column-count: 4;
        column-count: 4;
        -moz-column-fill: balance;
        column-fill: balance;
        -webkit-column-fill: balance;
        -webkit-column-break-inside: avoid;
    }

        .masonry-gallery li a {
            height: 100%;
        }

            .masonry-gallery li a img {
                -o-object-fit: cover;
                object-fit: cover;
                font-family: 'object-fit: cover;'; /* Polyfill to fix object-fit/position in lesser browsers. See js/ofi.browser.js */
                height: 100%;
                width: 100%;
            }


        .masonry-gallery li:nth-child(8n-5), .masonry-gallery li:nth-child(8n-4), .masonry-gallery li:nth-child(8n-3), .masonry-gallery li:nth-child(8n-2), .masonry-gallery li:nth-child(8n-1), .masonry-gallery li:nth-child(8n) {
            height: 8em;
        }

        .masonry-gallery li:nth-child(8n-6), .masonry-gallery li:nth-child(8n-3) {
            height: 17em;
        }

        .masonry-gallery li:nth-child(8n+1) {
            height: 26em;
        }

    .gallery {
        margin-bottom: 2em;
    }

        .gallery a {
            flex-basis: 23.5%;
            margin-right: 2%;
            margin-bottom: 2%;
        }

            .gallery a:nth-child(3n) {
                margin-right: 2%;
            }

            .gallery a:nth-child(4n) {
                margin-right: 0;
            }

    ul.event-calendar li, ul.event-calendar li a {
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
        justify-content: space-between;
    }

        ul.event-calendar li.event-hdr {
            display: flex;
        }

        ul.event-calendar li .event-title {
            flex-basis: 50%;
        }

        ul.event-calendar li .event-location {
            flex-basis: 30%;
        }

        ul.event-calendar li .event-date {
            flex-basis: 20%;
        }

    .h1 {
        font-size: 6em;
    }

    .single .page-header {
        text-shadow: none;
    }

        .single .page-header h1 {
            color: #fff;
            font-size: 5.4em;
            max-width: 1060px;
            margin: 0 auto;
        }

        .single .page-header .title-subhead {
            max-width: 1060px;
            margin: 0 auto;
            color: #fff;
        }

    .page-header {
        max-height: 80vh;
    }

        .page-header img {
            width: 100%;
            max-height: auto;
        }


    .featured_grid.row3 ul li {
        -webkit-flex-basis: 33.333%;
        -ms-flex-preferred-size: 33.333%;
        flex-basis: 33.333%;
    }

    .featured_grid.row4 ul li {
        -webkit-flex-basis: 25%;
        -ms-flex-preferred-size: 25%;
        flex-basis: 25%;
    }

    .home-header {
        flex-direction: row;
        align-items: stretch;
        max-height: 90vh;
    }

        .home-header .home-header-piece {
            flex-basis: 10%;
        }

            .home-header .home-header-piece.home-header-main {
                flex-grow: 1;
            }

            .home-header .home-header-piece .home-header-text {
                height: 90vh;
            }

            .home-header .home-header-piece img {
                width: 100%;
                height: 90vh;
                object-fit: cover; /* Polyfill to fix object-fit/position in lesser browsers. See js/ofi.browser.js */
            }

            .home-header .home-header-piece h1 {
                white-space: nowrap;
                font-weight: bold;
            }

            .home-header .home-header-piece h2 {
                transform: rotate(270deg);
                white-space: nowrap;
            }

            .home-header .home-header-piece .home-header-text h2, .home-header .home-header-piece .home-header-text h1 {
                height: 50px;
                margin: 0;
            }

        .home-header a.home-header-piece {
            transition: 0.4s ease;
        }

            .home-header a.home-header-piece:hover, .home-header a.home-header-piece:focus {
                flex-basis: 75%;
            }

    .blog-index, .blog-posts {
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
    }

    .blog-posts {
        align-self: flex-start;
    }

    .blog-posts, .single-post .section-full article {
        flex-basis: 65.5%;
        max-width: 65.5%;
        margin-right: 3.5%;
    }

    .blog-sidebar {
        flex-basis: 31%;
        max-width: 31%;
    }

        .blog-sidebar .search-form button {
            margin-bottom: 0;
        }

            .blog-sidebar .search-form button:hover {
                background-color: black;
                color: white;
            }

    .blog-index article {
        flex-basis: 48%;
        margin-right: 4%;
    }

        .blog-index article:nth-child(2n) {
            margin-right: 0;
        }

    .single-post .section-full {
        display: flex;
        flex-wrap: wrap;
    }

    .testimonial {
        background: url(images/testimonial-bg.jpg) top center no-repeat #00456b;
        background-size: cover;
    }

        .testimonial.light {
            background-color: transparent;
        }

    .wrapper.blue {
        background: url(images/testimonial-bg.jpg) top center no-repeat #00456b;
        background-size: cover;
    }

    .cta .col8 p {
        text-align: right;
    }


    .page-nav .sub-menu-trigger {
        display: none;
    }

    .page-nav ul {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
    }


    .page-nav.main-nav-scrolled {
        position: fixed;
        width: 100%;
        top: 8em;
        z-index: 100;
    }


    /* WP Gmaps stylimg overrides */
    body .wpgmza_basic_row {
        flex-basis: 49%;
    }

        body .wpgmza_basic_row:nth-child(odd) {
            margin-right: 2%;
        }
}

@media screen and (min-width: 950px) {

    body .tablepress td, body .tablepress thead th {
        padding: 0.7em;
    }

    footer {
        display: flex;
        flex-wrap: nowrap;
        flex-direction: row;
        justify-content: flex-start;
        padding: 4em;
    }

    .footer-copyright, .footer-logo, .footer-network, .footer-social-nav, .footer-nav {
        margin: 0 0.5em;
    }

    .footer-logo {
        padding-top: 1em;
    }

        .footer-logo img {
            min-width: 160px;
        }

    .footer-nav {
        flex-grow: 1;
    }

        .footer-nav nav p {
            text-align: right;
        }

            .footer-nav nav p a {
                display: block;
                white-space: nowrap;
            }

        .footer-nav nav {
            text-align: right;
        }

    .footer-social-nav {
        padding: 0 2em;
    }

        .footer-social-nav ul {
            border-left: 1px solid #d2d2d2;
            border-right: 1px solid #d2d2d2;
            border-bottom: none;
            border-top: none;
            margin: 0.5em 0 0;
        }

            .footer-social-nav ul li {
                padding: 0 0.2em;
            }
}

@media screen and (min-width: 1100px) {

    body {
        font-size: 62.5%;
    }

    .blog-index {
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
    }
        /*	.blog-index article { flex-basis: 31%; margin-right: 3.5%; }*/
        /*	.blog-index article:nth-child(2n+0) { margin-right: 3.5%; }*/
        /*	.blog-index article:nth-child(3n+0) { margin-right: 0; }*/
        .blog-index article {
            flex-basis: 48.25%;
            margin-right: 3.5%;
        }

            .blog-index article:nth-child(2n+0) {
                margin-right: 0%;
            }
}

ul.sub-menu-class li.menu-space a {
    padding-top: 20px;
    font-weight: bold;
}

/* Author Archive */
body.archive.author .page-header .page-header-content {
    padding-top: 3em;
    position: relative;
}

body.archive.author .page-header h1 {
    margin-bottom: 0.5em;
}

body.archive.author .page-header-content img {
    border-radius: 50%;
    width: auto;
}

body.archive.author .page-header-content a {
    color: #fff;
    font-weight: bold;
}

body.archive.author .social a {
    padding: 0 0.5em;
}

    body.archive.author .social a:hover {
        color: rgb(158, 189, 206);
    }

body.archive.author .blog-posts, body.archive.author .single-post .section-full article {
    flex-basis: 100%;
    max-width: 100%;
    margin-right: 0;
}

body.archive.author .blog-index article {
    flex-basis: 31%;
}

    body.archive.author .blog-index article, body.archive.author .blog-index article:nth-child(2n) {
        margin-right: 3.5%
    }

        body.archive.author .blog-index article:nth-child(3n) {
            margin-right: 0;
        }

/* Blog Post */
body.single-post .author.vcard {
    border: 2px solid #00456b;
    border-radius: 3px;
    padding: 4em;
}

    body.single-post .author.vcard .author-header {
        display: flex;
        align-items: center;
        margin-bottom: 2em;
    }

        body.single-post .author.vcard .author-header .author-avatar {
            flex: 0 0 78px;
            margin-right: 2em;
        }

            body.single-post .author.vcard .author-header .author-avatar img {
                border-radius: 50%;
                width: 100%;
                height: auto;
            }

        body.single-post .author.vcard .author-header .author-meta p {
            margin-bottom: 0;
        }

        body.single-post .author.vcard .author-header .author-meta h3 {
            margin-top: 0;
            margin-bottom: 12px;
        }

.display-none {
    display: none;
}

.d-none {
    display: none;
}

/*new*/

label.user-tag.removable::after {
    content: "    X";
}

label.user-tag {
    background-color: none;
    color: #bcbcbc;
    text-align: center;
    -webkit-transition: 0.4s ease;
    transition: 0.4s ease;
    border: none;
    margin: 0;
    padding: 0;
    background: none;
}

label.user-tag:hover, button.user-tag:focus {
    color: red;
}

.ct-block {
    padding-top: 20px;
    padding-bottom: 20px;
    margin-bottom: 30px;
    position: relative;
}


.ct-block td {
    margin-top: 0.5em;
    margin-bottom: 1em;
    font-family: "ff-enzo-web",sans-serif;
    font-size: 25px;
    color: #00456b;
    font-weight: 700;
    line-height: 1.2;
}

.section-container, .section-guest {
    padding: 10px 15px;
    border-radius: 5px;
    position: relative;
    box-shadow: #ebebeb 2px 2px 4px 2px;
    border: none;
    padding-top: 15px;
    padding-bottom: 20px;
    margin-bottom: 40px;
}

.section-guest .section-header {
    font-size: 28px;
    top: -25px;
}

.section-header {
    position: absolute;
    background-color: white;
    top: -15px;
    left: 10px;
    margin: 0px;
    padding: 0px 5px;
}
label.user-tag::after
p {
    font-size: 1.125rem;
    line-height: 1.67;
    color: #6a6c6c;
    font-size: 18px;
    margin-bottom: 0.8em;
}

p.section-header {
    font-size: 16px;
}

#add-guest-bt {
    margin: 0px;
    border: none;
    max-width: 100px;
    cursor: pointer;
    font-size: 18px;
    border: solid 2px #00456b;
    padding: 3px;
    margin-left: 0px;
    margin-top: 15px;
}

@media screen and (min-width: 768px) {
    #add-guest-bt {
        margin-left: 15px;
        margin-top: 0px;
    }
}


label {
    font-size: 18px;
}

label.user-tag {
    font-size: 10px;
    border: solid #bcbcbc 1px;
    border-radius: 5px;
    padding: 10px;
    overflow-wrap: break-word;

}
label.user-tag::after{
    content:none;
}
label.user-tag:hover {
    color: red;
    font-size: 10px;
    border: solid red 1px;
    border-radius: 5px;
    padding: 10px;
}

label.user-tag.removable::after {
    content:"X";
    position: absolute;
    right: 10px;
    top: -5px;
    border: red 1px solid;
    border-radius: 50%;
    padding: 0px 5px;
    background: white;
    font-size: 12px;
}

label.user-tag:hover::after {
    background: red;
    color: white;
}

.guest-card {
    align-items: center;
    display: flex;
    margin-bottom: 1rem;
}

#guests-dropdown {
    max-width: 400px;
    width: 100%;
}

h7 {
    font-weight: 400;
    font-size: 20px;
    color: #00669c;
}

.flight-information, .passport-information {
    padding-top: 2rem;
}

.section-check {
    border: solid 1px #e7e7e7;
    position: relative;
    padding: 15px;
    border-radius: 0.25rem;
    margin-top: 15px;
}

.section-check.section-bg-toggle {
    border-color: transparent;
}

.form-check-inline {
    position: relative;
    background: white;
    left: 0px;
    top: 0px;
    border-bottom: 1px solid #e7e7e7;
    padding-bottom: 10px;
    margin-bottom: 5px;
}

@media screen and (min-width: 768px) {
    .form-check-inline {
        position: absolute;
        padding: 0px 5px;
        left: -5px;
        top: -15px;
        border-bottom: none;
        padding-bottom: 0px;
        margin-bottom: 0px;
    }
}

#guestinfo-form input[type=file], .hs-button {
    cursor: pointer;
}

.guest-booking-disclaimer {
    margin-bottom: 0px;
    font-size: 16px;
    padding-top: 10px;
}

label.no-column::after {
    content: none !important;
}

#payment-submit {
    width: auto;
}

.custom-payment {
    display: flex;
    justify-content: flex-end;
}



/*new stying payment page 2024*/
.payment-page {
    margin-top: 120px;
}


.payment-page h6, .payment-page h7 {
    font-size: 35px;
    color: #00456b;
    font-weight: 700;
    font-family: "ff-enzo-web", sans-serif;

    line-height: 1.1;
    margin-bottom: 20px;
}

.payment-page h7 {
    font-weight: 500;
/*    font-size: 3.2em;*/
        font-family: "soleil", sans-serif;
    color: #00669c;
    font-size: 30px;
}

.outside-card {
    box-shadow: 4px 4px 12px 0px #00000014;
    background: #fff;
    /*background: #f8f8f8;*/
    border-radius: 6px;
    overflow: hidden;
    margin-bottom: 15px;
}

.outside-card p {
    margin: 0px;
}

.outside-card .row {
    border-bottom: 1px solid #ebebeb;
}

.pay-bg {
    background-color: #ebebeb;
}

.pay-bg-2 {
    background-color: #f8f8f8;
}

.payment-row {
    color: #00669c;
}

.outside-card-bottom {
    padding-top: 10px;
    padding-bottom: 10px;
    background-color: #f8f8f8;
    box-shadow: 4px 4px 12px 0px #00000014;
    overflow: hidden;
}

.payment-radio {
    display: flex;
    align-items: center;
}

.payment-page .outside-card select, .payment-page .outside-card input, .payment-page .outside-card-bottom select, .payment-page .outside-card-bottom input {
    padding: 5px 5px;
    border-radius: 4px;
    vertical-align: middle;
    font-size: 14px;
    margin-bottom: 0px;
}

.outside-card label, .outside-card-bottom label {
    width: auto;
    padding-right: 15px;
    margin-bottom: 0px;
}

#stripe-card {
    padding: 8px 5px;
    border-radius: 4px;
    vertical-align: middle;
    border: 1px solid #c0c0c0;
    background-color: white;
}

/*.payment-remove-after {

}*/

.outside-card p {
    padding-top: 5px;
    padding-bottom: 5px;
}

#submit-btn, #success-refresh {
    width: auto;
    border-radius: 5px;
    padding-left: 25px;
    padding-right: 25px;
    margin-left: auto;
    margin-top: 20px;
    cursor: pointer;
}

#success-refresh {
    margin-right: auto;
}

.payment-page h6.d-none-light {
    color: red;
    font-size: 1.125rem;
}

.disabled-0_4 {
    pointer-events: none;
    opacity: 0.4;
}

.payment-top {
    margin-bottom: 15px;
}

.payment-radio {
    margin-bottom: 10px;
}

.payment-radio-options label::after {
    content: none;
}

.input-clean {
    margin-bottom: 15px;
}

label.remove-label-css:after {
    content: none !important;
}
